plugins/all-skills/skills/telegram-automation/SKILL.md
Automate Telegram tasks via Rube MCP (Composio): send messages, manage chats, share photos/documents, and handle bot commands. Always search tools first for current schemas.
npx skillsauth add davepoon/buildwithclaude telegram-automationInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
Automate Telegram operations through Composio's Telegram toolkit via Rube MCP.
Toolkit docs: composio.dev/toolkits/telegram
RUBE_MANAGE_CONNECTIONS with toolkit telegramRUBE_SEARCH_TOOLS first to get current tool schemasGet Rube MCP: Add https://rube.app/mcp as an MCP server in your client configuration. No API keys needed — just add the endpoint and it works.
RUBE_SEARCH_TOOLS respondsRUBE_MANAGE_CONNECTIONS with toolkit telegramWhen to use: User wants to send text messages to a Telegram chat
Tool sequence:
TELEGRAM_GET_ME - Verify bot identity and connection [Prerequisite]TELEGRAM_GET_CHAT - Get chat details and verify access [Optional]TELEGRAM_SEND_MESSAGE - Send a text message [Required]Key parameters:
chat_id: Numeric chat ID or channel username (e.g., '@channelname')text: Message text contentparse_mode: 'HTML' or 'MarkdownV2' for formattingdisable_notification: Send silently without notification soundreply_to_message_id: Message ID to reply toPitfalls:
_*[]()~>#+-=|{}.!<b>, <i>, <code>, <pre>, <a>When to use: User wants to share images or files in a Telegram chat
Tool sequence:
TELEGRAM_SEND_PHOTO - Send an image [Optional]TELEGRAM_SEND_DOCUMENT - Send a file/document [Optional]Key parameters:
chat_id: Target chat IDphoto: Photo URL or file_id (for SEND_PHOTO)document: Document URL or file_id (for SEND_DOCUMENT)caption: Optional caption for the mediaPitfalls:
When to use: User wants to get chat information or manage chat settings
Tool sequence:
TELEGRAM_GET_CHAT - Get detailed chat information [Required]TELEGRAM_GET_CHAT_ADMINISTRATORS - List chat admins [Optional]TELEGRAM_GET_CHAT_MEMBERS_COUNT - Get member count [Optional]TELEGRAM_EXPORT_CHAT_INVITE_LINK - Generate invite link [Optional]Key parameters:
chat_id: Target chat ID or usernamePitfalls:
When to use: User wants to modify or remove previously sent messages
Tool sequence:
TELEGRAM_EDIT_MESSAGE - Edit a sent message [Optional]TELEGRAM_DELETE_MESSAGE - Delete a message [Optional]Key parameters:
chat_id: Chat where the message is locatedmessage_id: ID of the message to edit or deletetext: New text content (for edit)Pitfalls:
When to use: User wants to forward messages or retrieve recent updates
Tool sequence:
TELEGRAM_FORWARD_MESSAGE - Forward a message to another chat [Optional]TELEGRAM_GET_UPDATES - Get recent bot updates/messages [Optional]TELEGRAM_GET_CHAT_HISTORY - Get chat message history [Optional]Key parameters:
from_chat_id: Source chat for forwardingchat_id: Destination chat for forwardingmessage_id: Message to forwardoffset: Update offset for GET_UPDATESlimit: Number of updates to retrievePitfalls:
When to use: User wants to set or update bot command menu
Tool sequence:
TELEGRAM_SET_MY_COMMANDS - Set the bot's command list [Required]TELEGRAM_ANSWER_CALLBACK_QUERY - Respond to inline button presses [Optional]Key parameters:
commands: Array of command objects with command and descriptioncallback_query_id: ID of the callback query to answerPitfalls:
From username:
1. Use '@username' format as chat_id (for public channels/groups)
2. For private chats, numeric chat_id is required
3. Call GET_CHAT with username to retrieve numeric ID
From GET_UPDATES:
1. Call TELEGRAM_GET_UPDATES
2. Extract chat.id from message objects
3. Use numeric chat_id in subsequent calls
parse_mode: 'HTML' for <b>bold</b>, <i>italic</i>, <code>code</code>parse_mode: 'MarkdownV2' for *bold*, _italic_, `code`_ * [ ] ( ) ~ > # + - = | { } . !Bot Permissions:
Rate Limits:
Chat Types:
Message Limits:
| Task | Tool Slug | Key Params | |------|-----------|------------| | Verify bot | TELEGRAM_GET_ME | (none) | | Send message | TELEGRAM_SEND_MESSAGE | chat_id, text, parse_mode | | Send photo | TELEGRAM_SEND_PHOTO | chat_id, photo, caption | | Send document | TELEGRAM_SEND_DOCUMENT | chat_id, document, caption | | Edit message | TELEGRAM_EDIT_MESSAGE | chat_id, message_id, text | | Delete message | TELEGRAM_DELETE_MESSAGE | chat_id, message_id | | Forward message | TELEGRAM_FORWARD_MESSAGE | chat_id, from_chat_id, message_id | | Get chat info | TELEGRAM_GET_CHAT | chat_id | | Get chat admins | TELEGRAM_GET_CHAT_ADMINISTRATORS | chat_id | | Get member count | TELEGRAM_GET_CHAT_MEMBERS_COUNT | chat_id | | Export invite link | TELEGRAM_EXPORT_CHAT_INVITE_LINK | chat_id | | Get updates | TELEGRAM_GET_UPDATES | offset, limit | | Get chat history | TELEGRAM_GET_CHAT_HISTORY | chat_id | | Set bot commands | TELEGRAM_SET_MY_COMMANDS | commands | | Answer callback | TELEGRAM_ANSWER_CALLBACK_QUERY | callback_query_id |
Powered by Composio
development
Show drill-me learning progress — topics studied, cards due for review, weakest concepts, and what to study next. Use when the user asks what's due, how their learning is going, or for their drill-me status.
development
Teach the user a topic as an adaptive tutor — retrieval practice, spaced repetition with decay, and persistent memory in ~/.drill-me/. Use when the user wants to learn or be drilled on something, says "drill me on X", "teach me X", or wants to study a topic, a codebase, or a document.
development
Turn any codebase into evidence-grounded Markdown docs plus a machine-readable index.json. Every claim cites its source; never invents deployment steps.
tools
Assesses the current state of the startup project and recommends what to focus on next. Use when there is a need or a question from the user to understand what the next steps are or what to focus on next.