快速答案
快速结论
找到本机真实的 HTTP 或 mixed 代理端口,将代理变量写入 Codex 用户级
.env,然后完全退出并重启 Codex。
连接反复重试,最后超时
这类问题的典型显示如下。如果你的情况与之一致,并且本机正在使用代理,可继续按本文排查。
Codex 连接状态 重试中
Reconnecting 5/5 request timed out
shell 能上网,不代表 Codex 连接也已正确代理
Codex 的响应传输存在 WebSocket 连接能力。某些本地代理设置只对 shell 中的普通 HTTP/HTTPS 请求生效,或者没有被 Codex Desktop 进程继承。连接路径没有完整经过代理时,就可能出现反复重连。
提示
适用边界: 这个方法针对“本地代理未被 Codex 完整使用”的场景,不代表所有 Reconnecting 都由代理引起。
配置 Codex 用户级 .env
步骤 1
查看代理端口
打开正在使用的代理工具,查看 HTTP 或 mixed 监听端口。下面使用的 7897 只是示例,必须换成你自己的端口。
步骤 2
找到 Codex 用户目录
CODEX_HOME 默认是 ~/.codex。在该目录中创建或更新 .env。如果文件已存在,先备份并保留其他原有配置。
步骤 3
写入代理变量
将下面的内容写入 .env,再把全部 7897 替换成真实的 HTTP 或 mixed 端口。
~/.codex/.env
wss_proxy=http://127.0.0.1:7897
https_proxy=http://127.0.0.1:7897
http_proxy=http://127.0.0.1:7897
all_proxy=http://127.0.0.1:7897
WSS_PROXY=http://127.0.0.1:7897
HTTPS_PROXY=http://127.0.0.1:7897
HTTP_PROXY=http://127.0.0.1:7897
ALL_PROXY=http://127.0.0.1:7897
如果你只有 SOCKS 端口,不要直接套用上面的 http:// 配置。
步骤 4
完全重启 Codex
Codex Desktop 需要完全退出应用后再打开;CLI 用户需要结束当前 Codex 进程并重新启动。
让 Codex 帮你检查和配置
不知道代理端口或配置路径时,可将这段话发给 Codex:
可直接复制的提示词
请只处理 Codex 用户级代理配置,不要修改项目文件或系统全局环境变量。
先通过只读检查定位本机正在使用的代理协议和 HTTP 或 mixed 端口,不要猜测端口。确认 CODEX_HOME;如果未设置,使用 ~/.codex。
检查 CODEX_HOME/.env 是否存在。如果存在,先备份并保留其他配置。准备添加或更新 wss_proxy、https_proxy、http_proxy、all_proxy 及它们的大写版本。
修改前先告诉我目标路径、检测到的协议和端口、将要写入的内容,等我确认。写入后检查格式和重复键,最后告诉我如何重启 Codex 并验证。
确认问题已解决
- 重启后新建对话,发送一个简短测试任务。
- 回答可以正常开始并完成。
- 不再连续显示 Reconnecting 1/5 到 5/5。
- 不再出现 request timed out。
如果仍然重连
检查代理软件是否正在运行、端口是否写错、HTTP 与 SOCKS 协议是否混用,并换一个网络进行对照。如果不使用代理也同样断线,则应继续排查 DNS、TLS 证书、登录状态或服务端异常。
FAQ
可以直接使用 7897 端口吗?
不可以盲目照抄。7897 只是示例,必须换成自己代理软件的真实 HTTP 或 mixed 端口。
这个方法能解决所有 Reconnecting 吗?
不能。它针对本地代理未被 Codex 完整使用的场景。其他网络、登录或服务异常需要分别排查。