dsh-qwen-voice:給 DeepSeek Harness Web 加上即時語音控制

前言

用 DSH Web 做開發時,創建會話、切換會話、給會話下發任務,都要在頁面裏逐步點選。想同時推進幾個會話,就得在側邊欄來回切換。dsh-qwen-voice 把即時語音接進 Harness 頁面:說話就能創建、繼續和調度多個有名稱的 DSH 會話,而且切換會話時語音連接不斷開。下面介紹它的功能、安裝步驟和使用注意事項。

這是什麼

dsh-qwen-voice(leaveimagination/dsh-qwen-voice)是基於 Qwen Audio Agent 構建的 DeepSeek Harness Web 實驗性語音控制插件,採用 MIT 許可證,由社區成員 leaveimagination 維護,不是 DeepSeek 或 Qwen 的官方版本。

它把 Qwen Audio Agent 作爲即時語音引擎,在其上增加 Harness 插件界面、ACP 橋接和多會話任務路由。項目內置並鎖定了經過驗證的 Qwen Audio Agent Runtime(1.10.0),不需要另外安裝或選擇版本。

範圍上要注意:當前 1.0.0 只連接 DeepSeek Harness Web(http://127.0.0.1:3080),不支持 DSH Desktop,也不支持 Web/Desktop 多實例自動切換,不會回退到 Desktop。

核心功能

按已覈實的能力,可以分成三組。

語音交互:

  • 在 Harness 頁面加入懸浮語音球,切換 DSH 會話時保持即時語音連接不斷開;
  • 支持中斷語音播放。

多會話調度:

  • 通過自然語言創建、繼續和調度多個有名稱的 DSH 會話;
  • 在一個瀏覽器標籤頁中並行安排多個任務;
  • 協調會話(Coordinator)機制:可將某個 DSH 會話設爲協調會話,由它把語音任務調度到多個子會話並行執行;
  • 根據任務目標生成更容易識別的側邊欄會話名稱。

狀態反饋:

  • 顯示最新任務及其執行狀態;
  • 中斷任務時顯示處理中狀態,並根據 Gateway 返回結果確認成功或報告失敗;
  • 任務完成後及時播報,不必等待全部任務結束;通過播放狀態回執減少重複播報。

鏈路上,插件通過 ACP Bridge 對 DSH 會話執行創建、繼續、查詢、取消和重定向,整條鏈路固定使用 127.0.0.1:3080。懸浮語音客戶端默認連接 127.0.0.1:3101 的本地 Gateway,ACP 橋接只允許訪問本機迴環地址。

安裝與啓用

運行環境

  • DeepSeek Harness Web 0.1.0-rc.6(開發環境也驗證過 rc.7);
  • Node.js 22.22.2+、24.15.0+ 或 26+;
  • npm 10+、pnpm 10+(推薦 11.x);
  • 提供 Windows 啓動腳本,插件和 ACP 橋接本身使用跨平臺 Node.js。

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

只需要安裝、暫不啓動時:

.\scripts\install.cmd -SkipStart

手動安裝

先安裝依賴(含鎖定的 Qwen Audio Agent 1.10.0),再執行 setup 完成補丁、構建和註冊:

git clone https://github.com/leaveimagination/dsh-qwen-voice.git
cd dsh-qwen-voice
pnpm install
pnpm setup

pnpm setup 會應用兼容補丁、構建並把插件註冊到 DSH profile,默認 web,可用 DSH_PROFILE 環境變量指定其他 profile。這個補丁帶版本檢查,遇到未知源碼會拒絕修改;重新安裝依賴會還原內部 Runtime,之後需重新執行 pnpm setup 恢復。

配置語音憑證

插件需要自備 DashScope API Key。手動安裝時編輯 %USERPROFILE%\.config\qwaudio\config.env:

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

重啓 pnpm start 後生效。真實 Key 只寫入本機的這個文件,倉庫和瀏覽器插件包均不包含 API Key。

即時模型默認是 qwen-audio-3.0-realtime-plus,另有 qwen-audio-3.0-realtime-flash、qwen3.5-omni-flash-realtime、qwen3.5-omni-plus-realtime 可選。當前僅支持 DashScope Qwen Realtime 系列,不支持 OpenAI Realtime、Gemini Live 等未在上游註冊的雲端 Provider。

啓動

執行下面的命令,前臺啓動語音 Runtime、Gateway 和 ACP Bridge:

pnpm start

之後刷新 DSH Web 頁面(http://127.0.0.1:3080),右下角會出現懸浮語音球。

默認把啓動命令所在目錄作爲 ACP 工作區。需要指定工作區時,先設置環境變量再啓動:

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

首次使用:綁定協調會話

打開語音面板,在目標 DSH 會話中點擊「設爲協調會話」。之後語音任務由該協調會話調度到多個子會話並行執行。需要更換協調會話時,在新會話中點擊「由當前會話接管」並確認。

故障排查

兩個已在文檔中明確的檢查點:

1、確認插件在 dsh plugin --profile web list 中可見,否則頁面不會出現懸浮球;

2、Gateway 起不來時,檢查 config.env 中 QWEN_AUDIO_REALTIME_PROVIDER 是否爲 dashscope(不支持其他值)。

開發與驗證使用以下命令:

pnpm typecheck
pnpm build
pnpm --dir bridge test

適用場景與注意事項

適合的場景:在 Windows 上運行 DSH Web、需要在一個標籤頁裏並行推進多個會話、願意自備 DashScope API Key 的 DSH 用戶。

使用前請注意:

  • 這是實驗性的社區集成,當前版本只支持 DSH Web,不支持 Desktop;
  • 雲端即時語音前臺目前只驗證了 DashScope Qwen Realtime 系列;
  • 取消任務死鎖已在 v1.0.0+ 修復;
  • 插件以當前 dsh 進程的權限運行,安裝前建議先閱讀倉庫源碼和許可證。本項目採用 MIT,改編的 Qwen Audio Agent 音頻傳輸邏輯記錄在 NOTICE 中;Qwen Audio Agent 採用 Apache-2.0 許可證,重新分發本集成時需保留相關上游署名。

結語

dsh-qwen-voice 的價值在於把「切換頁面、點選會話」這一串操作換成語音指令,並通過協調會話機制在一個標籤頁裏並行調度多個 DSH 會話。社區目錄將其歸入「工作流」分類。如果你正在用 DeepSeek Harness Web 且需要同時盯多個任務,可以按上面的步驟試一試。

  • 目錄頁:https://www.skillhub.cn/plugins/leaveimagination/dsh-qwen-voice
  • GitHub:https://github.com/leaveimagination/dsh-qwen-voice
羽毛球分组比赛记分
小程序二维码

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

小夜