你一定遇到过这样的问题:本地codex(或cursor等Agent)在后台运行时需要挂着梯子,同时希望使用其他软件处理工作,如上知网检索文献、百度搜索网页,却无法自如切换代理的开关,导致只能等待后台Agent任务结束。类似的场景,对于需要来回切换科学上网的学术工作者来说屡见不鲜。
本文以网络既有方案为基础,探索基于代理端口配置的、为浏览器/软件单独设置代理的方法,从而解决上述问题。
前置:代理软件的端口配置(以v2rayN为例)
一般科学上网时,都在代理软件中直接开启系统代理,让所有软件一起走代理。要实现各个软件分别设置代理,可以配置代理端口,让某个软件单独配代理,其他软件不受影响。
以v2rayN为例,它默认启用两个本地端口。软件启动后,会在本机监听:
SOCKS5 代理:127.0.0.1:10808 # 本机10808端口
HTTP 代理:127.0.0.1:10809 # 本机10809端口任何支持设置代理的软件,把代理地址填成上面之一,它的流量就会被v2rayN代理。
其余代理软件的端口可能不一样,如clash默认为7890,一般都支持自己设置这个端口浏览器的代理端口配置
需下载浏览器的代理插件——SwitchyOmega(一般下载名称为Zero Omega的这一个)。下载后进行配置:
- 新增一个情景模式(命名为本地代理),填写本地代理软件的端口:代理协议
SOCKS5、代理服务器127.0.0.1(本地)、代理端口填上述的(v2rayN为10808) - 在auto switch中,可以配置不同域名的代理规则,如www.google.com选取上述情景模式、www.baidu.com选取直接连接
- 如下图:
- 选择直接连接时,不走代理直接访问(适用于国内网站)
- 选择系统代理时,若代理软件开启系统代理则发挥作用,否则无作用
- 选择上述新增的情景模式(本地代理)时,走代理软件(无论代理软件是否开启系统代理)
- 选择auto switch时,根据你配置的规则决定是否开启代理
Codex桌面端的代理端口配置
初步方法的讨论
Codex不提供内置的代理配置方法,并且桌面端已有方法讨论了以下的策略:
- 通过config.toml文件配置代理,实测无效
- 单独设置启动参数,需要下载软件或使用shell有点麻烦
- 代理软件开启TUN模式并单独针对进程开启隧道代理,过于麻烦
- 通过.env文件配置代理,也有讨论提到该方法无效,但实测可行(本章节暂采用的方法)
配置流程如下:
- 找到codex配置文件夹
C:\Users\用户名\.codex - 创建环境文件
.env,用记事本打开 修改其内容如下并保存:
HTTP_PROXY=http://127.0.0.1:10809 # HTTP代理端口 HTTPS_PROXY=http://127.0.0.1:10809 # HTTPS代理端口 ALL_PROXY=socks5h://127.0.0.1:10808 # SOCKS5代理端口 NO_PROXY=localhost,127.0.0.1,::1 # 不开启代理时无操作
该方法的原理:许多现代应用(特别是基于Electron或Node.js等框架构建的)会使用dotenv这类库,在启动时自动从项目根目录加载.env文件,并将其中的变量(如HTTP_PROXY)注入到应用的环境变量中。
终极方法
上述方法虽然能成功代理、正常对话,但会出现Codex打开速度缓慢、无法查看用量的问题。根据相关讨论,原因是:Codex的部分服务(如UI与后端核心进程的通信)会走本地回环(Localhost),如果一股脑全把流量送去代理服务器,会导致本地通信死循环或被代理软件拦截。
为解决此问题,提供完美的代理方案,需要引入Proxifier进行进程级的代理接管。总体架构如下图:
具体配置流程如下:
- 安装proxifier后,在代理服务器新增本地代理软件的端口
- 按下图所示,设置代理规则:
其中:
- ①:本地代理软件(如v2rayN)自动设置的规则,防止代理软件自身的流量被再次代理形成死循环,不需要改动
- ②:本地代理规则,即所有目标为localhost的本地内部通讯流量不代理,不需要改动
- ③:针对本地回环相关服务的Codex代理规则,指定目标为本地的codex相关进程(
Codex.exe;codex.exe;chatgpt.exe)不通过代理 - ④:一般Codex代理规则,指定其余codex相关进程通过代理(目标设置为上述步骤1.的本地代理软件端口)
- ⑤:默认规则,即所有流量直连不代理
该方法的原理:通过针对本地回环相关服务的Codex代理规则,让Codex目标为本地的通讯服务不被一同代理,而是正确通过本地直连。注意:针对本地回环相关服务的Codex代理规则,从优先级上确保其有效。



为防止机器人刷评,请输入验证码~
验证码可能加载较慢,请耐心等待 | 点击图片可刷新验证码