Codex 的个人配置文件默认是 ~/.codex/config.toml;项目定制写在仓库中的 .codex/config.toml,且项目必须受到信任。CLI 启动参数 / --config 的优先级更高,组织下发的强制策略不能被随意覆盖。遇到修改不生效,应先查实际加载层和项目 Trust。
2026-10-26 官方资料:官方:Config basics · 官方:CLI 命令选项 · 官方:Codex MCP。具体配置项可能随 Codex 版本调整,请以所安装版本与对应官方文档为准。
Codex config.toml 到底在哪里?
| 配置类型 | 典型位置 | 用途 |
|---|---|---|
| 个人默认配置 | ~/.codex/config.toml | CLI、IDE 的常用模型/权限/MCP 默认值 |
| 项目配置 | 仓库/.codex/config.toml | 仅对信任的指定项目或子目录覆盖 |
| Profile | ~/.codex/profile-name.config.toml | 通过 --profile 显式选择 |
| 管理员默认配置 | 组织下发或系统层配置 | 提供团队默认设置 |
| 强制策略 | requirements.toml 等 | 限制可选择的审批与沙箱策略 |
Linux、macOS 常用 ~ 表示用户 Home 目录。Windows 或特殊安装环境中,应从 Codex IDE 的设置入口或当前环境的用户目录定位,不要把 Unix 路径硬编码到另一台设备。
常见配置示例:审批与工作区写入
以下是 TOML 的最小示例,适合了解配置结构;实际权限要求应根据项目安全需求选择,不建议为了消除提示直接设置危险的完全访问权限。
approval_policy = "on-request"
sandbox_mode = "workspace-write"
要让特定项目使用不同设置,可以写入该项目的 .codex/config.toml。如果不信任该仓库,Codex 会跳过项目级层,这种情况下应该先评估仓库内容,而不是随意放宽安全策略。
Codex 配置优先级:改了文件为什么仍被覆盖?
- 启动时 CLI 参数、
-c/--config覆盖项优先级最高。 - 项目
.codex/config.toml:从项目根目录向当前目录查找,最近的有效项目配置优先;仅信任项目加载。 - Profile:通过
--profile显式选择的方案。 - 个人配置:
~/.codex/config.toml。 - 云端与系统默认配置:由工作区和安装环境提供,最后才使用内置默认值。
另一个关键区别是:requirements.toml 的强制要求属于约束,不是“排在最低级的默认配置”。即便普通配置文件写了另一种值,管理员限制也可能阻止它生效。
排查不生效的完整顺序
- 确认程序与工作目录:你实际使用的是本地 Codex CLI、IDE 扩展,还是 Cloud?本指南主要针对本地配置,Cloud 环境管理并不等同于本地文件。
- 查看当前文件:IDE 可从设置齿轮进入 Codex Settings → Open config.toml;CLI 确认
~/.codex/config.toml的文件存在且 TOML 语法正确。 - 排除命令行覆盖:回顾是否启动时传入
--config、-c、--profile、--sandbox等参数。 - 检查项目 Trust:项目没有被信任时,Codex 会忽略项目的
.codex配置层。 - 核对配置键和版本:拼错的键或已更新的选项可能不被当前版本识别。支持的版本可用
codex --strict-config让未识别项报错,具体以当前 CLI 帮助为准。 - 检查组织策略:管理员设置的
requirements.toml可能限制危险权限。不要绕过审批直接修改系统文件。
CLI 和 IDE 扩展为什么表现不同?
OpenAI 文档表示两者共享相同配置层,但两者启动工作目录、当前项目 Trust、命令行参数和更新版本可能不同。先确认使用的是同一账号、同一个本地仓库,再比较配置。MCP 工具列表不同,不一定是 config.toml 路径不同,也可能是认证或服务端连接状态,参考 Codex MCP 配置指南。
config.toml、AGENTS.md、Skills 各自做什么?
config.toml 是客户端行为参数;AGENTS.md 提供项目范围内对 Codex 的工作约定;Skills 是可复用的工作流程描述。想规定“提交前运行测试”“只审查支付金额”,应考虑 AGENTS.md 项目规则;想改变沙箱或默认模型,应检查 config.toml,而不是把 TOML 键写到 AGENTS.md。
常见问题
Codex 用户级 config.toml 在哪里?
默认保存在用户主目录下的 ~/.codex/config.toml。需要对某个仓库单独设置时,把 .codex/config.toml 放在项目内,并确认该项目被标记为可信。
为什么改了项目 .codex/config.toml 没用?
Codex 为安全起见,不会从未被信任的项目加载本地 .codex 配置。还应检查当前工作目录、上层项目配置以及是否被 CLI --config 参数覆盖。
Codex 里 --config 与 config.toml 哪个优先级高?
命令行参数及 --config 覆盖优先级高于项目 .codex/config.toml、所选 profile 和用户默认配置。组织或系统 requirements.toml 施加的强制要求不是普通可覆盖默认值。
Codex CLI 和 IDE 扩展会读取不同配置文件吗?
官方说明 CLI 与 IDE 扩展共享相同的配置层,IDE 的 Codex Settings → Open config.toml 可打开用户配置。但各自的启动目录、项目 Trust 状态和临时参数可能造成效果不同。
在 config.toml 修改沙箱为 workspace-write 就一定能写入吗?
不一定。文件可能受到更高优先级的 CLI 参数、管理员 requirements.toml、仓库信任设置,以及受保护目录或工作区限制。应先检查有效权限与审批提示。
AGENTS.md 和 config.toml 是一回事吗?
不是。config.toml 设置客户端模型、审批、沙箱、MCP 等行为;AGENTS.md 用于项目工作规则和指导。两者可以同时存在,不能相互替代。
查看 Codex 会话恢复指南,区分 resume、exec resume、fork 与 Cloud 新任务。