前言¶
在 DeepSeek Harness(DSH)裏,常見用法是一條指令佔滿主 agent 一整輪:你發任務,它忙完,你再發下一條。若目標是「把某件事做到指定標準,並在預算內反覆試錯改進」,人就要一直盯着對話、一次次催進度。
dsh-loom 把「一句目標 + 預算」變成後臺可重複執行的工作鏈,在子會話裏一輪輪迭代,主 agent 大部分時間保持空閒;只有晉升補丁、預算不足或循環卡住等判斷,才通過檢查點叫醒你。全過程落在 append-only 事件日誌裏,便於回放與審計。下面介紹它是什麼、能做什麼、如何安裝與啓動一次典型戰役。
這是什麼¶
dsh-loom 是維護者 DarknessLED 發佈的 DSH 工作流插件(社區目錄:skillhub 條目,源碼:GitHub)。定位是 Human-in-the-loop recursive self-improvement for DeepSeek Harness:主 agent 交出一個客觀目標與預算後,插件在 child session 中執行「偵察 → 多候選 → 機械驗證 → 評分 → 晉升」鏈條,並在多輪中於上一輪產地上繼續改進。
名字取自「織機」:經線是目標與預算,緯線是每一輪工作鏈,人主要負責換梭與驗收(接受補丁、調預算、解開卡點)。
當前 README 標明能力已貫通 M0–M8 階段(戰役生命週期、事件日誌、worktree 隔離、檢查點、成本覈算、知識樹、Lean 數學門、鏈條自優化、側欄 RSI 面板、多窗口與 chaos 加固等)。插件版本 0.2.1(2026-11-10),許可證 MIT;依賴 dsh >=0.2.0-rc.2 <0.3.0-0,Node ^22.19 || >=24。
它解決什麼問題¶
與普通「一問一答佔滿主回合」相比,RSI 形態期望:
- 人說一句「把 X 做到 Y 水平,預算 Z」;
- 系統把這句話變成可重複執行的工作鏈;
- 鏈條在後臺一輪輪跑,在前一輪產地上繼續改進;
- 主 agent 不參與每一輪,大部分時間爲空閒;
- 僅在補丁是否接受、預算是否加碼、循環是否卡住等節點通過檢查點喚醒人;
- 每輪寫入 append-only 事件日誌,可回放、審計、復現。
README 強調:這是 DSH 裏的真實能力(工具、子會話派發、面板),而不是提示詞模板。
核心功能(資料已覈實部分)¶
戰役與工作鏈¶
- 戰役(campaign):創建、暫停、恢復、停止、改預算、加約束。
- 工作鏈 spec 含 agent / verifier / human / map 四類節點,並提供經驗模板(如
code-fix)。 - 每輪:
git worktree隔離 → 子 agent(providerspawn)→ 機械驗證 → diff → 評分 → 晉升門;驗證通過、有補丁且不劣於 incumbent 時可autoApply,否則掛檢查點等人決策。
可觀測性與工具面¶
插件向主會話暴露一組工具,包括但不限於:rsi_start、rsi_status、rsi_control(含全局循環開關)、rsi_run、rsi_chain、rsi_evalset、rsi_decide、rsi_report、rsi_lean、rsi_replay、rsi_dashboard、rsi_export、rsi_doctor。
rsi_doctor:開工自檢(git 倉庫、工作區是否乾淨、Node、loom home 可寫、當前窗口是否持有循環等),失敗項附帶可執行fix。- 事件日誌:append-only ledger + 純函數 reduce,物化視圖
views/state.json。 - 成本:彙總子會話
assistant/message.usage,按可配置單價折 USD,雙預算閘門。
人與主 agent 的交互邊界¶
需要人拍板時寫入 checkpoint.raised,並通過 sessionController.prompt(mode:"queue") 向發起戰役的會話投遞消息——README 寫明這是唯一會叫醒主 agent 的路徑。人可用 rsi_decide(decision:"approve" | "reject" | "stop") 處理;approve 時插件將補丁 git apply 進工作區。
循環調度與總開關¶
- 默認約每 20 秒 tick 一次,對 running 戰役推進一輪(一次最多
candidates個候選,各自 worktree + 子會話)。 - 全局開關寫在
~/.dsh/loom/switch.json,翻轉不寫進戰役日誌;rsi_control(action:"disable" | "enable")控制是否繼續派發,歷史seq不偏移。
側欄 RSI 面板(M7)¶
重啓 DSH 後,側欄可出現 RSI 入口;面板約每 5 秒輪詢狀態,支持 pause / resume / stop 與 approve / reject。多窗口時僅心跳最新的窗口驅動循環,舊窗口只讀觀察。面板文案爲中文,狀態詞有固定譯名。
數據目錄¶
戰役與賬本數據默認在 ~/.dsh/loom/,可用環境變量 LOOM_HOME 覆蓋;刪除該目錄即清空插件數據,不影響 DSH 本體。
安裝與啓用¶
從 GitHub 安裝(README 給出的當前可用方式):
dsh plugin --profile desktop add DarknessLED/dsh-loom
也可將 dsh-loom 手工加入 profile 的 dsh.profile.bundles;倉庫根目錄的 cordis.patch.yml 爲 bundle manifest,dsh plugin add 會識別。
README 另說明:收錄插件市場後,可在「設置 → 插件 → 插件市場」搜索 dsh-loom 一鍵安裝;目錄元數據見 awesome-dsh-plugin 倉庫中的 data/plugins/DarknessLED__dsh-loom.yml。
安裝後需重啓 DeepSeek Harness 方可生效。
典型用法¶
下面步驟摘自 README 的「一次典型使用」,展示立項、註冊評測任務、激活鏈條並啓動循環。
1. 立項(可自動提議 code-fix 模板鏈)
rsi_start(objective:"把 src/parser 的測試覆蓋率做到 90% 以上,不許改公開 API",
workspace:"C:/Projects/demo", budgetUsd:3, budgetRounds:10, template:"code-fix")
2. 註冊任務集(每任務含提示詞與機械驗證器)
rsi_evalset(action:"register", tasks:[
{ id:"t1", prompt:"補 parser 對行內註釋的測試", verify:{ cmd:"npm test -- --coverage", timeoutMs:600000 } },
{ id:"t2", prompt:"補 parser 對嵌套模板字符串的測試", verify:{ cmd:"npm test -- --coverage", timeoutMs:600000 } }
], holdout:["t2"])
3. 激活鏈條並開跑
rsi_chain(action:"activate", version:1)
rsi_control(action:"start")
之後插件按 tick 自行推進;可隨時 rsi_status / rsi_report 查看,不打斷循環。若需暫停整夜派發:
rsi_control(action:"disable", reason:"今晚不跑")
rsi_control(action:"enable")
開工前建議先跑 rsi_doctor,確認 git、Node、loom 目錄與窗口所有權滿足運行條件。
適用場景與注意¶
適合誰
- 已在 DSH 上開發或運維 agent,希望在美元與輪次預算內,讓代碼修復、測試補強等任務自動多輪候選與機械驗證,且只願在晉升、卡點處介入的人。
- 需要可審計、可回放迭代過程,而不是單次對話裏口頭總結進度的人。
- 願意維護 git 乾淨工作區、爲評測任務編寫
verify.cmd等機械門的人。
務必注意
- 權限:插件以當前 DSH 進程權限運行,子會話可執行你配置的驗證命令、改寫 worktree;安裝前應閱讀源碼與 MIT 許可證,確認命令與路徑可信。
- 環境:目標
workspace應爲 git 倉庫;驗證器超時、預算耗盡會觸發檢查點或停止,需提前設好budgetUsd/budgetRounds。 - 版本:
package.json要求 dsh>=0.2.0-rc.2 <0.3.0-0與 Node^22.19 || >=24,與 README 徽章一致。 - 生態:DSH 社區插件目錄(如 skillhub.cn)爲獨立站點,與 DeepSeek / 幻方無官方從屬關係;本文安裝命令以 README 原文爲準,勿自行拼接未在資料中出現的
dsh plugin add github:...形式。
結尾¶
dsh-loom 把 RSI 做成 DSH 內可持續運轉的工作鏈:主 agent 空閒,子會話迭代,人只在檢查點決策,事件日誌全程留痕。若你要在 Harness 裏試一輪「目標 + 預算 + 可驗證任務集」,可按上文安裝、自檢後 rsi_start 立項。
- 目錄頁:https://www.skillhub.cn/plugins/DarknessLED/dsh-loom
- GitHub:https://github.com/DarknessLED/dsh-loom