dsh-voice-assistant:在 DSH 上跑 Windows 語音助手(候選 0.1.11)

前言

在 DSH 裏做帶麥克風的助手,難點往往不在對話模型本身,而在會話、工具權限、憑據和桌面音頻能否對齊:單獨寫一個小程序,很容易和原生聊天記錄脫節;純 Web 頁又難穩定佔用設備。vb2250158 維護的 dsh-voice-assistant(工作流類插件,當前包版本 0.1.11)把 DSH 原生會話當作「大腦」,用共用 SDK 跑語音循環,用 PC 側服務殼接住麥克風、揚聲器和字幕,側欄與可選 Web UI 只做狀態與文字管理。下面按資料說明它是什麼、能做什麼、如何啓用與構建,以及安裝時要注意的邊界。

這是什麼

  • 名稱與歸屬:插件名 dsh-voice-assistant,維護者 vb2250158;社區目錄頁見 SkillHub 條目,源碼與說明見 GitHub 倉庫。GitHub 星標數爲 0;目錄簡介爲「DSH assistant development candidate」。
  • 定位:README 稱其爲「語音助手(Windows 候選 0.1.11)」——面向 Windows 的候選實現,不是已全線驗收的通用發行版。
  • 架構分工(資料原文):
  • DSH 原生會話:模型、工具、權限、聊天記錄。
  • 共用 SDK:語音循環。
  • PC 服務殼:麥克風、揚聲器、字幕、系統托盤。
  • 可選 Web UI:只顯示狀態、提交命令;關閉頁面不會停止已明確開啓的語音。

核心功能

側欄文字管理與默認人設

從 DSH 側欄打開「語音助手」即可用文字管理會話。默認預填可編輯的「大肥魚 / DeepSeek 娘」人設,沿用 DSH 原生默認模型與預設。

語音開關與任務行爲

在設置中配置識別、播報服務和音色,保存密鑰,選擇設備並測試,再點擊「開啓語音」。停止語音不會取消已受理的原生任務;用戶開口打斷播報時,文字內容繼續保留。

憑據與普通設置

語音密鑰由 DSH 原生憑據存儲持有,按接口地址綁定,界面只回顯配置狀態。改變服務地址後,需要爲新地址單獨保存密鑰。普通設置保存在 DSH settings。設備或服務切換時會先釋放舊設備;清理未確認時禁止重新佔用。

字幕與托盤

獨立字幕支持字號、透明度、皮膚、拖拽、調整大小和鎖定。托盤提供暫停、靜音、顯示/隱藏字幕、解鎖和停止入口。多屏變化時,字幕會回到可見工作區。

識別與播報服務(0.1.9 候選能力)

語音設置可分別選擇識別和播報服務,支持 OpenAI 兼容接口和 火山語音;各服務保留自己的地址、模型和音色,密鑰按識別或播報、服務商及地址隔離。火山語音使用實時識別與雙向流式播報接口,需在火山側開通相應服務。資料註明:火山真實接口、設備播放和安裝尚待驗收。

對話模型來自 DSH 原生模型目錄;在設置中的選擇直接作用於助手會話,DSH 會在後臺保存默認模型。預設在會話創建後不能通過此頁面更改。

原生工具接入

實際接入五個原生管理工具:查詢會話、搜索、讀取狀態、等待結果、向已有會話發送/繼續任務。發送帶有持久請求身份;已受理和已完成分開處理,不自動重發未確認任務。工具範圍可限制到助手工作目錄;編輯人設不會改動工具權限。

桌寵組合(可選)

桌寵適配支持 dsh-pet 0.4.5-fork.3 的顯示租約協議。安裝兼容版本後,在設置中選擇具體桌寵,並分別控制氣泡和動畫;右鍵「開始聊天」打開同一個助手 GUI,不啓動第二個會話或語音循環。未加載兼容服務時設置保持不可用,並顯示已加載版本或缺失原因。0.1.5 資料提到與桌寵 0.4.5-fork.4 或後續經驗證版本組合使用時,需通過 peer 檢查。

安裝與啓用

已抓取資料 未給出 形如 dsh plugin add … 的單行官方安裝命令,請勿憑插件名自行拼接。README 強調用 官方插件安裝器,並建議先做固定版本安裝預檢:

  1. 使用獨立的 Home、profile 和端口,按固定 Git 提交安裝,驗證通過後再在正式實例的空閒窗口切換。
  2. 保留 profile 清單、鎖文件與配置恢復點;僅使用官方插件安裝器,不覆蓋 node_modules。
  3. Windows 進程組依賴 koffi@3.1.1。若 pnpm 返回 ERR_PNPM_IGNORED_BUILDS,在目標 profile 的 pnpm-workspace.yaml 中合併精確構建許可(禁止通配放行全部構建腳本):
