项目级配置优先于全局配置,需在项目根目录创建.codex/config.toml并写入目录限制、测试命令等规则;全局配置仅存api key等共用连接信息;通过[profile] name绑定配置可自动切换。
☞☞☞AI 智能聊天, 问答助手, AI 智能搜索, 多模态理解力帮你轻松跨越从0到1的创作门槛☜☜☜

你有多个项目,前端、后端、客户系统、内部工具混在一起,每个项目对代码修改范围、测试命令、敏感目录的约束都不同——Codex CLI如果只用一套全局配置,轻则改错文件,重则执行npm run build到Python项目里,甚至把API密钥误写进公开仓库。
先确认配置层级:全局管连接,项目管规则
打开终端,运行:codex --help,在输出中找到CONFIGURATION部分。你会看到明确提示:“Project-level config takes precedence over global”。这意味着项目级配置会自动覆盖全局配置,无需手动开关。
全局配置只该放API Key、Base URL、默认模型这类所有项目共用的连接信息;禁止把allow_dirs = ["src"]或test_command = "pytest"写进全局——这些必须下沉到具体项目目录里。
【项目根目录下必须存在 .codex/ 目录,Codex CLI 才会识别为项目级配置】
创建项目专属配置(Windows / macOS / Linux 通用)
进入你的项目根目录,比如C:\projects\client-app或~/dev/backend-api。
执行以下命令创建配置目录:
mkdir -p .codex && touch .codex/config.toml
这一步不能跳过。Codex CLI 启动时会逐级向上查找.codex/config.toml,直到找到第一个为止。如果项目根目录没有.codex,它就会回落到全局配置(C:\Users\用户名\.codex\config.toml或~/.codex/config.toml),导致规则失效。
写入项目特有规则(以客户项目为例)
用文本编辑器打开.codex/config.toml,填入以下内容:
[rules]allow_dirs = ["src", "lib"]deny_dirs = ["node_modules", "dist", ".git"]test_command = "npm run test:ci"require_branch = true
注意require_branch = true这一行:它强制Codex在执行任何文件修改前,检查当前Git分支名是否包含feature/、fix/或release/。这是客户项目硬性要求,避免直接在main上改代码。
保存后,在该项目目录下运行codex "修复登录页按钮点击无响应",Codex会自动读取并遵守这些限制。
通过本地 Codex 或 OpenClaw OAuth 凭证直接调用 ChatGPT/Codex Responses 的 image_generation 工具来生成或编辑光栅图像,然后保存
快速切换不同项目配置(Profile方式)
方法一:用环境变量临时覆盖
在项目目录下运行:CODX_PROFILE=client codex "生成新API接口"。此时Codex会优先加载.codex/auth.json中client段定义的API Key和模型,不干扰其他项目。
方法二:绑定profile到目录(推荐)
编辑项目级.codex/config.toml,在顶部加入:
[profile]name = "client"
这样每次进入该目录,Codex自动启用client profile,无需每次输参数。
注意:profile名称必须与.codex/auth.json中对应段落一致,否则报错profile not found。
验证配置是否生效
第一步:在项目目录下运行codex --debug config。
第二步:观察输出中的Loaded config from路径——它必须显示.codex/config.toml(而非~/.codex/config.toml)。
第三步:检查Effective rules区块,确认allow_dirs、deny_dirs等字段值与你刚写的完全一致。
如果Loaded config from指向全局路径,说明.codex目录没建对,或当前不在项目根目录。










