排队机制如何运作
当 Claude 正在工作时,按 Enter 会进行排队而不是中断。你可以排队多条消息,也可以用同样的方式排队 ! shell 命令和大多数斜杠命令。
排队的消息很容易识别。“已发送和排队的消息在 Claude 开始响应之前显示为灰色,因此你可以分辨出 Claude 尚未开始处理哪些消息。”
如果你在编辑器中使用 Claude Code,有一个细节很重要。“如果你从连接的 IDE 排队一条带有选中内容的消息,它会保留你按下 Enter 时的选中内容,无论你之后选择了什么。” 即使你在等待时点击了其他地方,你的消息仍会指向你预期的代码。
排队的消息何时到达 Claude
这是最容易出错的部分。排队的消息并不总是等待整个任务完成。Anthropic 将其分为两种情况。
消息。 “消息:如果你在 Claude 运行工具调用(tool calls)时排队了一条消息,Claude Code 会在这些工具调用完成后立即将其传递给 Claude,且在同一轮次内。” 因此,如果 Claude 正在读取文件或运行命令,你的修正会在该步骤完成时到达,Claude 可以在下一步之前根据它采取行动。如果轮次结束时仍有消息在排队,它们会按照你输入的顺序依次发出。
命令。 斜杠命令和 shell 命令等待的时间更长。“命令和 shell 命令:Claude Code 会持有它们直到轮次结束,然后按照你排队的顺序逐个运行。”
这种区别非常有用。输入的修正可以在中途改变当前任务。而排队的命令(如测试运行或状态检查)则会等到 Claude 完成工作。
不进入队列的命令
某些命令在发送后会立即运行。Anthropic 提到了 /model、/effort 和 /fast,以及 /status 等命令。每一个命令都会按照自己的时间表应用更改:
/model:在你确认任何缓存警告后,Claude Code 将从同一轮次的下一次请求开始使用新模型。/effort:你发送的下一条消息将以新的级别运行。/fast:Claude Code 会保留轮次开始时生效的设置,因此更改将从你的下一轮次开始应用。
我们的中途切换模型指南解释了在长对话中更改模型的成本。
使用 Ctrl+Enter 立即发送
如果你不想等待当前的工具调用完成,Ctrl+Enter 会立即发送你的队列。“要发送你排队的内容而无需等待,请按 Ctrl+Enter。” 这需要 Claude Code v2.1.275 或更高版本。在不报告扩展键的终端中,Ctrl+Enter 会被识别为普通 Enter 并进行排队;Anthropic 表示 Ctrl+X 然后 Ctrl+S “在任何终端中都有效”。
当前轮次会发生什么取决于 Claude 正在做什么:
- 如果 Claude 正在运行 shell 命令、子代理(subagents)或其他可以移至后台的工作,该工作将继续在后台运行,Claude 会在同一轮次中读取你的消息。
- 如果 Claude 只是在编写响应,或者运行无法移至后台的任务,Claude Code 会中断当前轮次并接着发送你的消息。
Anthropic 增加了一个版本说明:“在 v2.1.281 之前,该键在两种情况下都会中断轮次”。如果你使用的是旧版本,Ctrl+Enter 总是会中断。此外,如果排队的 ! shell 命令排在你的消息之前,该键在任何情况下都会中断轮次。
使用 Esc 中断
Esc 是停止按钮。Anthropic 的快捷键表将其描述为“在轮次中途停止当前响应或工具调用,以便你可以重新引导”。下一句话回答了人们在按下它后搜索的问题:“Claude 会保留目前已完成的工作。”
因此,中断的轮次并不会被丢弃。Claude 已经做出的编辑会保留,到那时为止的对话也会保留。你输入你想要的内容,Claude 从那里继续。如果编辑本身就是问题所在,在空提示符上按两次 Esc 会打开 rewind 菜单,你可以从较早的时间点恢复代码和对话。
Esc 和队列可以协同工作。“按 Esc 中断轮次而不提交你的草稿。Claude Code 会保留你排队的内容并立即发送。” 如果你排队了一个修正,然后决定不能再等了,Esc 会停止轮次并交付该修正。
Ctrl+C 也会中断正在运行的操作。当没有操作运行时,第一次按下会清除输入,第二次按下会退出 Claude Code,因此 Esc 是重新引导更安全的习惯。
撤回排队的消息
改变主意了?“在输入框的第一行按向上键(Up)即可撤回排队的消息和命令。” Claude Code 会将它们移回输入框,每行一个,排在你已经输入的任何内容之前。编辑并按 Enter 再次将它们作为一个条目排队,或者清空输入框以放弃它们。
Shell 命令的要求更严格。只有当输入框为空且没有其他内容排队时,Claude Code 才会撤回排队的 shell 命令。否则,它们会留在队列中并在轮次结束时运行。
撤回的消息会保留在你的历史记录中。“你撤回的每条消息都会作为命令历史记录中的独立条目保存。” 要在以后找到某条消息,请重新打开会话,并在没有任何内容排队的空提示符上按向上键。
排队消息与后台会话
如果你在消息排队时将会话移至后台,队列会随之移动。Anthropic 表示“你排队的消息会随之移动。Claude 会按照你发送的顺序在那里读取它们”。
某些条目无法移动:命令、! shell 命令以及带有 IDE 选中内容的消息。如果尝试将会话置于后台时其中之一正在排队,会话将保持在前台,并显示通知解释原因。等待该条目运行或被读取,或者将其撤回,然后重试。我们的 Claude Code 代理视图指南涵盖了后台会话的工作原理。
排队消息与回溯 (Rewind)
Rewind 对排队消息的处理与开启轮次的提示符不同。Anthropic 的检查点文档指出,当 Claude 仍在工作时你输入的消息在 rewind 菜单中可能被标记为没有代码恢复点:“标记的消息没有自己的检查点。”
要撤销 Claude 在此类消息之后所做的编辑,你需要选择开启该轮次的提示符并从那里恢复。这将回滚整个轮次的文件编辑,包括在你消息到达之前的编辑。我们的 Claude Code /rewind 会话指南解释了哪些编辑会被恢复。
人们首先尝试的操作
等待任务结束后再输入。 你不必这样做。如果 Claude 正在运行工具调用,排队的消息会在它们完成后立即到达 Claude,且在同一轮次内。
期望排队的测试命令立即运行。 命令会等待轮次结束。如果你想让 Claude 现在就改变方向,请改为输入消息。
按 Ctrl+C 进行重新引导。 它会中断,但在没有运行任务时它会清除你的输入,按两次则会退出。Esc 会停止轮次并保留目前已完成的工作。
假设 Ctrl+Enter 总是会中断。 自 v2.1.281 起,支持后台运行的工作将继续运行,Claude 会在同一轮次中读取你的消息。
在每个会话中重复输入相同的修正。 如果你一直在排队相同的修复,这表明该指令应该放在某个永久的地方。
解决方案:将每种指令放在正确的位置
第 1 步:在时效性重要时排队修正,而非命令
如果 Claude 需要在当前任务中改变方向,请排队一条消息。它会在当前工具调用之后到达。将排队的命令留给那些应该在轮次结束后运行的操作。
第 2 步:当无法等待时使用 Esc
如果 Claude 即将执行你不希望的操作,Esc 会停止轮次,保留目前的工作,并发送你排队的内容。然后进行重新引导。
第 3 步:将重复的修正移入 CLAUDE.md 或你的笔记中
回顾一下你在不同会话中排队的内容。不断出现的修正,如项目规范或不要触碰的文件,应该放在项目的 CLAUDE.md 中或你维护的文字笔记中。我们的 Claude Code 为何忘记你的修正指南解释了为什么会话中途的修复并不总是有效。
在 MemoryLake 中设置
排队适用于修正当前任务。你重复的修正则是另一回事:关于你工作方式的事实,你不应该在每个会话中都重复陈述。
MemoryLake 是一个记忆层,用于将这些事实保存在你维护的一个地方,供你连接的助手(如 ChatGPT、Claude Code 和 Codex)使用。
你自己用自己的语言编写条目。不会从你的 Claude Code 会话、它们的转录、你的 CLAUDE.md 文件、你的自动记忆或任何供应商的存储中读取、写入或删除任何内容。排队和中断仍将按照 Anthropic 描述的方式运作。
第 1 步:创建 API 密钥
登录并从控制面板生成密钥。该密钥属于你的 MemoryLake 工作区,与你的 Claude 账户是分开的。

