MemoryLake
返回全部文章
Tutorial2026 年 11 月 5 日·10 分钟阅读

什么是 Claude Code 中的 Session Recap?离开后何时显示,以及为什么它不会改动您的对话 (2026)

当您切换到另一个窗口几分钟,回到 Claude Code 时,会发现提示符上方有一行文字:对当前会话到目前为止所做工作的简短总结。这就是 session recap(会话回顾)。您也可以随时使用 /recap 手动请求一个回顾。

它看起来有点像 compaction(压缩),因为两者都会生成对话摘要。但区别很重要。Anthropic 的 prompt caching(提示词缓存)指南指出,/recap “将摘要作为命令输出附加,而不是替换您的消息历史记录,因此缓存的前缀保持不变。” 您的对话保持原样,回顾只是给您的一个提醒。

本指南涵盖了自动回顾何时出现、/recap 的作用、长度限制和触发权限、它与 compaction 及其他命令的关系,以及如何关闭它。如果您使用 Codex,我们的 Codex /recap 指南 介绍了那里的等效命令。

什么是 session recap

Anthropic 的交互模式文档是这样描述它的:“当您在离开一段时间后返回终端时,Claude Code 会显示一行关于会话到目前为止发生情况的回顾。”

命令参考列出了手动版本:/recap 将“根据需要生成当前会话的一行摘要”。

两者都是为了定位。休息片刻后,您可以找回正在进行的工作思路,而无需滚动浏览转录文本。它们不是会话的永久记录。

自动回顾何时出现

文档给出了具体条件:

  • 时间和焦点。 “自上次完成轮次以来至少过去三分钟,且终端处于非聚焦状态时,回顾会在后台生成,以便在您切换回来时准备就绪。”
  • 足够的对话量。 “回顾仅在会话至少有三个轮次后才会出现,且绝不会连续出现两次。”
  • 仅限交互式会话。 “自动回顾绝不会在非交互模式下出现。” 运行 claude -p 不会显示回顾。

因此,简短的会话、从未离开过的终端,或者在没有新轮次的情况下连续两次休息,都不会产生回顾。这些是文档记录的条件,解释了为什么您在某些休息后能看到回顾,而其他时候则看不到。

在 agent 视图中

后台会话有一种相关的行为。Anthropic 的 agent 视图指南指出,当您连接到后台会话时,“Claude 会发布一段您离开期间发生情况的简短回顾。” 我们的 Claude Code agent 视图指南 解释了这些会话在您不在场时是如何运行的。

手动运行 /recap

/recap 根据需求生成相同类型的摘要。这两种形式都受到两个限制。

长度。 “Claude Code 将自动回顾和 /recap 输出都限制在 400 个字符以内。” 回顾是一两句话,而不是状态报告。变更日志条目补充说,截断发生在“单词边界处”。

谁可以请求。 “它仅在您亲自请求时运行。” 错误参考解释了这在实践中的含义:如果 /recap 来自“从 Slack、Teams 或项目线程转发到会话中的消息,或者是云端计划任务或其他程序发送的提示词”,则会收到通知而不是回顾。在 Anthropic 的列表中,它确实可以运行的地方包括“终端、Claude 应用或 claude.ai/code,或通过 Remote Control”。文档还指出:“您传递给 claude -p 的 /recap,或者您自己的 Agent SDK 应用程序发送给它启动的会话的 /recap,都算作您自己的输入。”

如果您看到提示说 /recap 仅在您亲自请求时运行,Anthropic 给出的解决方法是打开会话并在那里运行命令,或者从计划任务或程序发送的提示词中删除 /recap。

为什么回顾不会改动您的对话

这是关于回顾最有用的一点,它出现在提示词缓存指南中:“与 /compact 不同,它将摘要作为命令输出附加,而不是替换您的消息历史记录,因此缓存的前缀保持不变。”

这会产生两个结果。

没有任何内容被摘要掉。 Compaction 会用摘要替换之前的轮次,这就是为什么可能会丢失一些细节的原因。而回顾不会替换任何内容,因此之前的每条消息仍保留在对话中。

缓存不会被干扰。 因为历史记录没有被重写,保持后续请求高效的缓存前缀仍然有效。

并非 Claude Code 生成的每个摘要都是如此。Idle compaction(空闲压缩)是一个独立的功能,可以在您离开时压缩会话。Anthropic 的设置参考指出,在它运行后,“您的下一条消息将发送摘要而不是整个对话。” Anthropic 的成本指南同时提到了这两者:“Session recap 和 idle compaction 在您空闲时可能会消耗 token。” 如果您回到会话并同时看到回顾和关于 compaction 的说明,说明它们执行了不同的操作。

