Claude Code sub-agents 幾時幫到手?拆工、驗收同隔離先決定快定慢
3C 產品

Claude Code sub-agents 幾時幫到手?拆工、驗收同隔離先決定快定慢

圖片:via XDA Developers — https://www.xda-developers.com/claude-codes-sub-agents-solve-one-problem-and-create-three-others/
TechLab 編輯部(譯)·

平行開工有成本,任務之間少依賴先容易慳到時間

XDA 作者 Mahnoor Faisal 用 Claude Code sub-agents 之後,發現佢解決咗逐件事排隊做嘅樽頸,亦同時帶嚟三筆成本:新 agent 未必收到主對話入面嘅關鍵背景、主 agent 通常只收到結果摘要,同埋額外 context 會食多啲 token 同啟動時間。 呢啲屬作者個人使用觀察,唔係跨專案測試,不過幾個問題都幾準確咁指向平行 coding agents 最常見嘅甩漏位。

獨立 context 有用,但交接一定會有損耗

Claude Code 官方文件講得再仔細少少:一般 sub-agent 會由獨立 context 開始,睇唔到之前成段對話,Claude 會寫一份 delegation message 交代任務。不過佢亦會載入部分專案資料,例如 CLAUDE.md、memory 同開 session 時嘅 Git 狀態;內置 Explore、Plan agents 就有例外。換句話講,XDA 所講嘅「完全由零開始」要加返呢層補充,但核心風險冇變:只喺對話提過、冇寫入專案規則或者交接內容嘅決定,好容易送唔到過去。

平行拆工值唔值得,最實際係睇任務之間有幾多依賴。查三個互不相干模組、整理一大份 log、跑完整測試再抽出失敗項目,呢類工作輸出多、邊界清楚,交畀 sub-agent 幾合理。相反,資料庫 schema、API 回傳格式同前端狀態要一齊改,三邊一路互相影響,分開三個 agent 做通常會多咗猜測、重複讀檔同整合衝突。短小改動亦未必着數,agent 未熟習相關程式碼,主 session 可能已經改完。

交接內容要寫到可以獨立開工

一份夠用嘅交接,至少要交代目標、可改範圍、禁改範圍、現有約定、輸入輸出、驗收指令同回報格式。例如唔好淨係叫 agent「執好登入」,應該講清楚只可改邊幾個檔案、session cookie 行為要保持一致、邊個測試係驗收線,同埋完成後要列出改動檔案、測試結果、未解風險。若果一項限制只存在主對話入面,最好當佢未交過;長期規則就寫入專案指引,今次任務獨有嘅限制就放入 delegation message。

呢種寫法亦揭示一個幾實用嘅判斷方法:如果連任務邊界都未講得清楚,就應該留喺主 session,整理好要求先再拆出去。 Agent 數目加倍唔代表有效產出都跟住加倍,因為協調成本會沿住依賴關係增加。幾個 agent 要不停等對方決定、共用同一批檔案,或者各自要重新理解成個系統,開多幾個 context 只會將同一份理解成本重複支付。呢套判斷同樣適用於 Codex 等可以分派 coding 任務嘅工具。

摘要只係索引,驗收要睇可重現證據

XDA 第二個批評係主 agent 收到結論,未必睇到中間點兜路。實際防線唔應靠 agent 寫得幾有信心,而係要求佢交出可重現證據:Git diff、實際跑過嘅指令、測試名稱、退出狀態、失敗輸出節錄,同埋仍然未肯定嘅假設。跟住由另一個 agent 或者主 session 重新跑相關測試,再檢查改動有冇越界。驗收時唔好淨係收一句「全部完成」,仲要列明通過咗邊項測試、改過咩,同埋有咩仍未證實,等人手可以快速覆核。

測試本身亦要拆層次。每個 agent 先跑自己範圍嘅單元測試同 lint,合併前再由主 session 跑整合測試、型別檢查同完整 build;涉及權限、付款、資料遷移或者外部服務,就要保留人手 review。若果兩個 agent 共用同一個 working tree,即使負責唔同功能,都可能同時改 lockfile、設定檔或者共用型別。Git branch 或 worktree 可以將檔案狀態隔開,等你逐份 diff 審核,再按依賴次序合併。

Worktree 防撞檔,sandbox 限制出事範圍

Claude Code 官方建議用獨立 Git worktree 跑平行 session,每個工作目錄有自己分支,幾個 agent 唔會直接踩住同一批未提交改動。呢招主要處理程式碼隔離;安全方面仲要配合權限同 sandbox。自訂 sub-agent 可以用工具 allowlist 或 denylist,例如研究 agent 只開 Read、Grep 同 Glob,review agent 禁止 Edit。官方 sandbox 就用作限制 Bash 同子程序可寫嘅路徑及可連接嘅網域,而 permission rules 會控制各類工具可唔可以嘗試存取指定資源。

最穩陣嘅安排係按角色畀最少權限:查資料嗰個唯讀、寫碼嗰個只可碰指定目錄、測試 agent 可以執行測試但唔掂部署憑證。官方亦提醒,sandbox 同 permissions 係兩層互補保護,開咗 sandbox 唔代表可以直接跳過全部批准。尤其 agent 會讀 issue、文件、套件輸出同網頁內容,外來文字都有機會夾雜惡意指示;網域 allowlist、敏感路徑 deny rule 同隔離環境,至少可以縮細一個錯誤指令嘅影響範圍。

慳時間之前,先計埋重新讀檔同整合成本

XDA 指多 agent 會額外消耗 token 同用量限額,方向合理,但文中所引「約四至七倍」未見同一基準嘅 Claude Code 官方公開測試可直接核對。Anthropic 另一篇多 agent 研究曾錄得遠高過單一聊天嘅 token 用量,但嗰套係研究型搜尋系統,唔應直接套落 coding sub-agents。實際用量仲會受模型、任務長度、cache 同 plan 影響。對開發者同細型團隊嚟講,做法可以好簡單:先將搜尋、測試、大量 log 分析同互不相干嘅改動交出去;要密集來回決策或者改同一組核心檔案,就留喺主 session 做。最後睇總完成時間、測試通過率同整合返工量,先知平行開工有冇真正慳到時間。


參考來源

本文根據原文及公開資料整理;資料有出入時,以原文及官方資料為準。

分享:WhatsAppThreadsTelegramFacebook