emiliagarfield6-bot/dsh-telegram-notify ↗★ 1
dsh-telegram-notify
任务完成或需输入审批时,通过 Telegram 推送通知,可在设置页配置。 适合需离开电脑仍想获知任务状态者;需自建 bot 并填 token 与 chatId。
安装
npx -p @deepseek-ai/dsh dsh plugin --profile web add github:emiliagarfield6-bot/dsh-telegram-notify说明文档
阅读完整 README ↗配置
插件自带浏览器端卡片:打开 设置 > 插件 > 插件配置,「Telegram 通知」卡片里
可直接编辑全部配置项——bot token(只写密码框)、chatId、API 地址、代理、
通知模式(简洁/复杂)、附带产出内容、最短运行秒数和各个通知开关,
保存后即时生效,无需重启。卡片走的是与官方插件相同的机制:
settings.plugin.item slot + settingsScope 客户端服务 + settings.mutate 写入。
token 字段在 schema 声明为 role('secret'),界面只写不读,不会回传明文。
配置优先级(高 → 低):设置页(写入 %USERPROFILE%\.dsh\settings.yaml 的
telegram-notify 命名空间)> profile cordis.patch.yml 的 config > 环境变量
TELEGRAM_BOT_TOKEN / TELEGRAM_CHAT_ID > schema 默认值。
首次配置步骤:
-
在 Telegram 找 @BotFather 创建 bot,拿到 token。
-
给你的 bot 随便发一条消息,再找 @userinfobot(或访问
https://api.telegram.org/bot/getUpdates)拿到你的 chat id。 -
在 设置 > 插件 > 插件配置 > telegram-notify 填入 token / chatId(国内网络 一并填
proxy);也可以改在 profile 的cordis.patch.yml:- id: telegram-notify config: token: "123456:ABC..." chatId: "123456789" proxy: "http://127.0.0.1:7890"注意:DSH 的 patch config 是整段替换而非深度合并,覆盖时请带上你要设置的全部 字段;未列出的字段走插件 Config schema 的默认值。
-
重启 DSH(关闭后重新
dsh web)。插件只在启动时加载。 -
启动成功会收到「🚀 DSH Telegram 通知已上线」,收不到就看 DSH 日志里
telegram-notify的警告。也可以用dsh --profile web --dump-config检查组合后的 插件树中本插件的配置是否符合预期。
完整配置项
- id: telegram-notify
config:
token: "123456:ABC..." # 或环境变量 TELEGRAM_BOT_TOKEN(secret,设置页只写)
chatId: "123456789" # 或环境变量 TELEGRAM_CHAT_ID
apiBase: "https://api.telegram.org" # 可换成自己的反代
proxy: "http://127.0.0.1:7890" # 国内网络按需设置(http 代理)
mode: "simple" # simple=只报结果;complex=附耗时/token/缓存命中率
sendTaskContent: false # 复杂模式下,是否附带本轮最终产出内容
minRunSeconds: 30 # 运行不足此时长不通知
notifyOnIdle: true
notifyOnQuestion: true
notifyOnApproval: true
notifyOnGoal: true
notifyOnError: false
sendStartupMessage: true
国内网络
api.telegram.org 在国内不可直连。两种方式任选:
- 设置
proxy(或环境变量HTTPS_PROXY)为你的本地 http 代理; - 或把
apiBase改成自建/第三方反代地址。
完整配置项
- id: telegram-notify
config:
token: "123456:ABC..." # 或环境变量 TELEGRAM_BOT_TOKEN(secret,设置页只写)
chatId: "123456789" # 或环境变量 TELEGRAM_CHAT_ID
apiBase: "https://api.telegram.org" # 可换成自己的反代
proxy: "http://127.0.0.1:7890" # 国内网络按需设置(http 代理)
mode: "simple" # simple=只报结果;complex=附耗时/token/缓存命中率
sendTaskContent: false # 复杂模式下,是否附带本轮最终产出内容
minRunSeconds: 30 # 运行不足此时长不通知
notifyOnIdle: true
notifyOnQuestion: true
notifyOnApproval: true
notifyOnGoal: true
notifyOnError: false
sendStartupMessage: true