listen is a Solana Swiss-Knife toolkit for algorithmic trading
- 🔍 Real-time transaction monitoring
- 💱 Multi-DEX swap execution (Pump.fun, Jupiter V6 API or Raydium)
- 🚀 Blazingly fast transactions thanks to Jito MEV bundles
- 📊 Price tracking and metrics
- 🧰 Token management utilities
- 📈 Performance monitoring with Prometheus integration
And more!
It works plug'n'play with $arc rig framework framework allowing AI Agents interact with the Solana blockchain, see example: src/agent.rs and the output image.
For complete rundown of features, check out the CLI output of cargo run or the
documentation.
This repository contains some miscellanous tools for grabbing data from bullx/gmgn.ai/pump.fun unofficial APIs, in bullx, watcher, pump-ts and an analysis module, all which might be useful, though the core of the library is located in the src directory.
-
System Dependencies
- Rust (with nightly toolchain)
protocbuild-essentialpkg-configlibssl-dev
-
Configuration
- Copy
.env.exampleto.env - Set up
auth.jsonfor JITO authentication (optional, gRPC HTTP/2.0 searcher client) - Populate
fund.json
- Copy
Both keypairs are in solana-keygen format, array of 64 bytes, 32 bytes
private key and 32 bytes public key.
# Install dependencies
sudo apt install protoc build-essential pkg-config libssl-dev
# Build
cargo build --release
# Run services
./run-systemd-services.shcargo run -- listen \
--worker-count [COUNT] \
--buffer-size [SIZE]cargo run -- swap \
--input-mint sol \
--output-mint EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v \
--amount 10000000Warning
Default configuration is set for mainnet with small transactions. Ensure proper configuration for testnet usage and carefully review code before execution.
Listen includes built-in metrics exposed at localhost:3030/metrics. To visualize:
- Start Prometheus:
prometheus --config=prometheus.yml- Access metrics at
localhost:3030/metrics
Grafana should show something like this
The stackcollapse.pl can be installed through
gh repo clone brendangregg/FlameGraph && \
sudo cp FlameGraph/stackcollapse.pl /usr/local/bin && \
sudo cp FlameGraph/flamegraph.pl /usr/local/binProfile swap performance using DTrace to produce a flamegraph:
./hack/profile-swap.sh

