前言¶
在 DeepSeek Harness(DSH)里長時間跑智能體會話時,界面往往只有日誌與輸入框,很難一眼看出「當前是否在跑」「是否已結束」「是否報錯」。方糕萌寵(gavinff1990/fanggao-pet)是社區目錄裏歸類爲「趣味換裝」的 UI 插件:在頁面最上層掛一隻方糕造型的小角色,用動畫反映當前主視圖會話的 SessionSnapshot,可拖拽並記住位置。下面介紹它是什麼、如何安裝,以及狀態與排錯要點。
這是什麼¶
方糕萌寵是 DeepSeek Harness 的本地 bundle,包名爲 @local/fanggao-pet,維護者爲 gavinff1990。Host 半(index.js)只負責註冊 bundle;Client 半(client.js)在 Web 端注入浮層、訂閱會話快照並繪製 SVG。它不佔用主佈局,渲染在 shell.overlay 幀級浮層上,默認出現在頁面右下角。
核心功能¶
三態動畫¶
動畫由當前主視圖會話的 SessionSnapshot 實時驅動。Client 訂閱 sessions.list,找到 retainedBy.mainView > 0 的會話,再經 sessions.binding(id).session 讀取快照並切換形態:
| 狀態 | 觸發條件 | 表現 |
|---|---|---|
| 奔跑 | running === true |
上下彈跳、雙腿交替、速度線 |
| 睡覺 | 空閒且無報錯 | 橫躺、閉眼、頭頂 Z z z |
| 生氣 | 存在 lastAgentError / promptError / openError,或 openState === 'error' |
豎眉、撇嘴、紅臉、額頭青筋脈衝 |
沒有打開會話時,默認顯示睡覺。
懸浮、拖拽與交互¶
- 浮層始終在最上層;除方糕本體(約 88×88 像素)外,區域爲 click-through,不會擋住下方操作。
- 按住方糕可拖到任意位置;座標寫入
localStorage鍵fanggao-pet.position,刷新後保留。 - 實現爲純 SVG + CSS 動畫,體小、縮放清晰。
自定義入口¶
在 client.js 頂部可改 COLORS,以及 runningPose / sleepingPose / angryPose。默認位置由 defaultPos() 控制;位置存儲鍵爲 STORE_KEY(默認 fanggao-pet.position)。修改 client.js 後,在插件管理器中重新安裝同一 bundle 目錄即可熱加載。
安裝與啓用¶
本插件不是通過臆造的 dsh plugin add github:… 一行命令安裝,而是本地 bundle + 插件管理器鏈接目錄。
- 將 fanggao-pet 倉庫 放到本機,得到 bundle 根目錄的絕對路徑。
- 在 Harness 插件管理器中執行安裝本地 bundle:
- 動作:install_bundle
- 目標:上述目錄的絕對路徑 - 安裝後插件立即激活,方糕默認出現在右下角。卸載或重裝時,管理器會重新鏈接該 bundle。
package.json 中聲明爲 @local/fanggao-pet 1.0.0,MIT 許可;Client 依賴 @deepseek-ai/dsh-client-ui-layout,並設置 immediately: true 以便儘快注入。
典型用法¶
安裝並打開任意會話後,無需額外配置即可觀察狀態:
- 發起一輪會觸發 Agent 運行的對話,方糕應進入奔跑態。
- 運行結束且無錯誤時,應回到睡覺態。
- 若會話出現
lastAgentError、promptError、openError或openState === 'error',方糕切換爲生氣態。 - 將方糕拖到習慣的位置,刷新頁面確認位置仍被記住。
想重置位置時,清除瀏覽器 localStorage 中的 fanggao-pet.position 後刷新。
適用場景與注意¶
適合希望在 DSH 主界面用輕量視覺反饋跟蹤會話狀態的開發者。它只讀會話快照並繪製 overlay,不改變 Agent 邏輯。
安裝前請自行閱讀倉庫源碼與 LICENSE:插件與 Harness 客戶端同進程運行,權限等同於當前 DSH Web 環境。社區目錄 SkillHub 插件頁 與 GitHub 均爲社區維護入口,與 DeepSeek / 幻方無官方從屬關係。
排錯摘要:
- 看不到方糕:確認插件已啓用且在主界面;需有打開的會話(overlay 條目隨主視圖會話存在)。
- 拖不動:指針須落在方糕本體上,而非透明浮層區域。
- 狀態不變:確認當前存在主視圖 retained 的會話;無會話時僅爲睡覺態。
結尾¶
方糕萌寵把 SessionSnapshot 裏的運行與錯誤信號轉成三種 SVG 姿態,並支持可記憶的懸浮拖拽,適合作爲 DSH「一切皆插件」生態裏的趣味 UI 擴展。詳情與預覽圖見 GitHub 倉庫,目錄介紹見 SkillHub:gavinff1990/fanggao-pet。