DeepSeek Harness 界面音效插件 (dsh-ui-sound)

前言

DeepSeek Harness (DSH) 的理念是「一切皆插件」,目前默認幾乎沒有聲音反饋。任務跑完了?失敗了?按鈕點中了沒有?只能靠眼睛確認。dsh-ui-sound 插件把「界面交互」和「任務狀態更新」都變成可聽見的語義反饋,每一類反饋都能在設置頁裏單獨挑音效、單獨開關。

插件簡介

該插件由林冠宇 (SOH4C4759) 維護,採用 MIT 許可證。它通過實時合成音效(不依賴任何音頻文件)提供交互和任務狀態反饋,並支持偏好持久化。

核心功能

插件主要提供兩類音效:

  1. 界面交互音效:對按鈕按下進行語義分類發聲,包括普通、主要、開關、發送、關閉、危險、鏈接等類型,鍵盤 Enter、Space 激活同樣發聲。
  2. 任務狀態音效:在當前會話開始運行、運行成功結束、運行失敗結束,以及出現需要處理的交互(授權請求 / 提問 / 計劃複覈)時發聲。

安裝與啓用

在終端中執行以下命令安裝插件:

dsh plugin --profile <你的 profile> add github:SOH4C4759/dsh-ui-sound

安裝完成後重啓 DSH,在 設置 → 音效 裏配置即可。

配置與用法

在設置頁的「音效」選項卡中,你可以配置總開關、音量、音色包以及各類音效的開關。

默認音量設置爲 55%,音色包默認爲 zen(紙、木、風鈴風格)。插件內置了 12 個音色包:minimal、soft、glass、arcade、mechanical、organic、dreamy、scifi、rubber、cinematic、studio、zen。

配置偏好會持久化存儲,文件路徑爲:

%USERPROFILE%\.dsh\ui-sound\config.json

例如,一個典型的配置文件如下:

{
  "enabled": true,
  "volume": 0.55,
  "pack": "zen",
  "taskSounds": true,
  "clickSounds": true,
  "attentionSounds": true,
  "mapping": { "task.success": "complete", "click.send": "send" }
}

給其它插件用的 API

瀏覽器端通過 ctx.reflect.provide("uiSound", service) 暴露服務,宿主插件或其它組件可以調用以下方法:

ctx.uiSound.play("task.success")   // 按情景觸發(受總開關與對應開關約束)
ctx.uiSound.playCue("achievement") // 直接播一個 cue
ctx.uiSound.preview("success")     // 試聽功能
ctx.uiSound.getPrefs()             // 獲取當前偏好

注意事項

  1. 瀏覽器自動播放策略:瀏覽器不允許網頁在沒有用戶手勢前啓動 AudioContext。因此,頁面加載後第一次點擊之前不會有聲音。插件會在第一次 pointerdown 時預熱並恢復 AudioContext,若仍無聲,請先點擊頁面任意位置。
  2. 不支持導入自定義音頻文件:音效引擎由 Web Audio 實時合成,不支持導入自定義音頻文件。
  3. 不包含 hover 音:懸停發聲在長時間使用中會變成噪聲,因此未包含此功能。
  4. 不包含工具調用級音效:工具調用頻率高,單獨發聲會淹沒真正重要的狀態變化。
  5. 社區移植版:這是社區移植版,基於上游 dsh-plugin-uisfx 適配 DSH 0.2.0,並非上游官方延續。
羽毛球分组比赛记分
小程序二维码

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

小夜