Open-source framework for building PumpFun Telegram bots on Solana. Claim monitors, channel feeds, group trackers, whale alerts — build your own or use ours.
PumpKit is a TypeScript framework and collection of production-ready bots for monitoring PumpFun activity on Solana via Telegram. It provides:
@pumpkit/core— Shared framework: bot scaffolding, Solana monitoring, formatters, storage, config, health checks@pumpkit/monitor— All-in-one monitoring bot (fee claims, launches, graduations, whale trades, CTO alerts)@pumpkit/tracker— Group call-tracking bot (leaderboards, PNL cards, rankings, multi-chain)
Claim bots and PumpFun monitors are some of the most popular Telegram bots in crypto. But every builder starts from scratch — writing the same grammy setup, Solana RPC connections, message formatters, and deployment configs.
PumpKit gives you production-tested building blocks so you can ship a bot in hours, not weeks.
┌───────────────────────────────────────────────────┐
│ @pumpkit/core │
│ │
│ bot/ grammy scaffolding, command router │
│ monitor/ WebSocket + HTTP event monitors │
│ solana/ RPC client, program IDs, decoders │
│ formatter/ HTML message builder (Telegram) │
│ storage/ File-based + SQLite adapters │
│ config/ Typed env loader with validation │
│ health/ HTTP health check server │
│ logger/ Leveled console logger │
│ api/ REST + SSE + webhook server │
│ social/ Twitter/X + GitHub integrations │
│ types/ Shared event & program types │
└──────────┬────────────────────────┬───────────────┘
│ │
┌──────▼───────┐ ┌──────▼───────┐
│ @pumpkit/ │ │ @pumpkit/ │
│ monitor │ │ tracker │
│ │ │ │
│ DM commands │ │ Group calls │
│ Channel feed │ │ Leaderboards │
│ REST API │ │ PNL cards │
│ Webhooks │ │ Rankings │
│ SSE stream │ │ Multi-chain │
└──────────────┘ └──────────────┘
# Clone the repo
git clone https://github.com/pumpkit/pumpkit.git
cd pumpkit
# Install dependencies
npm install
# Configure
cp packages/monitor/.env.example packages/monitor/.env
# Edit .env with your TELEGRAM_BOT_TOKEN and SOLANA_RPC_URL
# Run the monitor bot
npm run dev --workspace=@pumpkit/monitorimport { createBot, ClaimMonitor, formatClaim, createHealthServer } from '@pumpkit/core';
const bot = createBot({
token: process.env.BOT_TOKEN!,
commands: {
start: (ctx) => ctx.reply('Welcome to my claim bot!'),
help: (ctx) => ctx.reply('I monitor PumpFun fee claims.'),
},
});
const monitor = new ClaimMonitor({
rpcUrl: process.env.SOLANA_RPC_URL!,
onClaim: async (event) => {
await bot.broadcast(formatClaim(event));
},
});
createHealthServer({ port: 3000, monitor });
monitor.start();
bot.launch();| Package | Description | Status |
|---|---|---|
@pumpkit/core |
Shared framework — logger, health server, config, shutdown, types | ✅ Ready |
@pumpkit/monitor |
All-in-one PumpFun monitor bot (DM + channel + API) | ✅ Ready |
@pumpkit/channel |
Read-only Telegram channel feed (broadcasts token events) | ✅ Ready |
@pumpkit/claim |
Fee claim tracker by token CA or X handle | ✅ Ready |
@pumpkit/tracker |
Group call-tracking bot with leaderboards & PNL cards | ✅ Ready |
@pumpkit/web |
Frontend dashboard and documentation site | 🏗️ Skeleton |
npm: Packages will be published to npm under the
@pumpkitscope. See npm Packages for the publishing roadmap.
Production bots running on Telegram, powered by PumpKit:
| Bot | Link | Description |
|---|---|---|
| PumpFun Claims | @pumpfunclaims | Channel feed — broadcasts first fee claims by GitHub-assigned developers |
| Migrated PumpFun | @migratedpumpfun | Channel feed — tracks token graduations from bonding curve to PumpSwap AMM |
| Cryptocurrency Vision | @cryptocurrencyvisionbot | Interactive bot — PumpFun token analytics, whale alerts, and market insights |
Consolidates 3 existing production bots into one:
| Feature | Source | Description |
|---|---|---|
| Fee Claim Alerts | telegram-bot, claim-bot | Real-time notifications when creators claim fees |
| Token Launch Monitor | telegram-bot, channel-bot | Detect new PumpFun token mints |
| Graduation Alerts | telegram-bot, channel-bot | Bonding curve completion → AMM migration |
| Whale Trade Alerts | telegram-bot, channel-bot | Large buy/sell above configurable threshold |
| CTO Alerts | telegram-bot | Creator Takeover (fee redirection) detection |
| Fee Distributions | telegram-bot, channel-bot | Fee sharing payouts to shareholders |
| Channel Broadcast | channel-bot | Read-only Telegram channel feed mode |
| DM Commands | telegram-bot, claim-bot | /watch, /add, /remove, /list, /status |
| REST API + SSE | telegram-bot | HTTP endpoints, Server-Sent Events streaming |
| Webhooks | telegram-bot | Outbound webhook dispatch for integrations |
| Twitter/X Tracking | claim-bot, channel-bot | Track tokens by X handle, follower counts |
| GitHub Social Fees | channel-bot | Social fee PDA lookup via GitHub |
| Feature | Description |
|---|---|
| Call Tracking | Paste a token CA → bot registers and tracks performance |
| Leaderboards | Top calls by multiplier, rankings by points (24h/7d/30d/all) |
| PNL Cards | Shareable Canvas-rendered images (entry, ATH, gain) |
| Ranking System | Amateur → Novice → Contender → Guru → Oracle |
| Points System | -1 to +5 based on call multiplier |
| Win Rate | Percentage of calls hitting ≥ 2x |
| Hardcore Mode | Auto-kick below minimum win rate |
| Multi-Chain | Solana, Ethereum, Base, BSC |
| Component | Platform | Cost |
|---|---|---|
| Monitor Bot | Railway | ~$5/mo (Hobby) |
| Tracker Bot | Railway | ~$5/mo (Hobby) |
| Documentation | Vercel | Free |
- Runtime: Node.js 20+
- Language: TypeScript (ES modules, strict mode)
- Telegram: grammy v1.35+
- Solana: @solana/web3.js v1.98+
- Database: better-sqlite3 (tracker), file-based JSON (monitor)
- Build: tsup (library), tsc (bots)
- Monorepo: Turborepo
- Deployment: Docker + Railway
- Getting Started — Setup, configuration, first bot
- Development — Local environment, commands, debugging
- Architecture — System design, module boundaries, data flow
- Deployment — Railway, Docker, Vercel setup
- FAQ — Common questions and troubleshooting
- Core API —
@pumpkit/coremodule reference - Monitor Bot — Feature spec, commands, configuration
- Tracker Bot — Feature spec, commands, configuration
- npm Packages — Package installation and usage
- Protocol Overview — All 9 official protocol specs + IDLs
- Bonding Curve Math — Constant-product formula, buy/sell calculations
- Fee Tiers — Market-cap-based dynamic fee selection
- Fee Sharing — Multi-shareholder fee distribution
- Social Fees — GitHub identity-based fee sharing
- Cashback — Trader cashback opt-in system
- Token Incentives — Volume-based PUMP rewards
- Mayhem Mode — Alternate vault routing, Token2022
- Events Reference — 20+ on-chain event types
- Analytics — Price impact, graduation progress, market cap
- End-to-End Workflow — Full token lifecycle
- Glossary — Key terms and definitions
- Code Examples — Practical code samples
- Error Reference — Custom error classes and fixes
- RPC Best Practices — Provider selection, batching, rate limiting
- Performance — Benchmarks, latency, and optimization tips
- Security Guide — Crypto library rules, key management
- Troubleshooting — Common issues and solutions
- Support — Getting help, bug reports, feature requests
- Roadmap — Where PumpKit is headed
26 hands-on guides in tutorials/:
| Tutorial | Topic |
|---|---|
| Create Token | Launch a token on bonding curve |
| Buy Tokens | Purchase tokens via bonding curve |
| Sell Tokens | Sell tokens back for SOL |
| Create & Buy | Atomic create + first buy |
| Bonding Curve Math | Price calculation formulas |
| Migration | Token graduation to AMM |
| Fee Sharing | Shareholder setup |
| Token Incentives | Volume-based rewards |
| Fee System | Tiered fee calculations |
| Working with PDAs | Program Derived Addresses |
| Trading Bot | Condition-based trading patterns |
| Decoding Accounts | Parse on-chain account data |
| Monitoring Claims | Fee claim monitoring architecture |
| Telegram Bot | Interactive DM bot with grammy |
| MCP Server | AI agent integration |
| WebSocket Feeds | Real-time token data |
| Channel Bot Setup | Read-only broadcast feed |
| Event Parsing | Decoding on-chain events |
| Error Handling | Validation and error classes |
| Security Auditing | Security audit checklist |
| AI Enrichment | GitHub + AI-powered cards |
| Your First Claim Bot | Build a claim bot from scratch |
| Customizing Claim Cards | HTML formatting, badges, enrichment |
| Channel Feed Bot | Channel broadcasting setup |
| Understanding Events | On-chain event types and parsing |
- Contributing — How to contribute
- Code of Conduct — Community standards
- Security Policy — Vulnerability reporting
- Changelog — Release history
PumpKit was extracted from the pump-fun-sdk Telegram bot ecosystem — 4 production bots with 50+ source files consolidated into a clean, reusable framework.
MIT