dsh-fairy-wake:DSH 唤醒词语音输入

前言

在 DeepSeek Harness(DSH)里发消息,常见路径仍是键盘:切到输入框、打字、回车。官方实验性语音输入 Bundle 已经能在输入框里点麦克风做本地听写,但那是「先点再讲」——双手占着别的窗口时,多一步点击就打断节奏。若你用的是 Fairy 桌面一类布局,更希望像语音助手那样:麦克风常开,听到固定唤醒词再录下一句指令并送进会话。

下面介绍社区插件 dsh-fairy-wake(仓库 AzhaI114514/dsh)。它在客户端侧做唤醒词监听,命中「你好Fairy」或单独说「Fairy」后,用同一套官方 SenseVoice 本地识别转文字,默认直接发送;也可在设置里改为只插入草稿。维护者为 AzhaI114514,分类为客户端插件,与 dsh-fairy-zzz 皮肤、dsh-tts-bridge 等互补,不依赖它们。

这是什么

dsh-fairy-wake(package 名 dsh-fairy-wake,当前版本 0.1.1,MIT 许可证)是仅运行在 DSH Web 客户端侧的插件:通过 cordis.patch.yml 挂进 profile 的 bundle 层,在已打开会话的输入框区域挂载 🎙 状态标签,并在设置里提供「语音唤醒」面板。

它解决的是「免按键、用唤醒词触发听写并提交」:识别走 Host CPU 上的 SenseVoice(与官方 experimental voice-input 同一服务),不联网、不需要额外 STT API。

依赖与环境

使用前需满足:

  • DSH 0.2.1 系列(Web GUI);package.json 中 engines.dsh 为 >=0.2.1-rc.1,Node >=22。
  • 官方 experimental voice-input bundle(desktop/web profile 的 dsh.profile.bundles 里通常已带):
  • @deepseek-ai/dsh-experimental-voice-input-bundle
  • @deepseek-ai/dsh-experimental-api-speech-to-text
  • @deepseek-ai/dsh-experimental-speech-to-text-sensevoice
  • SenseVoice 模型(约 240 MB):首次启用会自动准备;也可先在输入框点一次官方麦克风按钮完成安装。

核心功能

  1. 常开麦克风 + 能量 VAD 切句:预卷 420ms、尾静音 720ms、单句上限 12s;每句降采样到 16 kHz,编码 PCM16 WAV,经 ctx.remote.speech.transcribe 走 SenseVoice。
  2. 唤醒词:默认匹配「你好Fairy」前缀,或单独说「Fairy」;对转写误差做了容错(如 fairy、fary、法瑞、菲瑞等)。一句里同时带唤醒词和指令时,会去掉唤醒词再处理指令。
  3. 默认直接发送:识别结果通过官方 inputActions.insertText 写入并 submit();设置里可关闭「识别后直接发送」,退回只插入草稿。
  4. 可配置:设置 → 语音唤醒:总开关、直接发送、自定义第一唤醒词。

状态标签会反映:语音唤醒已关 / 准备语音模型… / 说「你好Fairy」或「Fairy」 / 在听… / 请说指令… / 识别中… / 唤醒出错(点标签可重试)。

安装与启用

推荐一条命令(需本机已安装 Git,github: 方式):

dsh plugin --profile desktop add github:AzhaI114514/dsh

装完后重启一次 DSH,设置里会出现「语音唤醒」。插件自带 cordis.patch.yml,dsh plugin add 会自动挂进 profile,一般不必手改 profile 的 cordis.patch.yml。

无 Git 时:到 Releases 下载 dsh-fairy-wake-0.1.1.zip,拖进 DSH 窗口安装。若拖入失败,解压到 ~/.dsh/plugins/ 后执行:

dsh plugin --profile desktop add link:<解压出来的那个目录>

DSH 生态里插件以当前 DSH 进程权限运行;安装前建议在 GitHub 查看源码与 LICENSE,确认符合你的环境策略。

典型用法

操作 结果
说「你好Fairy」或「Fairy」 🎙 变为「请说指令…」,开始听下一句
说「你好Fairy,现在几点」或「Fairy,现在几点」 一句内带指令时直接识别,唤醒词去掉后直接发送(默认)
唤醒词后再说指令 同样直接发送(或按设置只插入)
设置 → 语音唤醒 开关、直接发送、自定义第一唤醒词

唤醒词后停顿约 0.7 秒再讲指令,匹配效果通常更好。识别是「切段 + 转写后匹配」,不是专用 KWS 模型,嘈杂或语速过快可能漏检。

适用场景与注意

适合:已在 DSH desktop profile 使用、需要本地 STT、希望 Fairy 桌面风格下「喊一声再下指令」的开发者或日常用户。

限制(README 已说明):

  • 麦克风常开,占用默认输入设备;与官方输入框麦克风按钮同时用可能抢麦。
  • 只在已有 session 的会话页输入框挂载;空白「新会话」页不会监听,发出第一条消息后自动挂载。
  • 首次需下载 SenseVoice;下载失败可先点官方麦克风完成安装,再点 🎙 重试。
  • 需允许 Electron/系统麦克风权限;拒绝后点 🎙 可重试。

社区插件目录见 SkillHub 条目(独立站点,与 DeepSeek / 幻方无官方从属关系)。

结尾

dsh-fairy-wake 把 DSH 官方 SenseVoice 听写接到固定唤醒词流程上,默认一句话进会话,设置可退回「只填草稿」。若你已在用 DSH 0.2.1 与 experimental voice-input bundle,可按上文命令安装并重启验证。

  • 目录页:https://www.skillhub.cn/plugins/AzhaI114514/dsh
  • 源码与说明:https://github.com/AzhaI114514/dsh
羽毛球分组比赛记分
小程序二维码

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

Xiaoye