Recap 与其他会话命令

Claude Code 有几个命令可以让您在不改变会话的情况下查看会话,还有几个命令会改变会话。

  • /recap。 作为输出附加的一行摘要。对话保持不变。
  • /context。 填充上下文窗口内容的细目分类。我们的 /context 命令指南 解释了如何阅读它。
  • /btw。 保持在对话之外的侧面问题。我们的 /btw 指南 涵盖了侧面问题可以查看的内容。
  • /compact。 用摘要替换之前的轮次。
  • /clear。 开始全新的对话。我们的 /clear 指南 涵盖了哪些内容可以保留下来。

前三个帮助您了解当前所处的位置。后两个改变 Claude 的工作基础。回顾属于第一组。

关闭回顾

回顾默认是开启的:“Session recap 对每个计划和提供商默认开启。”

有三种方法可以关闭或覆盖它:

  • 在 /config 中。 “要关闭自动回顾,请打开 /config 并关闭 Session recap。”
  • 在设置中。 awaySummaryEnabled 设置执行相同的操作。Anthropic 的设置参考指出,将其设置为 false 可停止回顾,默认值为未设置,即回顾开启。
  • 针对单个会话。 CLAUDE_CODE_ENABLE_AWAY_SUMMARY 环境变量“在单个会话中优先于此键,无论方向如何”。将其设置为 0 强制关闭回顾,或设置为 1 强制开启。

/config 开关被描述为关闭自动回顾。而 /recap 是按需形式。

为什么要关闭它?回顾是在后台生成的,Anthropic 指出它在您空闲时可能会消耗 token。如果您经常离开且不使用这些摘要,关闭它可以节省这部分工作。

回顾在何处工作

自动回顾是一个终端功能,与终端失去和重新获得焦点挂钩。/recap 的适用范围更广。Anthropic 的 Remote Control 指南将其列为可用的文本输出命令之一,与 /compact、/clear 和 /context 并列,因此您可以请求从手机操作的会话回顾。

提供商也无关紧要。该功能发布时与遥测挂钩;后来的发布说明指出:“Session recap 现在对禁用遥测的用户(Bedrock、Vertex、Foundry、DISABLE_TELEMETRY)启用。” 同一份发布说明指出了通过 /config 和 CLAUDE_CODE_ENABLE_AWAY_SUMMARY=0 进行退出的方法。

恢复会话是另一种情况。另一份发布说明提到 Claude Code “更改了压缩后的恢复方式,不再在继续之前生成前导回顾”,因此被压缩过的恢复会话将直接开始,而不会在顶部增加额外的摘要。

回顾不是什么

回顾是提醒,而不是记忆。

文档将其描述为用于显示的输出,附加到会话中,回顾文档中没有任何内容描述后续会话会加载它。当您开始新会话或运行 /clear 时,Claude 继承的知识来自您的 CLAUDE.md 文件和 auto memory(自动记忆),而不是来自之前会话的回顾。

它也不是交接。在 400 个字符的限制下,回顾可以告诉您正处于什么工作的中间,但它无法承载决策背后的推理或您已排除的事项列表。对于将工作交给另一个会话或另一个人,我们的编写交接提示词指南 涵盖了应包含的内容。

人们首先尝试的操作

期望每次休息后都有回顾。 它需要三分钟时间、非聚焦的终端、至少三个轮次,以及自上次回顾以来的新轮次。

从 Slack 或例行程序发送 /recap。 转发的消息和计划的提示词会收到通知。请亲自在会话中运行它。

将回顾作为可分享的摘要。 它被限制在 400 字符以内。请改为编写交接文档。

假设回顾会压缩会话。 它只是附加输出并保留历史记录。

关闭回顾以停止空闲压缩。 它们是分开的。Idle compaction 有自己的设置。

解决方案:使用回顾进行定位,并将记录保存在别处

第 1 步:决定是否需要自动回顾

如果一行提醒能帮助您接续之前的工作,请保持开启。如果您很少阅读它,请在 /config 中关闭 Session recap 或将 awaySummaryEnabled 设置为 false。

第 2 步:在需要时使用 /recap

在长时间工作后、切换任务前,或者当您排队了消息并失去追踪时,运行 /recap。我们的 Claude Code 排队消息指南 解释了这些消息何时到达 Claude。

第 3 步:记录下比会话更长久的内容

