CtrlK
BlogDocsLog inGet started
Tessl Logo

pump-swarm

Coordinated multi-wallet trading on Pump.fun

63

Quality

49%

Does it follow best practices?

Impact

Pending

No eval scenarios have been run

SecuritybySnyk

Critical

Do not install without reviewing

Optimize this skill with Tessl

npx tessl skill review --optimize ./src/skills/bundled/pump-swarm/SKILL.md
SKILL.md
Quality
Evals
Security

Pump.fun Swarm Trading

Coordinate up to 20 wallets to execute synchronized trades on Pump.fun tokens.

Quick Start

# 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"

Commands

Wallet Management

/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

Trading

/swarm buy <mint> <sol> [options]      Buy with all enabled wallets
/swarm sell <mint> <amount|%> [opts]   Sell from wallets with positions

Position Management

/swarm position <mint>      Show cached token positions
/swarm refresh <mint>       Fetch fresh positions from chain (required before sell)

Execution Modes

ModeFlagBest ForDescription
Parallel--parallelSpeed (>5 wallets)All wallets execute simultaneously
Bundle--bundleAtomicity (≤5)Single Jito bundle, all-or-nothing
Multi-Bundle--multi-bundleAtomicity (6-20)Multiple Jito bundles in parallel
Sequential--sequentialStealthStaggered 200-400ms delays

Auto Mode Selection (Default)

  • 1 wallet → Parallel (direct submit)
  • 2-5 wallets → Single Jito Bundle
  • 6-20 wallets → Multi-Bundle (chunks of 5)

Other Options

OptionDescription
--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)

Examples

# 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.fm

Execution Modes Deep Dive

Parallel (Default for >5 wallets)

  • Speed: All wallets submit simultaneously via Promise.all
  • Risk: No atomicity - some may succeed, others fail
  • Use when: Speed is priority, or bundles keep failing

Jito Bundle (Default for 2-5 wallets)

  • Atomic: All transactions succeed or all fail together
  • MEV-protected: No front-running between your own wallets
  • Cost: ~10,000 lamports tip per bundle
  • Limit: Max 5 transactions per bundle (Jito constraint)

Multi-Bundle (Recommended for 6-20 wallets)

  • Chunked: Splits wallets into groups of 5
  • Parallel bundles: All chunks submit simultaneously
  • Partial atomicity: Each chunk is atomic, but chunks are independent
  • Example: 12 wallets → 3 bundles of [5, 5, 2] wallets

Sequential (Stealth mode)

  • Staggered: 200-400ms random delay between wallets
  • Amount variance: ±5% to avoid detection patterns
  • Rate limited: 5 seconds minimum between trades per wallet
  • Use when: Want to avoid pattern detection

How It Works

Buy Flow

  1. Refreshes SOL balances from chain
  2. Filters wallets with sufficient balance (≥0.01 SOL + amount)
  3. Builds transaction for each wallet via PumpPortal API
  4. Signs all transactions locally
  5. Submits via selected execution mode
  6. Reports results per wallet

Sell Flow

  1. Fetches actual token balances from chain (critical!)
  2. Filters wallets with positions
  3. Calculates sell amount (% of position or exact)
  4. Builds and signs transactions
  5. Submits via selected execution mode
  6. Reports results per wallet

Safety Features

  • Balance check: Verifies sufficient SOL before buy
  • Position check: Fetches real token balances before sell
  • Max amount: Rejects buy amounts > 10 SOL per wallet
  • Confirmation timeout: 60 second timeout per transaction
  • Error reporting: Shows detailed errors per wallet
  • Bundle fallback: Failed bundles automatically retry as parallel

Configuration

Env VariableDescription
SOLANA_PRIVATE_KEYMain wallet (wallet_0)
SOLANA_SWARM_KEY_1..20Additional swarm wallets
SOLANA_RPC_URLCustom RPC endpoint (faster = better)
PUMPPORTAL_API_KEYPumpPortal API key (optional, for pumpfun)
BAGS_API_KEYBags.fm API key (required for bags DEX)

Multi-DEX Support

The swarm system supports trading across multiple DEXes:

DEXFlagBest ForRequires
Pump.fun--dex pumpfun (default)Memecoins, new launchesPUMPPORTAL_API_KEY (optional)
Bags.fm--dex bagsBags-launched tokensBAGS_API_KEY
Meteora--dex meteoraDLMM pools, concentrated liquidity-

Multi-DEX Examples

# 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 stealth

Notes

  • Default DEX is pumpfun for backward compatibility
  • Bags requires BAGS_API_KEY - will error if missing
  • Meteora can auto-discover pools or use a specific --pool-address
  • All execution modes (parallel, bundle, sequential) work with all DEXes
  • Presets work with all DEXes

Agent Tools (12)

ToolDescription
swarm_walletsList all swarm wallets
swarm_balancesRefresh SOL balances from chain
swarm_buyCoordinated buy across wallets (supports preset param)
swarm_sellCoordinated sell across wallets (supports preset param)
swarm_positionGet cached positions
swarm_refreshFetch fresh positions from chain
swarm_enableEnable a wallet
swarm_disableDisable a wallet
swarm_preset_saveSave a trading preset
swarm_preset_listList saved presets
swarm_preset_getGet preset details
swarm_preset_deleteDelete a preset

Scaling Notes

  • Max wallets: 20 (wallet_0 + SOLANA_SWARM_KEY_1..20)
  • Jito bundle limit: 5 txs per bundle (handled automatically)
  • Multi-bundle parallel: All bundles submit simultaneously
  • RPC recommendation: Use dedicated RPC for best performance
  • Tip amount: 10,000 lamports per bundle (~$0.002)

Presets

Save and reuse trading configurations across tokens and strategies.

Preset Commands

/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

Preset Save Options

OptionDescription
--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)

Built-in Presets

NameModeSlippagePoolUse Case
fastparallel5%autoSpeed priority
atomicmulti-bundle5%autoAll-or-nothing execution
stealthsequential3%autoPattern avoidance
aggressiveparallel10%pumpHigh volatility tokens
safebundle2%autoConservative trading

Preset Examples

# 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

Preset Types

TypePurpose
strategyReusable trading settings (mode, slippage, pool)
tokenToken-specific settings with saved mint address
wallet_groupNamed wallet combinations for specific trades

Troubleshooting

IssueSolution
Bundle keeps failingTry --parallel or check network congestion
Positions not showingRun /swarm refresh <mint> first
Insufficient balanceCheck with /swarm balances
Slow executionUse dedicated RPC via SOLANA_RPC_URL
Some wallets skippedWallet disabled or insufficient balance
Preset not foundCheck name with /swarm preset list
Repository
alsk1992/CloddsBot
Last updated
Created

Is this your skill?

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.