问题中心
Codex 连不上:CLI、IDE 插件、云端任务分别怎么查
Codex CLI 登录失败、请求超时、stream 中断或返回 403?多数是终端未走代理或节点地区不受支持。本文给出报错对照表、各系统代理命令、连通性测试与 IDE 插件的处理方法。
简短回答
Codex CLI 在终端运行,默认不使用浏览器的代理,所以最常见的原因是终端直连被阻断。为终端设置 HTTPS_PROXY 指向本地代理端口(或开启 TUN 模式),并使用 OpenAI 支持地区的稳定节点,大部分连接问题都能解决。
快速步骤 · 5 步
- 01确认本地代理端口
在代理客户端设置中查看 HTTP 或混合端口,Clash 系客户端常见为 7890,以实际显示为准。
- 02为终端设置代理
macOS 与 Linux 用 export HTTPS_PROXY=http://127.0.0.1:7890,Windows PowerShell 用 $env:HTTPS_PROXY 设置相同地址,或直接开启 TUN 模式。
- 03测试 OpenAI 连通性
在同一终端执行 curl -I https://api.openai.com 和 curl -I https://chatgpt.com,确认能返回 HTTP 状态行。
- 04检查出口地区
通过代理查询出口 IP,确认不在中国大陆或香港等 OpenAI 不支持的地区。
- 05重新登录并运行 Codex
在同一终端重新执行 codex,必要时重新登录,浏览器授权时保持与终端相同的节点。
原因
Codex 连不上,十有八九是终端没走代理。浏览器开了代理,并不代表终端程序也会走代理;Codex CLI 是在终端里直接向 OpenAI 发请求的,没有配置时就是直连,结果就是超时、连接被重置或一直卡在登录。Codex CLI 通常会读取 HTTPS_PROXY 等标准代理环境变量,配好即可。其次要注意节点地区:截至 2026 年 10 月,中国大陆和香港都不在 OpenAI 支持范围内,用香港节点会直接收到地区相关的拒绝。
| 报错表现 | 常见原因 | 解决方法 |
|---|---|---|
请求超时、error sending request | 终端直连,没有经过代理 | 设置 HTTPS_PROXY 或开启 TUN 模式 |
连接被重置、stream disconnected 一类提示后反复重试 | 节点不稳定、丢包、晚高峰拥堵 | 换更稳定的节点,固定不切换 |
403,或 unsupported_country_region_territory | 出口地区不在支持范围 | 换美国、日本、新加坡等支持地区节点 |
407 Proxy Authentication Required | 代理需要认证 | 在代理地址中加入认证信息,或改用本地无认证端口 |
| 浏览器授权完成,终端仍未登录 | 浏览器与终端网络环境不一致,或本地回调被拦截 | 让两者走同一节点,关闭拦截 localhost 的软件 |
| 证书相关错误 | 公司网络对 HTTPS 做了检查 | 按公司要求配置根证书 |
解决步骤
-
确认本地代理端口。打开代理客户端设置,找到 HTTP 或混合端口。7890 是 Clash 系客户端常见的默认端口,Clash Verge Rev 新版本常为 7897,请以客户端实际显示为准。
-
为终端设置代理。macOS、Linux:
export HTTPS_PROXY=http://127.0.0.1:7890 export HTTP_PROXY=http://127.0.0.1:7890Windows PowerShell:
$env:HTTPS_PROXY="http://127.0.0.1:7890" $env:HTTP_PROXY="http://127.0.0.1:7890"不想处理环境变量,也可以在代理客户端里开启 TUN 模式,由系统层统一接管终端流量。
-
测试 OpenAI 连通性。在同一个终端执行:
curl -I https://api.openai.com curl -I https://chatgpt.com能返回 HTTP 状态行就说明网络已打通,具体状态码不重要;一直卡住或超时,说明代理仍未生效。
-
检查出口地区。执行
curl https://ipinfo.io/json查看country字段,确认不是CN或HK。节点选择可参考 Codex 使用什么节点。 -
重新登录并运行 Codex。在同一终端重新执行
codex。需要浏览器授权登录时,确保浏览器与终端走同一个节点,授权完成前不要切换节点。
怎么确认代理变量已经生效
设置之后,可以先查看当前终端里的代理变量,避免拼写错误或设置在了另一个窗口:
# macOS / Linux
env | grep -i proxy
# Windows PowerShell
Get-ChildItem Env: | Where-Object { $_.Name -like "*PROXY*" }
能看到 HTTPS_PROXY 且地址、端口正确,再执行上面的 curl 测试。如果变量存在但 curl 仍然超时,问题通常在代理客户端本身:客户端没有运行、端口不对,或当前选中的节点不可用。
提示
环境变量只对当前终端会话有效。要长期生效,可以写进 ~/.zshrc、~/.bashrc 或 PowerShell 配置文件。各种终端和工具的写法汇总见 终端代理设置。
注意
在远程服务器或 WSL 中运行 Codex 时,127.0.0.1 指向的是服务器或 WSL 自身,而不是你本机的代理客户端。需要在对应环境中单独配置代理,或让本机客户端允许局域网连接后填写本机的局域网地址。
还是不行?
- curl 测试正常,Codex 仍失败:确认 Codex 是在同一个终端窗口启动的
- 检查是否设置了
NO_PROXY,并且误把 openai.com 加了进去 - IDE 插件连不上:开启 TUN 模式,或从已设置代理的终端启动编辑器
- 查看 status.openai.com,排除官方服务故障
- 其他 AI 工具也同时异常:按 AI 工具无法访问排查清单 从节点和规则层面排查
Codex CLI 的完整代理配置(含 config.toml、WSL、远程服务器场景)见 Codex CLI 代理与网络配置。如果现有节点长时间运行容易中断,可以参考 Codex 稳定机场推荐 的线路选择标准。请遵守当地法律法规与 OpenAI 的使用条款。
常见问题
QCodex 用 ChatGPT 账号登录和用 API Key 登录,网络要求一样吗?
基本一样。两种方式都需要终端能访问 OpenAI 的服务,并且出口地区在 OpenAI 支持范围内。区别在于 ChatGPT 账号登录需要额外完成一次浏览器授权,浏览器和终端的网络环境应保持一致。
Q在 VS Code 里用 Codex 插件连不上,但终端里正常,为什么?
插件运行在编辑器进程中,不一定继承你在某个终端里设置的环境变量。可以开启代理客户端的 TUN 模式,或者先在已设置代理的终端里启动编辑器,让插件继承代理设置。
QCodex 云端任务也需要本地代理吗?
云端任务在 OpenAI 的服务器上执行,任务本身不依赖你的本地网络,但提交任务、查看结果的网页或客户端仍需要能稳定访问 OpenAI 服务。
Q代理设置正确,Codex 偶尔还是报连接中断,正常吗?
偶发中断后自动重试成功属于可接受范围。如果频繁出现,多半是节点丢包或晚高峰拥堵,建议换到线路更稳定的节点并固定使用。