telegram

telegram is a skill for Claude Code from timurgaleev/vibestack. It costs 24 tokens per session (1,302 once invoked), scanned A, original, MIT.

A command-line tool for reading, transcribing and sending Telegram messages through the user's own account rather than a bot. Telegram is a messaging service; voice transcription converts voice notes into text.

In plain words
What is it for?
It is for searching chats, reading messages, transcribing voice notes and sending text or files to Telegram contacts.
Why use it?
A bot cannot access the user's normal chat history or send messages as that user, while this tool handles those account-level tasks after a one-time login.

Skill for Claude Code

Written for Claude Code: allowed-tools in frontmatter. Also seen: names the AskUserQuestion tool.

Good fit It is for searching chats, reading messages, transcribing voice notes and sending text or files to Telegram contacts.

Compare 6 skills from other repositories ↓
Install with agentmods
npx agentmods add skills/timurgaleev/vibestack/telegram
Install

Getting it into your agent

One page per mod, every tool's command on it. A separate URL per tool would split the same page into five that compete with each other.

Any agent
npx skills add timurgaleev/vibestack --skill telegram
Clone the repo
git clone --depth 1 https://github.com/timurgaleev/vibestack

Made for: Claude Code.

Wrote this? Show the measurements

A badge with what this costs and how it scanned, read live from this page, so it follows the numbers instead of freezing them. Markdown for a README, HTML for a documentation site or a project page.

agentmods badge for telegram

