Claude Code源码阅读(一):上下文压缩

作者:Claude Code源码阅读(一):上下文压缩

第一篇看 Claude Code 里一个很核心的机制: 上下文压缩。 先说结论: Claude Code 不是等上下文满了才压缩,而是会在每轮请求发出去之前,先检查当前上下文是不是已经接近上限;如果接近,就先压缩,再继续这一轮对话。 也就是说,它解决的不是“超了以后怎么办”,而是“怎么尽量别撞上限”。 我把这条链路用人话总结一下: 1. 每轮请求前,先检查当前上下文占用。 2. 不是卡着上限用,而是提前留出一段安全余量。 3. 如果还没到危险线,就继续正常对话。 4. 如果快超了,也不是立刻做大压缩,而是先做更轻的整理。 5. 轻量整理不够,再进入完整压缩。 完整压缩也不是“随便写个摘要”这么简单。 它会先整理压缩前必须保留的信息,再生成一段新的摘要;如果连“压缩这一步”自己都太长了,它还会先裁掉更老的一部分历史,再重试一次。 最关键的是: 它压缩完并不是只留一句“前文已总结”,而是会把后面继续工作需要的上下文重新拼回去。 所以压缩后的效果更像是: 把一段特别长的工作记录,整理成一份还能继续接着干活的精简版工作上下文。 这也是我觉得 Claude Code 这里最值得看的地方: 它做的不是普通摘要功能,而是一套分层的上下文管理机制。 下一篇继续拆: 压缩之后,它到底保留了哪些信息,为什么还能继续调用工具? 私信领源码。 ClaudeCode#源码阅读#AI编程#Agent#上下文工程#编程工具#大模型应用

📰 返回新闻列表