Codex 处理大型代码库或长时间任务时,很多人最先遇到的限制不是模型不会写,而是上下文逐渐被代码、命令输出和对话历史占满,随后触发自动压缩。2026 年 8 月 17 日,OpenAI Codex 团队成员 Tibo Sottiaux 公开给出了一套配置:为 GPT-5.6 Sol 启用 100 万 Token 上下文,并把自动压缩阈值设在 90 万 Token 左右。
这项设置此前主要适用于 API Key 路径;根据同日后续说明,现在通过 ChatGPT 账号使用 Codex 的用户也已可以启用。OpenAI 官方模型目录显示,GPT-5.6 Sol 的模型上下文上限为 1,050,000 Token,因此把 Codex 的工作窗口设为 1,000,000,仍为系统和输出保留了一定余量。
~/.codex/config.toml,在任何 [section] 标题之前加入 model = "gpt-5.6-sol"、model_context_window = 1000000 和 model_auto_compact_token_limit = 900000。保存后重启 Codex,并新建一个任务。不要把压缩阈值也设到 100 万,否则可能没有足够余量完成推理和输出。100 万上下文到底解决什么问题
上下文窗口可以理解为 Codex 在一次任务中能够同时保留的工作记忆。它不仅包含你的提示词,还包括系统说明、AGENTS.md、已读取的代码、工具说明、终端输出、图片信息、推理过程和此前对话。窗口越大,Codex 在触发压缩前能够保留的原始材料越多。
| 场景 | 更长上下文可能带来的帮助 | 仍然存在的限制 |
|---|---|---|
| 大型代码库重构 | 同时保留更多模块、接口和测试信息 | 无关文件过多仍会稀释注意力 |
| 长时间排查复杂 Bug | 减少较早日志和尝试被提前压缩 | 重复日志仍会快速占用窗口 |
| 跨文档研究与迁移 | 可保留更多规范、旧实现和目标约束 | 资料矛盾时仍需明确优先级 |
| 多轮实现与验证 | 更完整地记住决策、修改和测试结果 | 任务越长,额度和响应时间可能越高 |
更大的窗口并不会自动提高每个任务的质量。对于改一个按钮、修一个小函数或处理单个文件,默认上下文通常更经济。100 万上下文更适合确实需要大量原始材料保持在线的长任务。
方法一:在 config.toml 中长期启用
Codex 的用户级配置文件位于 ~/.codex/config.toml。用任意文本编辑器打开它,并把以下三行放在文件顶层,也就是任何 [section] 标题之前:
model = "gpt-5.6-sol"
model_context_window = 1000000
model_auto_compact_token_limit = 900000三个参数分别负责不同事情:
model:选择支持长上下文的 GPT-5.6 Sol。model_context_window:告诉 Codex 当前模型可使用 100 万 Token 上下文预算。model_auto_compact_token_limit:当活动上下文接近 90 万 Token 时自动压缩较早历史,为后续推理、工具返回和回答留下约 10 万 Token 余量。
如果文件中已经存在同名参数,应修改原有值,不要重复写两份。保存后完全退出并重新打开 Codex,再新建任务;已经运行中的旧任务可能继续沿用启动时的模型与上下文配置。
为什么一定要放在 [section] 之前
TOML 使用方括号声明配置区块。如果你把这三行写在 [features]、[agents] 或其他区块之后,它们可能会被解释成该区块的子项,而不是 Codex 顶层模型设置。最稳妥的方式是把它们放在文件最开头。
方法二:只为一次 CLI 会话临时启用
如果你不想修改默认设置,可以在启动 Codex CLI 时传入临时参数:
codex -m gpt-5.6-sol \
-c model_context_window=1000000 \
-c model_auto_compact_token_limit=900000这组参数只影响本次启动的 CLI 会话,适合先测试一个大型仓库,或只在少数长任务中使用。关闭这次会话后,下次正常运行 codex 仍会读取原来的默认配置。
怎么确认设置已经生效
- 确认模型:新任务应使用
gpt-5.6-sol,而不是上下文上限较小的其他模型。 - 确认启动方式:修改配置后重启 Codex;CLI 临时方式则必须从包含
-c参数的命令启动。 - 查看新任务状态:在 Codex 的状态或上下文用量界面确认窗口规模;不同客户端版本的显示位置可能不同。
- 排除重复配置:如果仍显示默认窗口,检查文件中是否有第二个同名键、项目级
.codex/config.toml或所选 profile 覆盖了用户级设置。 - 更新客户端:旧版 Codex 可能无法识别当前模型目录或新配置行为,先升级到可用的最新客户端版本再测试。
model_context_window 不是把任何模型强行扩容。所选模型本身必须支持对应窗口;配置值也不应超过模型官方规格。GPT-5.6 Sol 的公开规格是 1,050,000 Token,本文使用 1,000,000 而不是写满 1,050,000。100 万上下文会不会更耗额度
可能会。上下文上限只是容量,不代表每次都会立刻塞满 100 万 Token;但当任务真的保留更多代码、日志和历史时,后续请求需要处理的输入也会变大。对于使用 ChatGPT 计划内 Codex 用量的用户,这可能让包含额度消耗更快;对于 API Key 用户,则可能增加按 Token 计算的输入成本。
Tibo 在公开说明中也强调,Codex 的默认上下文长度已经针对性能与成本做过调优。100 万窗口是给有明确需求的用户的可选项,不是所有人都应该开启的新默认值。
90 万自动压缩阈值要不要改
900000 是一个容易理解的安全值:它为模型剩余约 10 万 Token 的工作空间。实际任务中,系统提示、工具定义、输出和模型内部处理也需要占用预算,因此不要只看输入文件大小。
| 配置思路 | 适合人群 | 注意事项 |
|---|---|---|
| 保持默认 | 日常开发、小中型项目 | 性能与额度更均衡 |
| 100 万窗口 + 90 万压缩 | 大型仓库、长时间复杂任务 | 可能更慢并增加用量消耗 |
| 只用 CLI 临时参数 | 偶尔需要超长上下文 | 下次启动不会自动保留 |
不建议盲目把压缩阈值继续推高。自动压缩不是故障,而是 Codex 在长任务中延续工作的上下文管理机制。真正应该优化的是无关材料:限制超长构建日志、避免反复读取生成目录、缩小搜索范围,并把稳定规则放进简洁的 AGENTS.md。
出现问题时如何恢复默认
如果开启后发现任务明显变慢、额度下降过快或客户端行为异常,删除这两个自定义参数即可让 Codex 重新使用模型默认值:
model_context_window = 1000000
model_auto_compact_token_limit = 900000你也可以保留 model = "gpt-5.6-sol",只恢复默认上下文策略。修改后重启 Codex 并新建任务。若使用的是 CLI 临时命令,直接关闭会话,再用普通的 codex 命令启动即可。
常见问题
ChatGPT Plus 或 Pro 登录也能开启吗?
根据 2026 年 8 月 17 日的公开说明,这项能力已从 API Key 使用路径扩展到通过 ChatGPT 账号使用 Codex 的用户。最终是否可用仍取决于账号、客户端版本、模型权限和产品侧配置。
设成 100 万后,Codex 就不会压缩了吗?
不会。本文配置会把自动压缩推迟到约 90 万 Token,而不是关闭压缩。继续运行后仍可能发生压缩,这是为了让任务在有限窗口内延续。
可以给 GPT-5.6 Terra 或 Luna 也写 100 万吗?
官方模型目录同样列出了 GPT-5.6 Terra 和 Luna 的 105 万 Token API 上下文规格,但这不等于每个 Codex 账号、客户端入口和订阅路径都已开放完全相同的产品配置。本文严格按原帖示例使用 GPT-5.6 Sol;切换其他模型前应检查账号内可用模型与最新官方说明。
为什么配置后还是原来的窗口?
优先检查是否重启并新建了任务、键是否位于 TOML 顶层、是否存在 profile 或项目级配置覆盖,以及当前是否确实选择了 GPT-5.6 Sol。仍无效时,应以客户端显示和 OpenAI 当前产品配置为准。
参考来源
本文根据 Tibo Sottiaux 的原始 X 帖子整理,并用 OpenAI 官方资料核对参数含义与模型规格:Codex Configuration Reference、OpenAI Models。配置项和产品开放范围可能随 Codex 更新而变化,操作前建议再次查看官方页面。
5xGPT 使用提醒
更长上下文解决的是复杂任务中的信息保留问题,不会把普通订阅变成无限额度。如果你的主要痛点是 Codex 经常触达使用限制,可继续阅读Codex 使用限制、Credits 与重置时间;需要判断订阅档位,可查看ChatGPT Pro 5x 和 20x 怎么选。
5xgpt.com 提供第三方 ChatGPT Plus、ChatGPT Pro、Codex 额度与企业采购协助,不是 OpenAI 官方、授权代理、合作伙伴或背书方。模型规格、账号权限、额度和配置行为以 OpenAI 官方页面及账号内实际显示为准。