前言¶
使用 DSH / DeepSeek Harness 做智能体工作时,agent 回合和后台任务可能持续较久。切换标签页或离开页面后,缺少明确的结束提示,容易错过完成、失败或被终止的任务。dsh-task-notify 是一个面向 DSH Web 的轻量插件,用于在 agent 回合结束或后台任务结束时提供声音和标签标题提醒。
这是什么¶
- 包名:
@yangzhe1991/dsh-task-notify - 维护者:
yangzhe1991 - 许可证:MIT
- 定位:DSH Web 插件,在 agent 回合或后台任务结束时给出提醒
它不替代 DSH 的任务执行逻辑,只在 Web 端补充完成提醒。
核心功能¶
Agent 回合结束提醒¶
当当前会话中的 agent 回合结束时,插件会播放合成两音提示音。成功为 do -> mi,失败或终止为 mi -> do。提示音为合成声音,不依赖音频文件。
后台任务结束提醒¶
后台任务进入 completed、failed 或 killed 状态时,也会触发提示音。
标签标题提醒¶
当页面不是活动标签时,完成提醒会体现在标签标题中。切回该标签页后,标题会恢复原标题。
避免旧回合误报¶
切换会话、加载历史或刷新页面时,不会因为旧回合再次提醒。只有在你当前会话中实际完成的回合会触发提醒。
安装形态¶
插件作为 DSH profile bundle 安装,包含 cordis.patch.yml 配置层和 lib/client.js 浏览器端文件。通过 npm registry 安装时提供预构建产物,安装时不编译,也不需要 allowlist。
兼容版本¶
README 声明兼容 dsh ≥ 0.1.2-alpha.4,并仍通过 legacy 路径支持 dsh 0.1.0-rc.x。
安装与启用¶
先确认已有 DSH 或 DeepSeek Harness 的 dsh CLI。
通过 npm registry 安装:
dsh plugin --profile web add @yangzhe1991/dsh-task-notify
安装后重启 Web GUI,并刷新浏览器标签页。
如果之前安装过旧版本,可以更新:
dsh plugin --profile web update @yangzhe1991/dsh-task-notify
如需移除:
dsh plugin --profile web remove @yangzhe1991/dsh-task-notify
首次使用¶
浏览器自动播放策略会阻止音频,直到用户与页面交互。首次使用时,在页面中点击一次或按一次键,即可解锁后续提示音。标签标题提醒不受该策略影响。
触发边界¶
只有以下情况会触发提醒:
- agent 在当前会话中完成一个回合
- 后台任务结束,状态为
completed、failed或killed
普通 foreground tool call 不触发提醒。
自定义¶
插件支持调整以下常量:
SOUND_ENABLEDTITLE_ENABLEDALERT_PREFIX
如需自定义开关、声音或标题前缀,需要编辑 src/client/index.tsx 并重新构建。
适用场景与注意¶
适合在 DSH Web 中使用 agent 回合、后台任务,并希望离开页面后仍能知道任务结束状态的开发者。
注意:
- 插件会以当前
dsh进程权限运行,安装前应检查源码和 MIT 许可证 - 浏览器未交互前,提示音可能被自动播放策略阻止
- 若通过 git 方式安装,会触发构建,并且需要
pnpm-workspace.yaml中的一次性allowBuilds;npm registry 安装不需要
链接¶
- 社区目录:https://www.skillhub.cn/plugins/yangzhe1991/dsh-task-notify
- GitHub:https://github.com/yangzhe1991/dsh-task-notify