dsh-sounds:给 DeepSeek Harness 加任务状态提示音

前言

对于使用 DeepSeek Harness(DSH)Web 端的人来说,任务完成、回合完成、任务失败、等待批准、Agent 提问这些状态如果错过,需要回查界面。dsh-sounds 是一个 DSH 插件(bundle),用浏览器现场合成的提示音提醒这些状态变化。相比在外部另接通知工具,它直接在 DSH 插件 bundle 中处理事件和播放声音。

这是什么

dsh-sounds 由 DNNCOVO 维护,仓库名为 dsh-soundspackage.json 中声明的包名为 harness-sounds,版本为 0.1.0,许可证为 MIT。

它订阅官方服务事件,并通过独立 SSE 端点 /harness-sounds/events 推送事件。浏览器端使用 EventSource 订阅,并通过 Web Audio 振荡器合成播放提示音。

已核实资料中说明其“独立运行,不依赖任何其他插件”,也“不影响 DeepSeek Harness 本身”。声音由浏览器现场合成,没有音频文件。

触发事件与音效

下面是已核实的触发场景和对应音效。

场景 音效 触发事件
任务完成 / 回合完成 celebrate(523/659/784Hz 上行三连音) jobs.onJobDone completed、turn/end
任务失败 / 请求出错 error(170Hz 方波) jobs.onJobDone failed、agent/request-error
等待批准 wait(880Hz 短音) approval/asked
Agent 提问选择 wait(880Hz 短音) tool/callask_user_question

这些提示音不是预录音频文件,而是浏览器端用 Web Audio 振荡器现场合成。

运行方式

已核实资料给出如下运行链路:

Host (Node.js)
  jobs.onJobDone / agent/request-error / session/event
    -> SSE 广播 /harness-sounds/events
Client (browser)
  EventSource 订阅 -> Web Audio 合成 -> 播放

其中:

  • Host 文件位于 .dsh-plugin/index.mjs,直接订阅官方服务事件并做 SSE 推送;
  • Client 文件位于 .dsh-plugin/client.js,负责 EventSource 订阅与 Web Audio 振荡器合成。

浏览器自动播放策略要求先与页面产生一次交互。资料写明:首次 pointerdown/keydown 会解锁 AudioContext。因此启用后,刷新页面并点击页面任意位置一次即可解锁音频。

安装与启用

已核实资料未给出单条官方安装命令,只给出安装步骤和 package.json 配置。下面按资料中的步骤说明。

1、把本包放到 web profile 的 node_modules/,或放到任意 bundle 解析位置。

2、在 profile 的 package.json 中注册依赖和 bundle:

{
  "dependencies": {
    "harness-sounds": "file:./node_modules/harness-sounds"
  },
  "dsh": {
    "profile": {
      "bundles": [
        "@deepseek-ai/dsh-base",
        "@deepseek-ai/dsh-web-app",
        "harness-sounds"
      ]
    }
  }
}

3、重启 dsh web

4、刷新页面,并点击页面任意位置一次,以解锁音频。

注意:资料中插件名称同时出现 dsh-sounds(仓库/README 标题)和 harness-soundspackage.json 名称)。在上面示例的 dependenciesbundles 中使用的是 harness-sounds

试听与构建

资料提到可以通过 index.html / GitHub Pages 首页试听音效。

如果需要自行构建 client,可使用下面给出的命令:

npx esbuild .dsh-plugin/client/index.mjs --bundle --format=cjs --platform=browser --target=es2020 --outfile=.dsh-plugin/client-bundle.js
node wrap-client.mjs .dsh-plugin/client-bundle.js .dsh-plugin/client.js harness-sounds

第一条命令用 esbuild 将 client 源码打包为浏览器端的 CJS bundle;第二条命令用 wrap-client.mjs 将其包装为 DSH bundle 可加载的 .dsh-plugin/client.js

适用场景与注意

dsh-sounds 适合希望在 DSH Web 端用轻量提示音感知任务状态的用户,例如:

  • 任务完成后不希望频繁切回页面确认;
  • 任务失败或请求出错时希望得到即时提醒;
  • 等待批准或 Agent 提问时希望减少遗漏。

安装前建议先检查源码与许可证。该插件会在 DSH 插件运行路径中加载,Host 侧以当前 dsh 进程权限运行,因此需要确认来源可信。已核实资料给出的许可证为 MIT © 2026。

结尾

dsh-sounds 的核心价值在于:用浏览器现场合成的简短提示音,把 DSH 的任务完成、任务失败、等待批准和 Agent 提问状态变得更明显,同时不引入音频文件依赖。

  • GitHub 仓库:https://github.com/DNNCOVO/dsh-sounds
  • 社区目录页:已核实资料中未给出明确 URL,本文不编造链接。
羽毛球分组比赛记分
小程序二维码

欢迎使用《羽毛球分组比赛记分》微信小程序

Xiaoye