Coordinated multi-wallet trading on Pump.fun
63
49%
Does it follow best practices?
Impact
Pending
No eval scenarios have been run
Critical
Do not install without reviewing
Optimize this skill with Tessl
npx tessl skill review --optimize ./src/skills/bundled/pump-swarm/SKILL.mdCoordinate up to 20 wallets to execute synchronized trades on Pump.fun tokens.
# Set up wallets
export SOLANA_PRIVATE_KEY="your-main-wallet-key" # wallet_0
export SOLANA_SWARM_KEY_1="second-wallet-key" # wallet_1
export SOLANA_SWARM_KEY_2="third-wallet-key" # wallet_2
# ... up to SOLANA_SWARM_KEY_20
# Optional
export SOLANA_RPC_URL="https://your-rpc.com"
export PUMPPORTAL_API_KEY="your-api-key"/swarm wallets List all swarm wallets with addresses
/swarm balances Fetch SOL balances from chain
/swarm enable <wallet_id> Enable a wallet for trading
/swarm disable <wallet_id> Disable a wallet/swarm buy <mint> <sol> [options] Buy with all enabled wallets
/swarm sell <mint> <amount|%> [opts] Sell from wallets with positions/swarm position <mint> Show cached token positions
/swarm refresh <mint> Fetch fresh positions from chain (required before sell)| Mode | Flag | Best For | Description |
|---|---|---|---|
| Parallel | --parallel | Speed (>5 wallets) | All wallets execute simultaneously |
| Bundle | --bundle | Atomicity (≤5) | Single Jito bundle, all-or-nothing |
| Multi-Bundle | --multi-bundle | Atomicity (6-20) | Multiple Jito bundles in parallel |
| Sequential | --sequential | Stealth | Staggered 200-400ms delays |
| Option | Description |
|---|---|
--preset <name> | Apply a saved preset |
--wallets <id1,id2> | Use specific wallets only |
--slippage <bps> | Slippage tolerance (default: 500 = 5%) |
--pool <pool> | Pool: pump, raydium, auto (pumpfun only) |
--dex <dex> | DEX: pumpfun (default), bags, meteora |
--pool-address <addr> | Specific pool address (for Meteora) |
# Buy 0.1 SOL worth on each enabled wallet (auto mode)
/swarm buy ABC123mint... 0.1
# Buy with specific wallets only
/swarm buy ABC123mint... 0.2 --wallets wallet_0,wallet_1
# Buy with a preset
/swarm buy ABC123mint... 0.1 --preset stealth
# Sell 100% with multiple Jito bundles (for >5 wallets)
/swarm sell ABC123mint... 100% --multi-bundle
# Sell 50% with staggered timing (stealth mode)
/swarm sell ABC123mint... 50% --sequential
# Sell with preset
/swarm sell ABC123mint... 100% --preset fast
# Check positions before selling
/swarm refresh ABC123mint...
/swarm position ABC123mint...
# Multi-DEX examples
/swarm buy ABC123mint... 0.1 --dex bags # Buy on Bags.fm
/swarm buy ABC123mint... 0.1 --dex meteora # Buy on Meteora DLMM
/swarm sell ABC123mint... 100% --dex bags # Sell on Bags.fmPromise.all| Env Variable | Description |
|---|---|
SOLANA_PRIVATE_KEY | Main wallet (wallet_0) |
SOLANA_SWARM_KEY_1..20 | Additional swarm wallets |
SOLANA_RPC_URL | Custom RPC endpoint (faster = better) |
PUMPPORTAL_API_KEY | PumpPortal API key (optional, for pumpfun) |
BAGS_API_KEY | Bags.fm API key (required for bags DEX) |
The swarm system supports trading across multiple DEXes:
| DEX | Flag | Best For | Requires |
|---|---|---|---|
| Pump.fun | --dex pumpfun (default) | Memecoins, new launches | PUMPPORTAL_API_KEY (optional) |
| Bags.fm | --dex bags | Bags-launched tokens | BAGS_API_KEY |
| Meteora | --dex meteora | DLMM pools, concentrated liquidity | - |
# Buy on Pump.fun (default)
/swarm buy ABC123... 0.1
# Buy on Bags.fm
/swarm buy ABC123... 0.1 --dex bags
# Buy on Meteora with specific pool
/swarm buy ABC123... 0.1 --dex meteora --pool-address <pool_address>
# Sell on Bags.fm with stealth preset
/swarm sell ABC123... 100% --dex bags --preset stealthpumpfun for backward compatibilityBAGS_API_KEY - will error if missing--pool-address| Tool | Description |
|---|---|
swarm_wallets | List all swarm wallets |
swarm_balances | Refresh SOL balances from chain |
swarm_buy | Coordinated buy across wallets (supports preset param) |
swarm_sell | Coordinated sell across wallets (supports preset param) |
swarm_position | Get cached positions |
swarm_refresh | Fetch fresh positions from chain |
swarm_enable | Enable a wallet |
swarm_disable | Disable a wallet |
swarm_preset_save | Save a trading preset |
swarm_preset_list | List saved presets |
swarm_preset_get | Get preset details |
swarm_preset_delete | Delete a preset |
Save and reuse trading configurations across tokens and strategies.
/swarm preset save <name> [options] Save a preset
/swarm preset list [type] List presets
/swarm preset show <name> Show preset details
/swarm preset delete <name> Delete a preset| Option | Description |
|---|---|
--type <type> | Preset type: strategy, token, wallet_group |
--desc "..." | Preset description |
--mint <addr> | Token address (for token presets) |
--amount <sol> | Default SOL per wallet |
--slippage <bps> | Slippage in basis points |
--pool <pool> | Pool: pump, raydium, auto |
--mode <mode> | parallel, bundle, multi-bundle, sequential |
--wallets <ids> | Wallet IDs (for wallet_group presets) |
| Name | Mode | Slippage | Pool | Use Case |
|---|---|---|---|---|
fast | parallel | 5% | auto | Speed priority |
atomic | multi-bundle | 5% | auto | All-or-nothing execution |
stealth | sequential | 3% | auto | Pattern avoidance |
aggressive | parallel | 10% | pump | High volatility tokens |
safe | bundle | 2% | auto | Conservative trading |
# Create a custom strategy preset
/swarm preset save my_stealth --type strategy --mode sequential --slippage 300
# Create a token preset for BONK
/swarm preset save bonk_entry --type token --mint DezXAZ... --slippage 1000 --amount 0.1
# Create a wallet group preset
/swarm preset save top5 --type wallet_group --wallets wallet_0,wallet_1,wallet_2,wallet_3,wallet_4
# List all presets
/swarm preset list
# List only strategy presets
/swarm preset list strategy
# Use preset in trade
/swarm buy ABC... 0.1 --preset my_stealth
/swarm sell ABC... 100% --preset fast
# Delete a preset
/swarm preset delete old_preset| Type | Purpose |
|---|---|
strategy | Reusable trading settings (mode, slippage, pool) |
token | Token-specific settings with saved mint address |
wallet_group | Named wallet combinations for specific trades |
| Issue | Solution |
|---|---|
| Bundle keeps failing | Try --parallel or check network congestion |
| Positions not showing | Run /swarm refresh <mint> first |
| Insufficient balance | Check with /swarm balances |
| Slow execution | Use dedicated RPC via SOLANA_RPC_URL |
| Some wallets skipped | Wallet disabled or insufficient balance |
| Preset not found | Check name with /swarm preset list |
2a8c94e
If you maintain this skill, you can claim it as your own. Once claimed, you can manage eval scenarios, bundle related skills, attach documentation or rules, and ensure cross-agent compatibility.