前言¶
DSH 的插件体系强调「一切皆插件」,Web GUI 的交互能力可以通过插件扩展。如果经常要在 DSH 的 Web GUI 里填写较长提示词,直接打字可能不如听写方便;已有做法通常是先调用外部转写工具,再把结果复制回输入框。下面介绍的 dsh-stt-input 插件把这一步放在 DSH 的 Web 输入框内:点击输入框旁的麦克风按钮开始录音,停止后把识别文字填入输入框。
这是什么¶
baisama-cloud/dsh-stt-input 是 DeepSeek Harness(DSH)Web GUI 的语音输入插件,许可证为 MIT。它解决的是在 DSH Web GUI 中把语音转成文字并写入输入框的问题。
插件注册了三项界面位:
输入框工具行的麦克风按钮
输入框下方的状态条
设置页中的「语音输入」配置项
核心功能¶
两种识别引擎¶
浏览器本地识别使用 Web Speech API(SpeechRecognition),Chrome/Edge 可用,零配置、无需 API Key,可边说边把中间结果写进输入框。
API 识别使用 MediaRecorder 录音,通过 OpenAI 兼容接口转写,支持 OpenAI、Groq 或自定义服务。使用的接口为:
/v1/audio/transcriptions
模型与配置¶
可选模型包括:
whisper-1
whisper-large-v3
whisper-large-v3-turbo
distil-whisper-large-v3-en
也可以使用自定义模型名。
可配置项包括:
服务预设
API Base URL
API Key
识别语言
写入方式:追加到输入框 / 替换输入框内容
状态与密钥保存¶
输入框下方显示实时状态条,包括录音计时、识别中状态与错误信息。
API Key 仅保存在页面内存中,不落盘、不打日志;非密钥配置通过 localStorage 在刷新后保留。
安装与启用¶
安装前确认 Node 环境满足:
node >=18.18
下面按 tarball 方式安装到 DSH web profile:
pnpm pack
# 把 dsh-stt-input-*.tgz 复制到 web profile 并添加依赖,
# 例如在 ~/.dsh/profiles/web 下:pnpm add ../path/to/dsh-stt-input-0.1.0.tgz
# 然后重启 `dsh web`。
先打包插件,再把生成的 tarball 添加到指定 web profile 的依赖中,最后重启 dsh web 使插件生效。
典型用法¶
1、打开 设置 → 语音输入 选择引擎。
2、如果使用浏览器本地识别,无需其他配置,仅支持 Chrome/Edge。
3、如果使用 API 识别,选择预设(OpenAI 或 Groq)、选择模型,并粘贴 API Key。Groq 的 whisper-large-v3 目前免费。
4、点击输入框旁的麦克风按钮开始录音,说话,再点一次停止;识别文字进入输入框,回车发送。
Firefox 请使用 API 引擎。
适用场景与注意¶
该插件适合在 Chrome/Edge 中使用浏览器本地识别,或需要调用 OpenAI 兼容 Whisper 服务的场景。写入方式可选择追加到输入框或替换输入框内容,适合对草稿输入已有内容的情况。
插件启用后会以当前 dsh 进程权限运行,安装前应检查源码、依赖与 MIT 许可证。
参考链接¶
社区目录页:https://www.skillhub.cn/plugins/baisama-cloud/dsh-stt-input
GitHub 仓库:https://github.com/baisama-cloud/dsh-stt-input
目录页为社区目录,独立站点,与 DeepSeek / 幻方无官方从属关系。