ApexAPI 配置 Codex App 注入说明

本文档用于说明如何把 ApexAPI 网页端提供的 Codex CLI 配置同步到本机 Codex App / Codex CLI,让 App 注入和网页端配置保持一致。

重点:需要修改 Codex 配置目录下的两个文件:config.tomlauth.json

配置截图

在这里插入图片描述

上图对应 ApexAPI 网页端的 Codex CLI 配置页。Markdown 中已引用图片文件 apexapi-codex-cli-config.png,建议和本文档放在同一目录。

文件路径

macOS / Linux:

~/.codex/config.toml
~/.codex/auth.json

Windows:

%USERPROFILE%\.codex\config.toml
%USERPROFILE%\.codex\auth.json

其中 %USERPROFILE% 会自动指向当前登录用户的用户目录。

例如本文档所在电脑的 Windows 用户名是 hh,所以当前这台机器对应路径是:

C:\Users\hh\.codex\config.toml
C:\Users\hh\.codex\auth.json

如果你的 Windows 用户名不是 hh,不要照抄 C:\Users\hh,需要改成自己本机的用户名。例如用户名是 zhangsan,路径就是:

C:\Users\zhangsan\.codex\config.toml
C:\Users\zhangsan\.codex\auth.json

第一步:修改 config.toml

打开:

C:\Users\hh\.codex\config.toml

把下面这段配置放到 config.toml 文件开头,保持和 ApexAPI 网页端一致:

model_provider = "OpenAI"
model = "gpt-5.4"
review_model = "gpt-5.4"
model_reasoning_effort = "xhigh"
disable_response_storage = true
network_access = "enabled"
windows_wsl_setup_acknowledged = true
model_context_window = 1000000
model_auto_compact_token_limit = 900000

[model_providers.OpenAI]
name = "OpenAI"
base_url = "https://apexapi.roixw.com"
wire_api = "responses"
requires_openai_auth = true

关键要求

model_provider 必须和下面的 provider 表名一致:

model_provider = "OpenAI"

[model_providers.OpenAI]
name = "OpenAI"

不要写成下面这种前后不一致的形式:

model_provider = "OpenAI"

[model_providers.apexapi]
name = "apexapi"

也不要写成:

model_provider = "apexapi"

[model_providers.OpenAI]
name = "OpenAI"

如果 provider 名称不一致,Codex App 可能找不到正确的 provider,表现出来就像模型、接口或 key 对不上。

第二步:修改 auth.json

打开:

C:\Users\hh\.codex\auth.json

写入下面格式:

{
  "OPENAI_API_KEY": "sk-替换成你的ApexAPI-Key"
}

注意事项:

  • OPENAI_API_KEY 这个字段名不要改。
  • key 只填写 ApexAPI 后台提供的 sk-...,不要加 Bearer 前缀。
  • JSON 里只能使用英文双引号。
  • JSON 最后一项后面不要加逗号。
  • 不要把真实 key 发给别人,也不要提交到 Git 仓库。

为什么 ApexAPI 也使用 OPENAI_API_KEY

虽然实际请求地址是 ApexAPI:

base_url = "https://apexapi.域名.com"

但配置中有:

requires_openai_auth = true

这表示 Codex 会按 OpenAI 兼容方式读取认证信息,也就是从 auth.json 里的 OPENAI_API_KEY 取 key,然后请求 ApexAPI 的兼容接口。

所以这里不是填写 APEXAPI_KEY,也不是填写 API_KEY,而是固定使用:

"OPENAI_API_KEY": "sk-..."

App 注入时的检查顺序

配置完成后,建议按下面顺序检查:

  1. 确认 config.toml 开头存在 ApexAPI 网页端给出的配置。
  2. 确认 model_provider[model_providers.OpenAI] 名称完全一致。
  3. 确认 base_urlhttps://apexapi.roixw.com
  4. 确认 wire_apiresponses
  5. 确认 auth.json 中只有正确的 OPENAI_API_KEY
  6. 重启 Codex App,让 App 重新读取配置文件。

常见问题

1. 为什么提示 key 对不上

常见原因如下:

  • auth.json 里的 key 不是 ApexAPI 后台生成的 key。
  • key 前面多写了 Bearer
  • auth.json 不是合法 JSON,例如用了中文引号或多了尾逗号。
  • config.toml 里的 model_provider[model_providers.xxx] 名称不一致。
  • 本机有多个 Codex 配置目录,App 读取的不是你刚修改的那个目录。
  • ApexAPI 网页端配置已经更新,但本机文件还是旧配置。
  • ApexAPI 后台 key 已失效、余额不足、权限不足或模型未开通。

2. 为什么用 OpenAI 这个名字

ApexAPI 提供的是 OpenAI 兼容接口。网页端示例使用:

model_provider = "OpenAI"

[model_providers.OpenAI]
name = "OpenAI"

为了和网页端保持一致,建议本机也直接使用 OpenAI 这个 provider 名。这样 App 注入、CLI 配置和网页端示例最不容易出现差异。

3. 能不能把 provider 名改成 apexapi

可以,但必须全局一致。例如:

model_provider = "apexapi"

[model_providers.apexapi]
name = "apexapi"
base_url = "https://apexapi.roixw.com"
wire_api = "responses"
requires_openai_auth = true

不过如果目标是“跟网页端保持一致”,建议不要改名,直接使用网页端给出的 OpenAI

4. 503 Service Unavailable 是不是 key 错

不一定。

503 Service Unavailable 通常表示 ApexAPI 服务端、上游模型接口或中转服务临时不可用。key 错误更常见的是 401 Unauthorized403 Forbidden 或带有认证失败信息的错误。

如果配置确认无误但仍然出现 503,可以等待几分钟后重试,或者把报错里的 request idcf-ray 发给 ApexAPI 服务方排查。

最终推荐配置

config.toml 推荐保持:

model_provider = "OpenAI"
model = "gpt-5.4"
review_model = "gpt-5.4"
model_reasoning_effort = "xhigh"
disable_response_storage = true
network_access = "enabled"
windows_wsl_setup_acknowledged = true
model_context_window = 1000000
model_auto_compact_token_limit = 900000

[model_providers.OpenAI]
name = "OpenAI"
base_url = "https://apexapi.roixw.com"
wire_api = "responses"
requires_openai_auth = true

auth.json 推荐保持:

{
  "OPENAI_API_KEY": "sk-替换成你的ApexAPI-Key"
}

修改完成后重启 Codex App,再重新发起一次请求验证。

Logo

欢迎加入DeepSeek 技术社区。在这里,你可以找到志同道合的朋友,共同探索AI技术的奥秘。

更多推荐