GoForum🌐 V2EX

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

dongailin · 2026-03-19 17:32 · 0 次点赞 · 1 条回复

如果你在官方 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+。

1 条回复
dongailin · 2026-03-19 17:32
#1

我这边实际试了一下,VSCode 里的插件场景目前没复现这个问题,至少我测的时候是正常的。

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

像 roo code / kilo code 这类插件,要看它们内部是不是也复用了同一套存储和过滤逻辑;这个我还没专门验证,所以暂时不敢直接下结论。

添加回复
你还需要 登录 后发表回复

登录后可发帖和回复

登录 注册
主题信息
作者: dongailin
发布: 2026-03-19
点赞: 0
回复: 0