DSH Plugins Marketplace

DSH Plugins

Plugins

/

dsh-voice-bridge

q

dsh-voice-bridge

Discovered

Click on your desktop pet to make it speak, and the voice output automatically switches to DeepSeek tasks (works with dsh-pet).

Machine translated

dsh-voice-bridge · 大肥鱼语音桥

点一下桌面上的 大肥鱼 说话,再点一下,语音就变成 DeepSeek 里的一条任务。

适用于 DeepSeek Harness + 桌宠插件 dsh-pet(那只圆滚滚的蓝色大肥鱼)。

点击桌宠 ─→ 录音 ─→ 宿主 SenseVoice 识别 ─┬─→ 「打开某某网站/文件夹」→ 直接打开
                                          └─→ 其他 → 提交给 DeepSeek,桌宠跟着进入工作状态

不用额外装模型,也不用 API Key —— 语音转文字用的是 DSH 自带的能力。


运行原理与分流优先级

一次点击发生了什么

① 全局鼠标钩子看到「左键抬起」
      ↓ 只把坐标丢进队列,立刻返回(绝不阻塞鼠标)
② 工作线程判断:落点距桌宠中心 < 120px,且窗口属于桌宠进程?
      ↓
③ waveIn 开始录音(16kHz / 单声道 / PCM16),气泡「🎤 听着呢…」
      ↓ 再点一次(或满 20 秒自动结束)
④ POST /dsh-pet-7340/voice/hear —— 转文字走宿主自带的 SenseVoice
      ↓
⑤ 按下面的优先级分流
      ↓ 需要交给 DeepSeek 时
⑥ 切前台 → 点输入框 → Ctrl+V → 回车 → 等回合事件确认送达

桌宠插件(dsh-pet)一行代码都不用改,它只暴露本地 HTTP 接口给本项目调用。

分流:优先桥,办不到才交给 DeepSeek

一句话进来,按顺序判断,任何一步成功就结束:

优先级触发条件处理者
1说了「交给模型 / 转交 / 通过 deepseek」🤖 DeepSeek
2「通过浏览器 / 用浏览器」+ 站点名,或直接说站点名🌉 桥打开浏览器网页
3「打开 XX 文件夹 / 目录」「打开 X 盘」🌉 桥打开电脑文件夹
4「打开 XX 客户端 / 软件」🌉 桥启动已装程序
5前面全不命中,或者命中但办失败🤖 原样交给 DeepSeek

「办失败」也算:目录找不到、文件夹打不开、站点认不出来、客户端起不来、 一句话里除了"打开 X"还有别的要求(不能只做一半)。

设计原则一句话:桥只做确定能办到的事,做不成就把整句话原封不动交出去。

当前桥的两项主要能力就是:打开浏览器网页、打开电脑文件夹。


特性

类别说明
🎙️ 点击说话点一次开始录音,再点一次结束并自动提交;20 秒自动收尾
🧠 用现成识别调 DSH 的 /voice/hear(SenseVoice,本地跑),零额外依赖
🌐 打开网站「打开哔哩哔哩 / steamDB / 知乎…」直接开浏览器
📁 打开文件夹「打开视频文件夹 / addons 文件夹」直接开资源管理器;打开过的名字会记成别名
🚀 启动客户端「打开网易云音乐客户端 / 打开 QQ」按注册表找到真实 exe 启动
🗣️ 复杂任务转交一句话里除了"打开X"还有别的(并、然后、下载…)就原样交给 DeepSeek
🎈 气泡播报识别中、已打开、已发送,都会出现在桌宠气泡里
🖥️ 全屏自动挂起检测到全屏程序 → 卸载鼠标钩子 + 隐藏桌宠,退出全屏自动恢复
🛡️ 反作弊保护检测到 SGuard / EasyAntiCheat / Riot 等在跑 → 不注入键鼠(否则可能被杀)

零第三方依赖:只用 Python 标准库 + ctypes。


环境要求

  • Windows 10 / 11
  • Python 3.9+(或用 DSH 自带的运行时,脚本会自动找)
  • 已安装 DeepSeek Harness 并启用桌宠插件 dsh-pet
  • DSH 里启用了语音输入能力(/voice/hear 可用;DSH 自带的 dsh-experimental-voice-input-bundle 即可)

安装

  1. 把整个文件夹放到任意位置(不要放在受限制的目录,例如某些沙箱/同步目录)

  2. 双击 start.cmd

    会打印一段状态,看到这样就成功了:

    ---- bridge status ----
    version=v3.8
    pid=12345
    hook=installed
    -----------------------
    
  3. 点一下桌宠,说话,再点一下。

⚠️ 必须从资源管理器双击。在沙箱化终端里运行会拿不到键鼠注入权限。


用法

动作结果
点桌宠气泡 🎤 听着呢…,开始录音
再点一次结束录音 → 识别 → 提交(或直接打开目标)
双击 stop.cmd停止
双击 restart.cmd重启(改代码后必须,Python 不会热加载)
双击 doctor.cmd体检,逐项打印能力

分流规则见前面的「运行原理与分流优先级」一节。

语音识别走样

英文专有名词容易被听错,下面这些变体都已容错:

你说的可能被识别成是否可用
DeepSeekdeep sick / 地铺seek / 迪普seek✅
SteamDBteamDB / steam db✅
语音桥语音条✅
NVIDIA音伟达✅

实在听不准就说中文口令:「交给模型」、「打开脚本文件夹」。


配置

别名表 aliases.json

打开成功一次会自动记住"名字 → 路径"。也可以手写:

