• 请不要在回答技术问题时复制粘贴 AI 生成的内容
pmer
V2EX  ›  程序员

Codex 一键切换工具: GPT 额度用完 DeepSeek/Kimi 顶班,老对话双向无缝续聊

  •  
  •   pmer ·
    aipmer · 3 days ago · 1101 views

    背景:ChatGPT 会员额度一用完,Codex 就得切到第三方 API 顶班,但现有方案两个痛点一直没解决好——

    1. CC Switch 点「启用」实际不写 Codex 配置( v3.19.2 和 v3.20.1 都实测过,接管模式也不写),切换是假切换
    2. 切了供应商,老对话就续不上:跨供应商 resume 会被 API 拒绝

    折腾了一阵把两个问题都解决了,开源出来:codex-switch

    核心是一个 bash 脚本,双击或一行命令在 OpenAI 官方 / DeepSeek / Kimi Code 三向切换。重点是两个实测出来的坑都内置处理了:

    • codex 续聊时的 pre-sampling compact 钉死用会话元数据里记录的模型名(跟你当前配置无关),跨供应商 resume 必报 invalid_request_error → 脚本切换时批量改写历史会话的模型名

    • DeepSeek 直连 /responses 产生的 reasoning 项带 content 数组和本地 Fernet 加密的 encrypted_content ,官方 API 会报 array_above_max_length / invalid_encrypted_content → 切回官方时递归剥离

    所有改写前自动留备份。Kimi 需要走官方文档的本地 codeproxy 路由( tool_search 兼容问题),README 里有完整配置方法。

    实测环境:Codex 0.153.4 + CC Switch 3.20.1 + macOS 。中英双语 README ,MIT 。

    4 replies    2026-09-11 14:45:39 +08:00
    guozhuang
        1
    guozhuang  
       3 days ago
    厉害厉害
    pmer
        2
    pmer  
    OP
       1 day ago
    pmer
        3
    pmer  
    OP
       1 day ago
    来更新一下进展,发布了 v1.1.0:

    修了一个比较隐蔽的问题:Codex GUI 其实不直接读会话的 jsonl 文件,而是读 thread_history_1.sqlite 里按字节偏移建的投影缓存。脚本原地改写文件后偏移会失效,导致 GUI 里对话"停在旧时间"。现在脚本改写完会自动失效对应线程的投影,重启后自动重建。

    官方模式续聊第三方创建的对话,实际会撞上官方 API 的四层校验( reasoning content 数组、本地加密的 encrypted_content 、工具调用的 tool_ 前缀 id 、reasoning 的 rs_ id ),之前只处理了前两层,这次补齐后两层,实测 DeepSeek 血统的长会话也能正常续上。

    补了 Kimi 的 schema 垫片,修复 MCP 工具定义被 Kimi 校验器拒绝的问题。另外加了中英文更新日志( CHANGELOG ),排查过程整理在 issue #1 里,遇到同样报错的可以直接对照。
    pmer
        4
    pmer  
    OP
       9h 31m ago
    再更新一版,v1.2.0:解决了第三方模式下 Codex 浏览器控制的问题。
    背景:Codex 的内嵌浏览器 / Computer Use 是 OpenAI 云端服务,切到第三方( DeepSeek/Kimi )后必然报 Codex auth token is unavailable ,配置救不回来。
    做法:桥接 Kimi 官方的 WebBridge 浏览器插件(本地守护进程),让 Codex 在第三方模式下也能操作本机真实浏览器,而且自带浏览器里的登录态。提供两种方式:
    Codex Skill (推荐):一个 SKILL.md ,教 Codex 用 curl 调 WebBridge 的 HTTP 接口,navigate / snapshot / click / fill / evaluate 都支持,已实测全链路跑通。
    MCP 桥接(备用):一个 100 行的 Python stdio server 把 WebBridge 包装成 MCP 工具。顺带踩了个坑:Codex 0.153.4 把 tool_search_always_defer_mcp_tools 标记 removed 并硬编码为 true ,MCP 工具默认藏在 tool_search 后面,exec 模式下模型根本看不到——所以这个只作备用,主路径走 skill 。
    适合需要在第三方模式下让 Codex 操作需登录网站(改后台配置、提交表单、抓数据)的场景。README 有完整接入说明,欢迎试用反馈。
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Privacy   ·   Solana   ·   1670 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 31ms · UTC 16:17 · PVG 00:17 · LAX 09:17 · JFK 12:17
    ♥ Do have faith in what you're doing.