时间线显示的内容
该会话通过具有代表性的令牌计数演示了一个现实的流程:- 在您输入任何内容之前:CLAUDE.md、自动内存、MCP 工具名称和技能描述都加载到上下文中。AGENTS.md 文件也可以加载,无论是单独加载还是与 CLAUDE.md 一起加载。您自己的设置可能会在此处添加更多内容,例如输出样式或来自
--append-system-prompt的文本。 - 当 Claude 工作时:每个文件读取都会添加到上下文中,路径范围的规则会自动与匹配的文件一起加载,并且PostToolUse hook在每次编辑后触发。
- 后续提示:子代理在其自己的单独上下文窗口中处理研究,因此大文件读取不会进入您的窗口。只有摘要和一个小的元数据预告片返回。
- 在演练结束时:您运行
/compact,它用结构化摘要替换对话。大多数启动内容会自动重新加载;下表显示了每个机制会发生什么。
压缩后保留的内容
当长会话压缩时,Claude Code 会总结对话历史以适应上下文窗口。从 v2.1.198 开始,总结请求继承您会话的扩展思考配置,因此当您的会话启用思考时,它会在启用思考的情况下进行推理,否则保持关闭。思考仅影响摘要的生成方式;您的会话设置之后保持不变。每种内容的处理方式取决于其加载方式:
压缩后立即,Claude Code 重新读取最多五个 Claude 在会话中读取或编辑的文件,选择最近修改的文件。超过 5,000 个令牌的文件作为路径引用返回,不包含其内容,显示为
Referenced file 而不是 Read。
路径范围的规则和嵌套的 CLAUDE.md 文件在读取其触发文件时加载到消息历史中,因此压缩会将它们与其他所有内容一起总结。如果规则必须在压缩过程中保持不变,请删除 paths: frontmatter 或将其移动到项目根目录 CLAUDE.md。
技能主体在压缩后重新注入,但大型技能会被截断以适应每个技能的上限,一旦超过总预算,最旧的调用技能就会被删除。截断保留文件的开头,因此请将最重要的指令放在 SKILL.md 的顶部附近。
当您的上下文填满时
Claude Code 在您接近限制时自动压缩,因此完整的上下文窗口不会结束您的会话。自动传递的工作方式与时间线中的/compact 步骤相同。有关它保留的内容,请参阅当上下文填满时。
您也可以在自动传递运行之前采取行动:
- 带有焦点的压缩:在开始长时间的新任务之前,运行带有指令的
/compact,例如/compact focus on the auth bug fix。摘要保留您选择的内容,而不是自动传递猜测的重要内容。 - 压缩对话的一部分:运行
/rewind,选择一条消息,然后选择从此处总结或总结到此处。有关每个选项保留的内容以及如何指导摘要,请参阅回退和总结。 - 更早压缩:运行
/autocompact并指定令牌计数,例如/autocompact 500k,以设置在自动传递运行之前上下文窗口的填充程度。有关接受的值和覆盖,请参阅设置自动压缩窗口。 - 在任务之间清除:切换到不相关的工作时运行
/clear。旧对话会挤出您接下来需要的文件,并在每条消息上花费令牌。 - 委托大型读取:将研究发送给子代理,以便文件内容保留在其上下文窗口中,而不是您的。
[1m] 模型变体,请参阅扩展上下文。压缩在更大的限制下以相同的方式工作。
Sonnet 5.5 和 Sonnet 5 以 1M 上下文窗口运行,没有 [1m] 变体可选择。有关其自动压缩阈值和 LLM 网关异常,请参阅Sonnet 5.5 和 Sonnet 5 上下文窗口。
自动压缩运行的位置取决于您的模型和配置。有关每个模型的边界,请参阅默认自动压缩阈值,如果 Claude Code 为您的模型 ID(例如 LLM 网关别名)假设了错误的窗口,请参阅更正网关或自定义模型 ID 的窗口。
检查您自己的会话
该可视化使用代表性数字。要在任何时刻查看您的实际上下文使用情况,请运行/context 以获取按类别的实时分解和优化建议,包括加载了哪些 CLAUDE.md 和自动内存文件。运行 /memory 以打开和编辑这些文件。