SuperAPI AI 工具集

telegram-bot-messaging

办公与效率

查看项目

更新于 10-16 05:41

技能介绍

用途:在工作流、钩子、cron 任务或 CI 流程中发送 Telegram 消息、文件与告警;也可让长时间运行的任务向手机发起带内联按钮的提问并等待答复,适合“完成后通知我”或“执行前先问我”的自动化场景。

主要能力:发送文本消息、文档与图片;读取新收到的回复;通过 ask 实现提问并等待答案(退出码 0 表示已回复,stdout 为答案,2 表示超时)。支持多机器人、命名聊天目标和 -silent、-format md(MarkdownV2,失败回退纯文本)等选项。实现为纯 bash + curl + jq,除机器人令牌外无需安装。

使用方式:首次运行 bash scripts/telegram.sh setup 进行引导式 BotFather 配置。常用命令示例:bash scripts/telegram.sh send "Deploy finished"、bash scripts/telegram.sh send "low priority" --silent、bash scripts/telegram.sh file report.pdf "Q3 report"、bash scripts/telegram.sh read、ANSWER=$(bash scripts/telegram.sh ask "Deploy to prod?" --options "Yes,No" --timeout 300)。配置可用环境变量或 ~/.config/telegram/config(权限 600),如 TELEGRAM_BOT_TOKEN、TELEGRAM_CHAT_ID,以及通过 setup --bot alerts 添加的 BOT_ALERTS_TOKEN、用 --to family 指定的 TARGET_FAMILY 等。也可配置 Claude Code hooks 在需要输入或任务结束时通知手机;在脚本中可用 ask 的返回值做审批门禁。

限制:存在安全门禁,发送前须获得用户对目标聊天、机器人账号及具体内容的明确批准,切勿自动发送工作区、客户、凭据或密钥数据,令牌须当作机密保存。回复与答案仅接受已配置的聊天 ID;私聊要求发送者用户 ID 等于聊天 ID;群聊因 ID 共享,除非显式配置 TELEGRAM_APPROVER_IDS 或 APPROVERS_<NAME> 允许的 Telegram 用户 ID,否则 ask 默认失败关闭。Telegram 为第三方服务,消息内容会离开本机并可能被留存;无法验证聊天 ID 是否属于目标接收者;令牌一旦疑似泄露应立即轮换。物料中未提供收费、价格或平台支持等信息。