Install
Terminal · npx$
npx skills add https://github.com/sickn33/antigravity-awesome-skills --skill telegram-bot-builderWorks with Paperclip
How Telegram Bot Builder fits into a Paperclip company.
Telegram Bot Builder drops into any Paperclip agent that handles this kind of work. Assign it to a specialist inside a pre-configured PaperclipOrg company and the skill becomes available on every heartbeat — no prompt engineering, no tool wiring.
S
SaaS FactoryPaired
Pre-configured AI company — 18 agents, 18 skills, one-time purchase.
$27$59
Explore packSource file
SKILL.md378 linesExpandCollapse
---name: telegram-bot-builderdescription: Expert in building Telegram bots that solve real problems - from simple automation to complex AI-powered bots. Covers bot architecture, the Telegram Bot API, user experience, monetization strategies, and scaling bots to thousands of users.risk: unknownsource: vibeship-spawner-skills (Apache 2.0)date_added: 2026-02-27--- # Telegram Bot Builder Expert in building Telegram bots that solve real problems - from simpleautomation to complex AI-powered bots. Covers bot architecture, the TelegramBot API, user experience, monetization strategies, and scaling bots tothousands of users. **Role**: Telegram Bot Architect You build bots that people actually use daily. You understand that botsshould feel like helpful assistants, not clunky interfaces. You knowthe Telegram ecosystem deeply - what's possible, what's popular, andwhat makes money. You design conversations that feel natural. ### Expertise - Telegram Bot API- Bot UX design- Monetization- Node.js/Python bots- Webhook architecture- Inline keyboards ## Capabilities - Telegram Bot API- Bot architecture- Command design- Inline keyboards- Bot monetization- User onboarding- Bot analytics- Webhook management ## Patterns ### Bot Architecture Structure for maintainable Telegram bots **When to use**: When starting a new bot project ## Bot Architecture ### Stack Options| Language | Library | Best For ||----------|---------|----------|| Node.js | telegraf | Most projects || Node.js | grammY | TypeScript, modern || Python | python-telegram-bot | Quick prototypes || Python | aiogram | Async, scalable | ### Basic Telegraf Setup```javascriptimport { Telegraf } from 'telegraf'; const bot = new Telegraf(process.env.BOT_TOKEN); // Command handlersbot.start((ctx) => ctx.reply('Welcome!'));bot.help((ctx) => ctx.reply('How can I help?')); // Text handlerbot.on('text', (ctx) => { ctx.reply(`You said: ${ctx.message.text}`);}); // Launchbot.launch(); // Graceful shutdownprocess.once('SIGINT', () => bot.stop('SIGINT'));process.once('SIGTERM', () => bot.stop('SIGTERM'));``` ### Project Structure```telegram-bot/├── src/│ ├── bot.js # Bot initialization│ ├── commands/ # Command handlers│ │ ├── start.js│ │ ├── help.js│ │ └── settings.js│ ├── handlers/ # Message handlers│ ├── keyboards/ # Inline keyboards│ ├── middleware/ # Auth, logging│ └── services/ # Business logic├── .env└── package.json``` ### Inline Keyboards Interactive button interfaces **When to use**: When building interactive bot flows ## Inline Keyboards ### Basic Keyboard```javascriptimport { Markup } from 'telegraf'; bot.command('menu', (ctx) => { ctx.reply('Choose an option:', Markup.inlineKeyboard([ [Markup.button.callback('Option 1', 'opt_1')], [Markup.button.callback('Option 2', 'opt_2')], [ Markup.button.callback('Yes', 'yes'), Markup.button.callback('No', 'no'), ], ]));}); // Handle button clicksbot.action('opt_1', (ctx) => { ctx.answerCbQuery('You chose Option 1'); ctx.editMessageText('You selected Option 1');});``` ### Keyboard Patterns| Pattern | Use Case ||---------|----------|| Single column | Simple menus || Multi column | Yes/No, pagination || Grid | Category selection || URL buttons | Links, payments | ### Pagination```javascriptfunction getPaginatedKeyboard(items, page, perPage = 5) { const start = page * perPage; const pageItems = items.slice(start, start + perPage); const buttons = pageItems.map(item => [Markup.button.callback(item.name, `item_${item.id}`)] ); const nav = []; if (page > 0) nav.push(Markup.button.callback('◀️', `page_${page-1}`)); if (start + perPage < items.length) nav.push(Markup.button.callback('▶️', `page_${page+1}`)); return Markup.inlineKeyboard([...buttons, nav]);}``` ### Bot Monetization Making money from Telegram bots **When to use**: When planning bot revenue ## Bot Monetization ### Revenue Models| Model | Example | Complexity ||-------|---------|------------|| Freemium | Free basic, paid premium | Medium || Subscription | Monthly access | Medium || Per-use | Pay per action | Low || Ads | Sponsored messages | Low || Affiliate | Product recommendations | Low | ### Telegram Payments```javascript// Create invoicebot.command('buy', (ctx) => { ctx.replyWithInvoice({ title: 'Premium Access', description: 'Unlock all features', payload: 'premium_monthly', provider_token: process.env.PAYMENT_TOKEN, currency: 'USD', prices: [{ label: 'Premium', amount: 999 }], // $9.99 });}); // Handle successful paymentbot.on('successful_payment', (ctx) => { const payment = ctx.message.successful_payment; // Activate premium for user await activatePremium(ctx.from.id); ctx.reply('🎉 Premium activated!');});``` ### Freemium Strategy```Free tier:- 10 uses per day- Basic features- Ads shown Premium ($5/month):- Unlimited uses- Advanced features- No ads- Priority support``` ### Usage Limits```javascriptasync function checkUsage(userId) { const usage = await getUsage(userId); const isPremium = await checkPremium(userId); if (!isPremium && usage >= 10) { return { allowed: false, message: 'Daily limit reached. Upgrade?' }; } return { allowed: true };}``` ### Webhook Deployment Production bot deployment **When to use**: When deploying bot to production ## Webhook Deployment ### Polling vs Webhooks| Method | Best For ||--------|----------|| Polling | Development, simple bots || Webhooks | Production, scalable | ### Express + Webhook```javascriptimport express from 'express';import { Telegraf } from 'telegraf'; const bot = new Telegraf(process.env.BOT_TOKEN);const app = express(); app.use(express.json());app.use(bot.webhookCallback('/webhook')); // Set webhookconst WEBHOOK_URL = 'https://your-domain.com/webhook';bot.telegram.setWebhook(WEBHOOK_URL); app.listen(3000);``` ### Vercel Deployment```javascript// api/webhook.jsimport { Telegraf } from 'telegraf'; const bot = new Telegraf(process.env.BOT_TOKEN);// ... bot setup export default async (req, res) => { await bot.handleUpdate(req.body); res.status(200).send('OK');};``` ### Railway/Render Deployment```dockerfileFROM node:18-alpineWORKDIR /appCOPY package*.json ./RUN npm installCOPY . .CMD ["node", "src/bot.js"]``` ## Validation Checks ### Bot Token Hardcoded Severity: HIGH Message: Bot token appears to be hardcoded - security risk! Fix action: Move token to environment variable BOT_TOKEN ### No Bot Error Handler Severity: HIGH Message: No global error handler for bot. Fix action: Add bot.catch() to handle errors gracefully ### No Rate Limiting Severity: MEDIUM Message: No rate limiting - may hit Telegram limits. Fix action: Add throttling with Bottleneck or similar library ### In-Memory Sessions in Production Severity: MEDIUM Message: Using in-memory sessions - will lose state on restart. Fix action: Use Redis or database-backed session store for production ### No Typing Indicator Severity: LOW Message: Consider adding typing indicator for better UX. Fix action: Add ctx.sendChatAction('typing') before slow operations ## Collaboration ### Delegation Triggers - mini app|web app|TON|twa -> telegram-mini-app (Mini App integration)- AI|GPT|Claude|LLM|chatbot -> ai-wrapper-product (AI integration)- database|postgres|redis -> backend (Data persistence)- payments|subscription|billing -> fintech-integration (Payment integration)- deploy|host|production -> devops (Deployment) ### AI Telegram Bot Skills: telegram-bot-builder, ai-wrapper-product, backend Workflow: ```1. Design bot conversation flow2. Set up AI integration (OpenAI/Claude)3. Build backend for state/data4. Implement bot commands and handlers5. Add monetization (freemium)6. Deploy and monitor``` ### Bot + Mini App Skills: telegram-bot-builder, telegram-mini-app, frontend Workflow: ```1. Design bot as entry point2. Build Mini App for complex UI3. Integrate bot commands with Mini App4. Handle payments in Mini App5. Deploy both components``` ## Related Skills Works well with: `telegram-mini-app`, `backend`, `ai-wrapper-product`, `workflow-automation` ## When to Use- User mentions or implies: telegram bot- User mentions or implies: bot api- User mentions or implies: telegram automation- User mentions or implies: chat bot telegram- User mentions or implies: tg bot ## Limitations- Use this skill only when the task clearly matches the scope described above.- Do not treat the output as a substitute for environment-specific validation, testing, or expert review.- Stop and ask for clarification if required inputs, permissions, safety boundaries, or success criteria are missing.Related skills
3d Web Experience
Install 3d Web Experience skill for Claude Code from sickn33/antigravity-awesome-skills.
Agent Memory Mcp
Install Agent Memory Mcp skill for Claude Code from sickn33/antigravity-awesome-skills.
Agent Memory Systems
Install Agent Memory Systems skill for Claude Code from sickn33/antigravity-awesome-skills.