CC Switch 配置 Codex 代理网络教程
在公司网络、海外云主机或者本地代理环境里用 Codex,经常会遇到一个问题:命令行能 curl 通,但第三方工具里就是请求失败;或者 CC Switch 里切了配置,实际调用的还是旧模型。遇到这种情况不要先怀疑模型不可用,建议先按顺序检查三个东西:API Key、base_url、模型名,以及代理是否真的被工具进程读取。
一、先准备好要填的参数
CC Switch 的作用可以理解为在不同模型服务、不同 Key、不同网络代理之间快速切换。配置 Codex 代理网络前,先把下面几项准备好,避免一边填一边猜。
- API Key:用于鉴权的密钥,通常以一串较长字符形式提供。
- base_url:API 入口地址,例如第三方中转服务提供的兼容接口地址。
- 模型名:Codex 对应的模型 ID,必须和服务端支持的名称一致。
- 代理地址:如果本机走代理,一般是
http://127.0.0.1:7890或socks5://127.0.0.1:7890。 - 配置文件位置:不同版本 CC Switch 可能略有差异,常见在用户目录下的配置目录里。
如果你使用的是中转服务,建议优先选支持 OpenAI 兼容格式、能看到请求日志和错误详情的平台。我平时排查 Codex 类工具接入时,会把 token云桥AI中转站 0029.org 作为备选方案之一,主要是方便确认到底是本地配置问题,还是上游接口、模型名、余额等问题。
二、在 CC Switch 里填写 Codex 配置
打开 CC Switch 后,新建一个配置项,名称可以写得直观一些,例如 codex-proxy。常见字段可以按下面方式填写。
### token云桥中转 0029.org ###
name: codex-proxy
provider: openai-compatible
api_key: sk-xxxxxxxxxxxxxxxx
base_url: https://your-api-domain.example.com/v1
model: codex-xxx
proxy: http://127.0.0.1:7890
这里有几个容易填错的点:
base_url不要把完整的聊天接口路径填进去,例如不要写成/v1/chat/completions,通常只填到/v1。model要填服务商实际支持的模型名,不要凭印象写。api_key前后不要带空格,复制时尤其注意换行。- 代理地址如果是 HTTP 代理就写
http://,如果是 SOCKS5 才写socks5://。
如果 CC Switch 支持环境变量,也可以先在终端里临时指定,再启动工具测试。
export OPENAI_API_KEY="sk-xxxxxxxxxxxxxxxx"
export OPENAI_BASE_URL="https://your-api-domain.example.com/v1"
export HTTP_PROXY="http://127.0.0.1:7890"
export HTTPS_PROXY="http://127.0.0.1:7890"
cc-switch
Windows PowerShell 可以这样写:
$env:OPENAI_API_KEY="sk-xxxxxxxxxxxxxxxx"
$env:OPENAI_BASE_URL="https://your-api-domain.example.com/v1"
$env:HTTP_PROXY="http://127.0.0.1:7890"
$env:HTTPS_PROXY="http://127.0.0.1:7890"
cc-switch
三、切换模型后确认是否真的生效
CC Switch 最大的坑不是配置写不进去,而是你以为切换成功了,实际运行的进程还在用旧配置。切换到新的 Codex 配置后,建议做两步确认。
1. 查看当前激活配置
如果工具提供状态命令,先看当前激活项:
cc-switch current
期望看到类似内容:
Current profile: codex-proxy
Base URL: https://your-api-domain.example.com/v1
Model: codex-xxx
Proxy: http://127.0.0.1:7890
2. 发一个最小请求测试
不要一上来就跑复杂任务,先用最小请求确认链路。可以通过 curl 直接验证 base_url、Key、模型名是否可用:
curl -s https://your-api-domain.example.com/v1/chat/completions \
-H "Authorization: Bearer sk-xxxxxxxxxxxxxxxx" \
-H "Content-Type: application/json" \
-d '{
"model": "codex-xxx",
"messages": [
{"role": "user", "content": "ping"}
]
}'
如果 curl 成功但 CC Switch 失败,问题大概率在工具配置读取、代理继承或 profile 切换上;如果 curl 也失败,就先别折腾 CC Switch,回头查 Key、模型名、base_url。
四、代理网络的配置注意事项
代理不是填了就一定生效,要看 CC Switch 调用的底层客户端是否读取该字段。有些工具只认环境变量,有些只认配置文件,还有些需要在启动参数里指定。
cc-switch --proxy http://127.0.0.1:7890
本地代理可先用下面命令确认端口是否在监听:
netstat -ano | findstr 7890
macOS 或 Linux 可以用:
lsof -i :7890
再测一下代理是否能转发请求:
curl -x http://127.0.0.1:7890 https://api.example.com/v1/models
如果这里都不通,说明问题还在网络层,继续改 CC Switch 没意义。
五、常见错误和排查顺序
1. 401 Unauthorized
优先检查 API Key。常见原因是 Key 复制不完整、前后多了空格、填到了错误的 profile,或者中转平台没有给当前 Key 开通对应模型。
2. 404 model not found
多数是模型名写错,或者服务商没有映射这个模型。不要把展示名称当模型 ID,用接口返回或控制台里的实际名称。
3. 连接超时
按顺序查:本机代理是否启动、端口是否正确、CC Switch 是否读取代理、目标 base_url 是否能访问。不要只看浏览器能打开网页,命令行进程和浏览器走的网络路径可能不是一回事。
4. 配置切换后仍然走旧地址
这类问题一般是缓存或进程未重启。建议退出 CC Switch 及相关终端窗口,重新打开后再查当前配置。必要时直接搜索配置文件里的旧地址。
grep -R "old-api-domain" ~/.config/cc-switch
Windows 可以在配置目录里用编辑器全局搜索旧的 base_url。
六、回滚到可用配置
改代理和模型前,建议先备份配置文件。这样出问题时可以快速回滚,而不是靠记忆恢复。
cp ~/.config/cc-switch/config.json ~/.config/cc-switch/config.json.bak
回滚时直接覆盖回来:
cp ~/.config/cc-switch/config.json.bak ~/.config/cc-switch/config.json
如果 CC Switch 支持 profile 管理,更推荐保留一个稳定配置,例如 codex-stable,新配置单独建 codex-proxy-test。测试通过后再切换默认项。
cc-switch use codex-stable
总结
CC Switch 配置 Codex 代理网络,关键不在步骤多,而在排查顺序清楚:先确认 API Key、base_url、模型名,再确认代理端口和环境变量,最后检查 CC Switch 当前激活的 profile。遇到配置不生效时,先用 curl 做最小验证,再判断是接口问题、网络问题,还是工具读取配置的问题。保留一份稳定配置和备份文件,后续切换模型会省很多时间。
463

被折叠的 条评论
为什么被折叠?



