telegram

telegram is a skill for Claude Code, Codex from laurigates/dotfiles. It costs 117 tokens per session (2,544 once invoked), scanned A, original, MIT.

A Telegram communication skill for sending messages, questions, and polls through a Telegram bot. Telegram is a messaging service.

In plain words
What is it for?
Use it for notifications, interactive questions, multiple-choice polls, and confirmation requests sent through Telegram.
Why use it?
It lets the agent reach you when you are away from the terminal or need to answer a question from another device.

Skill for Claude CodeCodex

Written for no agent in particular: nothing here depends on one. Also seen: reads .claude/ paths; mentions Claude Code.

Good fit Use it for notifications, interactive questions, multiple-choice polls, and confirmation requests sent through Telegram.

Compare 6 skills from other repositories ↓
Install with agentmods
npx agentmods add skills/laurigates/dotfiles/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 laurigates/dotfiles --skill telegram
Clone the repo
git clone --depth 1 https://github.com/laurigates/dotfiles

Made for: Claude Code, Codex.

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/laurigates/dotfiles/telegram/github.svg)](https://agentmods.dev/skills/laurigates/dotfiles/telegram)
Your own site
<a href="https://agentmods.dev/skills/laurigates/dotfiles/telegram"><img src="https://agentmods.dev/badge/skills/laurigates/dotfiles/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/laurigates/dotfiles/telegram"><img src="https://agentmods.dev/badge/skills/laurigates/dotfiles/telegram.svg" alt="Reviewed on agentmods" width="80" height="20"></a>
Per session 117 Skills are progressive disclosure: only the name and description are preloaded; the body loads when the skill is used.
When invoked 2,544 The whole file, excluding the scripts and references it only reads on demand.
Security scan A 1 finding. A grade says what 26 rules found in the file — not that it is safe. Third-party audits
  • NVIDIA SkillSpector pass 7 Sept 2026
How audits are shown
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.00117 $0.02544
Opus 5.5 $0.00047 $0.01018
Sonnet 5.5 $0.00023 $0.00509
Haiku 4.5 $0.00012 $0.00254

Measured 1mo ago against content hash 1625c6b39f49, 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 1 finding 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 1mo ago.

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.

Makes network callslowCapability

Not a fault in itself. Listed so you know the mod talks to something, and to what.

| `curl: (22) ... 401` | Token revoked or wrong | Re-issue via @BotFather |
exact_dot_claude/skills/telegram/SKILL.md · 231 lines

How it starts

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

Telegram Communication

Out-of-band channel to the user via a Telegram bot. Use it when the terminal isn't enough — the user has walked away, the task ran long, or a decision needs confirmation while the user is mobile.

For the when-to-use policy (and when not to), see ~/.claude/rules/telegram-communication.md. This skill covers the how.

Tools

Three scripts in ~/.local/bin:

Script Purpose Blocks?
telegram-notify Fire-and-forget message No
telegram-ask Send a question, wait for reply, print reply to stdout Yes
telegram-poll Send a multiple-choice poll, wait for the vote, print selected option(s) Yes

All three read TELEGRAM_BOT_TOKEN and TELEGRAM_CHAT_ID from the environment. They're sourced from ~/.api_tokens by mise — if you hit ... not set, the user needs to add them there.

telegram-notify

telegram-notify "Build finished — 12 tests, 0 failures."
telegram-notify -s "Quiet ping"                # silent (no sound)
telegram-notify -m "*Bold* and _italic_"       # MarkdownV2
echo "long stdout" | telegram-notify           # piped input

Returns immediately. Exit 0 on send, 2 on config error.

telegram-ask

# Default: 1-hour timeout, accept any reply
answer=$(telegram-ask "Proceed with the deploy?")

# Short timeout for an at-keyboard yes/no
answer=$(telegram-ask -t 60 "Apply the migration now?")

# Constrained reply — script re-prompts until the regex matches
answer=$(telegram-ask -p '^(YES|NO)$' "Force push to main? (YES/NO)")

Behaviour:

  1. Sends the question with force_reply: true so the Telegram client opens a reply thread on the user's phone.
  2. Drains pending updates so old messages don't satisfy the wait.
  3. Long-polls (getUpdates, timeout=30) until either a matching reply arrives or the deadline passes. While waiting, re-sends the question as a reminder at exponentially increasing intervals (default: after 5m, then 10m, 20m, ... capped by -t) — a missed phone notification gets more than one chance, without nagging someone who's simply away from their phone. Disable with -r 0.
  4. On timeout: prints TIMEOUT to stderr, sends a "(timed out)" notice to the chat, and exits 1.
  5. On config error (missing token / chat id): exits 2 with a message pointing at ~/.api_tokens.

Read the full file on GitHub · 231 lines

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. 1mo ago Changed 1625c6b39f49
  2. 1mo ago First seen · 231 lines · 117 tokens per session scan A 915743e00e29

Subscribe to this mod's changes

telegram is a skill published in the GitHub repository laurigates/dotfiles (10 stars, last pushed 3d ago), licensed MIT. It adds 117 tokens to every session and 2,544 once invoked, about $0.0005 per session on Opus 5.5. A static security scan graded it A with 1 finding (makes network calls). No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-31.