dsh-task-capsule:DeepSeek Harness 任務狀態指示器

前言

DeepSeek Harness(DSH)採用插件化架構,旨在通過模塊擴展能力。在進行長週期的智能體任務開發時,Agent 的執行細節常隱匿於日誌流中,難以在對話頭部快速感知當前進度。

dsh-task-capsule 插件將 Harness 的執行過程收斂成一個始終可見、幾乎不打擾的任務狀態指示器。它提供緊湊的膠囊視圖和可展開的懸浮面板,用於展示任務計數、耗時、文件變更統計以及子代理狀態。

功能概覽

緊湊膠囊

膠囊位於會話頭部右側,以極簡形式呈現核心信息:
- 狀態與計數:顯示狀態點(●)、任務計數(已完成/進行中/待處理)以及耗時(MM:SS)。
- 視覺區分:運行狀態爲呼吸動畫(1.4s 週期),等待狀態爲緩動動畫(2.6s 週期),兩者易於區分。
- 終端態收起:任務完成後膠囊自動收起爲記錄格式,如 ✓ 任務完成 5/5 · 02:31,耗時不再隨頁面刷新增長。

展開面板

點擊膠囊可展開懸浮面板,面板包含以下層級:
- 狀態行:顯示當前狀態詞與等待原因(如有)。
- 當前任務:高亮顯示正在執行的任務名稱、耗時及操作詳情。
- 文件統計:展示改動文件數及 diff 統計(+12 −4)。
- 子代理彙總:聚合宿主側委託樹的當前任務狀態,可展開查看各子代理明細。
- 任務列表:按當前 > 已完成 > 等待排序,當前任務切換時有強調動畫,並附帶耗時佔比條。
- 最近任務:持久化環形緩衝列表,展示前置狀態點、狀態詞、完成數與耗時。

液態懸浮面板

面板通過 Portal 渲染到 <body>,錨定在膠囊下方:
- 不受裁剪:不會被會話頭部或滾動容器裁剪,懸浮於內容之上。
- 空間自適應:下方空間不足時自動向上翻轉;支持 Tab 循環與關閉還原。
- 玻璃質感:具備液滴圓角、沉降與回吸動畫。

配置與用法

插件支持通過 cordis.patch.yml 配置文件或運行時設置中心調整行爲。

cordis.patch.yml 示例:

- insert:
    - id: task-capsule
      name: dsh-task-capsule
      config:
        keepAfterDoneMs: 8000       # 完成態膠囊保留時長(0 = 立即收縮)
        autoExpandRunning: true     # 任務進行時自動展開面板
        autoExpandFailed: false     # 失敗時自動展開面板
        alwaysVisible: false        # 空閒無活動時也保持可見
        historyLimit: 5             # 最近任務歷史容量
        showDuration: true          # 展開態顯示逐任務耗時
        showCurrentOp: true         # 顯示當前操作行
        density: comfortable        # 面板密度(comfortable | compact)
        accent: auto                # 強調色(auto | business | success | warn | error)

數據與行爲

數據源與持久化

  • 狀態驅動:任務狀態完全由 Agent 的 todo_write 工具驅動(整表替換,Last-Write-Wins)。Agent 口頭描述完成但未寫入 todo 列表時,膠囊如實反映最後一次寫入的狀態。
  • 持久化路徑:最近任務歷史持久化至 $DSH_HOME/task-capsule-history.json,重啓不丟失。

生命週期與限制

  • 自動展開:默認配置下,任務進行時膠囊自動展開面板,完成後 1.5s 自動縮回。
  • 失敗處理:失敗狀態不會推斷爲完成。失敗/中止/中斷/等待決策(error / aborted / interrupted / blocked)不會自動縮回面板。
  • 不支持功能:不包含日誌查看器、不支持任務搜索/篩選、不支持自定義主題。

注意事項

插件以當前 DSH 進程權限運行。在安裝前,建議檢查源碼與許可證(MIT)以確保合規。

生態與鏈接

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

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

小夜