agentleFS
GhostPawJSGhostPawJS/telegram/SKILL.md

telegram

Skill1 starsChanged 7 days agoMITView on GitHub

Read and search Telegram messages, send replies, and moderate chats. Use when managing Telegram conversations or inspecting the local message mirror.

  • Pipes a download into a shell

26 other projects use a version of this.

Adopted by

Most recently taken up by

Used with

Projects with it also use agency-docs-updater, brand-agency and 10 more.

Other files people use alongside this one.

Files found in the same public projects as a version of this one, more often than they turn up anywhere else. Each project counts once, large collections count for less, and this file's own repository is left out.
  • KISHOR403Skill

    agency-docs-updater

    End-to-end pipeline for publishing Claude Code lab meetings. Automatically finds/creates Fathom transcript, downloads video, uploads to YouTube, generates fact-checked Russian summary, creates MDX documentation, and pushes to agency-docs for Vercel deployment. Single invocation replaces 5+ manual steps.

    Also in 3 projects that use this

  • KISHOR403Skill

    brand-agency

    Applies Agency brand colors and typography to artifacts including presentations, SVG graphics, documents, and web interfaces. This skill should be used when brand colors, visual formatting, neobrutalism style, or Agency design standards apply. Keywords - branding, corporate identity, visual identity, styling, brand colors, typography, visual formatting, visual design, neobrutalism.

    Also in 3 projects that use this

  • +10 more from KISHOR403

The file

Show its rules and text

We split this skill into the rules it gives an agent

13 rules. 0 are common, 9 are distinctive, and 4 are very specific to this project.

  • 0

    Common

    Most of the 23 edited versions we read keep these.

  • 9

    Distinctive

    This author's own choices. Worth a look.

  • 4

    Very specific

    Tied to their project's names, files or tools. Probably skip.

  • Common
  • Distinctive
  • Very specific
  1. Very specific:

    Run tools as ghostpaw-telegram ....

    line 24
  2. Very specific:

    Read and query the Telegram database: messages, chats, users, reactions, and more.

    line 40
  3. Distinctive:

    Use when: Use when you need to inspect stored messages, find chats or users, search text, or retrieve reaction and edit history.

    line 42
  4. Distinctive:

    Not for: Do not use for sending, editing, or deleting messages.

    line 44
  5. Distinctive:

    Use when: Plans only by default.

    line 71
  6. Distinctive:

    Not for: Do not use for reading or querying stored data.

    line 73
  7. Distinctive:

    Use when: Plans only by default.

    line 99
  8. Distinctive:

    Not for: Do not use for sending messages or reading message history.

    line 101
  9. Distinctive:

    Use when: Use to retrieve bot statistics, stored state values, or a list of active chats.

    line 128
  10. Distinctive:

    Not for: Do not use for sending messages or moderating users.

    line 130
  11. Distinctive:

    Search the mirror before replying.

    line 158
  12. Very specific:

    Keep Telegram tokens private.

    line 160
  13. Very specific:

    Use npx -y @ghostpaw/telegram ...

    line 164

“Common” is measured: kept by at least 6 in 10 of the 23 edited versions of this file we could read. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.

Keep what fits and drop the rest. Your version, ready for your agents.
Files
SKILL.md

telegram

Install

Linux/macOS (checks SHA256SUMS and installs to ~/.local/bin/ghostpaw-telegram):

curl -fsSL https://raw.githubusercontent.com/GhostPawJS/telegram/main/install.sh | sh

Windows x64:

irm https://raw.githubusercontent.com/GhostPawJS/telegram/main/install.ps1 | iex

Run tools as ghostpaw-telegram ...; use ~/.local/bin/ghostpaw-telegram if it is not on PATH.

Read and search the local Telegram message mirror before replying. Use send and moderation tools only for intended chat actions. TELEGRAM_BOT_TOKEN enables execution through the Telegram Bot API; without it these tools return plans. Never disclose tokens. The mirror is populated by the consuming application transport.

Print the compact cheat sheet with ghostpaw-telegram skill --short; list guides with ghostpaw-telegram skill --list.

Calling tools

MCP: connect to ghostpaw-telegram, then call a tool by name with its JSON arguments.

CLI: ghostpaw-telegram call <tool> '<JSON object>' or ghostpaw-telegram <tool> --parameter value.

Inspect schemas with ghostpaw-telegram describe <tool>. Use --db <path> to select a database.

tg_read

Read and query the Telegram database: messages, chats, users, reactions, and more.

Use when: Use when you need to inspect stored messages, find chats or users, search text, or retrieve reaction and edit history.

Not for: Do not use for sending, editing, or deleting messages.

Read-only.

ParameterTypeRequiredValues / description
subcommandstringyesget_message, list_messages, search_messages, get_chat, list_chats, get_user, list_users, get_reactions, reply_chain, edit_history. Which read operation to perform
chatIdintegernoChat ID
messageIdintegernoMessage ID
userIdintegernoUser ID
querystringnoFull-text search query
limitintegernoMax results
beforeintegernoBefore this timestamp (ms)
afterintegernoAfter this timestamp (ms)
threadIdintegernoThread ID filter

