前言¶
在 DeepSeek Harness(DSH)裏跑長任務時,模型往往會通過 todo_write 維護一份待辦列表。這些內容會落在會話投影裏,但默認對話界面並不專門展示「完成了多少、還剩什麼、誰先完成」。要在標籤欄裏持續看到進度條和按完成順序編號的條目,需要客戶端插件。dsh-task-progress-tab(維護者 zebracmz)在會話視圖裏新增 Task Progress 標籤,緊挨內置 Context 標籤,把當次會話的任務列表變成只讀的實時進度視圖。
這是什麼¶
dsh-task-progress-tab 是 DSH 的 conversation.view 類客戶端插件:npm 包名 dsh-task-progress-tab,當前版本 0.1.0,許可證 MIT。它讀取會話投影 todos(由 todo_write 工具維護),不往回寫數據,屬於只讀展示層。
社區目錄頁:skillhub.cn/plugins/zebracmz/dsh-task-progress-tab
源碼與說明:github.com/zebracmz/dsh-task-progress-tab
DeepSeek Harness 的生態理念是「一切皆插件」;skillhub 等目錄爲社區站點,與 DeepSeek / 幻方無官方從屬關係,安裝來源請自行覈對倉庫與許可證。
核心功能¶
下面能力均來自項目 README,無額外推斷。
- 整體進度條:顯示已完成數 / 總數及百分比,隨模型勾選待辦更新。
- 完成順序編號:已完成項按實際完成時刻標爲
#1、#2……即使模型重排計劃或列表被重新生成,編號仍按首次標記爲completed的順序穩定記錄。 - 未完成項展示:按模型計劃順序列出;
in_progress高亮,pending弱化顯示。 - 按會話緩存:每輪開始時會清空 todo 投影的瞬時視圖;插件爲每個會話緩存上一份列表,避免輪次之間界面閃空。
- 中英文:隨瀏覽器或桌面端語言切換(內置中英文)。
- 零運行時依賴:單客戶端 bundle,無額外運行時包,無需構建步驟。
安裝與啓用¶
命令行(npm)¶
dsh plugin add dsh-task-progress-tab
從 GitHub 安裝¶
dsh plugin add github:zebracmz/dsh-task-progress-tab
桌面客戶端¶
打開 Plugins,搜索 dsh-task-progress-tab 安裝,然後重啓應用(或使用 App → Restart App and Host)。
界面位置與註冊方式¶
安裝後會話標籤欄順序爲:
Chat | Trajectory | Context | Task Progress
插件註冊在 conversation.view 插槽,order: 40,因此固定出現在 Context(order: 30)右側。
工作原理(只讀投影)¶
標籤通過投影名 todos 訂閱列表,結構爲:
useProjection('todos') // [{ content, status: 'pending' | 'in_progress' | 'completed' }]
某條待辦第一次進入 completed 時,插件爲該會話分配單調遞增的序號以記住完成順序;不向 Harness 或模型寫回任何狀態。要看到內容,會話側需有模型或流程在使用 todo_write 維護 todos。
兼容性與平臺¶
- 需要 DeepSeek Harness 0.2.0 及以上(
package.json中engines.dsh:>=0.2.0)。 - 客戶端平臺爲
web;瀏覽器與桌面構建共用同一 client bundle。
適用場景與注意¶
適合誰:希望在同一窗口裏盯會話級任務進度、並區分「計劃順序」與「實際完成順序」的 DSH 使用者。
權限與安全:插件以當前 DSH 進程權限運行,安裝前請閱讀 倉庫源碼 與 MIT 許可證,確認符合你的環境策略。
侷限:無待辦投影或從未調用 todo_write 的會話,標籤可能爲空或僅顯示緩存;插件不替代任務編輯,也不保證與所有自定義工作流一致。
維護者在倉庫中提供 node smoke-test.mjs,用於在校驗註冊元數據、計數、百分比、完成順序穩定性、空狀態、按會話回退與中英文等方面的 smoke 測試,可供二次開發參考。
結尾¶
dsh-task-progress-tab 把 DSH 裏已有的 todos 投影變成清晰的 Task Progress 標籤:總進度、完成序號與未完成狀態一覽,且不改動後端數據。需要安裝或二次開發時,可查閱 社區目錄頁 與 GitHub 倉庫。