motongv
dsh-voice
Voice input + Edge-TTS read-aloud plugin for DeepSeek Harness
- Stars
- 0
- Language
- JavaScript
- Created
- Aug 14, 2026
- Updated
- Aug 15, 2026
Introduction
@motong/dsh-voice
这是 DeepSeek Harness(DSH)专属插件,安装:
dsh plugin --profile web add @motong/dsh-voiceEnglish readers: README.en.md
给 DeepSeek Harness(DSH / DeepSeek Hermes) 加语音能力的社区插件,装完即用、无需任何 API Key:
- 语音输入:输入框工具行多一个 🎤 麦克风按钮,点一下说话,识别出的文字自动填入输入框(语音转文字)。
- 语音输入快捷键:默认
Ctrl+Shift+空格,可在 设置 → 语音 里改(支持组合键录制)。 - 语音输入方式:可选「点击切换」或「按住说话(松开停止)」,像微信语音那样按住就说。
- 回答朗读(自然音色):每条 AI 回答下方多一个 ▶ 朗读按钮,用微软 Edge 神经网络语音朗读,比系统机械音自然得多,可在 设置 → 语音 里换音色、试听。
效果
| 位置 | 按钮 / 键 | 功能 |
|---|---|---|
| 输入框工具行(左侧) | 🎤 麦克风 | 点击开始聆听,说话 → 自动填入输入框 |
| 任意会话(全局) | Ctrl+Shift+空格(可改) | 唤起/停止语音输入 |
| 设置 → 语音 | 录制按钮 / 音色下拉 / 试听 | 改快捷键、换音色、试听 |
| AI 回答动作条(复制按钮旁) | ▶ 朗读 | 点击朗读这条回答,再点 ■ 停止 |
安装
DSH 专属插件,不是通用浏览器扩展。
方式 A(已发布到 npm)
dsh plugin --profile web add @motong/dsh-voice
然后重启 DSH 生效(依赖 ws 由 npm 自动安装)。
方式 B(本地安装)
-
把本包拷贝到 profile 的依赖目录:
~/.dsh/profiles/web/node_modules/@motong/dsh-voice/ -
确保
ws也在 profile 的 node_modules 里(朗读合成需要它):~/.dsh/profiles/web/node_modules/ws/若没有,可复制一份
ws@8.x进去,或在该目录执行npm install ws@8。 -
在
~/.dsh/profiles/web/package.json里加依赖并把"@motong/dsh-voice"加进dsh.profile.bundles:{ "dependencies": { "@motong/dsh-voice": "^0.4.1" }, "dsh": { "profile": { "bundles": ["@deepseek-ai/dsh-base", "@deepseek-ai/dsh-web-app", "@motong/dsh-voice"] } } } -
重启 DSH,刷新页面即可。
使用
- 语音输入(按钮):进入会话后点输入框左侧的 🎤,对着麦克风说话(默认中文),说完自动停止并填入输入框。
- 语音输入(快捷键):按
Ctrl+Shift+空格(或你改过的键)唤起/停止。 - 改快捷键:设置 → 语音 点按钮后,先按住修饰键(Ctrl/Shift/Alt)再按主键即可录制组合键,Esc 取消。
- 语音输入方式:设置 → 语音 可选「点击切换」或「按住说话」;选「按住说话」后,长按 🎤 或长按快捷键即说话,松开停止。
- 换音色 / 试听:设置 → 语音 里选音色(默认「晓晓」),点「试听」立即听效果;音色即时生效。
- 恢复默认:设置 → 语音 底部点「恢复默认设置」,一键还原快捷键、音色、输入方式。
- 朗读:在任意已完成的 AI 回答下方点 ▶,浏览器播放合成语音;点 ■ 停止。
可选音色
| 音色 | 说明 |
|---|---|
| 晓晓 zh-CN-XiaoxiaoNeural | 女声,温柔自然(默认) |
| 晓伊 zh-CN-XiaoyiNeural | 女声,活泼 |
| 云希 zh-CN-YunxiNeural | 男声,年轻 |
| 云健 zh-CN-YunjianNeural | 男声,激情 |
| 云扬 zh-CN-YunyangNeural | 男声,新闻播报 |
| Jenny / Guy | 英文女/男声 |
原理
- 语音识别:浏览器原生
SpeechRecognition(Chrome/Edge 完整支持)。 - 朗读:插件在 DSH 内部挂路由
/_dsh/voice/tts,按 edge-tts 的协议(wss + Sec-MS-GEC + SSML)向微软 Edge 语音服务合成 MP3 回传,浏览器用<audio>播放。 - 快捷键 / 音色走 DSH 的
settings命名空间voice(存settings.yaml),浏览器侧用settingsScope+localStorage读写。
麦克风 → SpeechRecognition → 填入输入框
回答文本 → /_dsh/voice/tts → 微软 Edge 神经网络 TTS → MP3 → 播放
常见问题
Q:点了 🎤 没反应 / 提示“不支持语音识别”? 换用 Chrome 或 Edge,并在浏览器里授权麦克风。
Q:朗读失败 / 没声音?
朗读需要联网(调用微软 Edge 语音服务)。若网络/代理拦截 speech.platform.bing.com 会失败,换成可直连网络即可;音色可在 设置 → 语音 切换。
Q:会不会上传回答内容? 朗读时回答文本会发送给微软 Edge 语音服务以合成音频;语音识别由浏览器厂商处理。本插件不接触、不存储任何密钥。
开源 & 发布
本插件以 MIT 开源。发布到 npm 供大家安装:
npm login
npm publish --access public
发布后,其他用户即可 dsh plugin --profile web add @motong/dsh-voice。
致谢
朗读合成协议参考了 rany2/edge-tts(MIT License)。