DeepSeek Harness Plugin Hub

发布与管理完整 Harness Profiles,发现适合你的插件。

探索

插件目录环境预设文档中心动态

社区

发布插件联系我们报告问题

相关链接

Plugin Hub GitHubDeepSeek Harness 官方项目系统状态隐私说明
© 2026 DeepSeek Harness Plugin HubPowered byPaxTech

独立、非官方社区项目,与 DeepSeek 官方无隶属、授权或背书关系。

DeepSeek Harness Plugin Hub
ProfilesPlugins分类动态文档登录管理 Profiles
ProfilesPlugins分类动态文档登录
← Plugins
W

dsh-watchman

Watchman

守夜人告警:把 DeepSeek Harness 的待审批 / 报错 / 任务结束推到手机(微信 Server酱 / Bark / 企业微信群机器人),设置页可视化配置。

插件会安装到这里;不确定时保持 web。

npx -y @deepseek-ai/dsh plugin --profile web add github:Beeasy-L/dsh-watchman#bfec341e2b29f9d0a7780059b185061224f96d7c
README兼容性版本

兼容性与来源证明

Watchman 以 dsh-watchman 发布,当前版本为 0.1.0。Plugin Hub 会校验它的 manifest,并保存精确安装来源,便于复现安装结果。

DSH 兼容范围
*
运行环境
web
发布来源
github
Registry 更新时间
2026/10/25

版本

0.1.0stable
2026/10/25

相关插件

正在加载相关插件…

最新版
0.1.0
DSH
*
HMR
重启进程
Tree shaking
未声明可安全裁剪
解包体积
未提供
文件数
未提供
Surface
web
许可证
MIT
发布源
github
GitHub
★ 0
周下载
0
最近提交
2026/10/25
查看源码 ↗
README Badge

点击下方 Badge 复制 Markdown,粘贴到 README 即可。

这是你的 Plugin?认领权益 · 优先安全扫描

验证 package.json 声明的 GitHub 仓库,即可管理这个公开页面。认领后,Hub 会优先安排当前版本的安全扫描,并在通过后公开展示结果。

认领这个 Plugin →
报告问题

相关插件

继续浏览 integrations-communication 分类下经过校验的插件。

Remote Web Ui@linxin666/dsh-remote-web-ui通过扫码配对访问 dsh Web GUI,共享一个官方界面:设置按钮旁的二维码可将手机和 PC 配对到同一个 Web GUI(手机采用竖屏触控适配层,PC 使用完整桌面界面),通过一次性令牌和 rRemote Bridge@linxin666/dsh-remote-bridgeDSH 远程桥接:主机端通过唯一且精确的 /ios/v1 WebSocket 路由提供协议 v1——会话列表、历史记录基线、提示、包含工具活动的实时回合增量、中断以及进程内代理审批——连接到通过一次性配对的设备Ds Botds-botDS Bot:DeepSeek Harness 的一组长期运行的 Bot,支持主 Bot、Bot 间消息和群聊Free Searchdsh-free-searchDeepSeek Harness 的免费网页搜索:27 个引擎(Bing/DuckDuckGo/AnySearch/SearXNG/Exa/Tavily/Keenable/Firecrawl/Parallel/You.com 无需密钥;通过 MCP 支持 Zhihu 全局/站内搜索,以及 Perplexity/SerpBase/DeepSeek(官方 + 原生工具/搜索)/Baidu/Kimi/Aliyun/Douba)

README

dsh-watchman · 守夜人告警

把 DeepSeek Harness 的「需要你拍板 / 任务报错 / 任务结束 / 订阅断线 / 登录态失效」 推到你手机微信(或 Bark、企业微信群机器人),并在设置页里可视化配置。

你在电脑上让 DSH 跑长任务,人离开了——任务跑完了、报错了、卡在「等你点同意」, 这些时刻你并不知道。这个插件负责在你不在场时替你盯着,出事喊你。


特性

  • 三种推送通道:Server酱(微信)、Bark(iPhone)、企业微信群机器人;填完整地址或只填 key 都认
  • 设置页可视化配置:设置 → 守夜人告警 —— 状态、通道、推哪些事件、发送测试、看日志,不用敲配置
  • 事件分流 + 分级:🔴 报错/登录态失效 · 🟡 待审批/断线 · 🟢 任务结束
  • 去重防抖:同一事件在窗口期(默认 30 分钟)只推一次,绝不连环轰炸;去重表落盘,进程重启也不会重复推
  • 独立进程:订阅与推送跑在独立进程里,告警链路不依赖 DSH 重启;宿主崩了,已连上的链路照跑
  • 单实例保护:pid 锁,重复启动会被拒绝(去重表是进程内的,双实例会推两遍)
  • 凭据不出本机:地址只以打码形式(如 SCT123…aBcD)返回给界面与日志;所有路由做同源校验

前置

要求说明
DSH桌面端或 Web 端,含 settings.section 槽位
事件源(可选)事件订阅复用 dsh-remote 运行时里的 dsh-events.mjs。没有它插件仍能安装、能发测试推送,只是收不到 DSH 事件

为什么不自己实现事件订阅:dsh-remote 已经把宿主的事件流(/api/remote.mux 的 $events、 session/follow)与审批回执在真机上跑通了,复用它比重新逆向协议可靠得多。

