前言¶
在 DeepSeek Harness(DSH)的多智能體開發場景中,當主代理調用多個子代理並行工作時,它們的實時狀態往往難以在主對話流中快速感知。查看聊天記錄或日誌是低效的。dsh-subagent-progress 旨在解決這個問題,它將子代理的會話事件摺疊爲進度狀態,並在輸入框上方渲染一個實時看板。
是什麼¶
dsh-subagent-progress 是 edgeseeker7 維護的 DSH 客戶端插件。它的核心作用是展示正在運行的子代理狀態,包括進度、耗時、掛起或失敗情況,無需進入子代理的會話即可獲取概覽。
核心功能¶
該插件提供以下能力:
- 每子代理一張卡片:卡片展示標籤、當前輪次/步驟、待辦完成度(如
1/3)、正在執行的具體動作(而非僅工具名)以及已用時間。 - 子代理自行彙報:子代理通過
notify_user工具以單句形式彙報進度、剩餘時間或關鍵發現,狀態顏色(藍色/琥珀色/綠色)隨 DS 主題變量自適應。 - 掛起與失敗處理:
- 掛起警報:子代理靜默 5 分鐘以上,狀態點變琥珀色。
- 失敗操作:子代理崩潰時,卡片保留,顯示紅點及錯誤摘要(懸停查看全文)。提供操作按鈕:重試(從卡片直接排隊新輪次)、打開(跳轉至會話)、暫停(中斷當前輪次)。
- 佈局與零打擾:卡片按等寬網格對齊,無論數量多少均保持結構。子代理完成後卡片保留 30 秒自動消失;重要發現保留 3 分鐘;支持單獨關閉或一鍵關閉。
- 交互查看:點擊卡片可打開對應子代理的完整會話;懸停更新區域會顯示毛玻璃彈出層,內容爲 Markdown 渲染的完整更新。
安裝與啓用¶
安裝該插件無需修改配置文件,直接在終端執行:
dsh plugin --profile web add dsh-subagent-progress
安裝完成後,重啓 dsh web 進程即可生效。該插件要求 DSH 版本不低於 0.1.2-rc.1。
典型用法¶
- 查看概覽:在輸入框上方查看所有正在運行的子代理卡片。
- 查看詳情:將鼠標懸停在卡片上,查看 Markdown 渲染的詳細彙報內容。
- 干預會話:若子代理卡在錯誤(如 429 超載),點擊卡片上的 Retry 或 Pause 按鈕進行干預。
適用場景與注意¶
- 適用場景:需要同時監控多個子代理運行狀態的 DSH 開發者。
- 無配置:安裝後無需額外配置,開箱即用。
- 版本兼容:官方插件通過
peerDependencies聲明依賴。由於 npm semver 無法表達“從 X 版本開始的任何預發佈版本”,該插件僅在說明文檔中明確最低要求爲dsh >= 0.1.2-rc.1。 - 運行環境:插件不修改 DSH 源碼。其主機端邏輯可在任何部署中工作,但 UI 渲染僅在
dsh web下生效。
短結尾¶
dsh-subagent-progress 通過將子代理的實時狀態集中展示,減少了開發者切換視圖查看日誌的成本。其“零打擾”的設計確保了面板在完成使命後自動清理,保持界面整潔。項目地址:GitHub。