Codex app 官方/第三方 provider 切换会丢对话,给对话整回来会串真实provider,有无稳定方案?

各位佬,我最近折腾 Codex Desktop / CLI 的官方 OpenAI 和第三方 API 切换,遇到一堆问题,想请教有没有正确姿势。 我的目标很简单: 官方模式:走 ChatGPT / OpenAI OAuth 第三方模式:走 API Key + base_url 切换时:历史对话别丢,p...
Codex app 官方/第三方 provider 切换会丢对话,给对话整回来会串真实provider,有无稳定方案?
Codex app 官方/第三方 provider 切换会丢对话,给对话整回来会串真实provider,有无稳定方案?

各位佬,我最近折腾 Codex Desktop / CLI 的官方 OpenAI 和第三方 API 切换,遇到一堆问题,想请教有没有正确姿势。

我的目标很简单:

官方模式:走 ChatGPT / OpenAI OAuth
第三方模式:走 API Key + base_url
切换时:历史对话别丢,provider 别乱,工具别掉

目前遇到的问题:

  1. 切 provider 后,Codex 里的历史对话会消失
    切回原 provider 后,有些对话又能回来,感觉 session 可能和 model_provider / provider name / auth 状态绑定。

  2. 然后我搜了一下,通过给config文件加上对应对话的provider信息,但是启用的是另外的provider,那对话会回来,但对话继续发消息时,又会走对话原配置里的服务商

  3. 不确定旧对话到底是走旧 provider,还是走当前 config.toml 里的 provider。

  4. 我自己搞过一个小工具切 provider、同步/隔离记录
    但越搞越发现 .codex 里面 session、sqlite、rollout、provider、auth、cache 这些东西纠缠很深。

  5. 后来看到 CC Switch,以为能直接切 Codex provider
    但实测好像对 Codex Desktop 不生效,或者不完整。切完后 Desktop 还是像走官方,不确定是不是只对 CLI 有效。

  6. 又看到有人说可以搞本地路由中转
    思路是:

Codex -> localhost router -> 官方 OpenAI / 第三方 API

这样 Codex 只认一个本地地址,后端由 router 切。
但我不确定 Codex Desktop 的 OAuth、Responses API、streaming、tools 调用能不能这样稳定转发。

  1. 最后发现我本地 Codex 环境也乱了
    之前填过各种 OPENAI_BASE_URLOPENAI_API_KEY、第三方 key,可能污染了官方 provider。
    还遇到过子进程重连异常、Chrome 操控插件明明装了但工具掉、插件缓存缺 plugin.json 等问题。
    所以后面干脆把 Codex 配置全清了重装。

现在主要想请教:

  1. Codex Desktop 的 provider 优先级到底是什么?
    是 OAuth 优先,还是 config.toml / env / cache / session 优先?

  2. provider name 会不会影响历史对话显示?
    为啥切 provider 后对话会消失?

  3. 旧对话继续发消息时,到底走旧 provider,还是走当前全局 provider?

  4. CC Switch 能不能真正切 Codex Desktop?
    还是只对 CLI 比较有效?

  5. 官方 OAuth 和第三方 API,应该共用一个 .codex,还是分多个 CODEX_HOME 隔离?

  6. 本地 router 中转是不是更稳?
    有没有佬跑通过 Codex + LiteLLM / one-api / new-api / OpenRouter / 本地反代?

现在想着搞个本地中转似乎可以实现热切+不串provider,毕竟在codex的配置里,provider没变,这个思路看起来没啥问题,但是今天折腾到太晚,然后已经意识蘑菇了,我就先发一下,睡觉去了

站里可能已经有相关的问题解决方案了,但是我找了不少时间没找到,知道的佬可以指个路吗

8 个帖子 - 7 位参与者

阅读完整话题

来源: LinuxDo 最新话题查看原文