/btw 的作用
/btw 针对你当前的会话提出一次性问题。Anthropic 的命令概述简单明了地指出:“使用 /btw 进行不应添加到对话历史记录的侧边提问。”
你输入 /btw 后跟你的问题。在终端中,答案会出现在一个可以关闭的叠加层中。交互模式文档明确说明了它的处理方式:“问题和答案永远不会进入对话历史记录。”
它与直接在聊天中提问有两个不同之处:
- 它不会增加你的上下文 (context)。 主对话永远看不到侧边提问或其答案。
- 它无需等待。 “侧边提问独立运行,不会中断主轮次。”
侧边提问能看到什么
侧边提问可以基于整个会话进行工作。Anthropic 表示 Claude 根据“对话中已有的内容:你的消息、它的回复以及它收集到的工具结果”来回答它。
这涵盖了很多内容。Anthropic 的示例包括“Claude 已经阅读的代码、它之前做出的决定,或会话中的任何其他内容”。
但有一个空白。如果 Claude 正在回复中,侧边提问“能看到目前为止对话中的所有内容,除了 Claude 正在撰写的回复”。
早期的侧边提问
侧边提问之间可以互相看见。“稍后的侧边提问也能看到你之前的侧边提问:Claude Code 会在每次提问时重放最新的 20 次交流,直到你清除它们。”因此,你可以通过另一个 /btw 提出后续问题,它将基于之前的交流进行工作。
侧边提问不能做什么
它没有工具权限
这是主要的限制。“Claude 在回答侧边提问时无法读取文件、运行命令或进行搜索。”答案仅来自上下文中已有的内容。
如果 Claude 尝试使用工具,你会看到提示。文档指出,如果 Claude 以文本形式写出工具调用,“答案将以一条说明没有任何内容被执行的注释结束”。
因此,/btw 适用于 Claude 根据已见内容即可回答的问题。Anthropic 划清了界限:“使用 /btw 询问 Claude 从本会话中已知的内容;使用 subagent 去发现新事物。”
它只提供一个答案
终端叠加层中没有后续轮次。“要继续该线程,请提出另一个 /btw 问题。”
它不会改变主任务
侧边提问无法引导工作。它的答案保持在对话之外,因此 Claude 的主轮次会像你从未提问过一样继续进行。
答案去向及保存时间
在终端中
答案出现在一个可关闭的叠加层中。要返回查看,“运行不带问题的 /btw。叠加层将重新打开你最近的一次交流”。
之前的答案就在附近。“你最新的五个早期侧边提问会以变暗列表的形式显示在当前答案上方,并附带更早提问的计数。”你可以使用 Shift 加左右箭头键在答案之间切换,或者在不报告 Shift 的终端中使用方括号键。
但这个线程是临时的。Anthropic 表示:“终端将线程保存在记忆 (memory) 中:按 x 清除之前的交流,当你退出 Claude Code 时,它就会消失。”
在 VS Code 中
扩展程序的处理方式不同。在其聊天面板中,/btw 会在聊天旁边打开一个面板,你可以直接在那里提出后续问题。Anthropic 表示“该面板的线程在窗口重新加载后依然存在,遵循该页面描述的保留计划”。这需要 v2.1.227 或更高版本的扩展程序。
复制答案
在终端叠加层中,按 c 复制答案。Anthropic 建议使用此方法而非鼠标选择:它以“原始 Markdown”格式复制,而不是经过硬换行处理的终端渲染文本。
何时 Fork 侧边提问
有时侧边提问会演变成真正的工作。答案揭示了一个需要调查的问题,而调查需要工具。这就是 f 键的作用。
在叠加层中按 f 将“启动一个 fork 出来的 subagent,它继承父对话以及此问题和答案,以便它可以继续使用完整的工具访问权限”。这仅在本地会话中可用。
Fork 与侧边提问在两个重要方面有所不同:
- 它拥有工具。 它可以读取文件、运行命令和搜索。
- 它的结果会返回。 Anthropic 的 subagent 文档指出,fork 在后台运行,“当它完成时,其结果将作为消息到达你的主对话中”。
因此,fork 是侧边提问线程重新加入主工作的方式。侧边提问本身保持独立;fork 的最终结果会进入主对话。我们的关于为什么 Claude Code subagents 不共享记忆的指南涵盖了其他 subagent 如何以比 fork 更少的上下文开始工作。
运行 Fork
Fork 出现在提示符下方的面板中,每行一个。你可以按 Enter 打开 fork 的转录内容并向其发送后续消息。如果你使用 agent view,侧边提问也可以在附加的后台会话中工作;我们的 Claude Code agent view 指南涵盖了这些会话如何共享上下文。
/btw 与其他跳出当前对话方式的对比
Claude Code 有几个命令可以避免干扰对话。它们的作用各不相同。
/btw询问有关会话的问题,没有工具权限,对历史记录没有影响。- Fork 使用工具继续工作,并将结果报告回对话。
- Subagent 从它接收到的提示开始,而不是从你的对话开始,并返回其结果。
/clear开始新对话并保留项目记忆;我们的 /clear 指南涵盖了哪些内容可以留存。/rewind回滚到较早的时间点;我们的会话回滚指南解释了哪些编辑会恢复。
Anthropic 总结了前两者:“/btw 能看到你的完整对话但没有工具。Subagent 拥有工具并从它接收到的提示开始,或者对于 fork 来说,从该对话的副本开始。”
后台会话中的侧边提问
如果你在后台会话中工作,/btw 也会跟随你。Anthropic 的文档涵盖了附加的后台会话:按 Left 键分离并返回 agent view,“即使答案仍在生成中”。侧边提问不会停止。“侧边提问在你离开时继续运行。”当你再次附加时,叠加层会重新打开并显示问题或其答案。
在提问之前运行不带问题的 /btw 不会打开空白叠加层。命令参考指出,在这种情况下,“Claude Code 会打印一行用法说明”。
好的侧边提问,以及需要其他方式的情况
当答案已经存在于会话中时,侧边提问非常有效。询问 Claude 为某项更改编辑了哪个文件、之前的错误说了什么,或者 Claude 为什么选择一种方法而不是另一种,这些都很合适。
当答案需要新鲜信息时,它就不起作用了。测试现在是否通过、Claude 尚未打开的文件中有什么内容,或者库的最新版本是什么,这些都需要工具。请在主对话中提问、启动 subagent 或进行 fork。
成本是多少
侧边提问旨在降低成本。Anthropic 表示,“当对话的提示缓存 (prompt cache) 是热的时,侧边提问除了答案本身之外几乎没有额外成本”。因为答案不进入对话,它也不会增加后续每一轮次必须携带的上下文负担。
人们首先尝试的操作
使用 /btw 检查文件。 它没有工具权限。它只能根据 Claude 在会话中已经阅读过的内容进行回答。
在侧边提问中做决定。 答案永远不会进入对话,因此主任务不会知道它。在主聊天中告诉 Claude,或者进行 fork。
期望侧边线程在重启后存续。 在终端中,当你退出 Claude Code 时,它就消失了。
在终端叠加层中输入后续问题。 它只提供一个答案。请提出另一个 /btw,它能看到之前的交流。
从云端会话进行 Fork。 从叠加层进行 fork 仅在本地会话中可用。
解决方案:将侧边提问用于获取答案,将对话用于决策
第 1 步:询问 Claude 已经知道的内容
对于会话可以回答的问题使用 /btw:名称、之前的选择、Claude 见过的输出。如果问题需要新信息,请改用 subagent 或在主聊天中提问。
第 2 步:当答案演变为工作时进行 Fork
如果侧边提问的答案揭示了需要调查或修复的内容,请按 f。Fork 拥有工具并将结果报告回主对话,工作在那里继续。
第 3 步:将任何需要持久保存的内容移出侧边线程
如果侧边提问的答案包含你以后需要的内容、决策、约定或更正,请将其放在可以持久保存的地方。在主对话中说明、将其添加到 CLAUDE.md,或要求 Claude 记住它。我们的关于为什么 Claude Code 会忘记你的更正的指南涵盖了每种内容的归属地。
在 MemoryLake 中设置
/btw 很有用,因为它不会干扰主流程。反过来说,在侧边提问中解决的任何问题也都不会记录在案,而且在终端中退出后就会消失。你希望跨会话、跨仓库和跨工具使用的决策需要一个属于它们自己的地方。
MemoryLake 是一个记忆 (memory) 层,用于将这些决策保存在一个由你维护的列表中,可供 Claude Code 以及你连接的其他助手(如 ChatGPT 和 Codex)使用。
你自己编写条目,使用你自己的语言。不会从你的 Claude Code 会话、侧边提问、CLAUDE.md 文件、自动记忆或任何供应商的存储中读取、写入或删除任何内容。/btw 将继续按照 Anthropic 描述的方式工作。
第 1 步:创建 API 密钥
登录并从仪表板生成密钥。该密钥属于你的 MemoryLake 工作区,与你的 Claude 账户是分开的。

