solana-bundler-sniper-volume-bot

# gank — solana trading terminal for agents

Safety Notice

This listing is from the official public ClawHub registry. Review SKILL.md and referenced scripts before running.

Copy this and send it to your AI assistant to learn

Install skill "solana-bundler-sniper-volume-bot" with this command: npx skills add pissdart/gank-solana-bundler

gank — solana trading terminal for agents

gank is a multi-wallet solana trading terminal. launch tokens on pump.fun, run swarm buys, volume bots, copy trades, manage wallets. we literally have the most toxic platform atm and now your agents can take full advantage of it lol.

base url: https://gank.dev/api/v2

auth: Authorization: Bearer <GANK_API_KEY>

get your key at gank.dev > settings > api keys. keys start with pb_.

errors always come back as { "success": false, "error": "..." }.


wallet types

gank uses typed wallets. each type is locked to its module — don't mix them up.

typewhat it's for
devlaunching tokens (pump.fun creator wallet)
regularbuying/selling, transfers
bundlebundle buys at launch
snipesniping new launches
swarmcoordinated multi-wallet buys
volumevolume bot
pugprivacy protocol — clean funds via bnb/eth swap

wallets

list your wallets

GET /wallets/user

returns everything grouped by type.

{
  "dev": [{ "id": 1, "wallet_address": "...", "label": "main dev" }],
  "regular": [...],
  "swarm": [...],
  "volume": [...]
}

wallet balance

GET /wallets/{id}/balance

batch balances

POST /wallets/balances
{ "addresses": ["addr1...", "addr2..."] }

positions (all token holdings)

GET /user/positions

search tokens

GET /search?q=pepe&limit=10

launching a token

three steps: reserve mint → upload image → launch.

1. reserve a vanity mint (optional but worth it)

POST /launch/reserve-mint

gives you a ...pump address upfront. the keypair field is the mint keypair (token contract address keypair, not a wallet private key), pass it straight to /launch as reserved_mint_keypair. don't store it beyond that.

{ "success": true, "address": "AbcD...pump", "keypair": "base58..." }

2. upload image + metadata to ipfs

POST /ipfs/upload
Content-Type: multipart/form-data

fields: file, name, symbol, description, twitter, telegram, website

{ "success": true, "metadata_uri": "https://ipfs.io/ipfs/Qm..." }

3. launch

POST /launch
{
  "token_name": "my token",
  "token_ticker": "MTK",
  "metadata_uri": "https://ipfs.io/ipfs/Qm...",
  "dev_wallet_address": "DevWallet...",
  "dev_buy_sol": 0.5,
  "jito_tip": 0.0003,
  "reserved_mint_keypair": "base58_from_step1",
  "regular_wallets": [
    { "wallet_address": "Wallet1...", "amount": 0.1 },
    { "wallet_address": "Wallet2...", "amount": 0.2 }
  ],
  "bundle_groups": [
    {
      "block_target": 1,
      "wallets": [{ "wallet_address": "BundleWallet1...", "amount": 0.05 }]
    }
  ],
  "sniper_wallets": [
    { "wallet_address": "SnipeWallet1...", "amount": 0.1, "block_target": 2 }
  ]
}
{ "success": true, "launch_id": "uuid", "token_mint": "...", "tx_signature": "..." }

check launch status

GET /launch/{launch_id}

launch history

GET /launch/history?limit=20

save a launch config/preset

PUT /launch/configs
{ "name": "my template", "config": { ...launch_params... } }

buy & sell

buy

POST /phases/regular/buy
{
  "wallet_address": "RegularWallet...",
  "token_mint": "TokenMint...",
  "amount_sol": 0.1,
  "slippage_bps": 500
}

sell

POST /phases/regular/sell
{
  "wallet_address": "RegularWallet...",
  "token_mint": "TokenMint...",
  "sell_percentage": 100,
  "slippage_bps": 500
}

swarm

swarm = hit a token from multiple wallets at the same time. useful for coordinated entries.

swarm buy

POST /phases/swarm/buy
{
  "token_mint": "TokenMint...",
  "wallets": [
    { "wallet_address": "SwarmWallet1...", "amount_sol": 0.05 },
    { "wallet_address": "SwarmWallet2...", "amount_sol": 0.1 }
  ],
  "slippage_bps": 500
}

swarm sell

POST /phases/swarm/sell
{
  "token_mint": "TokenMint...",
  "wallets": ["SwarmWallet1...", "SwarmWallet2..."],
  "sell_percentage": 100,
  "slippage_bps": 500
}

consolidate sol back to one wallet

POST /phases/swarm/consolidate
{ "source_wallets": ["..."], "destination_wallet": "MainWallet..." }

recover (emergency drain — sells everything, sweeps sol)

POST /phases/swarm/recover
{ "source_wallets": ["..."], "destination_wallet": "MainWallet..." }

volume bot

start

POST /phases/volume/start
{
  "token_mint": "TokenMint...",
  "wallet_addresses": ["VolumeWallet1...", "VolumeWallet2..."],
  "sol_per_trade": 0.001,
  "duration_minutes": 60,
  "intensity": "medium"
}

