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 = 1000000model_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 仍会读取原来的默认配置。

怎么确认设置已经生效

  1. 确认模型:新任务应使用 gpt-5.6-sol,而不是上下文上限较小的其他模型。
  2. 确认启动方式:修改配置后重启 Codex;CLI 临时方式则必须从包含 -c 参数的命令启动。
  3. 查看新任务状态:在 Codex 的状态或上下文用量界面确认窗口规模;不同客户端版本的显示位置可能不同。
  4. 排除重复配置:如果仍显示默认窗口,检查文件中是否有第二个同名键、项目级 .codex/config.toml 或所选 profile 覆盖了用户级设置。
  5. 更新客户端:旧版 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 ReferenceOpenAI Models。配置项和产品开放范围可能随 Codex 更新而变化,操作前建议再次查看官方页面。

5xGPT 使用提醒

更长上下文解决的是复杂任务中的信息保留问题,不会把普通订阅变成无限额度。如果你的主要痛点是 Codex 经常触达使用限制,可继续阅读Codex 使用限制、Credits 与重置时间;需要判断订阅档位,可查看ChatGPT Pro 5x 和 20x 怎么选

5xgpt.com 提供第三方 ChatGPT Plus、ChatGPT Pro、Codex 额度与企业采购协助,不是 OpenAI 官方、授权代理、合作伙伴或背书方。模型规格、账号权限、额度和配置行为以 OpenAI 官方页面及账号内实际显示为准。