一、问题背景
最近在 Windows 上使用 Codex 时遇到了一个问题:输入问题后,界面一直显示'正在思考',但是没有任何回答。
最开始以为是软件 Bug、API Key 问题或配置错误,后来发现其实是网络问题。
二、问题原因
Codex 需要访问 OpenAI API(https://api.openai.com)。但在国内网络环境下无法直接访问,必须通过代理访问。
三、排查过程
尝试了多种方法:
方法 1:开启 Windows 系统代理
设置 → 网络和 Internet → 代理。开启系统代理后,Codex 仍然无法联网。原因是很多 Electron / Node 应用不会读取 Windows 系统代理。
方法 2:修改 Codex 配置
在 C:\Users\用户名\.codex\config.toml 中加入 proxy = "http://127.0.0.1:1099",结果不生效。
方法 3:设置环境变量
尝试使用 HTTP_PROXY 和 HTTPS_PROXY 环境变量。
例如:
HTTP_PROXY=http://127.0.0.1:1099
HTTPS_PROXY=http://127.0.0.1:1099
这可以让 Codex 联网,但会导致国内软件(微信、QQ、浏览器等)也走代理,影响正常使用。
四、最终解决方案
使用环境变量配合一键脚本切换代理。 优点:
- AI 工具可以联网
- 国内软件不受影响
- 一键开启/关闭
- 简单稳定
五、脚本方案
编写了两个脚本:proxy-toggle.bat 和 proxy-check.bat。
六、脚本 1:一键开关代理
文件名:proxy-toggle.bat
@echo off
chcp 65001 >nul
if "%HTTP_PROXY%"=="" (
setx HTTP_PROXY http://127.0.0.1:1099 >nul
setx HTTPS_PROXY http://127.0.0.1:1099 >nul
color 0A
echo.
echo ==============================
echo 代理已开启
echo ==============================
echo.
echo 代理地址:http://127.0.0.1:1099
) else (
setx HTTP_PROXY "" >nul
setx HTTPS_PROXY "" >nul
color 0C
echo.
echo ==============================
echo 代理已关闭
echo ==============================
)
echo.
echo 请关闭并重新打开 Codex / Cursor / VSCode 等软件。
echo.
echo 请按任意键继续...
pause >nul
color 07