{
  "视频": "D:\\Videos",
  "addons": "E:\\SteamLibrary\\steamapps\\common\\Left 4 Dead 2\\left4dead2\\addons",
  "语音桥": "D:\\tools\\dsh-voice-bridge"
}

匹配规则:后缀优先(说「求生之路2的补丁」时,结尾的"补丁"优先于前面的"求生之路2")。

环境变量

变量默认用途
VOICE_BRIDGE_RADIUS120点击判定半径(像素)
VOICE_BRIDGE_COMPOSER_X0.55输入框水平位置(窗口宽度比例)
VOICE_BRIDGE_COMPOSER_Y130输入框距窗口底边像素
VOICE_BRIDGE_PET_WAIT120启动时等桌宠出现的上限(秒)
VOICE_BRIDGE_PET_MISS3连续几次看不到桌宠就退出
VOICE_BRIDGE_SEARCH_FALLBACK0设 1 时,认不出的站点改用 Bing 搜索
VOICE_BRIDGE_OPEN_SITES1设 0 关闭"打开网站/文件夹"直连

已知限制

  • 录音上限 20 秒(接口硬限制 768 KiB ≈ 24 秒)
  • 点击判定是圆形区域,不是像素级贴合鱼身
  • 提交靠键鼠自动化:会切前台、点输入框、粘贴、回车
  • 反作弊会在跑时不注入:SGuard / EasyAntiCheat / Vanguard 等检测到模拟输入会杀进程
  • 全屏时不工作:钩子和桌宠都会被挂起(这是设计,不是 bug)

低级鼠标钩子的性能铁律(踩过的坑)

WH_MOUSE_LL 的回调跑在所有鼠标事件的必经路径上:回调慢 1ms,全系统鼠标慢 1ms;超过系统超时还会被 Windows 静默卸载,表现是"点了没反应"。

所以回调里只能把坐标塞进队列然后立刻返回。命中判定(含 HTTP)、日志、触发会话全部放在后台线程。

曾经把一次 HTTP 查询(83ms)放在回调里,导致全系统鼠标卡顿,还被 Windows 卸钩子。


排查

日志在本目录 bridge.log,异常在 crash.log。

现象原因
点了没反应钩子没装上(看 [钩子] 安装失败),或点在判定圈外
鼠标整体变卡回调里有阻塞操作(见上面的铁律)
气泡"没听清"录音太短/太轻,或宿主识别器没启用
气泡"已发送但未确认"消息可能已送达但没等到回合事件;文字会自动进剪贴板
进程无声消失大概率被反作弊杀掉;看 status.txt 是否停止更新
桥连不上桌宠DSH 重启换了端口 —— 正常情况会自动重新发现

体检:python voice_bridge.py --doctor 自测:python selftest.py --with-open


与 dsh-pet 的关系

本项目不修改 dsh-pet,只调用它暴露的本地 HTTP 接口:

  • GET /dsh-pet-7340/state、/pose —— 读状态与宠物坐标
  • POST /dsh-pet-7340/voice/hear —— 语音转文字(走 DSH 的识别能力)
  • POST /dsh-pet-7340/broadcast —— 往气泡里说话
  • POST /dsh-pet-7340/sleep —— 全屏时让它睡觉

所以升级或重装桌宠插件不会影响本项目。


许可

MIT。详见 LICENSE。

第三方声明:本项目仅通过 HTTP 与 dsh-pet(MIT)交互,不包含其代码或素材。

Comments

Loading…

Similar plugins

dsh-deepseek-pet

by txlznbzsdj-collab

DeepSeek 小蓝鲸桌宠 DSH 插件:模型可调用 pet_say 命令桌宠说话,桌宠同步对话开始/结束(思考/庆祝)

Just for FunManifest valid

★ 3

MIT

JavaScript

Aug 18, 2026

dsh plugin --profile web add dsh-deepseek-pet

by alybg

DeepSeek Harness 部署级桌宠:右下角随 Agent 工作状态切换 GIF 动画,气泡实时显示 DeepSeek 余额与语音台词,可拖动、可点击互动,任务完成随机播放语音。

Manifest valid

★ 4

↓ 135.8k/wk

JavaScript

Aug 17, 2026

dsh plugin --profile web add dsh-pet

by dytom18

说话即任务:给 DSH Web GUI 加语音听写,说完自动发送给 Agent(纯前端,无需 API Key)

Development & InfrastructureTerminal & ClientsManifest valid

★ 0

MIT

JavaScript

Sep 18, 2026

dsh plugin --profile web add dsh-plugin-voice-dictation

by bbfang2025-cyber

大肥鱼语音:让 DSH 桌宠的气泡开口说话(在线 Breeze + 离线 Kokoro 中文女声)。

Tools & CapabilitiesVision & MultimodalManifest valid

★ 6

MIT

JavaScript

Nov 6, 2026

dsh plugin --profile web add dsh-pet-voice-fishy

by amaji61

仅配合 dsh-pet 桌宠使用:给宠物加上定时整屏截图、看图播报、与宿主智能体串行对话、窗口锁屏。不提供桌宠本身,需先安装 dsh-pet。

Terminal & ClientsManifest valid

★ 0

MIT

JavaScript

Oct 26, 2026

dsh plugin --profile web add dsh-pet-extras

by chaowei08

大肥鱼语音播报(桌宠音色版):模型一有输出,就让 dsh-pet 用它自己配置的音色念出来

Vision & MultimodalDevelopment & InfrastructureManifest valid

★ 2

MIT

JavaScript

Nov 9, 2026

dsh plugin --profile web add dsh-big-fish-speak