dsh-openpeon:爲 DSH Web 客戶端接入 OpenPeon 音效與通知

前言

用 DeepSeek Harness(DSH)跑智能體時,狀態多在後臺切換:會話起止、模型開始幹活、回合結束、報錯或等待你審批。若不盯着界面,很容易錯過「需要輸入」或失敗。社區插件 dsh-openpeon(維護者 0w0miki)在 DSH Web 側實現 OpenPeon CESP v1.0 的非官方客戶端:從 OpenPeon registry 瀏覽安裝音效包,在六個時點播放聲音,並可配合應用內橫幅與系統通知。插件本身不捆綁任何音頻,素材來自 registry,需自行下載選用。

這是什麼

dsh-openpeon 是面向 DSH Web 客戶端的 bundle 插件(package.json 版本 0.2.0,許可證 MIT)。它與 PeonPing 無隸屬關係。核心價值是:會話狀態變化時可聽、可見——音效包來自 registry,配置在側邊欄 Plugins 頁的 dsh-openpeon 條目下完成。

交付形態爲雙端:lib/index.js(宿主側,僅 Node 內置能力)與 lib/client.js(瀏覽器側);通過 cordis.patch.yml 寫入 profile 的插件樹,無需手寫 patch 行。

核心功能

六個時點與 CESP 分類

音效 觸發條件 CESP category
Session start 出現新會話 session.start
Working 智能體開始處理本回合 task.acknowledge
Finished 本回合結束(含中斷) task.complete
Failure 執行出錯 task.error
Needs input 等待審批或回答問題 input.required
Session end 會話消失 session.end

音效包不必覆蓋全部六類;未提供的類別保持靜音。CESP 標準另有三個類別在 DSH 中暫無對應事件,插件未提供開關。

配置與交互

  1. 音效包:已安裝列表與 registry 約 370 個包;可按名稱、作者、標籤、語言搜索。目錄行展示作者、許可證、信任層級、體積與音效數量。Download 安裝;安裝後 Preview 試聽、Use 設爲當前包、Delete 刪除。僅下載內容保存在本機。
  2. 每個時點:sound 與 notify 獨立開關,另有 Preview。可只開聲音、關彈窗。
  3. 子智能體:開啓 Ignore subagent alerts 後,委派子會話不發聲、不通知,避免多個子任務同時結束時的重複提示。
  4. 總開關與音量:頂部開關啓用提醒,滑塊調音量;偏好寫入瀏覽器 localStorage(鍵名 dsh-notifications)。

未安裝音效包且未打開提醒時不會播放。瀏覽器策略要求用戶先與頁面交互,該頁第一次提醒可能無聲,之後同頁生命週期內正常。

宿主側數據與 API

通信統一在 HTTP 前綴 /openpeon。路由包括目錄(state、registry、install、remove、active)、按 moment 取音(sound/<cesp-category>)、預覽(preview/<pack>/<file>)。變更類接口(install、remove、active)校驗請求來源爲頁面同源;無 Origin 的本地客戶端(如 curl)不受此限,實際邊界取決於 DSH 監聽地址。

文件落在 $DSH_HOME/dsh-openpeon/:registry.json(索引緩存,約六小時有效)、state.json(當前選中包)、packs/<name>/(經 jsDelivr 按需拉取的音頻與清單)。安裝前校驗 openpeon.json 與 registry 公佈的 SHA-256;有聲明時對每個音效文件做摘要校驗。

安裝與啓用

README 說明:插件常放在 DSH 源碼樹外(示例路徑 ~/coding/dsh-plugins/dsh-openpeon),作爲 bundle 安裝。

  1. 在 ~/.dsh/profiles/<profile>/package.json 加入依賴,並在 dsh.profile.bundles 中列出包名:
"dependencies": { "dsh-openpeon": "file:/Users/xzong/coding/dsh-plugins/dsh-openpeon" },
"dsh": { "profile": { "bundles": [ "…", "dsh-openpeon" ] } }

將 file: 路徑改爲你本機 clone 或解壓後的實際目錄。

  1. 在該 profile 目錄執行 pnpm install,並在插件目錄執行 pnpm build 生成 lib/。

安裝前請閱讀倉庫源碼與 MIT 許可證;插件以當前 DSH 進程權限訪問網絡與 $DSH_HOME,自行評估信任邊界。

典型用法

經過安裝與構建後,打開 DSH Web 側邊欄 Plugins,進入 dsh-openpeon:

  1. 搜索並 Download 一個音效包,Use 設爲活動包。
  2. 對關心的時點分別打開 sound / notify,用 Preview 確認音色。
  3. 若同時使用子智能體委派,按需開啓 Ignore subagent alerts。
  4. 打開頂部提醒總開關,調節音量,回到正常工作流等待事件觸發。

適用場景與注意

適合需要「離開主屏仍能感知 DSH 會話狀態」的開發者:長回合編碼、批量子任務、等待審批等。不適合需要完整九類 CESP 或插件未映射的三類事件的場景。

注意:

  • 與 PeonPing / OpenPeon 官方無關聯;registry 內容由第三方維護,安裝前查看包的許可證與信任層級。
  • /openpeon 讀取面對前端與非索引資源同級開放;寫操作僅防跨站瀏覽器請求,不替代主機網絡安全配置。
  • 偏好僅存瀏覽器;換設備或清站點數據需重新配置。

結尾

dsh-openpeon 把 OpenPeon 音效生態接到 DSH Web:registry 選包、六類事件可聽可見、子智能體可靜音。進一步瞭解可在社區目錄與倉庫查看說明與實現細節。

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

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

小夜