Boris Cherny 是 Anthropic Claude Code 的負責人。他公開說明自己的工作方式:日常同時開 10–15 個 session,跨多個 git worktree 隔夜執行數百個背景 agent。本手冊將此方法拆成可操作的步驟:並行艦隊配置、sub-agent 架構設計、Stop hook 自主 loop、CLAUDE.md 制度記憶,以及 MCP 工具控制。指令依官方文件查證。
Boris Cherny 是 Claude Code 的建造者,也是其深度使用者。他公開表示已鮮少直接手寫程式,工作重心轉為編排與審查 AI agent:拆分任務、設定權限護欄、審查產出、將錯誤轉化為規則。
此方法基於 Claude Code 的三個核心原語:session(可並行、可跨裝置遙控)、sub-agent(在獨立 context 中執行研究或修改,僅回傳摘要),以及 memory / hooks / MCP(讓代理記住規則、自主完成任務、並操作外部工具)。掌握這三層即可依此方法建構自己的代理工作流。
Cherny 公開說明他的工作規模:日常同時開 10–15 個 Claude Code session;遇到深度、長時間、可平行的任務,則擴展至跨多個 git worktree、隔夜執行數百個背景 agent。規模化的核心機制是 git worktree:讓每個 agent 在各自獨立的工作目錄與分支上執行,互不衝突。
多 session 並行時,需要跨裝置監控。Cherny 在 /config 中啟用了「Enable Remote Control for all sessions」,並在 X 上說明了跨裝置搬移 session 的方式。兩個方向對應兩個指令:
/remote-control 是 push,session 在本機執行,透過手機或網頁操控。/teleport 是 pull,將雲端 session 拉回本機終端機執行(自動驗證 repo 狀態、切換至對應分支、載入完整對話歷史)。需要 Claude Code v2.1.51 以上。
面對複雜任務,Claude Code 將工作委派給 sub-agent。每個 sub-agent 在獨立的 context window 中執行,擁有各自的 system prompt、工具清單與權限模式,完成後僅將摘要回傳主對話。此架構有四項效益:不污染主 context、以工具白名單強制護欄、跨專案複用 agent 定義、對不需要高階模型的階段降級為較低成本的模型(如 Haiku)。Claude 依每個 sub-agent 的 description 欄位決定何時委派。
| 內建 Sub-agent | 模型 / 工具 | 對應 Cherny 的「角色」 |
|---|---|---|
Explore |
Haiku · 唯讀 | 探索代理。掃描 codebase、查找檔案、理解脈絡。可指定 quick / medium / very thorough 三種徹底度。 |
Plan |
繼承主對話 · 唯讀 | 規劃代理。在 plan mode 下先研究再提出工程方案,修改 code 前完成設計決策。 |
General-purpose |
繼承主對話 · 全工具 | 執行代理。適用需同時探索與修改、多步驟、撰寫測試並迭代的複雜任務。 |
重要限制:sub-agent 不能再委派 sub-agent(無巢狀),此設計防止失控遞迴。大規模並行依賴多個獨立 session(背景 agent),而非無限巢狀。
對於重複性委派的工作類型,可將其封裝為自訂 sub-agent。使用 /agents 互動建立,或手動撰寫含 YAML frontmatter 的 Markdown 檔,存放至 ~/.claude/agents/(個人用,跨專案可用)或專案的 .claude/agents/。
/agents 建立時,可為 sub-agent 指定一個持久記憶目錄(~/.claude/agent-memory/),使其跨對話累積對 codebase 模式與常見問題的認識,提升後續委派的準確度。
長時間無人值守任務的兩個前提:背景 agent 加上 hooks。核心做法是預先將代理需要的工具加入白名單,避免執行期跳出權限詢問。Stop hook 在代理嘗試結束時觸發,可在此檢查任務是否實際完成,未完成則讓代理繼續執行,形成自主 loop。
驗證由 Review 代理負責:自動撰寫測試、透過瀏覽器擴充實際操作 UI、執行並在出錯時迭代,直至測試全數通過。此驗證步驟使代理產出具備獨立驗證依據,而非僅依賴模型的自我判斷。
控制多個代理的行為並防止重複犯錯,Cherny 的團隊使用 CLAUDE.md(或 AGENTS.md)。機制直接:每當代理出錯,立即將修正規則寫入此檔案。此檔案在 repo 被讀取時自動載入,等同於為後續所有代理提供一份「本 codebase 的安全操作規則」,持續累積。
Cherny 的代理透過 Model Context Protocol(MCP) 取得外部系統的操作權限,可接入公司工具鏈:從 BigQuery 查詢資料、在 Slack 搜尋訊息並發送更新、從 Sentry 擷取生產環境錯誤日誌。此機制使代理能夠閉環處理「查資料 → 修改 code → 通報結果」的跨系統任務。
以下為示意流程(說明指令與分工,非實測逐字稿):將一個含 bug 的功能提交給 Claude Code,示範 Explore/Plan 委派、並行修復、自動驗證、跨裝置監控,以及最後將教訓寫回 CLAUDE.md 的完整迴圈。
/remote-control(push)與 /teleport(pull)方向相反,均需 v2.1.51 以上。Remote Control 與 Ultraplan 等功能共用 claude.ai/code 介面,每次僅可連接一個。
1. 啟用遠端控制。在 /config 開啟「Enable Remote Control for all sessions」,使任何 session 均可透過 /remote-control 推送至手機,或以 claude --teleport 拉回終端機。
2. 建立第一份 CLAUDE.md。記錄專案的強制規則(資料庫存取方式、測試要求、命名規範、危險操作限制)。之後每次代理出錯,追加一條修正規則。
3. 定義常用 sub-agent。用 /agents 建立 code-reviewer 或 test-writer,存放於 ~/.claude/agents/,指定唯讀工具清單與較低成本的模型,並開啟持久記憶。
4. 以 worktree 實現並行。每個獨立任務建立一個 git worktree 與對應分支,先以 2–3 個 session 並行執行,確認無衝突後再擴大規模。
5. 接入 MCP 並設定 Stop hook。使用 claude mcp add 接入 Sentry / Slack / BigQuery 等工具,並設定 Stop hook 執行完成驗證,使代理能自主跑完完整迴圈。
① 官方文件 · Create custom subagents:Explore/Plan、frontmatter、/agents。
② 官方文件 · Remote Control / teleport:跨裝置遙控與傳送。
③ Boris Cherny · X(@bcherny):本人公開分享的 15 條技巧。
④ The Pragmatic Engineer · Building Claude Code with Boris Cherny。