SynapseWire

Claude Code 跨 Session 訊息與 Agent Teams:從單打獨鬥到團隊協作

Claude Code v2.1.224 新增跨 Session 訊息傳遞與實驗性 Agent Teams 功能,讓多個 Claude Code 工作階段能互相溝通、分配任務、協同開發。

作者: SynapseWire 編輯部 發布於:
多個 Claude Code 終端工作階段透過訊息線條互相溝通的示意圖

Claude Code 跨 Session 訊息與 Agent Teams:從單打獨鬥到團隊協作

Claude Code 刚剛推出兩項根本改變編碼工作流程的新功能。從 v2.1.224 開始,獨立的 Claude Code 工作階段可以互相發送純文字訊息,無需任何額外設定。實驗性的 Agent Teams 功能讓一個工作階段能產生協調運作的團隊成員,共享任務清單並直接溝通。原本各自獨立的終端機組合,現在開始具備開發團隊的協作能力。

跨 Session 訊息到底是什麼

在 macOS 或 Linux 上啟動一個互動式 Claude Code 工作階段時,它會在 /tmp/cc-socks/{pid}.sock 建立一個 Unix socket。同一台機器上運行的其他工作階段,可以透過 ListAgents 工具發現對方,再用 SendMessage 工具傳送訊息。整個過程都在本機完成,訊息不會經過 Anthropic 的伺服器(Anthropic 官方文件)。

訊息僅限純文字,不能攜帶對話歷史、檔案或權限授權。接收端的工作階段將訊息視為輸入而非指令,它無法代替你批准提示、變更設定或執行命令。這個區別很關鍵:訊息傳遞是協調機制,不是委託機制。

每個工作階段透過名稱識別。你可以用 /rename 指令或啟動時的 --name 參數設定名稱;未設定時,Claude Code 會根據工作目錄自動產生,例如 myapp-3f。當兩個工作階段名稱相同時,列表會自動區分它們(Blake Crosley)。

實際運作方式

典型的使用場景是這樣的:你在同一個專案上同時運行三個工作階段,一個負責 API 層、一個負責前端、一個負責測試。API 工作階段重新命名了一個欄位。你不需要切換到前端工作階段重新說明變更,API 工作階段直接發送訊息:「accounts 資料表中的 user_id 已改為 owner_id。」前端工作階段收到後,自動調整程式碼並繼續工作。

Claude 也可以主動發送訊息。當它做出的變更可能破壞其他工作階段依賴的功能時,它會在你發現建構失敗之前就警告對方。某個工作階段完成長時間運行的資料遷移後,也能通知其他工作階段主分支已經可以安全 rebase。

官方文件列出三個主要使用案例:

  • 交接發現:一個工作階段發現了破壞性變更,將摘要傳送給負責受影響區域的工作階段
  • 協調並行 worktree:當多個工作階段在同一個版本庫的不同 worktree 中工作時,Claude 可以報告哪些變更已經合併
  • 取得長時間運行任務的狀態:遷移或部署工作階段可以主動推送進度更新,你不需要一直輪詢

透過 Remote Control 跨機器通訊

從 v2.1.225 開始,SendMessage 可以透過 Remote Control 主動與其他機器上的工作階段發起對話,此前只能在對方先傳訊息後才能回覆。遠端工作階段在 ListAgents 中顯示為 name [ref],同一個 SendMessage 工具不論目標是本機還是遠端都通用(Releasebot 更新日誌)。

這樣筆記型電腦上的工作階段就能和高效能桌機上的工作階段對話,CI runner 上的工作階段也能把結果回傳到你的開發機器。

隱私保護機制

四個環境變數可以分別獨立地停用跨 Session 訊息功能。如果你的組織基於隱私或合規需求設定了其中任何一個,該功能就不會啟動,而且 Claude 不會發出任何警告。如果訊息功能沒有運作而你沒有做過額外設定,先檢查環境變數再回報 bug。

Agent Teams:結構化的多 Session 協作

跨 Session 訊息處理的是獨立工作階段之間的點對點通訊。Agent Teams 則更進一步:它協調多個 Claude Code 實例共同解決問題,並提供結構化的任務管理。

Agent Teams 是實驗性功能,預設關閉。你需要在 settings.json 或環境變數中設定 CLAUDE_CODE_EXPERIMENTAL_AGENT_TEAMS=1 來啟用。沒有這個變數,就不會建立團隊、不會寫入目錄,Claude 也不會提議產生團隊成員(Anthropic 官方文件)。

