Solana TypeScript bot for:
- Launching a new token on Pump.fun
- Bundling multi-wallet buy transactions at launch
- Selling token from all bundle wallets in one bundled flow
- Sending bundles through Jito block engine
launch-and-bundlecommand:- uploads metadata/image
- creates token launch transaction
- creates buy transactions for every bundle wallet
- adds Jito tip transaction
- submits all as one Jito bundle
sell-allcommand:- builds sell
100%tx per bundle wallet - adds Jito tip transaction
- submits as Jito bundle
- builds sell
- Strong environment validation with
zod - Base58 private key wallet loading
- Node.js + TypeScript
@solana/web3.js- PumpPortal local trade API (
/api/trade-local,/api/ipfs) - Jito JSON-RPC bundle endpoint (
sendBundle)
src/config.tsenv validation + typed configsrc/pumpportalClient.tsPumpPortal API clientsrc/jitoClient.tsJito bundle sendersrc/bundleBot.tsorchestration logicsrc/index.tsCLI entrypointmetadata/sample-token.jsonsample launch metadata
- Install dependencies:
npm install- Create env file:
cp .env.example .env-
Fill
.env:BOT_WALLET_PRIVATE_KEY: creator wallet base58 secret keyBUNDLE_WALLETS: JSON array of wallet labels + base58 keys- RPC + Jito endpoints
-
Put token image at path used in your metadata file (example:
./metadata/token.png).
npm run launch-and-bundle -- --metadata ./metadata/sample-token.json --buy-sol 0.02 --slippage-bps 1200 --priority-fee 0.0007Parameters:
--metadatapath to JSON metadata file (required)--buy-solbuy size in SOL per wallet (optional)--slippage-bpsslippage in bps (optional)--priority-feepriority fee in SOL (optional)
npm run sell-all -- --mint <MINT_ADDRESS> --slippage-bps 1800 --priority-fee 0.001Parameters:
--minttoken mint address (required)--slippage-bpsslippage in bps (optional)--priority-feepriority fee in SOL (optional)
{
"name": "My Bundle Token",
"symbol": "MBT",
"description": "Token launched by bot",
"twitter": "https://x.com/your_account",
"telegram": "https://t.me/your_group",
"website": "https://your-site.com",
"imagePath": "./metadata/token.png"
}- telegram: https://t.me/trade_SEB
- twitter: https://x.com/TradeSEB_