Repository navigation
v0.2.3
更新内容
- 新增 SQLite
has_user_event修复:当 Codex 错误标记用户事件字段时,交互式历史会话仍可重新显示。 - 新增 Windows cwd 规范化修复:把 SQLite thread 行里的 verbatim 路径(例如
\\?\D:\...)转换回 Codex Desktop 可识别的普通路径(例如D:\...)。 - 新增项目根目录修复:会根据现有 thread cwd 元数据,修复
.codex-global-state.json及其备份文件中的 workspace / project root 记录,让之前保存过的项目重新可见。 status和 GUI 输出新增项目可见性诊断:包括每个项目的交互式 thread 数量、首页可见性、全局排序、cwd 精确匹配、verbatim cwd 行以及 provider 分布。- 备份和恢复范围扩展:现在会同时处理 Codex global state 文件,以及原有的 config、SQLite、rollout metadata。
- 同步结果报告更完整:会明确展示用户事件修复、cwd 修复和 workspace root 修复数量。
- 移除了实验性的 history promotion workaround;本版本不会再为了绕过 Desktop bug 而改动对话排序。
推荐使用方式
普通 Windows 用户建议直接下载并运行本页附件里的 CodexProviderSync.exe:
- 打开
CodexProviderSync.exe - 点击
Refresh查看当前 provider、rollout files、SQLite 和项目可见性状态 - 选择目标 Provider
- 如果需要同时改
config.toml根级model_provider,勾选右侧复选框 - 点击
Execute
如果你已经通过其它工具切好了 provider,只想让旧历史会话重新可见,可以运行:
codex-provider sync如果你想一并切换 provider 并同步历史,可以运行:
codex-provider switch <provider-id>注意事项
- 本工具只修复 Codex 历史会话可见性相关元数据,不处理登录、认证或
auth.json。 - 每次同步或切换前都会自动创建备份,备份位于
~/.codex/backups_state/provider-sync/<timestamp>。 - 如果提示
state_5.sqlite正在被占用,请先关闭 Codex、Codex App 和 app-server,然后重新执行同一个操作。 - 如果有 rollout 文件因活跃会话被锁定而跳过,同步通常仍然是大部分成功的;等该会话结束后再运行一次
codex-provider sync即可补齐。 - 如果历史会话包含
encrypted_content,跨 provider/account 后可能只能恢复可见性,继续对话或 compact 仍可能报invalid_encrypted_content;这类密文不能由本工具重新加密。
验证
npm test- 36 passeddotnet test desktop\CodexProviderSync.Core.Tests\CodexProviderSync.Core.Tests.csproj- 30 passedpowershell.exe -NoProfile -ExecutionPolicy Bypass -File scripts\publish-gui.ps1