dsh-todo-progress-guard:讓 DSH 待辦面板與多步工具回合保持同步

前言

DeepSeek Harness(DSH)裏,模型通過 todo_write 維護任務列表;面板展示的是會話投影,只有再次調用 todo_write 時整表纔會被替換更新。多步、工具密集的回合裏,常見兩種脫節:模型先寫計劃再連續執行 bash、read、edit 等調用,注意力在工具輸出上,面板長時間停在第一項 in_progress;或者工作已在最後一步用文字答完、該步沒有工具調用,回合結束時仍顯示「1 in progress · N pending」。下面介紹 Host 側 Cordis 插件 dsh-todo-progress-guard,在不改 DSH 核心、不新增會話事件類型的前提下,用兩種機制補齊上述缺口。

這是什麼

dsh-todo-progress-guard 是 DSH Host 插件(npm 包名同插件 id),維護者爲 GitHub 用戶 LaochenFEIZHAI,社區目錄分類爲工作流。簡介原文:在回合中途提醒模型刷新 todo_write,並在回合正常結束時把遺留項收束爲已完成,使待辦進度與 agent 實際進展一致。

核心功能

插件只做兩件事,對應 README 中的 Two mechanisms。

回合內提醒(tools/post-execute)

當前回合存在未完成的待辦列表,且模型連續若干步或若干次其他工具調用而未調用 todo_write 時,插件在該步最後一次工具結果之後注入一條上下文消息(source.kind = "todo-progress-reminder",form: "notice",在聊天流裏以可摺疊注入行展示)。正文會原樣重複當前列表,便於模型在下一步直接 todo_write 整表更新,而無需翻遠歷史。

回合結束補全(agent/turn-stopping)

回合正常結束前(在寫入 turn/end 之前、回合仍合法打開時),將仍停留在 in_progress 或 pending 的項通過一次 todo/write 快照寫回爲 completed,避免面板在任務已做完後仍顯示進行中。

安全邊界(資料原文):僅在回合確實做過工作時補全;中止、被中斷、已排隊下一步、ask_user_question / exit_plan_mode 等待人工、列表已全部 completed、或列表剛創建且尚未運行其他工具等情況下不會追加完成。插件只追加 todo/write,不改寫歷史。

安裝與啓用

推薦在 Web UI:Plugins → Install,粘貼下列任一 spec,會同時添加依賴並選中 bundle,補丁立即生效且無需重啓:

github:LaochenFEIZHAI/dsh-todo-progress-guard
/absolute/path/to/dsh-todo-progress-guard
dsh-todo-progress-guard

CLI 僅安裝包(dsh plugin 爲 pnpm 透傳,不會自動選中 bundle):

dsh plugin --profile web add github:LaochenFEIZHAI/dsh-todo-progress-guard

安裝後須在 Plugins 頁面啓用一次 dsh-todo-progress-guard(等價於寫入 profile 的 dsh.profile.bundles),cordis.patch.yml 纔會生效。

配置

默認可直接使用。若需調節,在 profile 自有 cordis.patch.yml 中按 id 覆蓋 config(patch 層會整段替換 config,需寫全三個鍵):

- id: todo-progress-guard
  config:
    stepThreshold: 2
    callThreshold: 5
    autoCompleteOnTurnEnd: true
字段 默認 含義
stepThreshold 2 自上次 todo_write 起,經過多少模型步後提醒
callThreshold 5 自上次 todo_write 起,經過多少次其他工具調用後提醒(至少一步)
autoCompleteOnTurnEnd true 回合正常結束時是否自動將遺留項標爲 completed

兩個閾值爲 OR 關係,先達到者觸發;每步最多一條提醒,計數在回合邊界重置。非法值回退默認,不導致激活失敗。

兼容性與開發

  • 依賴 Host 的 sessions 與 sessionProjections;缺失時插件保持 inactive(plain inject),不拖垮組合。
  • README 寫明在 DSH 0.2.0-rc.2 上驗證;使用的擴展點均爲該版本的公開契約。
  • 零運行時依賴,不 import DSH 包;engines.node 爲 >=20。
  • 許可證 MIT;當前 package 版本 1.0.2。

本地驗證:

npm test

適用場景與注意

適合在 DSH 中依賴 todo_write 做多步任務規劃、且單回合內工具調用較多的工作流。插件以當前 DSH 進程權限運行,安裝前請自行查看倉庫源碼與 MIT 許可證。社區目錄站點與 DeepSeek / 幻方無官方從屬關係,僅爲生態插件索引。

鏈接

  • 目錄頁:https://www.skillhub.cn/plugins/LaochenFEIZHAI/dsh-todo-progress-guard
  • 倉庫:https://github.com/LaochenFEIZHAI/dsh-todo-progress-guard
羽毛球分组比赛记分
小程序二维码

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

小夜