前言¶
在 DeepSeek Harness(DSH)中运行 Agent 时,经常会遇到需要用户介入的状态:请求审批、等待回答提问、等待计划审阅。如果当时网页端没有聚焦,或者你暂时离开屏幕,这些状态很容易错过,只能不断切回页面检查。
Frost-Reed/blocker-notify 针对这个场景:当 Agent 在工作中被卡住、需要用户介入时,在网页端实时提醒,让你不用一直盯着屏幕等待操作。
这是什么¶
Frost-Reed/blocker-notify 是 DSH 的一个插件,仓库由 Frost-Reed 维护,许可证为 MIT,package.json 版本为 0.3.0。
它主要处理“可操作阻塞”:当 Agent 需要审批、提问或计划审阅等用户介入时,在网页端给出提醒;对于沙箱拒绝 FS_SANDBOX_DENIED,只记录到 Host 日志,不打扰用户。
核心功能¶
下面介绍它已核实的主要能力。
全局横幅¶
当存在被阻塞会话时,网页端会出现全局横幅,列出被阻塞会话。点击条目会跳转会话,并移除该条提醒。
工作区条目闪烁¶
工作区会话条目上会出现黄色状态点闪烁,用于提示该会话需要关注。阻塞解决后,闪烁自动停止。
提示音¶
新增可操作阻塞出现时,页面会播放 Web Audio 短提示音。提示音不依赖音频文件;如果浏览器未解锁自动播放,或当前环境不支持,会静默降级。
操作系统级通知¶
新增可操作阻塞出现时,插件会通过 Notification API 弹出操作系统级通知。点击通知可聚焦 DSH 页面。
系统通知依赖浏览器 Notification API 权限。权限未开启或被拒绝时,横幅会提供开启或修复操作。
Host 半行为¶
Host 半会捕获审批请求、工具结果,并维护进程内告警日志。
对于沙箱拒绝 FS_SANDBOX_DENIED,插件只在 Host 日志中记录,不触发横幅、提示音或系统通知。
安装与启用¶
插件支持动态插件方式快速启用,也支持正式 bundle 安装持久生效。
动态启用¶
动态方式适合先试用。步骤如下:
- 获取源码:
git clone https://github.com/Frost-Reed/blocker-notify
- 在会话中让 Agent 读取
dynamic/host.js与dynamic/client.js,调用cordis_define、cordis_run,并在网页端批准 Client 半运行请求。
动态插件是进程内存态。DSH 重启后需要重新启用。
正式安装¶
正式安装命令如下:
dsh plugin --profile web add github:Frost-Reed/blocker-notify
如果从本地源码安装,可以使用:
dsh plugin --profile web add file:<本地克隆路径>
安装后重启:
dsh web
正式安装后,如果新增依赖或层,需要重启 dsh web。
如果 dsh 不在 PATH 中,可以将命令中的 dsh 换成 pnpm dsh 或 npx @deepseek-ai/dsh。
从 git 安装时可能运行 prepare 构建脚本。如果当前环境使用 pnpm,可能需要一次性在 allowBuilds 中授权;也可以使用 npm 包或 pnpm pack tarball 安装预构建产物。
典型用法¶
安装或动态启用后,可以用下面几个场景自测。
自测提问¶
让 Agent 调用一次 ask_user_question。
预期结果:横幅、提示音、系统通知出现。
自测审批¶
把审批策略设为 ask,沙箱设为 read-only,让 Agent 尝试带 sandbox_permissions 的写入。
预期结果:出现可操作审批阻塞提醒。
自测沙箱拒绝¶
让 Agent 不带提权参数写入被拒文件。
预期结果:静默,不触发横幅、提示音或系统通知。
适用场景与注意¶
这个插件适合以下场景:
- 在 DSH 网页端运行 Agent;
- 经常遇到审批、提问或计划审阅等需要用户介入的事件;
- 希望页面不聚焦或短暂离开时也能收到提醒;
- 希望将“可操作事件”和“已完结的沙箱拒绝”区分开。
使用前需要注意:
- 插件以当前
dsh进程权限运行。安装前应检查源码、许可证和依赖关系。 - 插件只提醒审批、提问、计划审阅等可操作事件;沙箱拒绝保持静默。
- 提示音使用 Web Audio。浏览器未解锁自动播放或环境不支持时,会静默降级。
- 操作系统级通知依赖 Notification API 权限。未开启或被拒绝时,横幅提供开启或修复操作。
- 动态插件是进程内存态,DSH 重启后需要重新启用。
- 正式安装后,新增依赖或层需要重启
dsh web。 package.json声明的 peerDependencies 包括@deepseek-ai/cordis、@deepseek-ai/dsh-client-runtime、react。
链接¶
社区目录页:
https://www.skillhub.cn/plugins/Frost-Reed/blocker-notify
GitHub 仓库:
https://github.com/Frost-Reed/blocker-notify