Teams 與 Subagents 的區別

這個差異很重要:

功能SubagentsAgent Teams
通訊方式只回報給主工作階段團隊成員之間可以互相溝通
任務共享無共享任務清單共享任務清單,支援認領
適用範圍單一工作階段內跨多個工作階段
設定方式自動需要環境變數

Subagents 適用於需要平行處理但所有結果都回饋給中央協調者的情境。Agent Teams 則用於工作者之間需要分享發現、挑戰彼此結論,且不需要將所有資訊都通過單一上下文視窗傳遞的場景。

團隊角色

一個團隊包含一名 Lead(領導者)和多名 Teammate(成員)。Lead 負責協調工作、分配任務、整合結果。Teammate 各自獨立工作,擁有各自的上下文視窗,並可以直接互相溝通。你也可以直接與個別 Teammate 互動,不必通過 Lead。

從 v2.1.178 開始,產生 Teammate 不再需要額外的設定步驟,工作階段結束時會自動清理。TeamCreateTeamDelete 工具已經移除,團隊管理完全由系統內部處理。

什麼時候該用 Teams

官方文件中列出最適合使用 Teams 的場景:

  • 研究與審查:多位 Teammate 同時調查問題的不同面向,然後分享並挑戰彼此的發現
  • 新模組開發:Teammate 並行構建功能的不同部分,透過訊息協調依賴關係
  • 多假設深度除錯:每位 Teammate 追查不同的根本原因假說,邊查邊回報發現

對於一般簡單任務,Teams 的協調開銷不值得。只有在平行探索確實能加速結果時,團隊協作才會帶來價值。

對 AI 輔助開發的意義

這兩項功能讓 AI 編碼工具從「每個終端機一個助手」演進成「一群互相協調的助手團隊」:

對獨立開發者而言,跨 Session 訊息消除了在工作階段之間手動搬運上下文的工作。你不再需要在不同終端機之間複製貼上發現,也不需要記得告訴前端工作階段後端的變更。

對團隊而言,Agent Teams 提供了一種結構化的方式,將複雜工作分配給多個 Claude Code 實例。一位開發者可以監督一個由多個 AI 工作階段組成的團隊,這些工作階段會共享進度和依賴關係。

對工作流程而言,worktree、跨 Session 訊息和 Agent Teams 的結合讓平行工作自動協調。工作階段做出變更後通知受影響的工作階段,對方自行調整,不需要你發現問題後再手動介入。

限制與注意事項

這些功能也有其限制:

  • 僅支援 macOS 和 Linux——官方文件未提及 Windows 支援
  • 純文字訊息——無法透過訊息傳輸檔案、對話歷史或權限
  • Agent Teams 仍是實驗性功能——在工作階段恢復、任務協調和關閉行為方面有已知限制
  • 隱私變數可能悄悄停用訊息功能——四個環境變數各自都能獨立阻斷功能,且不會有任何警告
  • 名稱衝突——當兩個工作階段名稱相同時,列表會自動區分,但如果你沒注意可能會造成混淆

快速上手

更新 Claude Code 到 v2.1.224 或更新版本:

npm install -g @anthropic-ai/claude-code@latest

跨 Session 訊息不需要額外設定,只要同時運行多個工作階段,它們會自動互相發現。

要使用 Agent Teams,加入實驗性功能的設定:

{
  "env": {
    "CLAUDE_CODE_EXPERIMENTAL_AGENT_TEAMS": "1"
  }
}

然後要求 Claude 為複雜任務產生一位 Teammate,或者在你描述一個多組件專案時,讓它建議團隊架構。

更宏觀的觀察

Anthropic 的 Claude Code 一直在快速疊加新功能,hooks、skills、MCP 整合,現在又加上了跨工作階段通訊。每個新功能都建立在前一個之上:hooks 讓你攔截動作,skills 封裝可重用的行為,MCP 連結外部工具,跨 Session 訊息讓工作階段之間協調運作。

Claude Code 正在從單一工作階段的助手演進為多代理開發平台。跨 Session 訊息和 Agent Teams 是這個平台的基礎設施。等功能穩定、實驗標籤移除後,更多複雜的工作流程會出現,AI 工作階段會被視為團隊成員而不僅是輔助工具。

分享文章

留言評論

0 則評論

暫無評論,搶先發表你的看法吧!

相關文章