allowBuilds:
  'koffi@3.1.1': true

重跑原官方安裝命令,並驗證 Koffi 在實際 Host 運行時可加載;僅配置許可不代表安裝或設備驗收成功。與桌寵組合安裝時,還需覈對其固定 Git 來源構建許可及實際加載的顯示租約協議和包版本。

依賴版本(package.json)

插件聲明的 peer 依賴包括 Core 側 0.2.2-rc.1 系列包、@deepseek-ai/cordis 4.1.0、@deepseek-ai/schemastery 3.19.0 等;資料 0.1.5 說明預發佈版本不會被跨補丁的普通 semver 下限自動包含,組合桌寵後需運行 npm run test:peers 做交集檢查,官方安裝器驗證仍是獨立步驟。

持久存儲域使用 voice_assistant(0.1.2 起修復官方存儲域名校驗導致的 Host 導入失敗;HTTP 地址和插件名不變)。

典型用法

日常使用流程

  1. 在 DSH 側欄打開「語音助手」。
  2. 按需編輯人設與模型(預設若在會話創建後則不可在本頁更改)。
  3. 打開設置:選擇識別/播報服務、填寫地址與音色、在憑據存儲中保存密鑰、選擇音頻設備並測試。
  4. 點擊「開啓語音」;通過托盤或字幕控制暫停、靜音、顯示與停止。
  5. 需要純文字操作時繼續在同一 GUI 管理;關閉可選 Web UI 不會自動停止已開啓的語音。

從源碼構建(維護者 / 進階)

設置環境變量後執行構建(共用 SDK 0.13.1,PC 服務殼 0.3.1):

export DSH_SHARED_ASSISTANT_ROOT=<指向共享 SDK 0.13.1 的路徑>
export DSH_DESKTOP_SERVICE_ROOT=<指向 PC 服務殼 0.3.1 的路徑>
npm run build

構建會記錄輸入文件 SHA256 到 sdk-snapshot.json 與 dist/build-info.json,並複製隨包音頻 runtime。宿主需提供現有 Electron;默認使用當前 DSH Home 下的 electron,可在進階設置指定路徑。本插件不下載模型、不修改開機啓動。

Electron 路徑在設備啓動前會檢查:未安裝、路徑無效或不可讀會分別提示。留空時查找當前 DSH Home 下的 electron/electron.exe;隔離 Home 可在進階設置中指定另一處已有程序,不自動跨 Home 搜索或下載。

契約與 peer 測試(驗收向)

export VOICE_TEST_DSH_PROFILE=<獨立安裝 profile>
npm run test:host-contract

完整 Loader 測試還需設置 VOICE_TEST_DSH_CORE 爲與 profile 匹配且已構建的 Core 源碼目錄。桌寵 peer 檢查:

export VOICE_TEST_DSH_CORE=...
export VOICE_TEST_PET_ROOT=...
npm run test:peers

資料明確:源碼/構建測試通過不等於已完成真實麥克風、聲學打斷、字幕視覺和默認模型工具驗收;詳見倉庫內 RESIDENT_ACCEPTANCE.md。

適用場景與注意

適合誰:已在 Windows 上使用 DSH,希望語音輸入輸出與原生會話、工具、憑據同一套管道,並願意接受「候選」階段驗收邊界的開發者或高級用戶。

平臺與範圍:README 面向 Windows;Rabi 適配、遠端工具、眼鏡、原生實時語音模型等資料寫明另行接入。

安全與權限:插件在 當前 DSH 進程權限 下運行;安裝前請閱讀源碼與 LICENSE、THIRD_PARTY_NOTICES.md,確認許可證與第三方聲明。密鑰不落插件自有存儲,而走 DSH 憑據與 settings。

服務邊界:完整系統提示詞模式的 preset 不允許通過本界面替換人設,界面會明確提示。普通 scoped persona preset 的替換、工具保留等已通過資料所述 DSH 合同驗證;火山等部分能力仍標註待驗收。

最近候選變更(節選):0.1.11 更新共享桌面語音服務至 0.3.1,修復停止語音時設備提前關閉的競態;0.1.10 更新共享助手 SDK 至 0.13.1,並改進已有助手會話的加載與訂閱邏輯。

結尾

dsh-voice-assistant 把語音循環和桌面能力掛在 DSH 原生會話之上:側欄管文字與設置,服務殼管設備與字幕,可選 Web 只作輕量入口。若你要在 Windows DSH 上試語音助手候選,可先按 README 的獨立 profile 預檢與官方安裝器流程安裝,再在側欄完成密鑰與設備配置後開啓語音。目錄與源碼:

  • https://www.skillhub.cn/plugins/vb2250158/dsh-voice-assistant
  • https://github.com/vb2250158/dsh-voice-assistant
羽毛球分组比赛记分
小程序二维码

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

小夜