向你的其他 Claude Code 会话发送消息
摘要
Claude Code 现支持跨会话消息传递,允许 Claude 智能体在独立会话之间发送消息,以协调工作、分享发现并警告破坏性变更。
暂无内容
查看缓存全文
缓存时间: 2026/08/08 20:21
# 给你的其他 Claude Code 会话发送消息 - Claude Code 文档
跨会话消息传递让 Claude 可以在你的一个 Claude Code 会话与另一个会话之间传递消息。当一个会话中的更改破坏了另一个会话正在构建的内容时,Claude 可以在你注意到之前警告该会话。当一个会话解决了另一个会话被卡住的问题时,Claude 可以将答案发送过去。
消息是一个 Claude 写给另一个 Claude 的一段文本,绝不是对话历史或文件。要移动整个对话或其上下文,请改用[恢复会话](https://code.claude.com/docs/en/sessions#resume-a-session)。
Claude 使用两个工具来完成这件事:`ListAgents` 用于发现它可以到达哪些 agent,`SendMessage` 用于按名称向其中一个发送消息。使用同一个 `SendMessage` 工具,Claude 还可以在单个会话或团队中向[子代理](https://code.claude.com/docs/en/sub-agents#resume-subagents)和 [agent team](https://code.claude.com/docs/en/agent-teams) 队友发送消息。本页介绍的是你的独立会话之间的消息传递。
## 何时使用跨会话消息传递
当你的一个会话在任务进行中有另一个会话需要的东西时,使用消息传递。Claude 可以在发现需要时自行发送消息,例如在做出影响另一个会话正在做的工作的更改之后,你也可以要求它发送。常见情况:
- **移交发现**:当一个会话发现破坏性更改或做出决定时,Claude 会为处理受影响区域的会话总结这一情况,而不是由你在那里重新解释。
- **协调并行 worktree**:当会话使用单独的 [worktree](https://code.claude.com/docs/en/worktrees) 在同一仓库中工作时,Claude 可以告诉其他会话发生了什么变化。
- **从长时间运行的工作获取状态**:让迁移或测试运行向你正在观看的会话汇报,或者你也可以从该会话亲自询问。
- **跨机器回复**:回复从你在另一台机器或 Web 上的某个会话到达的消息。跨机器时,Claude 只能回复,不能主动开始交流。
在你自行启动和控制的独立会话之间使用消息传递。对于其他运行或访问多会话的方式,Claude Code 都有专门的功能,因此请使用适合你当前场景的那一个:
- 要在另一个终端中继续同一对话,或将其上下文共享给新会话,请[恢复会话](https://code.claude.com/docs/en/sessions#resume-a-session)
- 对于由 Claude 生成并监督的协调会话团队,请使用 [agent teams](https://code.claude.com/docs/en/agent-teams)
- 要从一个地方查看和操控许多会话,请使用 [agent view](https://code.claude.com/docs/en/agent-view)
- 要自己从手机或其他设备操控会话,而不是让会话之间互相发消息,请使用 [Remote Control](https://code.claude.com/docs/en/remote-control)
- 要将外部事件(如 CI 结果或聊天消息)推送到会话中,请使用 [channels](https://code.claude.com/docs/en/channels)
## 向另一个会话发送消息
当你的一个会话获知了另一个会话需要的信息(例如发现、状态或决定)时,Claude 会将其传递过去,而不是由你在终端之间复制粘贴。Claude 使用 `ListAgents` 发现目标,并使用 `SendMessage` 发送,因此你无需自己调用这两个工具。Claude 可以主动决定发送消息,你也可以提示它发送。要自己提示它发送,请告诉 Claude 你希望另一个会话知道或做什么。这个示例是你输入的提示,而不是 Claude 发送的消息:
Claude 会自己撰写实际消息,因此你的提示可以把内容交给 Claude 决定。这个提示要求总结而没有规定措辞,Claude 实际发送的内容会有所不同:
关于 Claude 撰写的消息到达时的样子(包括一个示例),请参阅[消息的样子](https://code.claude.com/docs/en/cross-session-messaging#what-a-message-looks-like)。
### 消息投递
接收方的 Claude 会在活动回合的工具调用之间读取消息,因此正在运行的工具永远不会被中断。当接收会话空闲时,Claude Code 会用该消息开始一个新回合。在默认设置下,两个普通交互会话之间,Claude Code 会投递消息。但并非每种配置都能保证投递。接收会话会根据其自身的[入站控制](https://code.claude.com/docs/en/cross-session-messaging#control-inbound-messages)检查每条到达的消息,检查结果有三种:
- **已投递**:Claude Code 将消息传递给接收方的 Claude。
- **已暂存**:Claude Code 将消息放在一边,不予投递。暂存的消息只有在你批准或之后的模式或设置更改允许时,才会到达 Claude。
- **已拒绝**:Claude Code 丢弃消息,不进行投递。
消息送达后,会像你输入的提示一样计入[用量](https://code.claude.com/docs/en/costs),接收方的 Claude 可以用同样的方式回复发送方,[单向跨机器情况](https://code.claude.com/docs/en/cross-session-messaging#message-sessions-on-other-machines)除外。
权限边界保持按会话独立。Claude 被指示绝不要请求另一个会话执行在其自身会话中被拒绝或阻止的操作,或会被其自身权限设置阻止的操作,而是将这类工作转交给你。在接收方,[接收会话自身的权限提示和规则](https://code.claude.com/docs/en/cross-session-messaging#how-a-session-treats-an-incoming-message)仍然适用于消息要求的任何事情。
### 查看 Claude 可以到达哪些会话
Claude 会自行找到消息的目标,因此你无需在要求它发送前运行任何东西。要亲自查看 Claude 可以到达哪些会话,请运行 `/list-agents` 命令。它会列出每个会话及其应答的名称,Claude 的消息就是发送到该名称。列表包括:
- **子代理(Subagents)**:在当前会话内运行的 agent。[Agent team](https://code.claude.com/docs/en/agent-teams) 队友不会被列出;Claude 通过团队自己的名册向它们发送消息。
- **你的其他本地会话**:在同一台机器上运行的 Claude Code 会话,包括[后台会话](https://code.claude.com/docs/en/agent-view)。会话只有在绑定了[收件箱套接字](https://code.claude.com/docs/en/cross-session-messaging#the-sessions-inbox-socket)时才会出现。
- **本机之外的会话**:在 [Remote Control](https://code.claude.com/docs/en/remote-control) 连接时显示,并标记为 `Remote Control`。这些是你在其他机器上的会话以及你的 [Claude Code on the web](https://code.claude.com/docs/en/claude-code-on-the-web) 会话。Claude 不能向这些会话发送消息来开始对话。它只能回复来自这些会话的消息。请参阅[其他机器上的消息会话](https://code.claude.com/docs/en/cross-session-messaging#message-sessions-on-other-machines)。
会话应答的名称由你通过 [`/rename`](https://code.claude.com/docs/en/commands) 命令或 [`--name`](https://code.claude.com/docs/en/cli-reference#cli-flags) 标志设置。如果你未设置,Claude Code 会自行命名会话。交互式会话会获得一个派生自其工作目录文件夹名称的名称,例如 `myapp-3f`。两个会话可能最终同名。`/list-agents` 输出会显示每个本地会话的工作目录,当同名的会话在不同目录中运行时,可以据此区分。Claude 自己的列表会为每一行
相似文章
@ClaudeDevs:Claude Code 新功能:你的会话现在可以互相发消息。不必再在另一个会话中重复解释你自…
Claude Code 现在允许会话之间通过发送摘要来互相通信,使得另一个会话无需重新解释即可在任务中途获取上下文。
claude-share
一个可以安全地与朋友共享 Claude Code 会话的工具。
我同时运行 Claude Code 和 Codex,却总是丢失它们之间的线索——于是构建了一个位于 S3 存储桶中的无服务器协调层
tracecraft 是一个 CLI 工具,使用兼容 S3 的存储桶作为多个编码代理(如 Claude Code 和 Codex)的无状态协调层,支持原子任务认领、邮箱、共享内存和跨工具框架会话镜像。
一款MCP工具,让你从Claude.ai聊天中运行并管理Claude Code会话(在构思的地方工作)
一款开源MCP工具,让Claude.ai能够运行并管理Claude Code会话,形成一个循环:Claude.ai触发Claude Code,并在浏览器中接收响应,从而免去复制粘贴的操作。
@trq212: Agent View 是 Claude Code 原生管理多会话的最佳方式,就像为 Claude Code 量身定制的 tmux。我们花了很…
有用户指出,'Agent View' 是 Claude Code 中用于管理多会话的原生功能,并将其比作 tmux。