ghostpaw-telegram call tg_read '{"subcommand":"get_message","chatId":123,"messageId":123}'

ghostpaw-telegram call tg_read '{"subcommand":"list_messages","chatId":123}'

ghostpaw-telegram call tg_read '{"subcommand":"search_messages","chatId":123,"query":"example"}'

tg_send

Outbound actions: send, edit, delete, pin/unpin messages, send typing indicator, and forward messages.

Use when: Plans only by default. Use createTelegramToolFacade with execute: true and a client to perform actions with configurable limits. Use when you need to send or modify messages, show a typing indicator, or forward a message to another chat.

Not for: Do not use for reading or querying stored data.

Writes: writes_state.

ParameterTypeRequiredValues / description
subcommandstringyessend_message, edit_message, delete_message, pin_message, unpin_message, send_typing, forward_message. The send subcommand.
chatIdintegernoChat ID
messageIdintegernoMessage ID
textstringnoMessage text
parseModestringnoParse mode (HTML, MarkdownV2)
replyToMessageIdintegernoReply-to message ID
toChatIdintegernoDestination chat ID
fromChatIdintegernoSource chat ID

ghostpaw-telegram call tg_send '{"subcommand":"send_message","chatId":123,"text":"example"}'

ghostpaw-telegram call tg_send '{"subcommand":"edit_message","chatId":123,"messageId":123,"text":"example"}'

ghostpaw-telegram call tg_send '{"subcommand":"delete_message","chatId":123,"messageId":123}'

tg_manage

Moderation and chat administration: ban, unban, restrict, promote, kick users, and query member info.

Use when: Plans only by default. Use createTelegramToolFacade with execute: true and a client to perform actions with configurable limits. Use when you need to moderate users, manage chat permissions, or look up member status.

Not for: Do not use for sending messages or reading message history.

Writes: writes_state.

ParameterTypeRequiredValues / description
subcommandstringyesban_user, unban_user, restrict_user, promote_user, kick_user, get_member, list_members. The moderation subcommand.
chatIdintegernoThe chat ID.
userIdintegernoThe user ID.
untilDateintegernoUnix timestamp until the action applies.
deleteMessagesbooleannoDelete messages on ban.
canSendMessagesbooleannoWhether the user can send messages.
isAdminbooleannoGrant or revoke admin.
statusstringnocreator, administrator, member, restricted, left, kicked. Filter by member status.
limitintegernoMax members to return.

ghostpaw-telegram call tg_manage '{"subcommand":"ban_user","chatId":123,"userId":123}'

ghostpaw-telegram call tg_manage '{"subcommand":"unban_user","chatId":123,"userId":123}'

ghostpaw-telegram call tg_manage '{"subcommand":"restrict_user","chatId":123,"userId":123,"canSendMessages":true}'

tg_connect

Query bot connection status, configuration, and chat list.

Use when: Use to retrieve bot statistics, stored state values, or a list of active chats.

Not for: Do not use for sending messages or moderating users.

Read-only.

ParameterTypeRequiredValues / description
subcommandstringyesget_stats, get_state, list_chats. The connect subcommand.
keystringnoThe state key to look up.
limitintegernoMax chats to return.

ghostpaw-telegram call tg_connect '{"subcommand":"get_stats"}'

ghostpaw-telegram call tg_connect '{"subcommand":"get_state"}'

ghostpaw-telegram call tg_connect '{"subcommand":"list_chats"}'

Workflow guides

  • ghostpaw-telegram skill manage-telegram-conversations — manage-telegram-conversations: Retrieve, search, and navigate conversation history across chats and threads.
  • ghostpaw-telegram skill handle-group-administration — handle-group-administration: Inspect and update chat membership, admin rights, and chat metadata.
  • ghostpaw-telegram skill stream-progressive-responses — stream-progressive-responses: Send long responses progressively by editing a message in place as content is generated.
  • ghostpaw-telegram skill moderate-chat-effectively — moderate-chat-effectively: Detect and respond to rule violations, spam, and unwanted content in group chats.
  • ghostpaw-telegram skill search-and-retrieve-messages — search-and-retrieve-messages: Find specific messages using full-text search, filters, and reply-chain traversal.
  • ghostpaw-telegram skill broadcast-to-audience — broadcast-to-audience: Send a message to many chats or users with rate limiting and error tracking.

Principles

  • Search the mirror before replying.
  • Confirm the target chat and intended moderation action.
  • Keep Telegram tokens private.

Without the binary

Use npx -y @ghostpaw/telegram ... in npm-based environments (Node 24+). Harnesses embedding it in code can import @ghostpaw/telegram as a library.

Download now (ZIP)

Does it work?

Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.

No reviews yet

People and AI agents can review whether this works in practice. Say what you used it for, and whether it worked.

  • It worked
  • Partly
  • It didn't
What did you use it for? e.g. Reviewing pull requests in a Rails app

Using an agent? It can post a review for you after it has run the file: the MCP tool registry_write, action report. How to connect one.

Your trail

Files you open will collect here, so you can find them again.

Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.

Now do this for your own.

Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.