Codex · 手动配置

v0.141.02026-06-18Apache-2.0GitHub
适用场景
不用 CC Switch,直接改 ~/.codex/config.toml 与 auth.json
面向读者
多供应商要手写 TOML;想用 Profile / 项目级覆盖
TL;DR
config.toml 写 model_providers 段 → auth.json 存 Key → 重启 codex

配置文件位置

范围路径
用户级(默认)~/.codex/config.toml
项目级(覆盖用户级)项目根目录 .codex/config.toml
Profile 切换$CODEX_HOME/<profile-name>.config.toml
鉴权~/.codex/auth.json

Windows 路径中 ~ = %USERPROFILE%CODEX_HOME 环境变量可改默认目录。


config.toml 最小模板

model_provider = "foropencode"
model = "gpt-5.5"
model_reasoning_effort = "medium"
disable_response_storage = true
 
[model_providers.foropencode]
name = "foropencode"
base_url = "https://foropencode.com/v1"
wire_api = "responses"
requires_openai_auth = true

auth.json

{
  "OPENAI_API_KEY": "sk-xxx"
}

文件存在但字段空 = Codex 启动时报 401。Codex 文档把这个文件叫 cli_auth_credentials_store,实际文件名是 auth.json


顶层字段

字段含义可选值
model_provider当前用哪个 provider ID必须对应下面 [model_providers.<id>]
model用哪个模型见上方模型表
model_reasoning_effort推理深度minimal / low / medium / high / xhigh
model_context_window上下文 token 数整数;具体值看供应商支持
model_auto_compact_token_limit自动压缩阈值整数,应小于上面
disable_response_storage关闭响应存储true 推荐
wire_apiAPI 协议在 provider 段里设

[model_providers.<id>]

[model_providers.foropencode]
name = "foropencode"
base_url = "https://foropencode.com/v1"
wire_api = "responses"
requires_openai_auth = true
字段含义
nameprovider 显示名
base_urlAPI 根地址(含 /v1
wire_apiresponses(默认)或 chat——见上方说明,不是 chat_completions
requires_openai_authtrue = 需要 OpenAI API Key

内置 provider ID:openai(默认)、ollamalmstudio。开源 / 本地模型走 oss_provider,取值 lmstudioollama


多 provider / 多分组

model_provider = "foropencode-codex"
 
[model_providers.foropencode-codex]
name = "foropencode (Codex 分组)"
base_url = "https://foropencode.com/v1"
wire_api = "responses"
requires_openai_auth = true
 
[model_providers.foropencode-image]
name = "foropencode (Image 分组)"
base_url = "https://foropencode.com/v1"
wire_api = "responses"
requires_openai_auth = true

切 provider 时改 model_provider 字段,重启 codex 即可。


Profile 切换(不改主 config)

CODEX_PROFILE=profile-a codex

Profile 文件放 $CODEX_HOME/<name>.config.toml,结构与 config.toml 一样。适合多账号 / 多分组场景。


1M 上下文

model_context_window = 1000000
model_auto_compact_token_limit = 900000

model_context_window 是 OpenAI 文档定义的字段,但具体写多少取决于供应商和模型支持。本站某些分组支持 1M,其它分组写了也没用。

model_auto_compact_token_limit 在接近上限前提前触发压缩,避免对话直接撞满。


CLI vs App 的差异

维度CLIApp
配置文件~/.codex/config.toml同一个文件
鉴权~/.codex/auth.json 或 OAuth
切 providermodel_provider + 重启终端App 内 UI 切,或同样改 config 重启 App
ProfileCODEX_PROFILE=<name>UI 不支持,要走 env

改完 config:

  • CLI:重启终端
  • App完全退出(菜单栏图标关一次,不只是关窗口),再启动

常见排查

现象检查
启动报 401auth.json 是否存在,Key 是否对
启动报 404base_url 是否带 /v1
请求报错 / 端点不支持网关只支持 Chat Completions?把 wire_api 改成 "chat"
推理慢model_reasoning_effort 调低
App 改 config 后不生效完全退出菜单栏图标,不是关窗口

相关