配置基础约 7 分钟

Codex config.toml 怎么配:文件位置、优先级与最小配置

先找到真正生效的配置文件,再区分用户级、项目级和命令行覆盖。附最小 TOML 示例、验证步骤与回退方法。

先确认你改的是哪一份配置

同一台电脑上可以有多份 config.toml。终端、客户端、远程主机以及不同 CODEX_HOME 可能读取不同目录。“文件保存成功”只说明编辑器写入了文件,并不代表当前 Codex 会话已经加载。开始前先记下客户端版本、CLI 版本、工作目录和报错原文。

终端检查;不输出密钥
codex --version
printf '%s\n' "${CODEX_HOME:-$HOME/.codex}"

未设置 CODEX_HOME 时,用户配置通常位于 ~/.codex/config.toml。PowerShell 可先检查 $env:CODEX_HOME;为空时查看 $HOME 下的 .codex 目录。客户端应从其设置界面打开正在使用的配置,再核对路径,不要根据另一个终端的输出推断。

用户级与项目级分别放什么

位置适合放什么要注意什么
~/.codex/config.toml个人默认值、供应商、MCP 等修改前保留副本,不把凭据提交仓库
项目/.codex/config.toml这个项目需要的模型、推理或执行默认值只在受信任项目中加载;不支持覆盖供应商路由
~/.codex/<名称>.config.toml由 --profile 选择的一组差异设置独立文件写法适用于 Codex 0.134.0 及之后版本

从一份最小配置开始

先保留当前可用的模型和登录方式,只明确日常执行边界。以下键都在 TOML 顶层。如果追加在某个 [table] 后面,它们可能落进错误的表;优先在文件顶部编辑,避免重复定义。

~/.codex/config.toml · 合并到现有顶层配置
approval_policy = "on-request"
sandbox_mode = "workspace-write"

需要固定模型时再增加 model = "YOUR_MODEL_ID",将占位符替换为当前账号或供应商实际可用的模型。推理强度也取决于模型支持情况,不要把网上模板里的最大强度直接套到所有模型。

为什么保存后仍然不生效

  1. 先看启动命令:--model、--profile 或 -c 是否覆盖了文件。
  2. 再检查受信任项目从根目录到当前目录的 .codex/config.toml,越靠近工作目录的同名设置优先。
  3. 随后检查选中的 Profile 文件、用户配置及组织下发的默认值。
  4. 如果管理员要求禁止某个选项,本地文件不能绕过要求;配置默认值和强制要求是两件事。

验证、回退,再继续加配置

保存后新开 CLI 会话,或完整退出并重新打开客户端。在 CLI 中用 /status 查看会话状态,用 /debug-config 检查配置层与要求;如果本地版本没有这个命令,先用帮助确认支持范围。先让 Codex 只阅读 README 并总结项目,确认模型和权限符合预期。

出现 TOML 解析错误时,回退这次新增的键或恢复副本;不要删除整个 ~/.codex。验证成功再继续配置 自定义供应商、Profiles 或 MCP。

依据与版本说明

依据以下官方文档整理。示例中的地址、模型和路径需按你的环境替换;旧版本与组织管理环境可能有不同限制。

资料核对日期:

更多指南

接着把配置用起来

生成配置、核对接入步骤,或按报错定位下一项检查。

客户端 + CLI 接入打开配置工具