Codex支持项目级配置覆盖全局配置,可通过创建.codex/config.toml仅覆盖base_url和model等必要字段,结合环境变量或Git分支管理实现dev/prod自动切换,避免手动修改导致的密钥泄露与生产误调用。
☞☞☞AI 智能聊天, 问答助手, AI 智能搜索, 多模态理解力帮你轻松跨越从0到1的创作门槛☜☜☜

你需要让 Codex 在开发时调用测试环境的模型接口,在上线前自动切换到生产环境的 API 地址,避免误用正式密钥或触发生产计费。这不能靠手动改 config.toml 解决,因为每次切换都可能漏改、误提交、引发权限泄露。
用项目级配置覆盖全局配置
第一步:确认 Codex 当前加载的是哪个 config.toml。运行 codex config show,看输出里 config file path 指向的位置。如果显示的是 ~/.codex/config.toml,说明它正在读全局配置。
第二步:进入你的开发项目根目录,创建一个 .codex 子目录:mkdir -p .codex。
第三步:在该目录下新建 config.toml,内容只写你希望覆盖的部分——比如仅替换 base_url 和 model:
注意:这里不写 env_key、wire_api 等字段,Codex 会自动从全局配置中继承它们。只写你想变的项,其余保持原样。
第四步:回到项目根目录,执行任意 Codex 命令(如 codex explain --file main.py),它会自动优先加载 .codex/config.toml,而不再读取全局文件。
用环境变量区分 dev/prod 运行时
方法一:终端临时切换
开发时,在项目目录下执行:
export CODER_ENV=dev && codex chat生产部署前,在 CI/CD 脚本或服务器终端里执行:
方法二:在 config.toml 中嵌入条件逻辑(需 Codex v0.9.4+)
在项目级 .codex/config.toml 中写:
这个语法依赖 TOML 插值支持,【必须确认你安装的 Codex CLI 版本 ≥ 0.9.4】,否则会解析失败并静默回退到默认地址。
用 Git 分支管理不同配置
第一步:在项目根目录的 .codex/config.toml 中,把敏感字段替换成占位符:
第二步:在 .gitignore 中添加 .codex/local.env,确保它不会被提交。
第三步:在本地创建 .codex/local.env,内容为:
第四步:在 CI/CD 流水线中,用 sed 或 envsubst 替换占位符:
envsubst /tmp/config.toml && cp /tmp/config.toml ~/.codex/config.toml这一步必须在 Codex 启动前完成,且确保 NEXO_PROD_KEY 已注入运行环境。


















