dsh-notify
English | 中文
DSH(DeepSeek Harness)事件通知插件:任务干完、执行出错、等你审批时,自动推消息到钉钉 / 企业微信 / 飞书的群机器人。
合上笔记本让 DSH 挂着跑任务,人离开电脑也不怕——关键节点都会推到你手机上。
支持的事件
| 事件 | 通知内容 | 说明 |
|---|---|---|
agent/status(running → idle) |
✅ 任务完成 | 首次见面就是 idle(如刚启动)不打扰 |
agent/error |
❌ 执行出错(含第几轮第几步、错误摘要) | |
approval/request |
⚠️ 等待审批(哪个工具、什么原因) | 只提醒、不拦截审批决策 |
内置防刷屏:同一 agent 同一类事件默认 30 秒内只发一条(throttleSeconds 可调)。
安装
dsh plugin --profile web add dsh-notify
包内声明了 dsh.bundle,装完自动挂载,无需手动 insert。然后只需在 ~/.dsh/profiles/web/cordis.patch.yml(Windows:C:\Users\<你>\.dsh\...)按 id 覆盖配置,填入你的 webhook:
- id: dsh-notify
config:
channels:
# 三选一或多选,配几个通道就推几个
- type: wecom
webhook: https://qyapi.weixin.qq.com/cgi-bin/webhook/send?key=你的key
- type: dingtalk
webhook: https://oapi.dingtalk.com/robot/send?access_token=你的token
secret: SEC你的加签密钥 # 钉钉机器人开了"加签"才需要
- type: feishu
webhook: https://open.feishu.cn/open-apis/bot/v2/hook/你的hook
secret: 你的签名校验密钥 # 飞书开了"签名校验"才需要
onIdle: true # 任务完成通知
onError: true # 出错通知
onApproval: true # 待审批通知
throttleSeconds: 30 # 防刷屏间隔
获取 webhook
- 企业微信:群聊 → 右上角 → 群机器人 → 添加 → 复制 webhook
- 钉钉:群设置 → 智能群助手 → 添加机器人 → 自定义(安全设置选"加签")
- 飞书:群设置 → 群机器人 → 添加机器人 → 自定义机器人(可开"签名校验")
开发与测试
npm install
npm test # vitest,16 个用例
npm run build # tsc → lib/
注意
- webhook 地址相当于密码,不要提交进公开仓库;建议把
cordis.patch.yml留在本机用户层,不要同步到公共 dotfiles。 - 通知发送失败只记日志,绝不影响 agent 主流程。
- 本插件只读事件、发 HTTP POST,不接触你的会话内容正文(仅 agent 标识 / 工具名 / 错误摘要)。
License
MIT