dsh-team-task:面向 DeepSeek Harness 的長任務多智能體插件

前言

下面介紹 DSH 插件 dsh-team-task。DSH 的理念是「一切皆插件」,社區可以通過插件擴展智能體協作能力。對於需要跨多輪執行、依賴評審和失敗恢復的長任務,單靠一次提示詞或短促會話不容易保持穩定。

dsh-team-task 是 Ready22Race 維護的 DSH 插件,面向長任務多智能體任務:lead 會話規劃需評審的 DAG,durable members 執行節點,append-only event log 作爲唯一真相,resident reconciler 在崩潰和重啓後繼續推進任務。許可證爲 MIT。

插件定位

dsh-team-task 解決的核心問題包括:

  • 長任務中成員執行結果需要可追蹤。
  • 多個節點之間存在依賴,需要評審後再推進。
  • 進程崩潰、會話中斷或 harness 重啓後,任務需要繼續。
  • 不同角色之間的協議不能每次都完整塞進 prompt。

它不是普通的一次性命令工具,而是圍繞事件日誌、評審閘門、定時恢復和按需加載協議設計的 DSH 插件。

核心功能

已覈實的能力如下:

  1. lead 會話規劃需評審的 DAG。
  2. durable members 執行節點。
  3. 常駐 reconciler 按計時器重新推進任務,並在 lead 返回時恢復工作。
  4. 運行時在 idle 邊結算任務,完成工具只加速而不作爲閘門。
  5. 評審閘門:僅 lead approve 解鎖下游,rework 將反饋送回同一節點並保留 attempt 歷史。
  6. append-only event log 作爲唯一真相,並使用 fence tokens 拒絕遲到寫入。
  7. 事件日誌可重放,snapshot.json 與 inbox 爲派生視圖。
  8. 漸進式 playbook:通過 team_task_playbook 按需加載 lead / member / recovery 協議。
  9. M1 提供 board data routes:/plugins/team-task/state 與 /plugins/team-task/log。

資料列出的工具包括:

  • team_task_playbook
  • team_task_create
  • team_task_add_member
  • team_task_plan
  • team_task_dispatch
  • team_task_await
  • team_task_complete
  • team_task_review
  • team_task_send
  • team_task_status
  • team_task_finish

安裝與啓用

先確認 Node 環境。資料給出的要求是:

^22.19 || >=24

資料明確說明 Node 23 無法啓動 dsh。

DSH 插件會以當前 dsh 進程權限運行。安裝前建議檢查源碼、依賴和許可證。本插件許可證爲 MIT。

1、添加插件:

dsh plugin --profile web add @ready22race/dsh-team-task

這一步把 @ready22race/dsh-team-task 加入 web profile。

2、啓動或重啓 dsh:

dsh web

plugin add 後需要重啓 dsh,因爲 bundle list 在進程內緩存。

3、驗證組合:

dsh --profile web --dump-config

預期看到:

id: team-task

典型用法

打開:

http://127.0.0.1:3080

在 Settings → Models 設置模型 key,選擇 workspace 後發送:

用 team-task 跑一個長任務:先加載 lead playbook,規劃一張帶依賴和預指派(assignee)的節點圖,逐節點評審,最後合併交付。

預期看到:

  • 任務卡片
  • 右側 board floater
  • 本地事件日誌:<workspace>/.team-task/tasks/<id>/log.jsonl

推進任務時,可以先加載 lead playbook,再使用:

team_task_create
team_task_plan
team_task_dispatch
team_task_review
team_task_status

等工具。具體調用順序取決於任務節點、依賴關係和評審結果。

存儲與配置

資料說明 log.jsonl 是單一真相。snapshot.json 與 inbox/ 是派生視圖,不可手工寫入,也不被代碼讀回。

事件日誌可重放,也就是說,某個歷史時刻的團隊狀態可以通過重放日誌得到。

資料明確列出的配置項包括:

stateDir
memberProvider
memberMaxDepth
maxMembers
reconcileIntervalMs

M1 提供的 board data routes 爲:

/plugins/team-task/state
/plugins/team-task/log

適用場景與注意

這個插件適合需要在 DSH 中運行長任務多智能體流程的用戶,尤其是需要依賴節點、評審反饋、執行記錄保留和失敗恢復的場景。

需要注意:

  • Node 要求爲 ^22.19 || >=24,資料明確 Node 23 無法啓動 dsh。
  • plugin add 後需要重啓 dsh。
  • 插件以當前 dsh 進程權限運行,安裝前應檢查源碼與許可證。
  • v0.1 已知限制:成員喚醒仍需 live lead Agent。
  • message_delivered 只表示 inbox acceptance,不表示 turn consumption。
  • npm 發佈需要賬戶擁有 @ready22race scope;2FA 啓用時 npm publish 需要 --otp 或 bypass 2FA token。

鏈接

目錄頁:

https://www.skillhub.cn/plugins/Ready22Race/dsh-team-task

GitHub:

https://github.com/Ready22Race/dsh-team-task
羽毛球分组比赛记分
小程序二维码

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

小夜