当会话确定了您以后还会需要的某些内容(如决策、约定或死胡同)时,请将其放入 CLAUDE.md 或要求 Claude 将其保存到 auto memory。回顾告诉您曾经在哪里;而这些文件告诉下一个会话您知道什么。

在 MemoryLake 中设置

回顾是帮助您恢复工作的一句话。而工作背后的决策及其原因,需要一个比单个会话、单台机器和单个工具更长久的地方。

MemoryLake 是一个记忆层,用于将这些决策保存在一个由您维护的地方,供您连接的助手(如 ChatGPT、Claude Code 和 Codex)使用。

您可以用自己的语言亲自编写条目。您的 Claude Code 会话、回顾、CLAUDE.md 文件、auto memory 或任何供应商的存储空间都不会被读取、写入或删除任何内容。Session recap 和 /recap 将继续按照 Anthropic 描述的方式工作。

第 1 步:创建 API 密钥

登录并从控制面板生成密钥。该密钥属于您的 MemoryLake 工作区,与您的 Claude 账户是分开的。

MemoryLake 控制台显示 API 密钥屏幕,在此处创建并复制新密钥以供 agent 使用
MemoryLake 控制台显示 API 密钥屏幕,在此处创建并复制新密钥以供 agent 使用

第 2 步:上传您的第一批记忆

从您在解决方案第 3 步中记录的内容开始:决策、约定和您已排除的方法。每个条目一个要点,并注明日期。

MemoryLake 工作区显示已上传的第一批文档,列出了每个文件成为可搜索记忆的过程
MemoryLake 工作区显示已上传的第一批文档,列出了每个文件成为可搜索记忆的过程

第 3 步:连接您的 AI 和 agent

连接 Claude Code 和您使用的任何其他助手。相同的条目在新会话中、运行 /clear 后或在不同的工具中都可用。

MemoryLake 集成屏幕列出了可以连接到记忆层的 AI 客户端和 agent 框架
MemoryLake 集成屏幕列出了可以连接到记忆层的 AI 客户端和 agent 框架

这在实践中改变了什么

第一个区别是更快的重启。回顾提醒您正在做什么,而记忆条目提醒 Claude 您已经决定了什么。

第二个是减轻了会话压力。长时间的会话不必承载所有内容,因为重要的部分已经被记录下来了。

第三个是跨工具的一致性。相同的决策在 Claude Code、Codex 和 ChatGPT 中都可用。

Session Recap 最佳实践

如果您经常离开,请保持开启。 这是恢复工作的快速方式。

如果您不看它,请将其关闭。 它在您空闲时可能会消耗 token。

亲自运行 /recap。 它会拒绝来自聊天线程或计划任务的转发请求。

不要指望超过一行。 输出限制在 400 字符以内。

不要将其与 compaction 混淆。 回顾是附加;压缩是替换。

记录下持久的内容。 对于下一个会话需要的任何内容,请使用 CLAUDE.md 或 auto memory。

结论

Session recap 是 Claude Code 在您离开至少三分钟后返回时显示的一行摘要,前提是会话已有三个或更多轮次。/recap 根据需要生成相同的摘要,两者都限制在 400 字符以内。只有您可以从终端、Claude 应用、Remote Control、claude -p 或您自己的 SDK 应用程序触发 /recap。

与 compaction 不同,回顾会附加输出并保留您的消息历史记录和缓存。这使其成为一个安全的提醒,也是它不具备记忆功能的原因。对于下一个会话需要知道的任何内容,请将其写在 Claude Code 可以读取的地方。

常见问题

什么是 Claude Code 中的 session recap?

这是当您在离开一段时间后返回终端时,Claude Code 显示的一行会话摘要。您也可以使用 /recap 手动生成一个。

Claude Code 何时显示回顾?

在自上次完成轮次以来至少过去三分钟、终端处于非聚焦状态且会话至少有三个轮次后。它不会连续出现两次,也不会在非交互模式下出现。

/recap 会压缩我的对话吗?

不会。Anthropic 表示 /recap 将摘要作为命令输出附加,而不是替换您的消息历史记录,因此缓存的前缀保持不变。

如何关闭 session recap?

在 /config 中关闭 Session recap,将 awaySummaryEnabled 设置为 false,或者针对单个会话设置 CLAUDE_CODE_ENABLE_AWAY_SUMMARY=0。

为什么 /recap 说它仅在由我亲自请求时运行?

该请求来自转发的 Slack、Teams 或项目线程消息,或者来自计划任务或其他程序。请亲自在会话中运行 /recap。

Session recap 会消耗 token 吗?

是的。Anthropic 表示 session recap 和 idle compaction 在您空闲时可能会消耗 token。