unifilitence/dsh-notify-say ↗★ 0
dsh-notify-say
Desktop notifications for DSH Desktop that actually speak: Windows TTS out of the box (zero download), VOICEVOX voice packs optional, a selectable system-sound fallback, and an idle gate that waits for running subagents before saying the turn is done. Includes a settings-page GUI (sound source, per-event overrides, jump-back-to-session, cooldowns) and a self hot-reload for development. 支持Windows TTS及VOICEVOX语音通知,适合需要后台运行并听取状态播报的用户。
Install
npx -p @deepseek-ai/dsh dsh plugin --profile web add github:unifilitence/dsh-notify-sayREADME
Read the full README ↗配置
三种方式,优先级由低到高(后者覆盖前者):
1. schema 默认值
2. cordis.patch.yml 的 config
3. DSH 设置页里改的值
4. tools/notify-config.ps1 写的 storages/config.json
⚠️ 注意语义:一旦你在设置页改过某项,再改
cordis.patch.yml里同一项不再生效。 这是 DSH 官方设计(用户层优先级更高),不是本插件的 bug。
设置页
DSH 设置 → 通知(由官方 Loader 从本插件的 Config schema 自动生成),共 12 项:
语音开关、音色模式(固定/随机)、音色名、音量, 以及完成/出错/被拦截/已中止/待批准/要提问/子代理/空闲门 八个开关。
命令行
cd \tools
.\notify-config.ps1 -Show # 看当前生效值
.\notify-config.ps1 -Voice off # 静音(Toast 仍弹)
.\notify-config.ps1 -Volume 40
.\notify-config.ps1 -VoiceMode random
.\notify-config.ps1 -VoiceName ankomon
.\notify-config.ps1 -Disable aborted -Enable subagents
.\notify-config.ps1 -Clear # 交还控制权给设置页
改完立即生效,不需要重启 DSH。
语音包管理
核心包只带一个日语音色(ずんだもん),体积约 2.8 MB。 完整多音色包体积较大(十余个音色约 40 MB),故不随包发布 —— 计划通过单独下载提供(尚未实现)。
.\notify-config.ps1 -ListPacks # 看已装哪些音色、各占多少
.\notify-config.ps1 -PurgeVoice # 删掉不用的音色
.\notify-config.ps1 -InstallHint # 看怎么获取更多音色
不装任何语音包也完全可用:通知会退回 Windows Toast + 系统提示音。
想要更多音色,两条路:
- 自己合成:装 VOICEVOX(本地免费 TTS),启动引擎(默认
http://127.0.0.1:50021), 然后按下面的命名规则把合成好的 wav 放进对应目录即可。 (合成脚本不随本包发布——它依赖本地 VOICEVOX 引擎与特定音色表,放在发布包里只会误导。) - 手工放入:把 wav 按下面的命名放进对应目录
sounds/voice-lines/~1.wav 完成
sounds/voice-lines/question/~1.wav 提问
sounds/voice-lines/approval/~1.wav 审批
sounds/voice-lines/fail/~1.wav 出错