A tool for monitoring Meteora DLMM (Dynamic Liquidity Market Maker) transactions on Solana.
Meteora Agent is a Rust application specifically designed to monitor Solana transactions related to the Meteora DLMM program. It focuses on transactions involving Liquidity Provider (LP) wallet addresses defined in the configuration file and logs detailed information such as add liquidity and remove liquidity events.
Key features:
- Monitors transactions for the Meteora DLMM program
- Tracks activity for specific LP wallet addresses
- Logs transaction details, particularly add and remove liquidity events
- Uses the Carbon framework for blockchain transaction processing
- Rust and Cargo (recommended to install via rustup)
- Access to a Solana RPC node URL
-
Clone the repository:
git clone <repository-url> cd meteora-agent
-
Build the project:
cargo build --release
Create a .env file with the following content:
RPC_URL=<solana-rpc-url>
Replace <solana-rpc-url> with your Solana RPC node URL.
Configure the LP wallet addresses to monitor in the config.json file:
{
"lp_wallets": [
"wallet-address-1",
"wallet-address-2",
"wallet-address-3",
"wallet-address-4"
]
}Execute the following command to start the application:
cargo run --releaseThe application will begin monitoring transactions for the Meteora DLMM program and log detailed information when it detects transactions related to the configured LP wallets.
When LP wallet transactions are detected, the application logs the following information:
- Transaction signature
- LP wallet addresses involved
- Transaction type (e.g., AddLiquidityEvent or RemoveLiquidityEvent)
- Transaction details, including:
- LB pair (lb_pair)
- Source address (from)
- Position (position)
- Amounts (amounts)
- Active bin ID (active_bin_id)
This project uses the following main dependencies:
- Carbon framework components (core, log-metrics, meteora-dlmm-decoder, rpc-transaction-crawler-datasource)
- Solana SDK and client libraries
- Tokio async runtime
- Serde for JSON serialization/deserialization