前言¶
DeepSeek Harness (DSH) Desktop 旨在通过插件化架构扩展智能体的能力。在开发或使用过程中,开发者往往需要时刻盯着屏幕来确认模型的思考过程、执行状态或结果输出。dsh-voice-mini 是一个为此设计的语音反馈插件,它让助手通过 TTS 技术“说话”,而不是机械地朗读长文本,帮助用户通过听觉来跟踪任务进度和决策点。
这是什么¶
dsh-voice-mini 是 DeepSeek Harness 的语音反馈插件,由 CroissanTTs 维护。它解决了“如何让智能体主动告知用户当前状态”的问题。通过内置的 speak 工具和模板播报机制,插件支持模型决定说什么、状态播报以及原生 macOS 悬浮宠物等功能,提供从云端到本地的多种 TTS 后端支持。
核心功能¶
插件通过以下机制实现语音交互:
-
三种说话模式
- speak tool:由模型自主决定要说的内容(如结果、进度),以自然语言呈现,而非读出完整回复。
- readReplies:逐字朗读助手的消息(默认关闭),与
speak模式互斥。 - Verbalizer:在对话轮次结束后,轻量级 LLM 将回复重写为带情感色彩的单句(如“好消息,测试全过了”),支持流式生成。
-
状态广播
- 针对审批、提问、轮次开始/结束、待办事项等事件提供模板化播报。
- 包含针对异常结束(中断、阻塞、错误等)的专用短语。
-
会话语音
- 每个会话根据 FNV-1a 哈希自动分配一个独特的语音,并在速率上增加 ±6% 的抖动,无需手动选音。
-
听觉辅助
- Chimes:系统通知风格的提示音(如 macOS 玻璃音),在语音前播放。
- 监控面板:提供 Token 消耗、延迟、系统统计的 SVG 折线图视图。
- Native macOS Floating Pet:macOS 原生悬浮窗口,展示当前 utterance 和待处理事项。
-
TTS 后端
- 支持 edge(默认,云端,中英)、kokoro(本地,仅英文)、say(macOS 离线)、fake(测试)四种后端。
安装与启用¶
安装过程涉及构建和配置链接:
- 构建插件
在插件目录下执行构建命令:
npm run build
这将生成 `lib/client.js` 和必要的配置文件。
- 构建原生宠物(可选,仅 macOS)
如果需要使用原生悬浮宠物功能,需要使用 Swift 构建:
DEVELOPER_DIR=/Library/Developer/CommandLineTools swift build --package-path pet -c release
- 链接到 DSH 配置
在 DSH 的package.json中添加依赖并指定入口:- 在
dependencies中添加link:依赖项。 - 在
bundle中指定entry指向./cordis.patch.yml。 - 重启 DSH Desktop。
- 在
典型用法¶
插件通过预设和配置实现不同场景的语音反馈:
-
配置预设
通过设置面板或 API 配置三种预设:- 即时:语音速率 +18%,播报每一步。
- 默认:速率 0%,仅在交付结果或遇到阻塞时播报。
- 少量:速率 -5%,音量 -30,仅播报审批和提问,助手保持静音(仅播放提示音)。
-
处理阻塞事件
模型无法继续执行时(如需要用户输入),使用模板播报提示用户,避免模型等待时无声音。 -
切换语言
插件支持全流程的 zh/en 国际化切换。UI 文本、播报短语和 Verbalizer 提示词均受 locale 控制,可在设置面板中手动覆盖自动检测的浏览器语言。 -
验证功能
使用测试脚本验证 TTS 和路由功能:
npm test
适用场景与注意¶
该插件适合需要多任务处理、依赖听觉监控任务进度的开发者或用户。
- 网络依赖:使用
edge后端需要互联网连接;kokoro为本地推理但仅支持英文。 - 模式互斥:
readReplies和speak模式不能同时开启。 - 系统要求:原生悬浮宠物功能需要 macOS 环境且能成功编译 Swift 代码。
- 权限与安全:插件以 DSH 进程权限运行,安装前请检查源码与许可证(MIT)。
结语¶
dsh-voice-mini 通过将模型决策与状态模板分离,为 DeepSeek Harness 提供了灵活的听觉反馈层。无论是通过云端 TTS 还是本地离线方案,它都能让智能体的交互从屏幕延伸到听觉,提升使用体验。