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.
npx agentmods add skills/godmakereth/vibe-coding-tw/telegram-devnpx skills add godmakereth/vibe-coding-tw --skill telegram-devgit clone --depth 1 https://github.com/godmakereth/vibe-coding-twWhat 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.
| Model | Per session | Once invoked |
|---|---|---|
| Fable 5 | $0.00066 | $0.05211 |
| Opus 5 | $0.00033 | $0.02606 |
| Sonnet 5 | $0.00013 | $0.01042 |
| Haiku 4.5 | $0.00007 | $0.00521 |
Grade A, and why
telegram-dev 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 2d 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.
return requests.post(url, json=data) This is a copy
100% identical to telegram-dev — 505 lines differ, which has more behind it and is treated as the original. This page carries a canonical link to it rather than competing with it.
How it starts
The opening of the file, as written. The whole thing — 761 lines — stays where its author put it; the contents beside it link to each section on GitHub.
Telegram 生態開發技能
全面的 Telegram 開發指南,涵蓋 Bot 開發、Mini Apps (Web Apps)、客戶端開發的完整技術棧。
何時使用此技能
當需要以下幫助時使用此技能:
- 開發 Telegram Bot(訊息機器人)
- 建立 Telegram Mini Apps(小程式)
- 構建自定義 Telegram 客戶端
- 整合 Telegram 支付和業務功能
- 實現 Webhook 和長輪詢
- 使用 Telegram 認證和儲存
- 處理訊息、媒體和檔案
- 實現內聯模式和鍵盤
Telegram 開發生態概覽
三大核心 API
-
Bot API - 建立機器人程式
- HTTP 介面,簡單易用
- 自動處理加密和通訊
- 適合:聊天機器人、自動化工具
-
Mini Apps API (Web Apps) - 建立 Web 應用
- JavaScript 介面
- 在 Telegram 內執行
- 適合:小程式、遊戲、電商
-
Telegram API & TDLib - 建立客戶端
- 完整的 Telegram 協議實現
- 支援所有平臺
- 適合:自定義客戶端、企業應用
Bot API 開發
快速開始
API 端點:
https://api.telegram.org/bot<TOKEN>/METHOD_NAME
獲取 Bot Token:
- 與 @BotFather 對話
- 傳送
/newbot - 按提示設定名稱
- 獲取 token
第一個 Bot (Python):
import requests
BOT_TOKEN = "your_bot_token_here"
API_URL = f"https://api.telegram.org/bot{BOT_TOKEN}"
# 傳送訊息
def send_message(chat_id, text):
url = f"{API_URL}/sendMessage"
data = {"chat_id": chat_id, "text": text}
return requests.post(url, json=data)
# 獲取更新(長輪詢)
def get_updates(offset=None):
url = f"{API_URL}/getUpdates"
params = {"offset": offset, "timeout": 30}
return requests.get(url, params=params).json()
# 主迴圈
offset = None
while True:
updates = get_updates(offset)
for update in updates.get("result", []):
chat_id = update["message"]["chat"]["id"]
text = update["message"]["text"]
# 回覆訊息
send_message(chat_id, f"你說了:{text}")
offset = update["update_id"] + 1
核心 API 方法
更新管理:
getUpdates- 長輪詢獲取更新setWebhook- 設定 WebhookdeleteWebhook- 刪除 WebhookgetWebhookInfo- 查詢 Webhook 狀態
訊息操作:
sendMessage- 傳送文字訊息sendPhoto/sendVideo/sendDocument- 傳送媒體sendAudio/sendVoice- 傳送音訊sendLocation/sendVenue- 傳送位置editMessageText- 編輯訊息deleteMessage- 刪除訊息forwardMessage/copyMessage- 轉發/複製訊息
互動元素:
sendPoll- 傳送投票(最多 12 個選項)- 內聯鍵盤 (InlineKeyboardMarkup)
- 回覆鍵盤 (ReplyKeyboardMarkup)
answerCallbackQuery- 響應回撥查詢
What ships with it
3 files 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.
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.
- 2d ago First seen · 761 lines · 66 tokens per session scan A 242770e3c3a4
telegram-dev is a skill published in the GitHub repository godmakereth/vibe-coding-tw (47 stars, last pushed 8mo ago), licensed MIT. It adds 66 tokens to every session and 5,211 once invoked, about $0.0003 per session on Opus 5. A static security scan graded it A with 1 finding (makes network calls). It is 100% identical to telegram-dev, differing in 505 lines, and is treated as a copy.
Other skills, from other repositories
systematic-debugging
Use when encountering any bug, test failure, or unexpected behavior, before proposing fixes.
next-cache-components-adoption
Turn on Cache Components in a Next.js app and resolve the blocking routes it surfaces. Use when the user wants to enable, adopt, or migrate to Cache Components, flip the cacheComponents flag, work through a flood of blocking-prerender / instant validation errors, run the cache-components-instant-false codemod, or…
babysit-pr
Babysit a GitHub pull request after creation by continuously polling review comments, CI checks/workflow runs, and mergeability state until the PR is merged/closed or user help is required. Diagnose failures, retry likely flaky failures up to 3 times, auto-fix/push branch-related issues when appropriate, and keep…
imagegen
Generate or edit raster images when the task benefits from AI-created bitmap visuals such as photos, illustrations, textures, sprites, mockups, or transparent-background cutouts. Use when Codex should create a brand-new image, transform an existing image, or derive visual variants from references, and the output…
cpu-profile-analysis
Analyze V8/Chrome CPU profiles (.cpuprofile) and DevTools trace files (Trace-.json). Use when: profiling performance, investigating slow functions, comparing code paths, finding bottlenecks, analyzing timeToRequest, understanding call trees from sampling profiler data, analyzing layout/paint/rendering, investigating…
next-cache-components-optimizer
Drive a Next.js route to instant navigation by setting up an agentic loop, under Cache Components / PPR, on initial load (hard navigation) and client-side navigation (soft navigation). Encode the goal as a failing @next/playwright instant() e2e and work it to green, one verified route at a time; the shipped test then…