dsh-plugin-voice-input:DSH Web 输入框里的本地语音转草稿

前言

DSH 的理念是“一切皆插件”。在 Web 输入框中,逐字输入长句或中英夹杂内容并不方便;如果语音转文字依赖其他服务,还需要额外考虑服务接入。下面介绍 tangbut1/dsh-plugin-voice-input:在 DSH Web 输入框旁增加“按住说话”麦克风按钮,松手后在本机离线识别,并把结果追加到当前草稿。

这是什么

dsh-plugin-voice-input 是 DeepSeek Harness Web 语音输入插件,由 tangbut1 维护,采用 MIT 协议开源。

它解决的核心问题是:在 DSH Web 中用语音快速补充草稿,同时让 ASR 服务只运行在本机回环地址,识别结果不自动发送。

核心功能

按住说话,松开识别

  • 在输入框发送键同一行、靠发送键左侧增加“按住说话”麦克风按钮。
  • 按住按钮录音,松开后语音在本机离线识别。
  • 识别结果追加到当前草稿,不自动发送。

本机离线 ASR

  • 主机半边仅监听 127.0.0.1:18765 的本地 ASR HTTP 服务。
  • 使用 sherpa-onnx-nodeSenseVoice-Small INT8 模型离线识别。
  • 首次识别时自动下载约 229 MB 的 sherpa-onnx SenseVoice INT8 模型并解压。
  • 支持中文、英文、中英夹杂,以及日/韩/粤识别。
  • 语言自动检测(auto),不按会话固定语言。

按 DSH 官方方式插入草稿

  • 浏览器半边挂载官方 slot conversation.input.right
  • 使用官方事件 slash/input-insert-text 追加文本。
  • 插入草稿使用 draftRev CAS,不调用未公开 setDraft、不修改 textarea DOM。

安装与启用

从本地目录安装完整 UI 插件

将插件放在本地目录,例如:

D:\dsh\dsh-plugin-voice-input

执行:

dsh plugin --profile web add D:\dsh\dsh-plugin-voice-input

dsh plugin add 会修改 profile 清单;运行中的实例需要重启后生效。

启动 DSH Web 并查看按钮

dsh web --port 3080

打开:

http://127.0.0.1:3080

在发送键旁应能看到麦克风按钮。

只验证主机半边 ASR 服务

如果只想检查主机半边的 ASR 服务:

dsh web --patch D:\dsh\dsh-plugin-voice-input\cordis.dev.yml

然后检查服务健康:

Invoke-RestMethod http://127.0.0.1:18765/health

从 GitHub 安装

已核实资料给出的占位命令形式为:

dsh plugin --profile web add github:<owner>/dsh-plugin-voice-input

这里保留资料中的占位写法,不替具体用户补全。若使用 pnpm ≥10,需要将包名加入 pnpm-workspace.yamlallowBuilds

allowBuilds:
  dsh-plugin-voice-input: true

卸载插件

dsh plugin --profile web remove dsh-plugin-voice-input

典型用法

1、在 DSH Web 输入框中,按住发送键左侧的麦克风按钮说话。

2、松开按钮,等待本机离线识别完成。

3、识别结果追加到当前草稿。

4、检查草稿内容,再手动发送。

注意:这是按住-松开式整段识别,不是实时流式;长录音(>30 s)识别耗时变长。未集成 VAD,静音或过短录音会提示“未识别到语音内容”。

运行配置与限制

端口与来源限制

  • ASR 服务默认绑定:127.0.0.1:18765
  • 端口覆盖:DSH_VOICE_ASR_PORT
  • CORS 仅接受 localhost / 127.0.0.1 / ::1 / 内网地址来源页面

模型与系统依赖

  • 首次识别时自动下载约 229 MB 模型并解压。
  • 依赖 sherpa-onnx-node 原生扩展。
  • Windows 10+ 自带 tar.exe,用于模型解压。
  • 模型数据目录可通过 DSH_VOICE_DATA_DIR 覆盖。

适用场景与注意

适合在 DSH Web 中需要快速输入长句、中英夹杂内容,并优先把语音识别保留在本机的开发者。

安装前建议先检查源码与许可证。当前资料确认许可证为 MIT,但插件会以当前 dsh 进程权限运行,实际部署前仍应按环境要求确认插件代码与运行权限。

链接

GitHub:

https://github.com/tangbut1/dsh-plugin-voice-input

社区目录:已核实资料未提供可确认的目录页 URL,本文不给出猜测链接。DSH 社区目录为独立站点,不是官方应用商店。MIT 协议开源,欢迎提 Issue / PR。

羽毛球分组比赛记分
小程序二维码

欢迎使用《羽毛球分组比赛记分》微信小程序

Xiaoye