dsh-plugin-audiolib:按 DeepSeek Harness 會話狀態播放 AudioLib.ai 環境音樂

前言

DeepSeek Harness(DSH)支持通過插件擴展 harness 的使用方式。在已有做法裏,環境音通常需要手動播放、手動切歌;如果希望聲音跟隨 agent 的當前狀態,就需要把會話事件接進播放邏輯。

dsh-plugin-audiolib 做的事情比較集中:根據 DSH 的會話事件驅動環境音樂,音源來自 AudioLib.ai,並且不在正在播放的曲目中途硬切。

這是什麼

dsh-plugin-audiolib 是 DeepSeek Harness 的一個插件,維護者爲 yangyue1974,採用 MIT 許可證。

它的一句話定位是:爲 DSH 提供由 agent state 驅動的環境背景音,音源使用 AudioLib.ai。AudioLib.ai 提供 100,000+ fully-cleared tracks,每首曲目對應一次 API call。

核心功能

  • 根據 agent 的會話事件(turn open/close)驅動環境音樂。
  • 狀態變化不中斷正在播放的曲目;只有顯式調用 music_stop() 纔會停止播放。
  • 提供三個工具:music_play(library)、music_stop()、music_status()。
  • 支持 mpv/ffplay 等 URL 流式播放器;沒有這些播放器時,回退到 macOS afplay,並預先下載曲目。
  • API key 存入 DSH credential store:~/.dsh/.credentials.yaml,文件 mode 爲 600;不寫入配置文件。
  • 臨時失敗(網絡、5xx、超時、限流)會退避重試;壞 key、額度耗盡、缺少播放器或響應不可讀時暫停。
  • 卸載插件時關閉播放器並刪除臨時文件。

安裝與啓用

DSH 使用 pnpm 管理 profile plugins,缺少 pnpm 會拒絕。先啓用 pnpm,再在 web profile 中添加插件:

corepack enable pnpm
npx @deepseek-ai/dsh plugin --profile web add dsh-plugin-audiolib

添加完成後,重啓 DSH:

npx @deepseek-ai/dsh web

打開 Settings → Plugins → Plugin configuration,將 AudioLib API key 粘貼到 AudioLib soundtrack 卡片。key 會進入 DSH credential store,不會寫入配置文件。

如果你更習慣使用環境變量,也可以這樣設置:

export AUDIOLIB_API_KEY=alp_your_key

這裏需要注意兩個前提:

  • 需要有效的 AudioLib API key;免費額度爲 300 requests/month。
  • Node engines 要求 ^22.19 || >=24。

典型用法

如果想指定工作/空閒 library,可以在 profile 的 cordis.patch.yml 中覆蓋:

- id: audiolib
  name: dsh-plugin-audiolib
  config:
    workingLibrary: audio.focus
    idleLibrary: audio.ambient

卡片中的 library pickers 暫時只讀;需要設置 libraries 時,使用 profile 的 cordis.patch.yml。

如果希望曲目以流式方式播放,建議安裝 mpv 或 ffplay:

brew install mpv
# or: apt install mpv

沒有流式播放器時,afplay 會先下載每首曲目;這是一個可用回退,但可能在中途切換庫時 stall。

插件提供三個工具:

  • music_play(library):播放指定 library。
  • music_stop():停止播放。
  • music_status():查詢播放狀態。

適用場景與注意

適合使用 DSH web profile、希望根據 agent 會話狀態自動切換環境音的使用者。它不替你決定音樂是否合適,只把會話事件映射到 AudioLib library,並提供顯式的播放、停止和狀態查詢工具。

使用前建議注意:

  • 插件以當前 dsh 進程權限運行;安裝前建議檢查源碼、依賴與許可證。
  • 需要有效的 AudioLib API key;免費額度爲 300 requests/month。
  • 臨時失敗會退避重試;壞 key、額度耗盡、缺少播放器、響應不可讀時暫停。
  • 卡片中的 library pickers 暫時只讀;需要設置 libraries 時使用 cordis.patch.yml。
  • 建議使用 mpv 或 ffplay 以支持流式播放;afplay 回退會下載每首曲目,可能在中途切換庫時 stall。
  • Node engines 要求 ^22.19 || >=24。
  • 許可證爲 MIT;維護者爲 yangyue1974。

結尾

dsh-plugin-audiolib 的價值在於把 DeepSeek Harness 的會話狀態轉成低干擾的環境聲:turn open/close 驅動音樂狀態,狀態變化不硬切正在播放的曲目,並保留 music_play、music_stop、music_status 這類顯式控制工具。

GitHub:dsh-plugin-audiolib

社區目錄頁是獨立站點,與 DeepSeek / 幻方無官方從屬關係;本文已覈實資料未提供具體目錄頁 URL,檢索時可使用插件名 dsh-plugin-audiolib。

羽毛球分组比赛记分
小程序二维码

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

小夜