dida-todo:以滴答清單爲真源的 DeepSeek Harness 插件

在 DSH 中開發 Agent 時,會話中斷(如模型返回 content_filter、限流或崩潰)會導致進度丟失。且 Agent 需要一個持久化的任務真源來承接跨輪或跨會話的工作。dida-todo 插件提供瞭解決方案,它將滴答清單作爲任務真源,支持 Agent 自動領取、執行與進度回寫,並處理 dsh 會話中斷後的自動續跑。

是什麼

dida-todo 是一個由 ztllll 維護的 DSH 插件。它同時是 Pi 擴展和 dsh 插件組合包,核心是將滴答清單作爲任務真源。它保留了 dsh 自帶的 todo 工具與 /todos 命令,支持雙向同步、提醒、強制人類驗收閉環,以及 dsh 會話中斷自動續跑。

核心功能

  • 滴答清單作爲任務真源:所有任務狀態以滴答清單爲準。
  • Agent 自動領取任務:Pi 空閒時自動領取未完成的任務,或通過輸入“檢查todo”立即執行。
  • 強制人類驗收閉環:任務完成後自動生成“🧑‍🔬 待驗收”任務,防止 Agent 自作主張完成任務。
  • dsh 會話中斷自動續跑:當回合以錯誤或崩潰結束且會話還有未完成工作時,插件會嘗試自動續跑。
  • 保留原有工具:插件只新增 todo / todo_work 兩個工具,不覆蓋、不禁用 dsh 自帶的 todo_write 與任務面板。
  • dsh goal 復活與轉人工掛起:接管 dsh goal 驅動器,遇到中斷可嘗試復活;若連續失敗則轉爲人工掛起。

安裝與啓用

  1. 在 DSH Web 界面側欄點擊「插件 → 添加插件」,填寫:
    github:ztllll/dida-todo#v0.9.1
或通過命令行安裝:
    dsh plugin --profile web add "github:ztllll/dida-todo#v0.9.1"
  1. 安裝後刷新或重啓 dsh-web 生效。
  2. 卸載插件不會影響 dsh 原有功能,插件只新增一行插件和兩個工具。

典型用法

  1. 綁定清單:在 Pi 中執行 /dida-bind [清單名稱]。唯一同名清單會被直接綁定,不存在則按輸入名稱創建。
  2. 創建任務:人在滴答清單記錄任務並設置優先級(低/中/高),該任務不會立即執行,需 Agent 領取。
  3. Agent 執行:Pi 空閒時會自動領取任務;或直接輸入“檢查todo”立即執行。
  4. 進度與驗收:Agent 按 Checklist 執行,每步結果寫成滴答評論。全部完成後,頂層任務自動完成,並生成“🧑‍🔬 待驗收”任務(+3/+6 分鐘提醒)。
  5. 人工介入:若需人工確認,Agent 會調用 todo_work wait_for_human,將任務優先級清零,並新建 🙋 需要你處理 提醒。
  6. 恢復掛起:恢復方式爲在滴答將原任務優先級改回低/中/高,或對 Agent 說“繼續”。

適用場景與注意

  • 適用場景:需要長期追蹤的任務、跨輪/跨會話的代碼變更、需要人工驗收的自動化流程。
  • 注意事項:
    • 滴答官方 API 沒有附件接口,文件請走 IM 通道。
    • 滴答子項沒有“進行中”狀態,只在 Pi 面板顯示。
    • 同一臺機器併發寫有跨進程鎖,多臺機器無強一致保證。
    • 只針對滴答清單,不保證 TickTick 國際版。
    • 與 rpiv-todo 衝突,需先禁用。
    • Pi --mode rpc 客戶端只渲染字符串,看不到面板。
    • dsh 續跑計數在內存中,重啓後清零。

dida-todo 旨在解決 Agent 工作流中斷與任務持久化問題,通過滴答清單作爲真源,實現人機協作與任務閉環。更多詳情可查看項目主頁或源碼倉庫。

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

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

小夜