用途:通过 Telethon 用户 API(非机器人 API)让 AI 智能体读取 Telegram 消息、解析公开频道、下载语音/音频/视频留言,所有操作共用一个会话文件。
主要能力:
- 读取任意聊天消息,输出 JSON 行,含 id、date、text、has_voice、has_audio、has_photo、has_document、mime_type、file_size、duration。
- 解析公开频道,输出 JSONL,含 channel、channel_id、id、date、text、text_sanitized、links、hash、views、forwards;带文本清洗(去零宽字符、过量 emoji、反引号注入,截断 2000 字符)。
- 下载语音/音频/视频留言,输出元数据 JSONL 与音频文件。
- 提供安装诊断与交互式认证。
使用方式: 在 https://my.telegram.org/apps 创建应用获取 api_id 与 api_hash,在 .env 设置 TG_API_ID、TG_API_HASH;安装 pip install telethon;运行 python3 scripts/tg_setup.py 诊断,首次认证 python3 scripts/tg_setup.py --auth 输入手机号与验证码,会话文件自动保存。 读取示例:python3 scripts/tg_read.py --saved-messages --limit 10;python3 scripts/tg_read.py --chat username --limit 20;python3 scripts/tg_read.py --channel SEOBAZA --limit 5。 频道解析示例:python3 scripts/tg_fetch_channels.py --channel SEOBAZA --limit 20;支持 --channels 多频道、--since 日期、--output 保存、--pretty。 语音下载示例:python3 scripts/tg_fetch_voice.py --saved-messages;支持 --chat、--limit、--audio-dir。 会话查找顺序:--session 参数、TG_SESSION 环境变量、项目级 .claude/data/telegram/tg_session.session、全局 ~/.telegram/tg_session.session。
适用场景:需要让智能体读取 Telegram 内容、抓取公开频道文本、获取语音素材并交给 Whisper 等工具转写的流程。
限制:仅用户 API,需以本人身份认证;存在速率限制,遇 FloodWaitError 自动延迟;同一会话同时只能有一个 Telethon 客户端;大文件下载受 Telegram 限速;本技能只读,不发送消息;转写需自行选择工具,技能仅负责 Telegram I/O。