Codex Provider Sync CLI 实战教程3 条命令搞定 Codex 会话同步、切换与备份【免费下载链接】codex-provider-syncSynchronize Codex session provider metadata across rollout files and SQLite state.项目地址: https://gitcode.com/gh_mirrors/co/codex-provider-syncCodex Provider Sync 是一款开源本地同步工具负责把 Codex 会话文件与 SQLite 索引里的 Provider 元数据对齐到当前配置让切换 Provider 后的旧会话恢复可用。本文带你用status、sync、switch3 条命令完成检查、同步与切换并讲清自动备份与恢复的兜底机制。它解决什么问题切换 Provider 后旧会话文件与 SQLite 聊天索引里记录的仍是原来的 Provider元数据不一致会导致历史会话不可用。Codex Provider Sync 的作用就是把这份 Provider 信息对齐到当前配置——只改 Provider 元数据不碰聊天正文同步如何读写速度取决于什么原地写当 Provider 名称字节等长等条件满足时直接改写 Provider不生成整份会话副本流式替换其他情况更新首行后流式复制正文到新文件再替换原文件。两种方式自动选择无需调任何加速选项。速度主要取决于需更新的会话数量详细原理见 docs/WORKING_PRINCIPLE_ZH.md。准备工作一键安装 CLICLI 通过 npm 发布要求 Node.js16.20.2npm install -g dailin521/codex-provider-sync codex-provider help命令是否可用以安装版本的--help为准。完整 CLI 入口逻辑在 src/cli.js同步业务核心在 packages/core/src/application/provider-sync.js。第 1 条命令codex-provider status 只读检查codex-provider statusstatus是纯只读检查重点核对当前 Provider来自config.toml根级model_providerCodex Home / SQLite Home确认工具看到的是你想操作的那份数据Provider 分布会话文件数与索引行数不一定相等Provider 分布才是同步判断的主要依据。状态未完整读取时不能把命令退出 0 当作已同步。第 2 条命令codex-provider sync 同步到当前配置如果你已用 CCSwitch 等工具切好 Provider只需要codex-provider sync关键行为目标始终来自config.toml不修改配置不调整历史模型、目录或消息标记无实际写入时不产生备份noop有实际写入时先创建受管备份默认保留最近 2 份问题会话会被跳过并保留关联索引正常会话继续处理显示部分完成。写前会自动备份备份位于Codex Home/backups_state/provider-sync/同一 Home 的操作共用备份池。第 3 条命令codex-provider switch 切换 Provider希望由本工具直接切换 Provider 时codex-provider switch openai codex-provider switch my-provider --keep-root-model codex-provider switch my-provider --model model-name模型策略对根级model的影响不传模型选项目标 Provider 配置了model时采用该值否则保留当前根模型--keep-root-model保留当前根模型--model NAME设置为指定名称三种方式都先修改配置再执行同一个 ProviderSync不会修改历史会话记录的模型。自定义 Provider 需要预先配置不会由此命令创建。安全兜底恢复备份与清理codex-provider restore 备份目录 codex-provider sync --keep 2 codex-provider prune-backups --keep 2restore默认恢复备份实际包含的配置、索引和会话元数据--no-config、--no-db、--no-sessions可排除对应内容恢复依赖的受保护备份不会被强制裁剪prune-backups的0表示删除全部可清理备份不是关闭清理Restore 会先保存目标当前状态再用独立 journal 和补偿机制恢复不要用删除锁文件绕过未完成状态。一个核心三个入口Windows 桌面版、Local Web 和 CLI 使用同一套同步、切换、备份与恢复逻辑——选择入口只影响操作方式不影响同步结果设计决策见 docs/adr/0002-node-core-as-single-authority.md。想先预览影响再确认推荐桌面或 Web 界面Web 模式通过codex-provider web启动默认只监听127.0.0.1:8791打开浏览器完成配对即可。进阶技巧JSON 输出与退出码自动化脚本务必加--jsonstdout 只输出一个终态对象{schemaVersion, command, ok, outcome, result, warnings, error}codex-provider sync --json退出码含义0成功或无需修改1普通失败可能已回滚结合outcome判断2输入无效、计划过期或状态变化3部分完成查看失败阶段与重试建议4 / 5需要恢复处理 / 正忙或无法验证锁130已取消另外codex-provider watch可长期监听配置与 SQLite 状态事件自动调用同一 Sync默认防抖 750 msCtrlC 停止。常见问题速查Provider 未定义先修复配置Sync 不会擅自切回 OpenAI数据已变化 / 计划过期重新检查并运行命令不要重放旧 planId会话占用结束相关写入后再同步重试只处理未对齐的目标部分完成查看操作日志中跳过原因最多 200 项处理数据后重新预览即可纳入WSL 场景Windows 对 WSL 的 SQLite Home 只做诊断写入请进入 WSL 后运行 CLI不要从 Windows 直接操作 WSL SQLite。完整故障处理见 docs/README_CLI_ZH.md。参考资料CLI 指南docs/README_CLI_ZH.md精确 CLI 合同docs/architecture/contracts/CLI_CONTRACT_ZH.mdNode Core 架构与 Provider I/O 不变量docs/architecture/NODE_CORE_ARCHITECTURE_ZH.md工作原理与路径解析docs/WORKING_PRINCIPLE_ZH.md错误码说明docs/architecture/contracts/ERROR_CODES_ZH.md【免费下载链接】codex-provider-syncSynchronize Codex session provider metadata across rollout files and SQLite state.项目地址: https://gitcode.com/gh_mirrors/co/codex-provider-sync创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
