Codex 记忆系统要大改了?
Codex 记忆系统大改:告别压缩丢失关键信息,上下文硬切换+笔记历史检索,解决开发重复踩坑难题。核心内容: 1. 现有问题:上下文压缩导致关键信息丢失(如依赖升级原因被忘,重复执行错误路线) 2. 新方案:上下文硬切换+笔记管理交接+历史检索完整记录 3. 改进目标:避免信息丢失,支持回溯细节,提升开发效率
前两天,开发者 Nico Ritschel 在 X 上扔出一句话:Codex CLI 快要告别 compaction,改用上下文硬切换,再配上笔记和完整历史检索。

这条帖子很快有了 11 万次浏览。他随后贴出的两条 PR,一条叫 new_context,负责开新窗口;另一条直接把 history 和 notes 塞进了 Codex。
翻成人话,Codex 要开始自己管理记忆了:窗口快装满时,它先把手头的活交代清楚,再换一个干净窗口继续。上一段对话不会继续占着眼前的空间,需要核对细节时,Codex 可以回头翻完整记录。
这恰好碰到了 Coding Agent 最让人抓狂的一类问题。
你已经告诉 Codex 某个依赖不能升级,也陪它排除了三条看似合理的路线。任务跑了几个小时,上下文压缩一次,它还记得“没有升级”,却可能忘了“为什么不能升级”。等环境稍微一变,那条刚被否掉的路线又被认真走了一遍。
Codex 这次准备换掉的,正是这种只靠一份压缩结果接力的办法。
先让 Codex 知道自己快装不下了
现在的 compaction,会把此前的对话和工具结果压成一份更短的状态,腾出空间继续工作。OpenAI 把它称为 loss-aware compression:尽量保住有用信息,同时大幅减少 Token。
麻烦在于,系统得提前猜出哪些细节以后还有用。
一句用户约束、一次失败的终端输出、某个方案被放弃的原因,当时看起来只是边角料,几小时后却可能决定整个任务要不要重来。
新方案的第一步叫 token_budget。它会把当前是第几个上下文窗口、还剩多少 Token 告诉模型。Codex 也多了一个只供模型调用的工具 get_context_remaining,干到一半可以主动看一眼余量。
相当于先给它装上一块油表。
余量充足时继续查代码、跑测试;快到边界时收束当前阶段,把后面仍会用到的东西写进交接记录。以前往往等到窗口快撑爆才被系统压缩,现在 Codex 有机会自己挑一个更合适的交接点。
装满了,直接换一个窗口
负责换窗口的工具叫 new_context。

Codex 判断眼前这个窗口不适合继续工作时,可以主动请求一个全新的上下文。PR 里有个容易被忽略的细节:新窗口只装入初始上下文,不带上一窗口的对话,也不会顺手生成一份 compaction 摘要。
单独看这一项,效果接近主动清空脑子。
后面加入的 notes 和 history,才让 Codex 能在清空以后把工作接回来。
笔记管交接,历史管追查
notes 负责保存跨窗口仍然有用的工作状态。Codex 可以列出、读取、搜索、追加或重写笔记。

history 保存更完整的原始记录。它可以按窗口查看条目,也可以搜索以前的对话和工具结果。
两者的分工很像工程师自己的工作习惯:笔记里写现在做到哪、哪些路试过了、接下来干什么;碰到一句话说不清的细节,再去历史记录里找当时的原话和现场输出。
代码还给自动换窗留了一段额外的 Token。临近边界时,Codex 会得到最后一次整理机会,先把重要状态写下来。新窗口启动后会拿到一段最多 4000 字节的 thread hint,细节不够,再去搜索完整历史。
比如一次跨 40 个文件的重构,笔记可以记住已经改完 23 个文件、测试卡在哪个模块、哪条路线已经失败;history 则保留具体报错、用户限制和那次失败调用的完整输入输出。
当前窗口只摊开眼前的材料,笔记负责交接,历史负责兜底。Codex 不必再把几小时的工作全押在一份越压越薄的摘要上。
最后
这套设计已经不只是纸面想法。
new_context 的 PR 在 6 月合并,history 和 notes 的 PR 在 8 月合并,相关改动也进入了 Codex CLI 0.150.0 的完整更新记录。随后的一项改动,又允许 OpenAI 通过模型配置在新线程启动时打开这套能力。
对长任务来说,最大的变化其实很朴素。
上下文再大,总有装满的一刻。长任务能不能接着干,最后还得看它会不会在离开前写好交接,会不会回来查旧记录。
如果这套设计顺利开放,Codex 跑完一次上下文以后,至少有机会像同一个工程师重新坐回工位:翻开笔记,找到昨天的现场,接着往下做。
参考链接
Nico Ritschel 的 X 原帖:https://x.com/nicoritschel/status/2093775003888361576 Codex PR #27438 Add token budget context feature:https://github.com/openai/codex/pull/27438 Codex PR #27488 Add new context window tool:https://github.com/openai/codex/pull/27488 Codex PR #39827 Add history and notes tools for token-budget sessions:https://github.com/openai/codex/pull/39827 Codex PR #40539 Inject history notes hints into context windows:https://github.com/openai/codex/pull/40539 Codex PR #41803 Allow models to enable token budgeting by default:https://github.com/openai/codex/pull/41803 OpenAI ChatGPT 与 Codex 更新日志:https://learn.chatgpt.com/docs/changelog OpenAI Feature Maturity:https://learn.chatgpt.com/docs/feature-maturity OpenAI Model guidance 中的 Compaction:https://developers.openai.com/api/docs/guides/latest-model?model=gpt-5.5
立即咨询 JOTO
JOTO 提供覆盖企业智能体规划与搭建、AI 平台私有化部署、RAG 知识工程、AI 安全治理、FDE 驻场共创及持续运营优化的全周期 AI 落地服务,帮助企业把验证中的 AI 能力转化为安全、可控、可持续迭代的生产力。 联系 JOTO 获取 AI 落地咨询
想把这些做法用到你的业务里?
留下你的场景和痛点,我们帮你判断从哪一步开始。
联系我们


