前言¶
在 DeepSeek Harness(DSH)里做智能体或日常对话时,回复往往只有文字。若希望助手把短句念出来,常见做法是接云端 TTS 或另开播放器,既多一步配置,也可能把文本送出本机。DSH 社区插件 dsh-win-pronounce 走的是另一条路:只调用 Windows 已安装的 SAPI 与 OneCore 语音,朗读过程不出网、不额外调模型。下面介绍它是什么、怎么装、以及使用时要注意什么。
这是什么¶
dsh-win-pronounce 是维护者 Charles516z 发布的 DSH 客户端类插件(MIT 许可证,源码见 GitHub)。它在对话输入栏工具行里、权限控件右边增加一枚喇叭键;打开总开关后,宿主会为助手注册 speak 工具,助手可用本机 TTS 朗读短句。音源、语速、音量在弹层里调整,SAPI 桌面语音与 OneCore 语音可运行时切换。关掉开关时,speak 工具与相关系统提示会从宿主侧注销。
插件目录页:SkillHub — dsh-win-pronounce。SkillHub 为社区独立目录,与 DeepSeek / 幻方无官方从属关系;DSH 本身遵循「一切皆插件」的扩展方式。
核心功能¶
界面与状态¶
- 喇叭图标挂在槽位
conversation.input.left,order: 10,紧挨权限控件。 - 开启时图标为品牌色并带声波示意;关闭时为带叉的静音喇叭。
- 弹层提供:总开关、按 SAPI 桌面语音 / OneCore 语音 分组的音源下拉、语速、音量,以及试听、停止、刷新。弹层向上展开,点外部或按
Esc关闭。
助手侧行为¶
| 部件 | 行为 |
|---|---|
speak 工具 |
仅在总开关打开时注册;调用后助手即可继续回合,不等待播完 |
| 系统提示 | 开关打开时附带提示:只念短句,不念代码和表格 |
| 持久化 | 开关、音源、语速、音量写入 <profile>/.dsh-win-pronounce.json,重启后保留 |
speak 入参只有 text,超过 1200 字符会被截断;返回 { ok, spoken, voice, error }。
本机 TTS,无网络¶
实现只依赖 System.Speech 与 WinRT Windows.Media.SpeechSynthesis,通过 powershell.exe(Windows PowerShell 5.1)运行 assets/voices.ps1(枚举)与 assets/speak.ps1(发声)。用户文本以 base64 传给脚本,避免引号与编码问题。一次只播一段,新朗读会先停掉上一段;「停止」直接结束子进程。语速约 0.6×–1.8×,音量 0–1。
OneCore 与 SAPI 并存的原因在 README 中有说明:例如部分新版中文语音(如 Huihui / Yaoyao / Kangkang)在 SAPI 列表中不可见,需经 WinRT 枚举;两条链路各自可用,故一并提供。
安装与启用¶
从源码目录安装(路径换成你本机实际目录):
dsh plugin add E:\path\to\dsh-win-pronounce
或在 DSH 桌面端:设置 → 插件 中选择本地目录安装,然后在插件列表里开启 语音播报 / Voice output。装完即生效,无需重启宿主。
安装前建议自行浏览仓库源码与 MIT 许可证;插件以当前 DSH 进程权限运行,会启动本机 powershell.exe 做 TTS。
典型用法¶
- 按上文方式安装并开启插件。
- 在输入栏权限控件右侧点喇叭,在弹层里打开总开关,选择音源并调节语速、音量;可用「试听」确认效果。
- 若系统里新装了语音(设置 → 时间和语言 → 语音 → 添加语音),在弹层点「刷新」重新枚举。
- 总开关打开后,助手在合适场景可调用
speak,传入短句text;需要立刻静音时点弹层「停止」或关闭总开关(关闭后speak不再可用)。
宿主提供同源 HTTP 路由(POST 需带 x-dsh-win-pronounce: 1,且 Origin 的 host 与 Host 一致),供前端读状态与改配置,例如 GET /dsh-win-pronounce/state、POST /dsh-win-pronounce/config 等,细节见仓库 README。
适用场景与注意¶
适合:在 Windows 上本地使用 DSH、希望助手偶尔朗读短回复、且不愿为 TTS 单独接云服务或外发文本的开发者与用户。
限制(来自官方 README):
- 仅 Windows,依赖 .NET
System.Speech、WinRT 语音合成与powershell.exe。 - 只适合短句;长文本既占用单个 PowerShell 子进程,也不符合插件设计(系统提示也约束不念代码和表格)。
- 一次一段播放,不适合当作长文有声书引擎。
结尾¶
dsh-win-pronounce 把 Windows 已有语音接到 DSH 对话流里:一枚喇叭键、一个可开关的 speak 工具、SAPI 与 OneCore 双源枚举,全程本机完成。进一步了解可查看 SkillHub 目录页 与 GitHub 仓库。