dsh-dsgirl:为 DeepSeek Harness 接入听、看与桌面操作(Windows)

前言

DeepSeek Harness(DSH)通过插件把工具暴露给模型,但默认进程既听不到系统播放的内容,也看不到屏幕,更无法在 Windows 桌面上替用户点按。若要在工作流里做「听到一句话再决策」「截屏给模型看」「配合 RPG Maker 类游戏读状态并按键」,通常要自行接 WASAPI、Whisper、截屏与本地桥接服务,和 DSH 的 Cordis 配置也要对齐。

下面介绍社区插件 dsh-dsgirl(维护者 xiazhiyehuo),在 Windows 上为 Harness 增加本地语音转写、截屏与可选的游戏桥接操作,纯 CPU 运行,不依赖显卡。插件归类为「工作流」,可在 SkillHub 目录页 查看条目;社区目录为独立站点,与 DeepSeek / 幻方无官方从属关系。

这是什么

dsh-dsgirl 的定位是:给 DeepSeek Harness 装上耳朵、眼睛和手——听见系统在放什么声音、看见屏幕、并在配合游戏桥接时在电脑上替玩家按键。音频采集走 WASAPI,仅支持 Windows(package.json 中 os 为 win32)。许可证为 MIT,当前包版本 0.1.0,要求 Node.js >= 20。

核心功能

插件通过 Cordis 向模型注入一组工具(inject: [tools])。README 中列出的能力如下。

工具 作用
hear 截取最近 N 秒声音转成文字,并判断「人说话 / 音乐 / 环境音 / 静音」,附带响度、BPM
mic_status 麦克风自检:默认设备、是否静音、音量、是否被别的软件占用
see 截屏作为图片送进模型视野,可选坐标网格叠加
game_state 读游戏状态:场景、地图、坐标、血量、金币、当前对话
game_press 替玩家按键:确认 / 取消 / 菜单 / 方向键
game_move 让角色走几步,返回实际移动格数

game_* 需要游戏侧配合:把仓库中的 gamebridge/GameBridge.js 放进游戏的 js/plugins/,在 js/plugins.js 注册一行。游戏启动后会在 127.0.0.1:7311 开一个本地接口。

hear 成功时返回结构示例(节选):

{
  "ok": true, "source": "ring(5s)", "duration": 5.0,
  "text": "听得清楚吗", "lang": "zh",
  "sonic": { "loudness_db": -30.6, "bpm": 80.0, "sounds_like": "人声/对白" }
}

README 说明:回环采集只对系统正在播放的声音生效;单个音频文件需用 source: file。识别依赖 faster-whisper,不是「真听觉」——声音被翻译成文字,旋律和情绪主要靠特征数值描述。

安装与启用

1. 安装 DSH 插件

官方命令(web profile):

dsh plugin --profile web add github:xiazhiyehuo/dsh-dsgirl

也可手工:在 profile 的 package.json 里 dependencies 增加 "dsh-dsgirl": "link:<仓库路径>",dsh.profile.bundles 增加 "dsh-dsgirl",然后执行 pnpm install。

2. Python 依赖与 Whisper 模型

双击仓库内 scripts/setup.bat,或手动执行:

python -m pip install numpy sounddevice soundcard faster-whisper scipy
python python/download_model.py --size base

模型约 145MB(faster-whisper-base),不进仓库,首次由脚本下载。国内网络可在下载脚本中加 --mirror https://hf-mirror.com。

依赖要求:Windows + Python 3.10+。README 称在 20 核 CPU 上 5 秒音频约 1.5 秒转完。

3. 配置 Cordis

在 cordis.yml 的插件行中启用并可选指定 Python 路径:

- id: dsh-dsgirl
  name: 'dsh-dsgirl'
  inject: [tools]
  config:
    python: 'C:/Path/To/python.exe'   # 留空用 PATH 里的 python
    toolsDir: ''                       # 留空用仓库内 python/

环境变量:DSGIRL_MODEL_DIR 指定模型目录,DSGIRL_OUT_DIR 指定录音存档目录。

4. 重启 DSH

完成上述步骤后重启 DSH,工具应出现在 Harness 可用工具列表中。

两种听法

  • ring(推荐):常驻 python/ring.py,一直录最近 30 秒,hear 往回取,不易漏掉句子开头。
  • fresh:现场录 N 秒,实现简单,但启动慢半拍,头一两个字容易丢。

典型用法与注意

适用对象主要是 Windows 上的 DSH 智能体开发者:需要系统播放声转写、麦克风自检、截屏进模型,或与 RPG Maker 类游戏通过本地 7311 端口桥接时。

使用前请注意:

  1. 插件以当前 dsh 进程权限 运行,安装前应自行查看 GitHub 源码 与 MIT 许可证,确认可接受的行为范围(截屏、录音、按键等)。
  2. BGM 与人声混在一起时识别率会明显下降;口音重、语速快、专业词可能出错。默认 base 模型中文日常对话够用;要更准可换 python/download_model.py --size small(约 483MB,README 称慢约三倍)。
  3. 仅 Windows;Linux / macOS 不在 package.json 支持范围内。

结尾

dsh-dsgirl 把本地 Whisper 转写、WASAPI 环回、截屏与可选游戏桥接收成一组 DSH 工具,适合在 Windows 工作流里扩展「能听、能看、能动」。条目与说明以仓库 README 为准。

  • 目录页:https://www.skillhub.cn/plugins/xiazhiyehuo/dsh-dsgirl
  • GitHub:https://github.com/xiazhiyehuo/dsh-dsgirl
羽毛球分组比赛记分
小程序二维码

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

小夜