Claude Code 2.1.224 新增跨会话消息传递,支持并行开发工作流
Claude Code v2.1.224 新增跨会话消息传递,让独立编码会话能够直接交换依赖变更、迁移进度和测试结果,从而更高效地协调并行开发任务。

Claude Code 2.1.224 新增跨会话消息传递,支持并行开发工作流
引言
Anthropic 为 Claude Code 增加了一个新的协调层:独立的编码会话现在可以直接相互发送消息。
该功能随 Claude Code v2.1.224 于 2026 年 8 月 7 日发布。Anthropic 将其称为跨会话消息传递。
开发者无需再在多个终端窗口之间手动复制发现的结果,而是可以让一个 Claude Code 会话告诉另一个会话依赖项已更改、迁移已完成、bug 已修复或某项决策已经做出。
原始 AIBase 文章将该功能视为对同时处理多项任务的开发者的重大改进。这一描述方向上是正确的,但 Anthropic 的官方文档补充了几个重要细节。
跨会话消息传递:
- 需要 Claude Code v2.1.224 或更高版本
- 可在 macOS 和 Linux(包括 WSL 2 下的 Linux)上运行
- 不适用于原生 Windows
- 交换的是文本消息,而非完整对话历史或文件
- 使用
ListAgents发现可访问的会话 - 使用
SendMessage传递消息 - 可适用于同一台机器上的多个会话之间
- 也可连接到其他机器上受支持的会话或 Web 版 Claude Code
- 包含入站控制功能,可接受、暂存或拒绝消息
截至 8 月 10 日,官方变更日志已经超越了 v2.1.224。版本 2.1.225 改进了跨机器发起功能,而在本文准备时,v2.1.227 被列为 Anthropic 变更日志中的最新版本。
重点在于 v2.1.224 引入了该功能,而后续版本则对其行为方式进行了优化。
Claude Code 会话现在可以相互通信
在跨会话消息传递出现之前,运行多个 Claude Code 会话的开发者往往不得不在会话之间充当通信层。
想象以下三个终端:
会话 A:重构身份验证
会话 B:更新支付 API
会话 C:运行迁移和集成测试
如果会话 A 更改了会话 B 所依赖的共享接口,开发者必须注意到这一变化并手动进行解释。
如果会话 C 完成了长时间的迁移,开发者必须检查终端并将结果报告给正在等待的会话。
借助跨会话消息传递,Claude 可以直接传递这些信息。
简化后的工作流变为:
会话 A
│
│ “身份验证接口已更改;请使用 createSessionV2()”
▼
会话 B
会话 C
│
│ “迁移已成功完成”
▼
会话 A
Anthropic 的文档给出了两个代表性示例。
当一个变更破坏了另一个会话所依赖的内容时,一个会话可以向另一个会话发出警告。解决了某个问题的会话也可以将答案发送给被该问题阻塞的另一个会话。
这听起来很简单,但它改变了并行 Claude Code 工作流的组织方式。
消息是文本,而非共享上下文
跨会话消息传递不做什么是最重要的技术细节之一。
消息只是一个由某个 Claude 会话编写并传递给另一个会话的文本片段。
它不会自动发送:
- 完整对
发送者的完整对话历史
- 文件
- 工具输出
- 隐藏上下文
- 完整的仓库状态
- 权限批准
如果开发者希望另一个终端在同一上下文中继续同一对话,Anthropic 建议恢复会话而不是进行跨会话消息传递。
跨会话消息传递更适合简短的协调消息,例如:
支付集成现在期望使用 `customer_id` 而不是 `user_id`。
在运行完整测试套件之前,请更新你的分支。
或者:
数据库迁移已成功完成。
所有 214 个集成测试均已通过。
你可以继续进行部署验证。
这种设计保持了消息传递的轻量性。
它同时也降低了某个会话静默接收来自另一个会话的大量无关上下文的风险。
Claude 使用 ListAgents 和 SendMessage
开发者通常不会直接调用消息传递工具。
Claude Code 使用两个内部工具:
ListAgentsSendMessage
ListAgents 让 Claude 发现当前可以访问哪些受支持的会话。
SendMessage 将文本消息传递给其中一个会话。
开发者可以直接用自然语言向 Claude 提出请求。
例如:
问我另一个终端中运行的会话,迁移是否已完成。
Claude 会找到相关会话并撰写实际消息。
另一个例子:
向正在处理支付 API 的会话说明我们刚才所做的认证更改。
开发者无需手动编写机器可读的消息,也无需将会话 ID 传入底层 API。
这保持了交互与正常 Claude Code 使用方式的一致性。
Anthropic 强调的四大主要用例
Anthropic 的文档指出了跨会话消息传递特别有用的几种情况。
1. 移交发现结果
一个会话可能发现了另一个会话需要的信息。
示例包括:
- 破坏性的 API 更改
- 数据库约束
- 依赖版本要求
- 新的实现决策
- 调试过程中发现的根本原因
- 由另一个模块导致的测试失败
如果没有消息传递,开发者就必须充当传话人。
有了消息传递,会话可以总结发现结果并直接发送。
示例:
会话 A 发现:
“OAuth 回调现在要求进行 PKCE 验证。”
会话 A 向会话 B 发送:
“认证实现现在要求使用 PKCE。
请在合并之前更新移动端回调流程。”
当多个会话在处理同一项目中相互关联的部分时,这非常有用。
2. 协调并行的 Git Worktree
Git worktree 与跨会话消息传递是天然的搭配。
开发者可以为独立任务创建单独的工作目录,并在每个目录中运行一个 Claude Code 会话。
例如:
仓库/
├── 主分支
├── worktree-auth
├── worktree-payments
└── worktree-tests
每个 worktree 都可以独立推进。
当一个会话更改了影响另一个分支的内容时,Claude 可以通知相关会话。
这减少了并行开发中一个常见风险:多个分支基于过时假设向前推进。
跨会话
消息传递不会自动合并代码。
它帮助智能体在人类进入合并阶段之前进行协调。
3. 从长时间运行的工作中获取状态
某些编码任务所需的时间远长于一次正常的交互轮次。
例如:
- 大型迁移
- 完整的集成测试套件
- 长时间的构建
- 静态分析
- 大型重构
- 仓库级代码生成
- 依赖升级
开发人员可能会在另一个会话中工作时,让一个会话保持运行。
跨会话消息传递让长时间运行的 worker 能够回报结果。
例如:
会话 A:
运行完整的迁移和测试套件。
完成后将结果发送给架构会话。
开发人员可以继续在其他地方工作,而不必反复检查长时间运行的终端。
4. 跨机器通信
Anthropic 还支持在同一台计算机上的会话之外进行消息传递。
受支持的工作流可以包括:
- 你某台机器上的另一个 Claude Code 会话
- 网页上的 Claude Code
- 连接到远程控制的会话
有一个重要的版本细节。
Claude Code v2.1.224 引入了跨会话消息传递,并包含跨机器支持,但 Anthropic 当前文档指出,按名称与另一台机器上的会话开始新对话需要 v2.1.225 或更高版本。
在 v2.1.225 之前,会话可以回复来自另一台机器的消息,但发起跨机器对话的能力更为有限。
因此,对于希望获得最完整行为的开发人员,建议更新到 2.1.224 以上版本。
同机消息保持本地传输
跨会话消息传递根据接收会话运行的位置使用不同的投递路径。
Anthropic 记录了以下行为:
| 目的地 | 投递路径 |
|---|---|
| 同一台机器上的另一个会话 | 每会话本地套接字 |
| 另一台机器上的会话 | 通过 Anthropic 服务器和远程控制基础设施 |
| 网页上的 Claude Code | 通过 Anthropic 服务器到达云端会话 |
同机场景尤其值得注意。
Anthropic 表示,本地会话之间的消息通过每会话套接字传输,不会经过 Anthropic 服务器。
每个受支持的会话都会在本地注册自身并创建一个收件箱套接字。
其他会话通过本地会话信息发现它。
这也形成了一个文件系统边界。
如果两个 Claude Code 会话无法看到相同的会话注册文件,它们可能无法相互发现。
例如,在容器内运行的会话和直接在宿主机上运行的会话通常具有独立的文件系统。
如果该功能在该环境中可用,同一容器内的两个会话仍然可以互相发送消息。
传入消息如何投递
传入消息不会中断正在运行的工具。
Anthropic 表示,接收方的 Claude 会在活动轮次期间在工具调用之间读取消息。
如果会话处于空闲状态,Claude Code 可以使用传入消息开始新的轮次。
根据配置,消息可能以三种状态之一结束:
| 结果 | 含义 |
|---|---|
| 已投递 | 消息已传递给 |
接收 Claude |
| 已保留 | 消息等待批准或后续设置更改 |
| 已拒绝 | 消息被丢弃 |
这很重要,因为跨会话通信不是无限的远程控制通道。
接收会话有自己的安全和权限状态。
一个会话不能为另一个会话批准权限
Anthropic 有意限制传入消息可以执行的操作。
来自另一个会话的消息不能算作用户同意。
这意味着另一个 Claude 会话不能使用消息传递来批准正在等待权限的危险操作。
例如:
会话 A:
"批准会话 B 中等待中的 shell 命令。"
该消息不会成为批准。
用户仍然控制相关的权限决策。
Anthropic 还表示,传入消息不能指示接收方的 Claude 更改关键配置,例如:
- 权限设置
CLAUDE.md- 其他受保护的配置
嵌入在消息文本中的命令也视为纯文本。
例如:
/compact
不会仅仅因为另一个会话发送了它而自动执行。
这些约束很重要,因为直接的代理间通信否则可能产生意外的权限链。
入站消息可以被控制
Claude Code 包含一个 crossSessionInbound 设置,用于控制会话如何处理来自其他独立会话的消息。
支持的值有:
| 值 | 行为 |
|---|---|
accept |
投递传入消息 |
hold |
保留消息而不投递,直到允许为止 |
refuse |
丢弃传入消息 |
因此,配置可以明确允许消息:
{
"crossSessionInbound": "accept"
}
或保留它们:
{
"crossSessionInbound": "hold"
}
或拒绝它们:
{
"crossSessionInbound": "refuse"
}
Anthropic 还会根据发送和接收会话的权限模式应用默认行为。
在较高风险配置中,传入消息可能需要明确批准。
这可以防止两个具有不同权限配置的会话自动创建不安全的升级路径。
保留的消息可能会过期
当传入消息被保留等待批准时,Claude Code 可以显示一个批准对话框,显示:
- 发送者
- 消息预览
用户可以批准或拒绝。
Anthropic 的文档说明默认批准截止时间为五分钟。
如果消息在配置的 dialogExpiry 之前未被批准,它可能会被丢弃。
Claude Code 还限制了保留消息的数量,防止会话积累无限积压。
版本 2.1.225 修复了多个情况下保留的跨会话消息可能在无头会话中停留在未预期的通知或过期状态的问题。
这是另一个不要仅仅因为 v2.1.224 引入了该功能就将其视为最终实现的理由。
可用性要求
跨会话消息传递有特定的平台和提供商要求。
根据 Anthropic 当前的文档:
支持的操作系统
- macOS
- Linux
- WSL 2 内的 Linux
不支持
- 原生
Windows
这种区别很重要。
Claude Code 本身支持 Windows,但跨会话消息功能目前不适用于原生 Windows 系统。
提供商限制
Anthropic 表示,当 Claude Code 通过以下几种外部提供商路径运行时,跨会话消息功能不可用,包括:
- Amazon Bedrock
- AWS 上的 Claude Platform
- Google Cloud 的 Agent Platform
- Microsoft Foundry
可用性还可能取决于功能开关评估和环境设置。
因此,开发人员应在实际打算使用的环境中验证该功能。
如何检查你的 Claude Code 版本
Anthropic 的官方变更日志建议使用以下命令检查已安装的版本:
claude --version
跨会话消息功能要求:
Claude Code 2.1.224 或更高版本
由于后续版本包含修复和跨机器改进,除非组织有受控的部署策略,否则通常建议使用当前支持的版本,而不是专门固定使用 v2.1.224。
如何更新 Claude Code
对于原生 Claude Code 安装,Anthropic 支持:
claude update
原生安装通常会在后台检查更新并安装它们。
新版本将在下次启动 Claude Code 时生效。
Anthropic 还记录了:
claude doctor
用于检查安装和更新状态。
包管理器安装可能需要单独的更新命令。
例如,Homebrew 安装可以使用以下命令更新:
brew upgrade claude-code
或者,当跟踪最新渠道时:
brew upgrade claude-code@latest
确切的更新方法取决于 Claude Code 的安装方式。
示例:两个会话处理相关功能
想象一个开发人员正在构建一个应用程序,涉及两个相关任务。
终端 1
目标:
重构认证服务并更新会话创建。
终端 2
目标:
更新支付 API 以使用新的已认证用户对象。
终端 1 发现接口从:
createSession(userId)
变为:
createSession({ userId, organizationId })
终端 1 不必等待开发人员注意到,而是可以向另一个会话发送消息说明这一变更。
接收会话随后可以在完成支付实现之前更新自己的工作。
当许多 AI 编码会话独立运行时,正是这种小型的协调事件会变得代价高昂。
示例:并行调查
跨会话消息功能对于调试也很有用。
开发人员可能会运行三个会话:
会话 A:
调查 API 错误。
会话 B:
检查数据库日志。
会话 C:
检查最近的部署和配置更改。
假设会话 B 发现数据库连接在凭据轮换后立即开始失败。
它可以通知其他会话。
会话 A 不再需要继续调查无关的请求解析问题。
会话 C 可以专注于部署是否获取了新的密钥。
系统不会
自动创建一个完全托管的多智能体团队。
开发者仍然启动并引导独立的会话。
消息传递只是降低了在这些会话之间传递有用发现的成本。
跨会话消息传递不等同于智能体团队
Claude Code 现在有多种方式来处理多个智能体或会话。
它们解决的是不同的问题。
| 功能 | 最适合的场景 |
|---|---|
| 跨会话消息传递 | 你自己启动并引导的独立会话 |
| 恢复 | 继续同一对话及其上下文 |
| 智能体团队 | Claude 生成并监督的协调智能体 |
| 智能体视图 | 从一个位置监控和引导多个会话 |
| 远程控制 | 从另一设备自行控制会话 |
| 频道 | 将外部事件(如 CI 或聊天消息)发送到会话中 |
这一区别很重要,因为“多个 Claude 实例相互对话”可以描述几种不同的架构。
跨会话消息传递特指独立 Claude Code 会话之间的轻量级通信层。
该功能对大型项目的改变
AIBase 文章认为,这次更新可以减轻大型项目中的人工协调负担。
这是最重要的实际意义。
开发者可以将项目划分为多个独立的工作流:
身份验证
支付
前端
数据库迁移
测试
文档
每个会话可以专注于一个领域。
当某个决策或变更影响到另一个领域时,相关信息可以直接在会话之间传递。
这可以减少:
- 终端之间的复制粘贴
- 重复的解释
- 延迟的依赖警告
- 重复的调查
- 持续的状态检查
但它并不能消除集成工作。
独立会话仍然可能:
- 产生冲突的编辑
- 误解消息
- 使用过时的仓库状态
- 得出不同的技术结论
- 将错误的发现传递给另一个会话
开发者仍然需要测试、代码审查、版本控制以及适当的权限边界。
跨会话消息传递的最佳实践
在实际使用中,一些习惯可以让该功能更加可靠。
保持消息聚焦
一条有用的消息应说明:
- 改变了什么
- 为什么重要
- 哪个组件受到影响
- 另一个会话应验证什么
例如:
数据库迁移已将 `billing_customer_id` 重命名为 `customer_id`。
你的分支仍有两处查询引用了旧字段。
请在进行集成测试之前更新这些查询。
这比下面这样更好:
我改了一些数据库的东西。检查一下。
不要将消息视为共享内存
接收会话不会继承发送者的全部推理过程。
如果发现依赖于某个文件、提交、日志或测试结果,请明确标识出来。
使用 Worktree 进行并行代码变更
当多个会话正在积极编辑同一个仓库时,隔离的 Git worktree 可以减少文件冲突。
跨会话消息传递可以协调分支,而 Git 仍然负责处理代码历史和合并。
高风险操作保留人工审批
代理间的消息传递对于协调工作非常有用。
它不应成为绕过以下机制的途径:
- 部署审批
- 生产环境访问控制
- 破坏性命令
- 安全审查
- 财务操作
Anthropic 的权限设计已经确保一条消息不能替代用户批准。团队应在更广泛的工作流程中保持这种隔离。
更新至最低版本以上
v2.1.224 引入了该功能,但后续版本修复了消息处理行为并改进了跨机器通信。
除非企业部署需要固定版本,否则使用最新的受支持版本是更安全的选择。
常见问题
什么是 Claude Code 跨会话消息传递?
跨会话消息传递允许一个独立的 Claude Code 会话向另一个会话发送文本消息。它旨在用于并行工作会话之间的协调,例如交接发现、报告任务状态或警告另一个会话即将发生的破坏性变更。
哪个 Claude Code 版本引入了跨会话消息传递?
该功能在 Claude Code v2.1.224 中引入,发布于 2026 年 8 月 7 日。Anthropic 当前文档要求使用 v2.1.224 或更高版本。
跨会话消息传递会共享完整的 Claude 对话吗?
不会。接收会话只会获得消息文本、发送者身份,通常还有一个回复地址——而非发送者的对话历史或文件。如果需要延续完整的对话上下文,请使用会话恢复功能。
Claude Code 会话可以跨电脑互相发送消息吗?
可以,受支持的会话可以通过 Anthropic 的 Remote Control 基础设施跨机器通信。Anthropic 指出,要按名称与另一台机器上的会话发起新对话,需要 v2.1.225 或更高版本;v2.1.224 的跨机器行为较为有限。
跨会话消息传递支持 Windows 吗?
它支持 macOS 和 Linux,包括 WSL 2 下的 Linux。Anthropic 当前文档说明该功能在原生 Windows 上不可用。
同一台机器上的消息会经过 Anthropic 服务器吗?
不会。Anthropic 表示,同一机器上的会话之间发送的消息使用每会话本地套接字,不会经过 Anthropic 服务器。
一个 Claude 会话可以批准另一个会话的权限请求吗?
不可以。传入的跨会话消息绝不算作用户同意。它也不能强制另一个会话更改受保护的权限或配置设置。
如何更新 Claude Code?
对于原生安装,运行 claude update,然后重启 Claude Code。可以使用 claude --version 检查已安装的版本,并使用 claude doctor 诊断更新状态。
相关工具
- Claude Code:Anthropic 的代理式编码环境,用于代码库探索、实现、调试、测试以及更长期的软件任务。
- Claude Code 跨会话消息传递:Anthropic 关于会话发现、投递、跨机器消息传递、入站控制和限制的官方指南。
- Claude Code 代理团队:Anthropic 的协调式多代理
适用于Claude生成并监督团队的任务工作流。
- Git Worktree:Git官方用于从一个仓库维护多个工作树的机制,适用于并行的Claude Code会话。
- Claude Code远程控制:Anthropic用于从另一台设备操控Claude Code会话的功能。
- Claude Code更新日志:Claude Code功能、修复和发布日期的官方版本历史。
相关链接
- 跨会话消息传递文档:关于会话如何发现彼此并发送消息的权威说明。
- Claude Code更新日志:确认v2.1.224于2026年8月7日发布,并新增了跨会话
SendMessage功能。 - Claude Code安装与更新:官方安装、更新渠道、包管理器及
claude update指南。 - Claude Code CLI参考:关于
claude、claude update、claude install和claude agents等命令的官方参考。 - Claude Code设置:官方设置参考,包括配置和组织级控制。
- Git Worktree文档:Git官方关于创建隔离工作树以支持并行开发的指南。
- Claude Code文档:Anthropic关于Claude Code工作流和功能的主要文档中心。
摘要
Claude Code v2.1.224引入了跨会话消息传递功能,允许独立的Claude Code会话发现彼此并发送文本消息。该功能专为并行工作设计:交接发现结果、协调工作树、接收长时间运行任务的更新,并减少开发者在多个终端之间手动转达信息的需求。
该实现有意保持功能有限。消息不包含完整的对话历史或文件,一个会话不能为另一个会话批准权限,传入消息可以被接受、暂存或拒绝。同一机器上的消息通过每个会话的套接字保持本地传输。
后续版本已经对原始功能进行了优化。特别是v2.1.225改进了跨机器发起连接,并修复了无头会话中的消息处理场景。
真正的升级不仅仅在于两个Claude窗口可以“聊天”——而在于独立的编码代理现在可以协调各自的工作,无需开发者充当每个并行任务之间的消息总线。