前言¶
在 DeepSeek Harness(DSH)的开发或使用过程中,Agent 执行任务或遇到权限问题时,如果用户当前不在 DSH 的标签页内,很容易错过这些关键状态。proactive-notify 是一个运行在 DSH Web GUI 上的客户端插件,旨在通过浏览器原生的 Notification API 解决这一问题。它可以在后台运行,通过系统级通知提醒用户,并自带音效。
核心功能¶
该插件主要解决 Agent 任务流中的状态同步问题:
- 权限与任务提醒:当 Agent 遇到权限问题(如工具被拒绝、等待审批)或完成任务(转为 idle)时,自动弹出系统通知。
- 系统音效:使用 Windows 系统自带的通知音效,无需额外配置。
- 审批通知就位:确保审批通知在浏览器弹窗出现后才触发系统通知,避免用户看到通知切回页面时,审批面板尚未加载的情况。
- 零打扰:通知正常工作后,DSH 页面内不显示任何 UI 元素,仅通过系统级提醒进行交互。
- 开页引导:首次打开网页时,若未授权通知权限,右下角会出现引导卡片,引导用户开启。
- 永久加载:作为组合插件(Bundle),一次安装后随 DSH 进程启动自动生效。
安装与启用¶
安装需要使用 dsh plugin 命令,并依赖 pnpm 环境。
- 执行安装命令:
dsh plugin --profile web add "github:DemoJ/proactive-notify#main"
- 重启 DSH 以加载插件(重新运行
dsh web)。
使用方法¶
- 授权通知:首次打开网页时,页面右下角会出现「开启通知」卡片。点击卡片会触发浏览器权限请求,选择「允许」。
- 查看通知:DSH 标签页必须保持打开(后台运行即可)。当 Agent 遇到权限问题或完成任务时,浏览器会弹出系统级通知。
- 手动重置权限:如果误点拒绝,浏览器将不再自动弹出授权窗。需要在浏览器地址栏左侧点击「站点设置」→「通知」→「允许」,然后刷新页面。
注意事项¶
- 标签页状态:DSH 标签页必须保持打开。关闭标签页后,插件无法发送系统通知(后台进程仍可运行)。
- 浏览器兼容性:推荐使用 Chrome、Edge 或 Firefox。
- 安装依赖:安装命令依赖 pnpm 环境。
- 许可证:MIT 开源协议。
结语¶
proactive-notify 通过浏览器原生能力,将 DSH 的任务状态无缝同步到用户的桌面环境,适合需要长时间运行 Agent 任务并希望实时掌握进度的场景。