第 2 步:上传你的第一批记忆
从你在“解决方案”第 3 步中移出侧边线程的内容开始,且这些内容适用于多个仓库:决策、约定和约束。每个条目一点,注明日期。

第 3 步:连接你的 AI 和 Agent
连接 Claude Code 和你使用的其他助手。这些决策将在下一个会话、另一个仓库或另一个工具中可用。

这在实践中改变了什么
第一个区别是你可以更自由地提问。一个快速的问题不会消耗主任务的上下文或动力。
第二个区别是你清楚何时切换。侧边提问用于 Claude 已经知道的内容,当答案需要工具时进行 fork,当做出决策时使用主聊天。
第三个区别是没有任何重要内容会卡在侧边线程中。决策会转移到对话或持久的文件中,因此工作不会依赖于一个你会关闭的叠加层。
关于在独立会话之间而非单个会话内移动上下文,请参阅我们的在 Claude Code 会话之间共享上下文的指南。
Claude Code 中 /btw 的最佳实践
在 Claude 工作时提问。 侧边提问不会中断主轮次。
保持问题在会话可回答的范围内。 /btw 无法读取文件或运行命令。
使用另一个 /btw 进行后续提问。 它会重放最近的侧边交流。
使用 c 复制答案。 你得到的是原始 Markdown,而不是换行后的终端文本。
需要工具时使用 f 进行 Fork。 Fork 的结果会返回到主对话。
不要在侧边提问中决定事情。 主任务永远看不到答案。
当侧边线程过时时,使用 x 清除它。 否则,每次新提问都会重放最近的交流。
结论
/btw 针对你当前的 Claude Code 会话提出侧边提问,而不会将其添加到对话历史记录中。它可以查看你的消息、Claude 的回复以及目前收集到的工具结果,但它本身没有工具权限,且一次只能给出一个答案。在终端中,侧边线程持续到你退出 Claude Code;在 VS Code 中,它在窗口重新加载后依然存在。
当侧边提问的答案演变为工作时,按 f 将其 fork 到一个具有完整工具访问权限的 subagent 中,其结果将返回到主对话。其他任何值得保留的内容都应在你关闭侧边线程之前移出。