正文预览
最后核对
官方资料最后核对日期:2026-10-12。本文参考 Codex config basic、Codex config advanced、Codex config reference 与 openai/codex config docs整理。
config.toml 用来保存 Codex 本地客户端的默认行为。你可以把它理解为“个人驾驶舱”:模型、审批、沙盒、profiles、MCP 服务等偏好都可以在这里集中管理。
用户级配置通常位于:
~/.codex/config.toml
如果某些设置只想对当前项目或子目录生效,可以在仓库中增加:
.codex/config.toml
Codex 只会在你信任项目后加载项目级 .codex/ 配置。它会从项目根目录向当前工作目录逐层读取配置,同一个字段离当前目录越近,优先级越高。
项目长期规则仍建议写到仓库内的 AGENTS.md,项目默认行为可以写进 .codex/config.toml,个人偏好放到本机 ~/.codex/config.toml。这样团队成员能共享项目规则和必要的配置,又能保留自己的使用习惯。
当多个位置设置了同一个字段时,Codex 按下面的顺序取值,越靠前优先级越高:
- CLI 参数和
--config临时覆盖。 - 项目内的
.codex/config.toml,离当前工作目录最近的文件优先。 - 通过
--profile <name>选择的~/.codex/<name>.config.toml。 - 用户级
~/.codex/config.toml。 - 工作区下发的云端默认配置。
- 系统配置,例如 Unix 上的
/etc/codex/config.toml。 - Codex 内置默认值。
项目级配置不能覆盖所有机器级字段。例如 provider、通知、遥测和 profile 选择等设置应留在用户级配置中。受管理设备还可能通过 requirements.toml 限制可选值,这类组织策略不是用户配置可以绕过的。
config.toml 保存 Codex 的持久配置,例如模型、沙盒、审批、profiles 和 MCP server。~/.codex/.env 用来补充 Desktop app 或 IDE extension 启动时必须读取、但没有从当前 shell 继承到的环境变量,例如 provider 明确要求的区域变量。
OpenAI Amazon Bedrock provider 文档提醒:Desktop app 和 VS Code extension 可能不会继承当前 shell 里的环境变量;如果这些入口需要某些变量,可以把值放进 ~/.codex/.env,然后重启 app 或 extension。
写入前先确认两件事:
- 变量确实是当前入口需要的,不要把所有 shell 变量都复制进去。
- 文件里可能包含 secret,截图、发 issue 或提交仓库前必须脱敏。
如果需要配置代理,不要直接照搬示例或猜测端口。先查看系统代理设置,并用 `cur