前言¶
在 DSH 的插件化用法中,web 客户端里的输入通常仍依赖键盘。如果你希望在聊天框直接口述,并让识别结果按普通聊天消息提交,同时不改变当前 agent 预设,dsh-voice 提供了这条路径。
它由 3274375092 维护,许可证为 MIT,npm 包名为 @nn12138/dsh-voice。
这是什么¶
dsh-voice 是 DeepSeek Harness 的语音输入插件:通过麦克风进行本地或浏览器语音识别,将识别文本作为普通聊天消息提交。
它定位为输入层能力:只提交识别文本,不修改 persona / system prompt,也不绑定特定预设,可在 code、standard、minimal、custom 等预设下使用。
核心功能¶
1、麦克风按钮与全局热键:提供麦克风按钮,并支持可配置的全局热键,默认为 Ctrl+Space。
2、实时识别:说话时回显流式部分转写;VAD 在停止时提交最终文本。
3、自适应双引擎:优先使用主机原生 ASR(sherpa-onnx-node zipformer2 + silero VAD),不可用时回退浏览器 Web Speech。
4、预设无关:不修改 persona / system prompt,适用于 code、standard、minimal、custom 等预设。
5、零配置可用:不额外安装离线运行时也能工作;如需要离线原生识别,可另行安装 sherpa-onnx-node 并下载模型。
安装与启用¶
先确认 Node 环境满足:
node ^22.19.0 || >=24.0.0
1、安装插件:
dsh plugin --profile web add @nn12138/dsh-voice
从 registry 安装 @nn12138/dsh-voice 时不执行生命周期脚本。
2、可选:安装离线原生识别依赖并下载模型:
dsh plugin --profile web add sherpa-onnx-node
dsh-voice-models
插件不会自动安装该运行时;模型下载约 100MB。
3、可选:修改 ~/.dsh/profiles/web/cordis.patch.yml 中 voice 的 config。可配置项包括:
~/.dsh/profiles/web/cordis.patch.yml
voice.config:
modelDir
hotkey
vadThreshold
tailPadSeconds
engine
修改配置后,重启 dsh web。
典型用法¶
1、启动 DSH web:
dsh web
2、在 composer 左侧点击麦克风按钮,或按默认热键 Ctrl+Space 开始语音输入。
3、停止后,插件把最终识别文本作为聊天消息提交。该过程只影响输入,不改变 agent 预设。
适用场景与注意¶
适合在 DSH web 中需要语音口述、但不希望改动 agent 预设或 system prompt 的使用者。若希望识别走本地原生 ASR,需要额外安装 sherpa-onnx-node 并运行 dsh-voice-models 下载模型。
需要注意:
- 插件以当前
dsh进程权限运行,安装前应检查源码、依赖和 MIT 许可证。 - 主机原生 ASR 不可用时,会回退到浏览器 Web Speech。
- 离线原生识别是可选路径,插件不会自动安装
sherpa-onnx-node。 - 不要把它理解成会修改 DSH agent 行为的插件;它只把识别文本提交为聊天消息。
资源¶
- 目录页:https://www.skillhub.cn/plugins/3274375092/dsh-voice
- GitHub:https://github.com/3274375092/dsh-voice
dsh-voice 的价值在于把麦克风输入接到 DSH 的普通聊天消息路径:零配置可用,需要本地离线识别时再扩展,同时保持预设不变。