【解决方案】CODEX 中转站 API报错:exceeded retry limit, last status: 429 Too Many Requests
2026/9/18 16:17:34 网站建设 项目流程

【注】我之前在CODEX登录了自己openai账号,导致信息残留,导致codex无法正确调用中转站API,该方法可能适用于登陆过自己openai账号的人。

可以,把这次Codex 使用中转站出现429 Too Many Requests的最终解决流程整理成一套可复现步骤。以后换电脑也可以照这个做。

Codex 中转站 429 的解决流程

1. 先确认中转站本身正常

PowerShell 设置 API Key:

$env:OPENAI_API_KEY = "你的中转站API_KEY"

测试模型列表:

$headers = @{ Authorization = "Bearer $env:OPENAI_API_KEY" } (Invoke-RestMethod ` -Uri "https://api.openlux.ai/v1/models" ` -Headers $headers ` -Method Get).data.id

【注】这里的uri填自己中转站的

确认目标模型存在,例如:

gpt-5.6-sol

再直接测试 Responses API:

$headers = @{ Authorization = "Bearer $env:OPENAI_API_KEY" "Content-Type" = "application/json" } $body = @{ model = "gpt-5.6-sol" input = "hello" } | ConvertTo-Json Invoke-RestMethod ` -Uri "https://api.openlux.ai/v1/responses" ` -Headers $headers ` -Method Post ` -Body $body

能正常返回说明:

API Key ✓ 模型 ✓ /v1/responses ✓ 中转站 ✓

2. 不再使用原来的 Codex 状态目录

原来:

C:\Users\11951815\.codex

这个目录之前使用过 ChatGPT 登录,并包含历史认证、状态、插件、数据库等。

新建一个干净目录:

New-Item ` -ItemType Directory ` -Path "$env:USERPROFILE\.codex-openlux" ` -Force

3. 临时指定新的CODEX_HOME

$env:CODEX_HOME = "$env:USERPROFILE\.codex-openlux"

检查:

$env:CODEX_HOME

应该输出:

C:\Users\11951815\.codex-openlux

4. 设置中转站 API Key

当前 PowerShell:

$env:OPENAI_API_KEY = "你的中转站API_KEY"

检查:

$env:OPENAI_API_KEY

能显示 Key 即可。

不要把真实 API Key 发给别人或提交到 Git。


5. 创建新的config.toml

打开:

notepad "$env:CODEX_HOME\config.toml"

写入:

model_provider = "api111" model = "gpt-5.6-sol" model_reasoning_effort = "low" forced_login_method = "api" preferred_auth_method = "apikey" [model_providers.api111] name = "api111" base_url = "https://api.openlux.ai/v1" wire_api = "responses" env_key = "OPENAI_API_KEY" requires_openai_auth = false supports_websockets = false

【填写自己的配置】

其中最核心的是:

base_url = "https://api.openlux.ai/v1" wire_api = "responses" env_key = "OPENAI_API_KEY" requires_openai_auth = false

【填写自己的配置】


6. 不要登录 ChatGPT

检查:

codex login status

当前这种中转 API 配置下,我们验证成功时是:

Not logged in

不要再执行 ChatGPT 登录流程。


7. 用最小请求验证 Codex

执行:

codex exec --skip-git-repo-check "Reply with exactly: OK"

正常返回:

OK

说明链路已经打通:

Codex ↓ CODEX_HOME=.codex-openlux ↓ api111 ↓ OPENAI_API_KEY ↓ https://api.openlux.ai/v1 ↓ /responses ↓ gpt-5.6-sol

然后正常启动:

codex

输入:

hello

能回复即完成。


8. 永久保存两个环境变量

前面$env:...只对当前 PowerShell 窗口有效。

确认一切正常后,再永久设置:

[Environment]::SetEnvironmentVariable( "CODEX_HOME", "$env:USERPROFILE\.codex-openlux", "User" )

API Key:

[Environment]::SetEnvironmentVariable( "OPENAI_API_KEY", "你的中转站API_KEY", "User" )

然后关闭所有 PowerShell、Codex 和 VS Code 窗口,重新打开

验证:

$env:CODEX_HOME

应该是:

C:\Users\11951815\.codex-openlux

再测试:

codex exec --skip-git-repo-check "Reply with exactly: OK"

正常返回即可。

这次问题的核心

原来的情况是:

旧 .codex ├── 曾经 ChatGPT 登录 ├── 历史认证/状态 ├── 插件/MCP ├── Codex 本地数据库 └── 自定义中转配置 ↓ 429

我们最终没有删除旧目录,而是建立完全隔离的新环境:

.codex-openlux + OPENAI_API_KEY + 最小 config.toml ↓ api111 ↓ api.openlux.ai ↓ 成功

所以这次最关键的解决措施可以浓缩成一句话:

为中转站单独建立一个干净的CODEX_HOME,使用环境变量提供 API Key,并让自定义 provider 直接走/v1/responses,避免复用原先 ChatGPT 登录过的 Codex 状态目录。

需要专业的网站建设服务?

联系我们获取免费的网站建设咨询和方案报价,让我们帮助您实现业务目标

立即咨询