DeepSeek Harness 插件

dsh-qwen-voice

Voice control and multi-session task dispatch for DeepSeek Harness, powered by Qwen Audio Agent(英文原文)

跳到安装方式

来源信息

GitHub 仓库
leaveimagination/dsh-qwen-voice
最近更新
2026年8月20日
分类
自动化与任务
GitHub stars
1
载体类型
plugin
目录证据
上游声明已找到 dsh.bundle
证据路径
package.json#dsh.bundle
核对版本
0.1.0-rc.8
上游核对日期
2026-08-20

该证据由上游目录提供。本站没有安装、运行或安全审核这个插件。

安装

默认先复制一段 Prompt,让 Agent 读 GitHub 仓库和源码;需要自己装时再切到命令。

复制这段 Prompt,发给 DSH、Codex 或其他 Agent,让它先读 GitHub 仓库和源码。

请先不要安装或执行任何命令。阅读这个插件的 GitHub 仓库、README 和关键源码,然后用清楚、直接的方式回答以下问题,帮助我判断它是否适合我的需求:

1. 这个插件是什么,解决什么问题;
2. 适合哪些用户和典型使用场景;
3. 安装后如何使用,并给出一个最小使用示例;
4. 有哪些已知限制,以及隐私、安全、兼容性或维护风险;
5. 给出“推荐 / 有条件推荐 / 不推荐”的明确建议和理由。

请区分仓库明确说明、根据源码推断和未知信息。证据不足时请明确说明,不要猜测或照抄 README。

GitHub:https://github.com/leaveimagination/dsh-qwen-voice
插件名:dsh-qwen-voice
作者:leaveimagination

检查来源文件

安装前先看这个插件目录里的 README 和其他文件。

文件资源管理器4 个文件
README.md来源说明 · 只读预览
README 语言

DSH Qwen Voice

简体中文 | English

这是一个基于 Qwen Audio Agent 构建的 DeepSeek Harness Web 实验性语音控制插件。

> 当前 1.0.0 只连接 DeepSeek Harness Web: > http://127.0.0.1:3080。可以从 GitHub 独立安装,但首次使用仍需提供 > DashScope API Key,并在网页中选择一个真实会话作为 Coordinator。

> 如果没有 Qwen Audio Agent,就不会有这个项目。本项目使用 Qwen Audio > Agent 作为实时语音引擎,并在其基础上增加 DeepSeek Harness 插件界面、 > ACP 桥接和多会话任务路由。衷心感谢 Qwen Audio Agent 的维护者和所有贡献者, > 感谢他们将优秀的实时语音 Agent 能力开源给社区。

插件会在 Harness 页面加入一个悬浮语音球。切换 DSH 会话时,实时语音连接不会 断开。用户可以在同一个浏览器标签页中,通过语音创建、继续和调度多个有名称的 DSH 会话,并在悬浮面板中查看任务状态。

主要功能

  • 切换 Harness 会话时保持实时语音连接;
  • 通过自然语言创建、继续和调度多个 DSH 会话;
  • 在一个浏览器标签页中并行安排多个任务;
  • 显示最新任务及其执行状态;
  • 支持中断语音播放;
  • 中断任务时显示处理中状态,并根据 Gateway 返回结果确认成功或报告失败;
  • 任务完成后及时播报,不必等待全部任务结束;
  • 通过播放状态回执减少重复播报;
  • 根据任务目标生成更容易识别的侧边栏会话名称。

