V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
爱意满满的作品展示区。
dongailin
V2EX  ›  分享创造

切换 provider 后 Codex 历史会话会“消失”?做了个同步工具

  •  
  •   dongailin · 2 天前 · 476 次点击
    如果你在官方 OpenAI 登录、relay 、自定义 provider 之间切过 Codex ,大概率遇到过这个问题:

    历史会话其实没丢,但切完 provider 之后,旧会话在 `resume` 或 Codex App 里会像“消失”了一样,有时候两个入口看到的还不一致。

    这个问题的根源是,Codex 的 provider 元数据不是只存一处,rollout 文件和 SQLite 里各有一份。只改其中一层,结果通常还是不一致。

    我做这个工具,就是专门解决这个坑:把历史会话的 provider 元数据统一到你当前正在使用的 provider ,让切回官方或者切到中转之后,旧会话重新可见。

    比较适合这几种情况:
    - 官方 OpenAI 和中转 / 自定义 provider 混用
    - 切 provider 之后旧会话看不到
    - CLI 和 App 里的会话列表不一致

    它会先做备份,再处理这两层元数据,所以不是单纯改某几个 jsonl 文件。

    仓库:
    https://github.com/Dailin521/codex-provider-sync

    目前优先 Windows ,Node.js 24+。
    CalledKingsley
        1
    CalledKingsley  
       2 天前
    vscode 里面装的插件的话,能实现吗? 比如 roo code 或者 kilo code 之类的
    dongailin
        2
    dongailin  
    OP
       2 天前
    我这边实际试了一下,VSCode 里的插件场景目前没复现这个问题,至少我测的时候是正常的。

    这个工具主要是针对 Codex 自己这套本地会话存储做的,问题点在 `.codex/sessions`、`.codex/archived_sessions` 和 `state_5.sqlite` 这两层 provider 元数据不一致。

    像 roo code / kilo code 这类插件,要看它们内部是不是也复用了同一套存储和过滤逻辑;这个我还没专门验证,所以暂时不敢直接下结论。
    关于   ·   帮助文档   ·   自助推广系统   ·   博客   ·   API   ·   FAQ   ·   Solana   ·   874 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 19ms · UTC 20:47 · PVG 04:47 · LAX 13:47 · JFK 16:47
    ♥ Do have faith in what you're doing.