前言¶
在 DeepSeek Harness(DSH)Desktop 上跑长任务时,常见做法是切去别的窗口,等通知再回来。普通桌面通知往往只有一声提示音或一条 Toast,主会话一轮结束就报「完成」,子代理或后台任务仍在跑时容易误判;反过来若每个子任务结束都弹一次,又会造成连环提醒。
下面介绍社区插件 dsh-notify-say(维护者 unifilitence):面向 Windows 的 DSH Desktop 通知扩展,用本地语音(及可选 VOICEVOX 语音包)播报状态,并通过 空闲门(idle gate) 等规则减少误报与轰炸。插件归类为 客户端,在 SkillHub 插件目录 可查到条目;源码与文档见 GitHub 仓库(MIT 许可,资料中版本 0.4.87)。
这是什么¶
dsh-notify-say 是给 DSH Desktop 用的通知插件:任务跑完会 说话(播放本地 wav,不依赖云端 TTS),并在有子代理仍在执行时 先不播「完成」,等全部结束再播一次。
与「只叮一声」的通知相比,它强调三件事:播报内容可听、完成时机更准、五类事件可单独开关(完成 / 出错 / 被拦截 / 待批准 / 要提问)。不安装额外语音包时,仍可正常使用 Windows Toast 与系统提示音。
核心功能¶
空闲门与同会话去抖¶
主会话本轮结束但仍有子代理或后台任务在跑时,插件 先不播 完成提醒;全部结束后 只播一次。默认有约 10 分钟 超时兜底,避免子任务卡死导致永不播报。
同一会话默认 60 秒内只响一次(可在设置里调整「同会话去抖」)。回合出错时可播 日语道歉类语音(可选),与「任务完成」区分。
语音与音源¶
- 发布版自带 1 个日语音色(ずんだもん),另 13 个音色 可在设置页按需从 GitHub 下载(下载前会弹出条款与署名说明)。
- 音源可选:语音包、Windows 系统语音合成、或 系统提示音;通知与播放 完全离线,联网仅用于可选的语音包下载与检查更新(每 24 小时最多一次,需手动点「检查更新」才会主动查)。
- 自定义 wav 可按 README 约定目录自行放入(亦可配合本地 VOICEVOX 引擎合成)。
设置页与命令行¶
配置走官方 Config schema,在 DSH 设置 → 通知 修改后 立即生效。优先级由低到高为:schema 默认值 → cordis.patch.yml → 设置页 → tools/notify-config.ps1 写入的 storages/config.json。注意:在设置页改过某项后,再改 cordis.patch.yml 同一项 不再生效(DSH 用户层优先级设计)。
脚本化示例(在插件目录 tools 下):
.\notify-config.ps1 -Show
.\notify-config.ps1 -Voice off
.\notify-config.ps1 -Volume 40
.\notify-config.ps1 -Disable aborted -Enable subagents
.\notify-config.ps1 -Clear
跳回会话¶
- 切回窗口时跳转:通知发出时若 DSH 不在前台,切回窗口后可跳到相关会话(多会话时有「最早错过 / 最后一个 / 都不跳」等策略)。
- 点击 Toast 跳对应会话(v0.4.70 起,v0.4.83 稳定):需在设置中显式开启「点击通知跳转到对应会话」,通过注册的
dshnotify://协议与本地端点处理;开启后旧的「切回窗口自动跳」会关闭,避免抢跳。
插件 无法 获知用户当前正在查看哪个会话,多会话跳转规则是文档中写明的折中方案。
安装与启用¶
前置条件¶
- DSH Desktop >=0.2.1-rc.2 且 <0.3.0(README 写明实测环境含 0.2.1-rc.2)。
- 仅支持 Windows(Toast 用 WinRT,播放用 MCI,依赖 Windows PowerShell 5.1)。
推荐:插件页安装¶
- 打开 DSH 设置 → 插件。
- 在「包名或地址」输入框(非上方搜索框)填入包名。
- 点「安装」,完成后 重启 DSH。
dsh-notify-say
国内安装若遇网络问题,可在同一面板将「安装源」切到「中国大陆镜像源」再试。
其他方式¶
npm:
npm install dsh-notify-say
本地开发可在 profile 的 package.json 里 link: 本仓库路径,并在 dsh.profile.bundles 加入 dsh-notify-say,于 profile 目录执行 pnpm install 后重启 DSH(路径以你本机 DSH 安装为准,README 示例为 profiles\desktop\package.json)。
典型用法¶
装好后 无需配置 即可:任务完成时 Toast + 自带音色。
需要微调时,进入 DSH 设置 → 通知:
| 目的 | 操作 |
|---|---|
| 换音色 / 音量 | 「音色」「音量」 |
| 下载更多音色 | 「语音包」→「加载列表」→「下载」 |
| 只要提示音 | 音源改为「系统提示音」 |
| 子代理结束也提醒 | 打开「子代理」(默认关) |
| 减少重复提醒 | 调大「同会话去抖」 |
| 排查问题 | 高级区诊断导出(脱敏日志) |
已下载语音包目录示例:
%LOCALAPPDATA%\dsh-notify-say\voice-lines\<音色key>\
适用场景与注意¶
适合谁:在 Windows 上使用 DSH Desktop、希望长任务结束后 听得见 且 少误报 的开发者;愿意可选下载 VOICEVOX 系语音包并遵守署名条款的用户。
务必注意:
- 插件在 当前 DSH 进程权限 下运行,安装前请阅读 源码 与 MIT 许可证及
THIRD-PARTY-NOTICES。 - 平台与 DSH 版本受 README 约束,非 Windows 或未声明支持的 DSH 版本不适用。
- 点击 Toast 跳转依赖本机协议注册与安全软件放行;被拦截时会退化为只唤窗不跳转。
- SkillHub 等为 社区目录,与 DeepSeek / 幻方无官方从属关系;DSH 生态强调「一切皆插件」,本插件为社区贡献之一。
结尾¶
dsh-notify-say 把 DSH Desktop 的通知从「响一下」推进到「说清楚、等子代理、可配置」:空闲门减少假完成,本地语音与可选 VOICEVOX 包兼顾离线与音色,设置页与 notify-config.ps1 便于日常与脚本化排查。
- 目录页:https://www.skillhub.cn/plugins/unifilitence/dsh-notify-say
- GitHub:https://github.com/unifilitence/dsh-notify-say