dsh-messager
DeepSeek Harness 通知插件:会话交互/任务完成/出错时通过系统通知、浏览器通知、飞书机器人(webhook)推送提醒
安装
npx -p @deepseek-ai/dsh dsh plugin --profile web add github:ly6170/dsh-messager说明文档
阅读完整 README ↗dsh-messager
DeepSeek Harness(DSH)任务状态通知插件。 当会话需要交互、任务完成或任务出错时,通过系统通知(OS toast)、浏览器通知与**飞书机器人(webhook)**推送提醒——不再依赖盯着会话列表的圆点。
English readme
English version: README.en.md
简介
dsh-messager 是 DeepSeek Harness(DSH)的一个通知插件,属于**单包双运行端(dual-runtime)**结构:
- host 端(Node,服务端)——负责系统通知与飞书 webhook;
- client 端(浏览器)——负责 Web Notification。
两端配置同源(settings 命名空间 messager),Web 设置页可编辑、即时生效。
能力一览
| 需求 | 实现 |
|---|---|
| 触发时机 | 需要交互(审批 approval/asked、提问/计划待审 ask_user_question、客户端 pendingInteraction)、任务完成(agent/status running→idle 且仅根会话 + turn/end 原因)、任务出错(agent/error) |
| 推送路径 | 系统通知(node-notifier toast)、浏览器通知(Notification API)、飞书机器人(webhook:interactive 卡片 + HMAC-SHA256 签名);NotifyChannel 接口可扩展 |
| 可配置 | 触发开关、各通道启停/verbosity/icon、去重冷却、标题前缀等,见配置 |
触发语义与 Web UI 状态圆点完全对齐:橙点 = 需要交互(pendingInteraction),绿点 = 任务完成(running→idle 且非当前会话),蓝点 = 运行中(不通知)。
特性
- 🟢 三种触发:需要交互 / 任务完成 / 任务出错,可独立开关;
- 🔔 三条通道:系统通知、浏览器通知、飞书机器人,可独立启停、久内容繁复度(
minimal / normal / detailed); - ⚙️ 热更新配置:改设置即生效,无需重启 DSH;
- 🔌 可扩展通道:实现
NotifyChannel接口即可接入钉钉 / 企业微信 / Telegram 等; - 🧪 单元测试覆盖信号提取 / 模板渲染 / 调度去重 / 飞书签名 / 配置解析 / client diff。