Codex 常见问题
本页适用于 Codex CLI 和 VS Code 中的 Codex 插件。ChatGPT 桌面端见 ChatGPT 常见问题。
先按报错判断
| 报错 | 优先处理 |
|---|---|
error sending request for url | 先查配置目录里的 .env,再查代理/网络 |
model_not_found / 当前服务暂不支持该模型 | 检查模型名称和令牌分组 |
403 Forbidden | 检查令牌的「模型可用列表」 |
按教程配置后没生效
教程默认把配置写入 Windows 的 %userprofile%\.codex 或 macOS / Linux 的 ~/.codex。
注意
如果系统设置了 CODEX_HOME,Codex 读的是该变量指向的目录;此时继续改默认目录不会生效。
查看实际配置目录:
Windows(PowerShell):
$codexDir = if ($env:CODEX_HOME) { $env:CODEX_HOME } else { Join-Path $HOME '.codex' }
New-Item -ItemType Directory -Force $codexDir | Out-Null
$codexDir
notepad (Join-Path $codexDir 'config.toml')
notepad (Join-Path $codexDir 'auth.json')
macOS / Linux:
CODEX_DIR="${CODEX_HOME:-$HOME/.codex}"
printf '当前 Codex 配置目录:%s\n' "$CODEX_DIR"
mkdir -p "$CODEX_DIR"
touch "$CODEX_DIR/config.toml" "$CODEX_DIR/auth.json"
nano "$CODEX_DIR/config.toml"
nano "$CODEX_DIR/auth.json"
VS Code 插件也可以点 Codex 面板右上角齿轮 → Codex Settings → Open config.toml。
仍未生效时检查配置优先级
Codex 可能同时读取多层配置。官方优先级从高到低:
- 启动命令中的参数
- 受信任项目内的
.codex/config.toml - 通过
--profile选择的配置 - 用户目录中的
config.toml - 系统级配置
- Codex 内置默认值
高优先级会覆盖低优先级的同名设置。
在 Codex CLI 里:
/debug-config
查看实际加载的配置层和生效来源;再输入 /status,确认当前模型、工作目录和权限设置。
信息
model_provider 和 [model_providers.*] 必须保存在用户级 config.toml 中。
项目内的 .codex/config.toml 不能覆盖模型供应商配置,但可以覆盖 model 等普通设置。
error sending request for url
error sending request for url (...)
通常是本地网络或代理连接异常:
- 检查 Codex 配置目录里有没有
.env文件,里面是否覆盖了代理或接口相关的旧环境变量 - 完全退出 Codex CLI,关闭当前终端窗口
- 如果没有
.env,关闭再开启代理工具("开关魔法")- Windows 下确认代理工具的 TUN 模式已开启,否则浏览器能联网但终端不能
- 问题是突然出现的,换个可用节点或网络出口再试
- 重开终端启动 Codex CLI
提示
网页能访问但 CLI 报错时,优先确认终端进程是否实际走了代理,不要因此立刻换令牌。
如何设置全局或项目工作规则
Codex 会读 AGENTS.md 作为长期工作规则:
| 位置 | 作用范围 |
|---|---|
| Codex 配置目录 | 全局,对所有项目生效 |
| 项目根目录 | 只对当前项目生效,更靠近工作目录的规则优先级更高 |
CODEX_DIR="${CODEX_HOME:-$HOME/.codex}"
mkdir -p "$CODEX_DIR"
touch "$CODEX_DIR/AGENTS.md"
排错
| 现象 | 检查 |
|---|---|
| 重试 5 次 | 是否开启了路由模式 |
| 404 | base_url 少了 /v1 |
| 401 | auth.json 里的 key 不完整 |
| 某个项目模型不一致 | 项目内是否有 .codex/config.toml |
相关:Codex 配置 · ChatGPT 桌面版配置 · 常见问题总览