前言¶
DeepSeek Harness (DSH) 的插件化架构允许在 Web GUI 中扩展功能。针对长文本输入效率的问题,dsh-voice-input-plugin 提供了一种通过 Web Speech API 在本地进行语音转文字的方案。它不占用 Host 能力,也不上传音频到后端,直接在浏览器端完成识别与草稿写入。
核心定位¶
这是一个零依赖、无构建步骤的插件。插件通过 dsh.bundle 注册配置层,通过 dsh.client 声明浏览器端的实现。它使用浏览器的原生 Web Speech API,将麦克风采集的音频转换为文本,并实时写入 DeepSeek Harness Web GUI 的输入框工具行。
核心功能¶
- 实时逐字转写:说话时文字实时出现在待发送框。
- 本地处理:不上传音频到后端,不注册任何模型工具或服务。
- 编辑兼容:识别过程中可继续使用键盘编辑文本。
- 集成工具行:在输入框发送按钮一侧追加一个麦克风按钮。
安装与启用¶
安装该插件需要 dsh 版本 >=0.1.0-rc.5。
dsh plugin --profile web add github:zRa1ny/dsh-voice-input-plugin
安装后必须重启 Web Profile 才能生效,客户端模块登记表会缓存元数据。
注意:npm registry 上存在同名包,那是另一个实现。请使用上述 GitHub 地址安装。
典型用法¶
- 开始录音:点击输入框工具行里的麦克风按钮,按钮变红并出现脉冲光圈。首次使用会弹出麦克风权限请求,需允许。
- 说话与编辑:说话时文字实时出现在待发送框。用户可以随时用键盘继续编辑文字。
- 结束录音:再次点击按钮(图标变为停止方块)结束录音。
- 发送:点击原有的发送按钮,将识别结果发送。
适用场景与注意¶
- 浏览器兼容性:仅支持 Chrome 和 Edge 浏览器。Firefox 和 Safari 缺少
SpeechRecognition支持,按钮会置灰。 - 网络要求:Chromium 内核使用在线识别服务,需要联网。
- 权限管理:如果浏览器拒绝麦克风权限,功能不可用,需在地址栏侧重新允许。
- 语言与标点:识别语言跟随浏览器设置(
navigator.language),默认取不到时使用zh-CN。不解析口述标点命令,直接采用浏览器返回的文本。文案为中文写死,不支持多语言。 - 会话隔离:一次录音只属于当前会话。切换会话会中止识别并释放麦克风,已识别文字保留在当前会话草稿中。
生态背景¶
本插件遵循 MIT 许可证,由社区开发者 zRa1ny 维护。DSH 理念是“一切皆插件”,社区目录与 DeepSeek 官方无从属关系。
- 仓库地址:https://github.com/zRa1ny/dsh-voice-input-plugin
- 目录页:https://www.skillhub.cn/plugins/zRa1ny/dsh-voice-input-plugin