DeepSeek Harness(DSH)採用模塊化設計,其 Web GUI 本身較爲簡潔。在開發或調試 Agent 時,獲取其運行狀態的實時反饋是一個常見需求。dsh-whale-pet 插件通過官方 shell.overlay 槽位注入一個 React 組件,在界面右下角展示一隻鯨魚娘,隨 Agent 狀態切換動作並播放語音。
功能特性¶
該插件通過狀態機管理鯨魚孃的行爲,確保反饋的準確性與交互的趣味性。
- 狀態機驅動:支持
working(工作中)、waiting(等待交互)、completed(任務完成)、celebrate(慶祝)、idle(空閒)五種狀態,隨 Agent 運行狀態實時切換動作。 - 任務完成邊沿檢測:任務完成時播放慶祝語音,通過邏輯控制確保只播一次,避免重複轟炸(從 10 句隨機語音中選取)。
- 交互反饋:首次出現時會播放「曉伊」語音打招呼;點擊鯨魚娘會隨機播放撒嬌語音。
- 零侵入集成:使用官方
useSessions全局標準 hook,走shell.overlay槽位,不修改業務 DOM。 - 實用功能:鯨魚娘支持拖拽移動;右上角設有靜音/取消靜音開關。
- 本地化與無障礙:全部資源通過宿主靜態路由本地加載,無外部請求、無遙測數據。同時尊重
prefers-reduced-motion,減少動效。
安裝與啓用¶
安裝插件需要手動操作文件路徑和配置文件,重啓 Web 服務後生效。
- 將插件目錄複製到宿主配置的樹外插件目錄:
$DSH_HOME/profiles/node_modules/dsh-whale-pet/
- 編輯當前 Profile 的
package.json,在dsh.profile.bundles數組末尾追加"dsh-whale-pet":
{
"dsh": {
"profile": {
"bundles": [
"@deepseek-ai/dsh-base",
"@deepseek-ai/dsh-web-app",
"dsh-whale-pet"
]
}
}
}
- 重啓
dsh web命令。插件集的變化通常需要重啓服務才能加載,重啓後刷新頁面,即可在右下角看到鯨魚娘。
資源與授權¶
本插件不包含自行設計的立繪和語音素材,所有資源均取自社區開源項目。
- 立繪:取自 DeepSeek 社區開源項目
dsh-whale-musume(MIT License)。 - 語音:取自社區項目
aceice01/dsh-whale-pet,包含「曉伊」神經網絡音色片段。該素材爲非商業使用許可,僅限本地非商業演示。
適用場景¶
此插件適合希望在 DSH Web GUI 中獲得更豐富視覺反饋的開發者。它通過簡單的配置即可將 Agent 的運行狀態具象化爲一個立體的交互對象,適合日常開發陪伴或演示場景。
結尾¶
dsh-whale-pet 展示了 DSH 生態中插件開發的擴展性,通過標準化的 Hook 和 Slot 接口,即可實現非侵入式的 UI 增強。更多細節與源碼,可參考插件目錄或 GitHub 倉庫。