A Twitch chat bot that launches Solana tokens directly on pump.fun or bonk.fun platforms by responding to @launchonpump and @launchonbonk mentions.
- Dual Bot Names: Bot responds to @launchonpump (for pump.fun) and @launchonbonk (for bonk.fun)
- Channel Monitoring: The bot joins specified Twitch channels and monitors chat
- Screenshot Capture: Automatically captures stream screenshots as token images
- Direct Launch: Launches tokens directly on the respective platforms
- Node.js 18+ installed
- Solana wallet with SOL for launching tokens
- Twitch account for the bot
- Twitch application (for API access - needed for stream screenshots)
- (Optional) Pinata account for IPFS image storage
- Create two Twitch accounts:
launchonpump- for pump.fun launcheslaunchonbonk- for bonk.fun launches
- Go to https://twitchapps.com/tmi/ (logged in as one of the bot accounts)
- Generate an OAuth token
- Save the OAuth token (starts with
oauth:)
- Go to https://dev.twitch.tv/console/apps
- Click "Register Your Application"
- Fill in the details:
- Name: Your bot name
- OAuth Redirect URLs: http://localhost
- Category: Chat Bot
- Save your Client ID and Client Secret
npm installCopy env.example to .env and fill in your values:
cp env.example .envRequired configurations:
TWITCH_BOT_OAUTH: OAuth token from step 1 (works for both bot accounts)TWITCH_CLIENT_ID: Client ID from step 2TWITCH_CLIENT_SECRET: Client Secret from step 2TWITCH_CHANNELS: Comma-separated list of channels to monitorSOLANA_RPC_URL: Solana RPC endpointRENTER_PRIVATE_KEY: Private key of wallet to launch tokens from
npm start@launchonpump $TICKER + Token Name
@launchonbonk $TICKER + Token Name
This captures a screenshot at the moment of the command and launches immediately.
-
First, capture the perfect moment:
@launchonpump @launchonbonkBot responds: "✅ Screenshot saved! Now send: $TICKER + Token Name"
-
Then, within 5 minutes, send your token details:
$TICKER + Token Name
Quick Launch:
@launchonpump $PEPE + Pepe Token(launches on pump.fun)@launchonbonk $DOGE + Doge Coin(launches on bonk.fun)
Two-Step Launch:
@launchonpump(captures screenshot)$MOON + Moon Token(launches with saved screenshot)
- Add your bot as a moderator in channels you control
- Bot can send messages without rate limits
- Most reliable for high-volume usage
- Bot can join any public channel
- Subject to Twitch's rate limits for non-mods
- May get timed out if sending too many messages
- Create a channel for the bot account itself
- Users can go to twitch.tv/YourBotName and use commands there
- Full control, no permission issues
- Start the bot:
npm start - Open Twitch: Go to one of your configured channels
- Test command: Type
@YourBotName $TEST + Test Token - Check response: Bot should reply with token creation status
- Twitch has rate limits: 20 messages per 30 seconds for regular users
- If bot is a moderator: 100 messages per 30 seconds
- Consider adding cooldowns between token creations
- Images must be publicly accessible URLs
- Bonk.fun: 30 SOL initial liquidity, 85 SOL raising target
- Pump.fun: 85 SOL initial liquidity, 69 SOL market cap
- Tokens are launched directly on-chain with actual transactions
- Each launch includes a small initial buy (0.0001 SOL)
- Transaction fees are paid by the launcher wallet
When no custom image URL is provided:
- Bot captures the current stream frame using Twitch API
- Uploads the screenshot to IPFS
- Uses it as the token's official image
This creates a unique memento of the exact moment the token was created!
- Never share your OAuth token or private keys
- Use environment variables, not hardcoded values
- Keep your launcher wallet funded but not with large amounts
- Monitor for abuse/spam
- Consider implementing rate limits per user
Bot not connecting:
- Check OAuth token is valid
- Ensure bot username matches the account that generated the token
- Verify channel names are lowercase
Stream screenshots not working:
- Ensure stream is live
- Check Twitch Client ID and Secret are correct
- Verify the channel name is correct
- Note: Twitch preview images may have a slight delay (5-10 seconds)
Commands not working:
- Bot must be able to send messages in the channel
- Check bot is actually in the channel (you'll see connection logs)
- Ensure mention format is correct:
@BotName
Token creation fails:
- Verify Solana RPC is accessible
- Ensure launcher wallet has enough SOL
- Check all environment variables are set
- Verify wallet private key format (hex, base58, or JSON array)
Run in development mode with auto-restart:
npm run devMIT