dsh-notify-say:DSH Desktop 任务完成会说话的客户端通知插件

前言

在 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)。

推荐:插件页安装

  1. 打开 DSH 设置 → 插件。
  2. 在「包名或地址」输入框(非上方搜索框)填入包名。
  3. 点「安装」,完成后 重启 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
羽毛球分组比赛记分
小程序二维码

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

Xiaoye