运行环境

  • DeepSeek Harness Web 0.1.0-rc.6(当前开发环境也验证过 0.1.0-rc.7
  • Node.js 22.22.2+24.15.0+26+
  • npm 10+ 与 pnpm
  • 提供 Windows 启动脚本;插件和 ACP 桥接本身使用跨平台 Node.js

本项目是社区集成,不是 DeepSeek 或 Qwen 的官方版本。两个上游项目仍在快速 迭代。项目已经内置并锁定经过验证的 Qwen Audio Agent Runtime,用户不需要 另外安装、升级或选择 Qwen Audio Agent 版本。

当前支持范围

本项目把“实时语音前台”和“后台任务 Agent”分开处理。目前正式支持:

  • 实时语音前台:DashScope Qwen-Audio-Realtime,包括

qwen-audio-3.0-realtime-plus(默认)、 qwen-audio-3.0-realtime-flashqwen3.5-omni-flash-realtimeqwen3.5-omni-plus-realtime

  • 可选实时语音前台:Qwen Audio Agent 上游提供的 Hugging Face

speech-to-speech 本地前台;

  • 后台任务 Agent:DeepSeek Harness Web,通过本项目的 ACP Bridge 创建、继续、

查询、取消和重定向 DSH 会话任务。整条链路固定使用 127.0.0.1:3080, 不会自动探测或连接同时运行的 Desktop 实例,避免会话状态分裂。

当前不支持直接使用 OpenAI Realtime、Gemini Live 或其他未在上游注册的 云端实时语音 Provider。后台 Agent 支持某个模型供应商,不代表实时语音前台也支持该供应商。

安装

Windows 一键安装(推荐)

先启动 DSH Web 并确认能打开 http://127.0.0.1:3080,然后执行:

git clone https://github.com/leaveimagination/dsh-qwen-voice.git
cd dsh-qwen-voice
.\scripts\install.cmd

安装器会检查 Node.js、按需安装 pnpm 11、安装依赖、应用 Qwen 兼容补丁、 构建并注册两个 DSH 插件,然后以隐藏输入方式询问 DashScope API Key,最后启动 语音 Runtime。真实 Key 只会写入本机 %USERPROFILE%\.config\qwaudio\config.env,不会进入仓库。

需要只安装、不立即启动时:

.\scripts\install.cmd -SkipStart

前置要求

依赖版本
Node.js22.22.2+24.15.0+26+
pnpm10+(推荐 11.x
DeepSeek Harness Web0.1.0-rc.6(已安装并运行在 127.0.0.1:3080

手动安装

# 1. 克隆并安装依赖(含锁定的 Qwen Audio Agent 1.10.0)
git clone https://github.com/leaveimagination/dsh-qwen-voice.git
cd dsh-qwen-voice
pnpm install

# 2. 应用兼容补丁 + 构建 + 注册到 DSH profile(默认 web)
pnpm setup

pnpm setup 会自动完成三件事:

1. 对项目内锁定的 Qwen Audio Agent 1.10.0 应用兼容补丁(不会动全局安装); 2. 安装 ACP Bridge 依赖并执行类型检查、构建; 3. 通过 DSH CLI 把插件注册到 --profile web(可用 DSH_PROFILE 环境变量指定 其他 profile,例如 $env:DSH_PROFILE = 'voice-test')。

启动

pnpm start

启动整个语音 Runtime、Gateway 和 ACP Bridge(前台运行,按 Ctrl+C 停止)。 之后刷新 DSH Web 页面http://127.0.0.1:3080),右下角会出现悬浮语音球。

默认把启动命令所在目录作为 ACP 工作区。需要指定工作区时:

$env:ACP_WORKSPACE = 'C:\path\to\workspace'
pnpm start

配置语音凭证(必做)

默认语音前台使用 DashScope 实时语音,需要你自己的 API Key:

使用一键安装器时会自动引导配置。手动安装则编辑: %USERPROFILE%\.config\qwaudio\config.env 并设置(可参考仓库中的 config.env.example):

DASHSCOPE_API_KEY=sk-你的Key
QWEN_AUDIO_REALTIME_PROVIDER=dashscope
QWEN_AUDIO_REALTIME_MODEL=qwen-audio-3.0-realtime-plus

重启 pnpm start 使配置生效。

凭证只保存在本地配置中;仓库和浏览器插件包均不包含任何 API Key。

首次使用:绑定协调会话

打开语音面板,在目标 DSH 会话中点击「设为协调会话」。语音任务会由该 Coordinator 会话调度到多个子会话并行执行;切换 Harness 会话不影响语音连接。

故障排查

  • 页面没有悬浮球:确认 pnpm setup 成功、DSH Web 已重启、插件在

dsh plugin --profile web list 中可见。

  • Gateway 起不来:查看启动输出,确认 config.env

QWEN_AUDIO_REALTIME_PROVIDERdashscope(不支持其他值)。

  • 提示 DSH Web 不可达:先启动 DSH Web,并确认

http://127.0.0.1:3080 可以正常打开;当前版本不会回退到 Desktop。

  • 取消任务卡住:当前版本已修复取消死锁(v1.0.0+),如仍异常请附

Gateway 日志提 issue。

仓库的 GitHub Actions 会在全新的 Windows Runner 上重复执行依赖安装、补丁、 类型检查、构建、Bridge 测试和本地 CLI 检查,验证「克隆即装」的可靠性。

临时兼容补丁

pnpm setup 会对本项目内部锁定的 Qwen Runtime 应用带版本检查的兼容修改, 不会查询或修改电脑上的全局 Qwen Audio Agent:

  • 为同时发出的语音任务建立独立的协调通道;
  • 每个认证用户只保留一个长期 ACP Coordinator Session;
  • 允许固定的 DSH Web 本机回环地址访问 Gateway;
  • 安装带鉴权的本地 DSH Session API,并接入 Task Manager 生命周期;
  • 在任务快照中保留目标 Session 身份;
  • 存在旧的“继续时直接选第一个 Session”分支时将其禁用。

脚本遇到未知源码时会拒绝修改,并且可以安全地重复运行。重新安装项目依赖会 还原内部 Runtime;之后重新执行 pnpm setup 即可恢复完整接线。

仓库结构

路径作用
src/语音悬浮球插件源码(DSH client 插件)
bridge/ACP Bridge:把 DSH Web 会话暴露为 ACP 后端
tools/dsh-qwen-coordinator-tools/协调会话工具插件(coordinator 专用 DSH 工具)
scripts/安装/启动/兼容补丁脚本
cordis.patch.yml插件注册补丁

pnpm setup 会构建并注册 src/ 主插件和 tools/ 协调工具插件到同一个 DSH profile。

开发与验证

pnpm typecheck
pnpm build
pnpm --dir bridge test

ACP 桥接只允许访问本机回环地址。悬浮语音客户端默认连接 127.0.0.1:3101 的本地 Gateway。

已知限制

  • 当前开发预览版验证了 DSH Web 0.1.0-rc.60.1.0-rc.7
  • 当前版本不支持 DSH Desktop,也不支持 Web/Desktop 多实例自动切换;
  • 云端实时语音前台当前只验证了 DashScope Qwen Realtime;
  • Qwen 兼容补丁是临时方案,后续应尽量替换为上游正式扩展接口;
  • 会话名称根据语音任务目标生成,表达含糊时可能仍需手动重命名。

致谢

特别感谢 Qwen Audio Agent 团队和所有贡献者。 他们开发并开源了本项目赖以运行的实时语音前端、Gateway、音频传输、模型供应商 接入和 Agent 协调基础能力。本仓库的重点是将这些能力接入 DeepSeek Harness, 它不是对 Qwen Audio Agent 的替代品,也不是独立重写版本。

同时感谢 DeepSeek Harness 团队提供插件平台和开发者社区。

社区讨论

许可证

本项目采用 MIT 许可证。改编的 Qwen Audio Agent 音频传输逻辑记录在 NOTICE 中;Qwen Audio Agent 采用 Apache-2.0 许可证。重新分发本集成时,请保留相关 上游署名。

协调会话绑定

语音悬浮面板会显示当前 Coordinator。首次使用时,在目标 DSH 会话中点击 “设为协调会话”;需要更换时,在新会话中点击“由当前会话接管”并确认。 Session ID 由 DSH 当前会话状态提供并由 Gateway 再次验证,用户无需复制或编辑。

本地 rebind-coordinator 命令仅作为网页不可用时的灾难恢复手段。