Codex 切换 Provider 后恢复历史对话
·
Codex 切换 Provider 后丢失历史对话的修复方案
背景
Codex 的本地会话(Sessions)存储路径通常与 Provider 标识绑定。当从个人 Provider 切换到公司 Provider 后,插件会由于 Context 变更而无法读取旧路径下的数据,导致历史记录“消失”。
修复步骤
执行以下流程前,请确保已在 IDE 中完成 Provider 切换并关闭 IDE 进程。
- 安装同步工具
直接从 GitHub 安装codex-provider-sync脚本:npm install -g github:Dailin521/codex-provider-sync

- 环境检查
确认工具能识别到当前的 Provider 状态及本地 Session 路径:codex-provider status

- 执行数据对齐
将旧 Provider 的数据同步至当前活跃的 Provider 目录下:codex-provider sync

- 验证
重启 Codex,对话列表应已恢复。
技术实现分析
该工具本质上是对 ~/.codex/ 目录下相关持久化文件的映射处理,涉及的核心文件包括:
- Sessions 目录:
~/.codex/sessions与~/.codex/archived_sessions - 状态数据库:
state_5.sqlite(存储插件 UI 状态及会话索引)
边界说明
- 生效条件:仅适用于本地
.codex目录完整,但因 Provider ID 变更导致读取失效的场景。 - 数据安全:建议在
sync操作前执行cp -r ~/.codex ~/.codex_bak进行全量备份,避免 SQLite 文件在同步过程中发生写冲突。
更多推荐


所有评论(0)