Skip to content

Claude Code 上下文管理完全指南:对抗Context Rot保持高效

2026年4月21日

Claude Code 上下文管理完全指南:对抗Context Rot保持高效

上下文窗口是Claude Code最重要的资源。随着上下文填满,模型性能逐渐下降(Context Rot)——这是使用Claude Code时需要主动对抗的核心问题。


上下文窗口基础

窗口大小

1,000,000 tokens(100万token)

包含内容

内容来源加载时机Token占用
系统提示词每次会话启动固定占用
CLAUDE.md启动时完整加载取决于文件大小
自动记忆启动时加载(前200行或25KB)有上限
对话历史累积增长随会话持续增加
工具结果每次工具调用后追加日志/大文件消耗极快
MCP工具名称、Skills描述启动时加载中等

上下文衰退症状

症状说明
前后矛盾忘记之前达成的决策
响应模糊细节减少,笼统回答
反复询问同一问题问了又问
纠正两次以上同一会话里同一问题纠两次以上

出现以上症状 → 主动用 /compact 或 /clear,不要继续纠正。


CLAUDE.md 指令文件

存放位置与作用范围

范围路径适用场景提交git
组织级/Library/Application Support/ClaudeCode/CLAUDE.md公司编码标准IT统一管理
项目级./CLAUDE.md./.claude/CLAUDE.md项目架构规范✅ 团队共享
用户级~/.claude/CLAUDE.md个人编码偏好❌ 个人私有
本地私有./CLAUDE.local.md(加.gitignore)本地配置❌ 不提交

优先级:项目本地 > 项目根目录 > 用户级 > 组织级

创建方式

bash
# 自动生成
/init

# 快捷追加(#键)
# 所有API错误响应必须使用 { code, message } 格式

内容要求

每个文件控制在200行以内,文件越大遵守率越低。

应该写入不应该写入
构建、测试、部署命令多步骤操作流程(放Skills)
代码规范:命名约定、禁止模式只与某部分相关的规则(放rules/)
关键约束:"始终使用pnpm"Claude读代码就能发现的信息
项目架构说明

按路径限定规则

.claude/
└── rules/
    ├── api.md         # 只对 src/api/**/*.ts 生效
    ├── frontend.md    # 只对 src/components/**/*.tsx 生效
    └── testing.md     # 只对 *.test.ts 生效

路径限定规则只在读取对应文件时加载,不在启动时全量占用上下文。


自动记忆(Auto Memory)

工作机制

特性说明
版本要求v2.1.59+
默认状态开启
存储位置~/.claude/projects/<项目路径>/memory/
写入提示终端显示 "Writing memory"
检索提示终端显示 "Recalled memory"

查看与编辑

bash
/memory

禁用

bash
CLAUDE_CODE_DISABLE_AUTO_MEMORY=1 claude

主动让Claude记住

记住:我们的API测试需要本地运行一个Redis实例
以后请记住:处理错误时,统一返回 { code, message } 结构

上下文优化命令

/compact 压缩上下文

bash
/compact
/compact Focus on the API changes
/compact 保留认证流程的架构决策,丢弃调试过程中的无效尝试
要点说明
主动压缩60~70%时手动触发,不要等75%自动压缩
传入指令控制保留哪些内容
有损操作不给指令可能丢重要内容

/clear 清除上下文

bash
/clear

清除后CLAUDE.md和自动记忆不受影响。

/rewind 回退检查点

bash
/rewind    # 或双击Esc
操作效果适用场景
恢复对话+代码完全还原改动有问题全部撤销
仅恢复对话保留文件改动重试不同思路
仅恢复代码保留对话代码改坏但分析有用
从此处摘要后半段压缩为摘要只清理冗余部分

/btw 快速提问不污染上下文

bash
/btw 这个项目的TypeScript版本是多少?

答案以浮层展示,不进入对话历史。


会话管理命令速查

命令功能场景
/context查看token用量分析排查哪部分消耗过多
/compact [指令]压缩对话历史60~70%时主动压缩
/clear清除对话历史切换新任务
/rewind回退检查点走偏了需要回退
/memory查看编辑记忆检查记忆准确性
/btw快速提问不污染查阅小细节
/init生成CLAUDE.md首次使用新项目
#追加CLAUDE.md指令随时记录规范
claude --continue继续最近会话重开终端接着干
claude --resume选择历史会话恢复几天前的任务

常见问题

问题解决方案
不遵守CLAUDE.md检查是否超200行,改模糊为具体,用rules/拆分
前后矛盾/compact保留关键决策,或/clear重新开始
/compact后信息丢失传入具体指令,压缩前写入CLAUDE.md
关闭终端继续工作claude --continueclaude --resume
大任务上下文爆满用子代理委托执行,主对话只收摘要

总结

一句话总结:上下文是Claude Code最核心资源——60~70%主动/compact、CLAUDE.md控制在200行内、用rules/按路径拆分、出现矛盾立刻/clear不要继续纠正。

不要孤军奋战啦!

加入微信群一起学习交流 AI

与大神一起使用 OpenClaw、Hermes、Claude Code、Seedance 2.0、GPT-Image-2 等

微信公众号

扫码关注微信公众号
私信 "加群",将自动获取微信群二维码

探索 AI 世界,掌握智能未来