DeepSeek Harness 多渠道通知插件:注册 send_notification 工具与设置页,向 NotifyX、企业微信应用通知、企业微信机器人、邮件(Resend/SMTP)、钉钉机器人、飞书机器人发送通知;支持浏览器通知、运行结束/阻塞/目标完成事件自动推送。
安装
# GitHub 源码(首次需按提示配置 allowBuilds 构建授权后重试)
dsh plugin --profile web add github:a23842/dsh-notifier
装任何插件都等于在你的机器上跑第三方代码,权限和你本人一样大——能读你的文件、用你的凭据、访问网络,工具审批管不到它。GitHub 来源的插件还会在安装时执行构建脚本——pnpm 默认拦截,所以安装可能停在 ERR_PNPM_GIT_DEP_PREPARE_NOT_ALLOWED 或 ERR_PNPM_IGNORED_BUILDS;dsh 会打印出需要添加的确切键名,把它加进该 profile 的 pnpm-workspace.yaml 的 allowBuilds 下,重跑一次即可装上。放行构建本身就是一次信任判断:请只安装可信来源,并尽量锁定 commit(github:owner/repo#sha)。
README
DSH 多渠道通知插件:为 DeepSeek Harness 增加 send_notification 模型工具、运行状态/阻塞事件自动通知,以及「通知 / Notifications」设置页。
支持的渠道:
- NotifyX(默认启用)
- 企业微信应用通知(通用 Webhook)
- 企业微信机器人
- 邮件通知(Resend)
- SMTP 私人邮件(用自己的邮箱服务器发信,可发给自己或他人)
- 钉钉机器人(Webhook + 可选加签 + @所有人)
- 飞书机器人(自定义机器人 Webhook,可选加签 + @所有人)
安装
dsh plugin --profile web add @a23842/dsh-notifier
或手动:
- 将本包安装到
/opt/dsh/profiles/web/node_modules/@a23842/dsh-notifier; - 在 profile 的
package.json增加依赖@a23842/dsh-notifier,并把它加入dsh.profile.bundles。
cordis.patch.yml 提供 bundle patch 行(id: notifier → 包名 @a23842/dsh-notifier)。
功能
1. 浏览器本地通知(v0.2.0+,默认关闭)
页面在后台(失焦或隐藏标签页)时,通过浏览器系统通知提醒你:
- 运行结束:会话从 running → idle 时,附带结果文案(已完成 / 失败 / 中止 / token 上限 / 被阻塞 / 被中断);
- 提问 / 审批:会话需要你回答或批准时即时提醒(正文带上问题或工具名);
- 前台抑制:页面可见且聚焦时不打扰,切走才弹;
- 子代理会话不产生通知;
- 首次启用时点击「发送测试通知」即可触发浏览器授权(需要用户手势)。
2. 外部渠道通知(Host 半区)
由 Host 进程直接投递,不依赖浏览器页面:
- 会话运行结束自动推送(running → idle);
- 阻塞事件(提问 / 审批)自动推送;
- 目标完成(
goal/change→complete)自动推送(默认关闭,见下方开关)。
3. 模型工具
send_notification:参数 title(标题)、content(正文),向所有已启用渠道发送。
设置页
DSH Web 设置 → 「通知」页。
通知设置
| 开关 | 默认 | 说明 |
|---|---|---|
| 启用通知 | 开 | 总开关 |
| 浏览器本地通知 | 关 | 页面在后台时弹系统通知 |
| 运行结束时通知 | 开 | 运行结束提醒(仅浏览器通知有效) |
| 提问时通知 | 开 | 需要回答时提醒 |
| 审批请求时通知 | 开 | 需要批准时提醒 |
| 声音 | 开 | 通知是否发声 |
启用渠道
- 勾选要使用的渠道;未勾选的渠道不发送通知。
- 「目标完成时自动通知」默认关闭,勾选后目标达成会推送。
各渠道配置
- 密钥类字段(API Key / Webhook URL / 飞书加签密钥)标记为 secret:不会写回设置接口返回值,输入留空即保持原值,另有「清除密钥」按钮。
- 其他字段通过 DSH 标准 settings wire 持久化。
- 每个渠道卡片右上角有「测试 XX 通知」按钮;测试使用已保存的配置,改完请先点「保存」再测试。
安全
- Host 侧
/dsh-notifier/test测试路由仅接受本机回环同源请求(与 DSH/api相同的信任判定)。 - 各渠道密钥不写回设置接口,只在 Host 进程内持有。
- 浏览器通知仅在页面后台时发送,内容不含密钥。
变更记录
- v0.2.1:开关改为 dshmarket 同款绿色按钮式 switch。
- v0.2.0:新增浏览器本地通知(默认关)、分层开关(运行结束/提问/审批)、前台抑制、子代理排除。
- v0.1.2:去掉「已配置」徽标误报;新增目标完成自动通知开关(默认关)。
- v0.1.1:修复 secret 未配置误报「已配置」;仅渲染已勾选渠道的配置卡片。
License
MIT
链接
同类插件
alvinunreal/openpets#dsh★ 1160
将 DeepSeek Harness 的生命周期状态、错误与审批请求,桥接到本地运行的 OpenPets 桌面伙伴。
xmanrui/dsh-im★ 1094
通过二维码或机器人凭据将 IM 机器人接入 DeepSeek Harness(支持飞书、微信、钉钉、企业微信、QQ、Slack、Telegram、Discord 和 WhatsApp 共 9 种渠道)。
shaobeichen/dsh-pocket★ 939
手机远程访问 DSH Web 界面:扫码即用局域网或公网(cloudflared 隧道)访问,实时同屏、移动端适配布局,带设置页管理。
THEWOLFWALKER/dsh-notifier★ 86
DSH 多渠道通知与手机控制插件:一个 `notify()` API 接入 27 个渠道,支持事件推送、手机审批与提问、六条入站控制通道、本机 Web 管理台、多 agent 路由和零运行时依赖。
omdsh-dev/dsh-notification★ 81
回合完成桌面通知,按结果分控 + 关键词过滤。
omdsh-dev/dsh-open-in-vscode★ 55
从 Web GUI 一键在 VS Code 中打开工作区目录。
社区评论
评论公开保存在 GitHub Discussions。加载评论会连接 GitHub 和 Giscus;发表内容需要 GitHub 账号。