安装

# 从 GitHub 装(推荐,无需等 npm 发布)
dsh plugin --profile desktop add "github:Beeasy-L/dsh-watchman"

# 或从本地源码装(开发时)
dsh plugin --profile desktop add "file:C:\path\to\dsh-watchman"

# 若已发布到 npm
dsh plugin --profile desktop add dsh-watchman

装完重启 DSH:宿主半边(4 条路由)与界面半边(设置页一节)都在启动时装配。

配置通道

打开 设置 → 守夜人告警,选通道并填地址:

通道填什么怎么拿
serverchanSENDKEY(SCT 开头)sct.ftqq.com 微信扫码即得;免费额度有限
barkhttps://api.day.app/<key> 或只填 keyiPhone 装 Bark App,打开就有 key;免费、不限量
wecom群机器人完整 webhook 或只填 key企业微信群 → 右上角 ⋯ → 群机器人 → 添加(需企业管理员开启该权限,且群必须是企业内部群)

配置也可以直接写文件(数据目录见下),或命令行调路由:

curl -X POST http://127.0.0.1:<DSH端口>/plugins/watchman/config \
  -H 'content-type: application/json' \
  -d '{"channel":"serverchan","target":"SCT....","enabled":true}'

推哪些事件

事件级别去重键默认
approval-request 工具放行待批🟡approval:<eventId>开
user-question / plan-review 等你回答🟡question:<eventId>开
session-error 任务报错🔴error:<sessionId>:<eventId>开
turn-end 任务结束🟢(异常结束转 🟡)turnend:<sessionId>:<eventId>开
gap 订阅断线(期间通知可能漏)🟡gap开
auth-error harness cookie 失效🔴auth-error开

「任务结束」想要安静模式:关掉 turnEnd,则只有异常结束 (error / aborted / blocked / interrupted / max-tokens)才推。

命令行(不经 DSH 也能独立跑)

node lib/watchman.mjs              # 前台运行,Ctrl+C 退出
node lib/watchman.mjs --dry-run    # 只打印不真发(排查用)
node lib/watchman.mjs --verbose    # 连事件分类明细都打
node lib/watchman.mjs --test       # 发一条测试到手机后退出

node test/notify.selftest.mjs      # 通道层离线自测(打桩 fetch,不联网)

架构

DSH 宿主进程
 ├─ 插件 host 半边 lib/index.js   4 条路由:state / config / test / control
 └─ 插件 client 半边 lib/client.js 设置页「守夜人告警」一节
        │ 读写同一份配置、可启停
        ▼
独立进程 lib/watchman.mjs
 ├─ createEventSubscriber  ← 复用 dsh-remote 的 dsh-events.mjs 连宿主事件流
 ├─ 事件分类 → 分级 + 去重(落盘)
 └─ lib/notifier.mjs → Server酱 / Bark / 企业微信

宿主半边的路由:

方法路径说明
GET/plugins/watchman/state配置(地址打码)+ 进程状态 + 日志尾部
POST/plugins/watchman/config保存 {channel,target,enabled,dedup_minutes,pushOn};target 留空=不改
POST/plugins/watchman/test立刻发一条测试到手机
POST/plugins/watchman/control{action:"start"|"stop"|"restart"}

数据文件

数据目录默认 ~/.dsh-watchman(可用插件配置 dataDir 覆盖):

文件内容
config.json通道、地址(凭据)、开关、去重分钟数
watchman.config.jsonrelayDir、eventsModule、pushOn 事件开关
watchman.log运行日志
watchman.pid当前进程号(单实例锁)
watchman.dedupe.json去重表(跨重启)

事件源默认读 ~/.dsh-remote(可用 relayDir 覆盖)。

常见问题

收不到推送?

  1. 设置页点「发送测试到手机」——失败会给出通道侧原话(如企业微信 errcode)
  2. 看状态区的通道与地址打码是否符合预期
  3. 看「最近日志」:已连上宿主事件流 才说明事件源正常
  4. Server酱免费额度有限;企业微信要内部群且管理员已开启「群机器人」

任务结束也推,太吵? 关掉 pushOn.turnEnd。

日志里出现 已连上宿主事件流 但事件不来? DSH 换端口后事件订阅需要重连, 插件每 30 秒重新发现上游与 harness cookie;重启一次守夜人(设置页「重启」)即可立刻生效。

同时装了 dsh-remote 的微信机器人? 两者互不冲突:dsh-remote 走腾讯 ilink 机器人, 本插件走你自己的通道;但同一事件可能收到两条通知,按需关掉一边。

隐私与安全

  • 推送地址(含 key)只存在本机数据目录里,插件从不把它发往任何第三方服务
  • 界面与日志里只出现打码形式(如 SCT123…aBcD)
  • 4 条路由全部做同源校验,跨域请求直接被拒
  • 路由处理器各自 try/catch:路由出问题最多返回 500,不会把宿主带下去

致谢

  • 通道层(企业微信 / Bark / Server酱 的请求形状、去重语义、分级)搬自 「星火续火花」 项目的 「守夜人」告警模块(core/notifier.py),做了 ESM 化 + 去重表落盘
  • 事件订阅复用 dsh-remote 的 dsh-events.mjs (createEventSubscriber / NODE_KINDS / 未来的 answerApproval)

License

MIT