intensity: "low" | "medium" | "high"

returns { "success": true, "session_id": "uuid" }

stop

POST /phases/volume/stop
{ "session_id": "uuid" }

wallet ops

transfer sol

POST /wallets/transfer
{ "from_wallet": "...", "to_wallet": "...", "amount_sol": 1.0 }

split sol (1 → many, max 50 targets)

POST /wallets/split
{
  "source_wallet": "...",
  "targets": [
    { "address": "Wallet1...", "amount_sol": 0.1 },
    { "address": "Wallet2...", "amount_sol": 0.2 }
  ]
}

vamp all (drain wallets — sells tokens, closes accounts, sweeps sol)

POST /wallets/vamp-all
{ "source_wallets": ["Wallet1...", "Wallet2..."], "destination_wallet": "MainWallet..." }

clean funds (privacy swap — sol→bnb→sol or sol→eth→sol, ~5 min)

two routes available: bnb (BSC, default) or eth (Arbitrum). source and destination must match 1:1 — use fresh destination wallets.

get a quote first:

POST /wallets/clean-funds/quote
{ "amount_sol": 1.0, "route": "bnb" }

initiate:

POST /wallets/clean-funds
{ "source_wallets": ["Wallet1..."], "destination_wallets": ["FreshWallet1..."], "route": "bnb" }

route: "bnb" (default) | "eth" — xmr is not available.

check status:

GET /wallets/clean-funds/status

sniping at launch

sniping is only available at launch time via sniper_wallets in the /launch payload — see the launch section above. standalone auto-snipe is not available.


market data

token info (price, mcap, volume, holders, bonding curve %)

GET /token/{mint}

ohlcv chart

GET /market/chart/{mint}?limit=500&timeframe=5

timeframe is in minutes.

holders

GET /market/holders/{mint}?limit=20

recent trades

GET /market/trades/{mint}?limit=30

referrals & stats

your stats (points, level, exp, trades, volume)

GET /auth/user-stats

referral stats (tier, l1/l2/l3 counts, earnings, claimable sol)

GET /user/referrals

claim earnings (pays to your payout wallet)

POST /user/referrals/claim

leaderboard

GET /user/leaderboard/points?limit=50
GET /user/leaderboard/referrals?limit=50

fee preferences

GET /fees/preferences
POST /fees/preferences
{
  "fee_mode": "manual",
  "priority_fee_max_sol": 0.001,
  "jito_tip_max_sol": 0.0005
}

fee_mode: "auto" | "manual"


how to use this

launching a token:

reserve mint → upload image to ipfs → POST /launch → poll GET /launch/{id}

coordinated buy:

check balances → POST /phases/swarm/buy → GET /user/positions

recovering funds:

POST /wallets/vamp-all  (sells everything + sweeps sol)
or
POST /wallets/clean-funds  (privacy swap via bnb/eth, ~5 min)

notes

  • api keys start with pb_ — don't log them, don't put them in prompts
  • wallet private keys are encrypted server-side, the api never gives them back
  • reserve-mint returns a mint keypair (the token's contract address keypair, not a wallet key), pass it to /launch as reserved_mint_keypair and discard after use
  • sol amounts are in sol, not lamports
  • slippage is in basis points — 500 = 5%
  • sniping only works at launch time via sniper_wallets in /launch — no standalone auto-snipe
  • clean funds routes: bnb (BSC) or eth (Arbitrum) — xmr is disabled
  • the platform fee wallet is protected, you can't accidentally send to it

config

~/.openclaw/openclaw.json:

{
  "skills": {
    "entries": {
      "gank": {
        "enabled": true,
        "apiKey": "pb_your_key_here"
      }
    }
  }
}

or just set GANK_API_KEY in env.


gank.dev · dm @pissdart on x or tg if something's broken

Source Transparency

This detail page is rendered from real SKILL.md content. Trust labels are metadata-based hints, not a safety guarantee.

Related Skills

Related by shared tags or category signals.

Web3

Giza

DeFi yield management on Giza -- onboarding, portfolio reviews, withdrawals, rewards, optimization, and education. Connects to the Giza MCP server for autono...

Registry SourceRecently Updated
Web3

Crypto Exchange

Cryptocurrency exchange service for LightningEX API supporting multi-mode interaction - natural language chat, CLI commands, and web UI. Use when user wants...

Registry SourceRecently Updated
Web3

Crypto Price Pro

查询虚拟币实时价格和历史数据,支持生成趋势图、周报和邮件推送。当用户询问虚拟币价格、加密货币行情、需要币价分析报告或定时推送时使用此技能。

Registry SourceRecently Updated
00Profile unavailable
Web3

Binance Coach

AI-powered crypto trading behavior coach for Binance users. Analyzes live portfolio health, detects emotional trading patterns (FOMO, panic selling, overtrad...

Registry SourceRecently Updated
3241Profile unavailable