README.md
[![agentmods](https://agentmods.dev/badge/skills/timurgaleev/vibestack/telegram/github.svg)](https://agentmods.dev/skills/timurgaleev/vibestack/telegram)
Your own site
<a href="https://agentmods.dev/skills/timurgaleev/vibestack/telegram"><img src="https://agentmods.dev/badge/skills/timurgaleev/vibestack/telegram/github.svg" alt="Measured on agentmods" height="20"></a>

Or the 80×15 button, for a site that already has a row of RSS and ATOM ones. Only the verdict fits; the numbers stay here.

agentmods 80×15 button for telegram

Your own site · 80×15
<a href="https://agentmods.dev/skills/timurgaleev/vibestack/telegram"><img src="https://agentmods.dev/badge/skills/timurgaleev/vibestack/telegram.svg" alt="Reviewed on agentmods" width="80" height="20"></a>
Per session 24 Skills are progressive disclosure: only the name and description are preloaded; the body loads when the skill is used.
When invoked 1,302 The whole file, excluding the scripts and references it only reads on demand.
Security scan A 0 findings. A grade says what 26 rules found in the file — not that it is safe.
Origin original No closer match found in the catalogue.
Token cost

What it costs to keep this loaded

Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.

ModelPer sessionOnce invoked
Fable 5.1 $0.00024 $0.01302
Opus 5.5 $0.00010 $0.00521
Sonnet 5.5 $0.00005 $0.00260
Haiku 4.5 $0.00002 $0.00130

Measured 7d ago against content hash a21a8d3d620b, method: parsed. Prices are Anthropic first-party input rates as of 2026-10-07, from the pricing page.

Security

Grade A, and why

telegram scanned grade A with 0 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 7d ago.

The scan reads SKILL.md. This mod also ships 1 executable file (bin/tg.py), listed below but not scanned — reading those needs a real analyzer, not pattern matching.

A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.

Nothing flagged

None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.

skills/telegram/SKILL.md · 113 lines

How it starts

The opening of the file, as written. The whole thing — 113 lines — stays where its author put it; the contents beside it link to each section on GitHub.

When to invoke

Use when the user wants something from their own Telegram account: "what did X write", "listen to X's voice note", "send this PDF to X on Telegram". A Telegram bot sees no history and cannot speak as the user, so it cannot do any of this; this skill logs in as the user through MTProto instead.

/telegram — your own account, from the terminal

The CLI is bin/tg.py in this skill's directory. It declares its dependencies inline, so run it through uv (plain python3 has no Telethon). Shell variables do not survive between tool calls, so spell the path out each time:

uv run "${CLAUDE_SKILL_DIR}/bin/tg.py" status                     # logged in? as whom?
uv run "${CLAUDE_SKILL_DIR}/bin/tg.py" chats "Alice"              # names, @usernames, ids
uv run "${CLAUDE_SKILL_DIR}/bin/tg.py" read "Alice" -n 20         # oldest first, UTC
uv run "${CLAUDE_SKILL_DIR}/bin/tg.py" voice "Alice" --language ru
uv run "${CLAUDE_SKILL_DIR}/bin/tg.py" send "Alice" --text "..." --file a.pdf --dry-run

A chat is a dialog name, an @username, or a numeric id from chats. read and voice accept a unique substring; send accepts only an exact name, @username or id, and lists the candidates instead of guessing.

Step 0 — is it set up?

Run status. It never prompts:

  • logged in as … → continue.
  • not set up → walk the user through First-time setup from step 1.
  • not logged in → the session is missing or was revoked; walk the user through step 3 only.

voice also needs whisper and ffmpeg on PATH (brew install openai-whisper ffmpeg); it says so up front if either is missing.

First-time setup — the user does these, not you

Logging in creates a session file that is a full-account credential. The user performs every step that involves a secret; you explain, you do not type.

  1. The user creates an app at https://my.telegram.org → API development tools and gets api_id and api_hash.
  2. The user runs uv run <path to tg.py> setup --api-id <id> in their own terminal; the api_hash is prompted hidden, so it never reaches shell history or this conversation. Give them the absolute path to tg.py.
  3. The user logs in in their own terminal, not through !: uv run <path to tg.py> login --qr, then scans the QR from the phone (Telegram → Settings → Devices → Link Desktop Device). The QR must be seen live, and ! shows output only after the command exits. A 2FA cloud password is prompted hidden, with its hint.

Read the full file on GitHub · 113 lines

Files

What ships with it

1 file beside SKILL.md in the same directory: the scripts, references and assets a skill reads on demand. Not counted in the per-session cost; read them before you install if any of them is executable.

Changes

What this file has done since we first saw it

Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.

  1. 7d ago Changed · -24 tokens per session a21a8d3d620b
  2. 16d ago First seen · 113 lines · 48 tokens per session scan A 83de0e6f8caa

Subscribe to this mod's changes

telegram is a skill published in the GitHub repository timurgaleev/vibestack (7 stars, last pushed 2d ago), licensed MIT. It adds 24 tokens to every session and 1,302 once invoked, about $0.0001 per session on Opus 5.5. A static security scan graded it A with 0 findings. No closer match exists in the catalogue, so it is treated as the original; first seen 2026-10-01.

Related

Other skills, from other repositories

artifact-deploy

One-click deploy a user's pre-built app/artifact into their OWN AWS account and get a global public HTTPS link (Vercel-like), with a default TTL and promote-to-persistent. Use when the user says "deploy this", "ship this demo", "give me a public link", "share this externally", or "deploy to AWS".

kirodotdev/KiroCrew · 74 tokens

explain-for

Explain a topic, code, error or design decision for one named audience (a 5-year-old, a manager, a designer, a grad student, a parent). Resolves who it is for, pins the ground truth first, then tunes vocabulary, analogy, tone and depth to that audience. Use when an audience is named.

kirodotdev/KiroCrew · 71 tokens

web-verify

Use after a user-visible UI edit to verify your OWN change on an isolated loopback server. Capture, read and show real screenshots. Backends: playwright-cli (live Browser panel), agent-browser (annotated frames, pixel diff, a11y), or scripted Playwright. Not web-preview or external-page web-browse.

kirodotdev/KiroCrew · 0 tokens

learn-from-sage

Detection-gap (miss) analysis for Code Review Sage. Learn from shipped fixes, acted-on human comments, and design outcomes to close reviewer blind spots. Inline during review stages a candidate; a human triggers a one-shot AI consolidation into the live ruleset.

kirodotdev/KiroCrew · 56 tokens

mochi-remind

Handle due reminders — notify the user with natural language and mark them done.

kirodotdev/KiroCrew · 20 tokens

web-preview

Emit a hidden preview marker so the right-panel Browser tab opens a Load-preview card for a local server URL. Use whenever you start a dev or static server the user should see (Vite, Next, npm run dev, python -m http.server, etc.).

kirodotdev/KiroCrew · 58 tokens