第 2 步:上传你的第一条记忆
从解决方案第 3 步中重复的修正开始。每个条目一个要点,按照你对新同事说话的方式编写。

第 3 步:连接你的 AI 和代理
连接 Claude Code 和你使用的任何其他助手。相同的条目在每个助手中都可用。

这在实践中改变了什么
第一个区别是更快的修正。你在 Claude 工作时输入它们,它们会在当前步骤之后到达。
第二个区别是减少了轮次损失。Esc 保留目前已完成的工作,你从队列中撤回的消息会保留在命令历史记录中。
第三个区别是减少了重复修正。你以前每个会话都要排队的修复内容已经记录下来了。如果你经常重新开始,我们的 Claude Code /clear 命令指南涵盖了重置后哪些内容会保留。
Claude Code 排队的最佳实践
在 Claude 工作时输入修正。 它们会在当前工具调用之后到达 Claude。
为轮次结束后排队命令。 它们会在结束后逐个运行。
使用 Esc 停止并重新引导。 它会保留目前已完成的工作。
使用 Ctrl+Enter 立即发送。 在旧版本上,它总是会中断。
使用向上键撤回。 撤回的消息会保留在命令历史记录中。
注意后台切换。 命令和带有 IDE 选中内容的消息会使会话保持在前台。
写下你不断重复的内容。 记录在 CLAUDE.md 或你维护的笔记中。
结论
Claude Code 会对你在其工作时发送的消息进行排队。在工具调用期间输入的消息会在这些调用完成后立即到达 Claude,且在同一轮次内;命令则等待轮次结束。Ctrl+Enter 立即发送你的队列,Esc 停止轮次并保留目前已完成的工作,向上键将排队的消息撤回到输入框中。
使用队列来修正手头的任务。当同样的修正不断出现时,请将其移出队列,放入你维护的指令中。