Claude Code v2.1.224 新增跨会话消息。本文基于官方资料介绍 ListAgents、SendMessage、crossSessionInbound、isolatePeerMachines,以及同机、跨机、Web 和容器边界;工程推演另作标注。
在这里插入图片描述

版本与平台

跨会话消息要求 v2.1.224+,跨机主动联系 Remote Control 会话需要 v2.1.225+。支持 macOS、Linux 和 WSL 2,不支持原生 Windows;Amazon Bedrock、Claude Platform on AWS、Google Cloud Agent Platform、Microsoft Foundry 暂不可用。实际可用性还受提供方和配置影响。

命令与配置

用户可用命令:/list-agents(别名 /peers)查看当前可达会话;/rename 给当前会话命名;启动时用 --name 指定会话名称。未命名时自动生成,不影响可达性但不利于识别。

Claude 内置 ListAgentsSendMessage 两个工具。ListAgents 用来发现当前可达的会话,SendMessage 按会话名称投递消息。用户不需要直接调用这些工具,用自然语言告诉 Claude 即可,Claude 会自动完成发现和发送。

精确最小 JSON 配置示例:

{
  "crossSessionInbound": "hold",
  "isolatePeerMachines": true
}

crossSessionInbound 控制接收端对待跨会话消息的行为,有三种取值:

  • accept:消息被正常投递,接收 Claude 在合适时机读取(对应 delivered);
  • hold:消息被暂存但不投递,直到用户批准或后续的 mode/settings 变更允许投递(对应 held);
  • refuse:消息被直接丢弃(对应 refused)。

isolatePeerMachines 设为 true 后,跨机器的 SendMessage 在离开本机前需要用户明确批准;同机会话不受该设置约束。

消息不携带用户授权,不能批准权限、不能修改配置文件,消息中的斜杠命令只作为普通文本处理。接收会话自己的权限规则仍然生效。

同机、远程与容器

同机:两个会话在同一台机器上,通过本地 inbox socket 通信,不经过 Anthropic 服务器。同机会话支持主动发送新消息和回复。

其他机器:v2.1.224 首发时仅能回复;v2.1.225 起,SendMessage 可按 ListAgents 显示的 name [ref] 主动联系 Remote Control 会话。

Web:官方文档仍标记为"Replies only"。v2.1.225 changelog 没有宣告 Web 同步放开,因此不与其他机器合并描述。

容器:容器有自己的文件系统,容器内的会话和宿主机上的会话看不到彼此的注册文件,因此不能互相发现。同一容器内的两个会话仍然可以通信。可达性以"能否读同一组注册文件与 socket"为边界。

接收端运行中时,消息在两次工具调用之间被读取,不会中断正在执行的操作;接收端空闲时,Claude Code 以这条消息为起点开始新一轮。消息通道带有重复消息抑制、速率限制与队列上限(每会话 50 条),防止会话循环无限放大。长时间运行的 claude -p 会话可以绑定 inbox 接收消息,但 bare mode 不绑定 inbox,不接收也不出现在 agent 列表。
在这里插入图片描述

使用场景与功能选择

四种适合使用跨会话消息的场景:并行 worktree 协调、长程任务状态汇报、发现交接、双向提问。

当有以下需求时,应使用其他能力而非跨会话消息:

需求应使用的能力
在另一个终端继续同一段完整对话Resume session
让 Claude 创建并监督一组协作会话Agent teams
从一个界面观察和操控多个会话Agent view
从手机或另一设备亲自控制当前会话Remote Control
将 CI、告警或聊天事件推入会话Channels
在独立会话之间传递必要结论、状态或问题Cross-session messaging

在这里插入图片描述

工程推演

阿源判断,跨会话消息的意义不只是省掉复制粘贴。它意味着隔离上下文之间开始具备受控的显式通信能力,这对 Coding Agent 的工程架构有几层影响。

隔离上下文 + 显式通信。过去在两个会话之间协作,要么复制整段历史,要么手动总结再粘贴。现在会话之间可以只传递必要事实和决策,减少上下文污染与 Token 浪费。阿源判断,这是从"共享一切"到"按需传递"的协作范式转变。

长任务从轮询变成事件回报。阿源判断,未来长程任务在决策、完成或阻塞时主动发送小型状态事件,后台与前台的协作模式从拉取变成推送。对于运行几十分钟的迁移脚本或测试套件,这个变化的体感会很明显。

多 Agent 不等于共享一个大 Prompt。各会话保留独立任务上下文,只传递必要事实。每个会话有自己的权限边界、工具链和上下文窗口,消息只在需要时才跨越边界。阿源判断,这种"隔离上下文 + 显式通信"的模式比共享一个巨大 Prompt 更可控,也更容易审计和调试。

Harness 需要通信基础设施。阿源判断,harness 层需要补齐六项基础设施:地址与发现、邮箱与投递、身份与权限、背压与速率限制、生命周期与恢复、可观测性。前三项已形成基本闭环;背压已有速率限制、重复抑制和每会话 50 条上限,生命周期与可观测性仍须工程补齐。

投递结果不等于业务完成。阿源判断,delivered/held/refused 是消息投递处理层的结果,不等于业务任务完成确认。官方文档给出三种投递结果,但消息"已投递"不代表接收端已读取、已理解或已执行。对于长时间运行的任务,建议在关键节点发送检查点摘要并同时附上产物路径,让结果落在仓库或文件系统,不依赖消息通道做持久化。

纯文本既是优点也是限制。纯文本简单、可审阅、低耦合,但尚不是带 schema、幂等键、确认机制和追踪上下文的结构化协议。工程推演,当前接口保持克制,避免过早引入复杂协议,但也意味着跨会话消息暂时不适合承担关键路径上的精确协调。官方资料未描述结构化 correlation ID、业务完成确认和跨会话追踪 schema。
在这里插入图片描述

限制与来源

阿源判断,跨会话消息是从"单会话工具"向"会话网络"演进的一个信号。它克制、明确、有边界——只传文本、不传授权、不传历史、不传文件。当前实现还很早期,每会话 50 条上限是为了防止会话循环无限放大。

本文基于以下官方来源整理:Claude Code Cross-session Messaging 文档ClaudeDevs 官方发布帖CHANGELOG。官方演示来自 ClaudeDevs(2026-08-08),原始为视频;本地素材包另备降级 GIF。展示两路 Claude 会话跨会话消息协调。

母文链接:《Claude Code 会话终于能互相发消息了:从复制粘贴到会话网络》

本文基于官方发布素材,未独立实测。实际体验可能因版本、平台和配置而有差异。

本文首发于VX 「阿源聊AI」,基于官方发布素材改写。

更多推荐