前言¶
DeepSeek Harness (DSH) 採用“一切皆插件”的架構,旨在通過插件化擴展功能。在多窗口、多工具協作的場景下,AI 智能體之間傳遞上下文時存在理解損耗和上下文丟失的問題。把模糊的“大白話”直接丟給 AI 往往導致理解偏差,而窗口切換或工具切換後,上下文全靠人肉搬運。task-forge 插件通過“編譯-交接-回讀”的流程,將需求轉化爲標準化的任務書,並強制執行回讀握手協議,確保跨窗口交接的無損性。
是什麼¶
- 名稱:
dsh-plugin-task-forge - 一句話:把大白話編譯成任務書,跨窗口 AI 無損交接
- 維護者:121212165
- 分類:工作流
- 許可證:MIT
- 核心價值:通過結構化的任務書和回讀協議,解決 AI 之間上下文傳遞的損耗問題。
安裝與啓用¶
插件依賴 pnpm 在 PATH 上,且需要 @deepseek-ai/cordis >=4.0.0。
- 執行安裝命令:
dsh plugin --profile web add github:121212165/dsh-plugin-task-forge
- 修改配置文件。將本倉庫根目錄的
cordis.patch.yml內容替換或合併進$DSH_HOME/profiles/web/cordis.patch.yml。
注意:不要直接追加,否則會報錯。 - 重啓 dsh。配置層和客戶端都需要重啓才能生效。
核心命令¶
插件提供了一系列命令來管理任務的全生命週期。
1. 編譯:/forge <需求>¶
將大白話編譯成開源項目標準的任務書。
* 用法:/forge <你的需求> [--mode interview]
* 說明:
* 默認 auto 模式:模型自行推演並暴露假設,定不了的寫成編號缺口 Q1/Q2…。
* --mode interview:先出問題清單,等用戶回答完再編譯。
2. 交接:/relay <id>¶
導出自包含的交接包,粘貼給任意窗口的 AI。
* 用法:/relay <id> [--to <窗口名>\|ide:<工具名>]
* 說明:
* 導出文件:~/.dsh/task-forge/outbox/<id>-v<n>.md。
* 支持 --to ide:<工具名>,會在當前項目內落一份同字節副本。
3. 回讀握手:/ack <id> <回讀全文>¶
確認對方 AI 已經正確理解任務書。
* 用法:/ack <id> [--to <窗口名>] <回讀全文>
* 說明:
* 必須包含 STATUS: READY 纔算成功。
* 如果是 STATUS: NEED-INPUT,缺口會自動登記進任務書。
4. 補全缺口:/answer <id> <Q編號> <答案>¶
回答編譯過程中發現的缺口。
* 用法:/answer <id> <Q編號> <答案>
* 說明:
* 答案寫入已定決策(D 編號),版本號 +1。
* 如果是 interview 模式,答完最後一個 Q 會自動重新注入編譯指令。
5. 臺賬總覽:/forge-list¶
查看所有任務的狀態。
* 用法:/forge-list
* 說明:顯示任務 × 版本 × 窗口回讀狀態(如 窗口A✓v2 / 窗口B◐v1)× 缺口/決策計數。
回讀握手協議¶
爲了確保無損交接,接收方必須在開工前輸出以下內容:
version: <它讀到的版本號>
【回讀】用自己的話複述目標、約束、驗收標準(逐條對應編號)
【缺口】發現的信息不足或矛盾,逐條編號;沒有寫"無"
STATUS: READY 或 STATUS: NEED-INPUT
- 結構不完整(缺 STATUS / 缺 version / 缺複述)→
/ack判無效。 - 版本不一致 → 按舊版處理並警告。
- 版本號 是跨窗口唯一權威,所有交接引用必須帶
id@version。
配置項¶
插件支持以下配置(默認值):
enabled:是否啓用(默認true)。dataPath:數據根目錄,默認~/.dsh/task-forge。hubPath:IDE 副本目錄,默認.hub。quotaSummaryPath:預算契約文件,默認~/.dsh/quota/summary.json。quotaHistoryPath:用量歷史文件,默認~/.dsh/quota/history.json。limit/maxChars:注入系統提示的條數與字符預算,默認8/900。order:注入段在系統提示裏的排序位置,默認690。
總結¶
dsh-plugin-task-forge 爲 DSH 生態提供了任務管理的標準流程。通過 /forge 將需求結構化,通過 /relay 與 /ack 確保跨窗口傳遞的準確性,通過版本號管理確保協作的可追溯性。這對於需要多 AI 智能體協作的場景非常有價值。