news 2026/9/26 13:43:27

Codex Provider Sync CLI 实战教程:3 条命令搞定 Codex 会话同步、切换与备份

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
Codex Provider Sync CLI 实战教程:3 条命令搞定 Codex 会话同步、切换与备份

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-sync

Codex Provider Sync 是一款开源本地同步工具,负责把 Codex 会话文件与 SQLite 索引里的 Provider 元数据对齐到当前配置,让切换 Provider 后的旧会话恢复可用。本文带你用status、sync、switch3 条命令完成检查、同步与切换,并讲清自动备份与恢复的兜底机制。

它解决什么问题?

切换 Provider 后,旧会话文件与 SQLite 聊天索引里记录的仍是原来的 Provider,元数据不一致会导致历史会话不可用。Codex Provider Sync 的作用就是把这份 Provider 信息对齐到当前配置——只改 Provider 元数据,不碰聊天正文:

同步如何读写,速度取决于什么

  • 原地写:当 Provider 名称字节等长等条件满足时,直接改写 Provider,不生成整份会话副本;
  • 流式替换:其他情况更新首行后流式复制正文到新文件再替换原文件。

两种方式自动选择,无需调任何加速选项。速度主要取决于需更新的会话数量,详细原理见 docs/WORKING_PRINCIPLE_ZH.md。

准备工作:一键安装 CLI

CLI 通过 npm 发布,要求 Node.js16.20.2+:

npm 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 status

status是纯只读检查,重点核对:

  • 当前 Provider:来自config.toml根级model_provider;
  • Codex 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 2
  • restore默认恢复备份实际包含的配置、索引和会话元数据,--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 输出与退出码

自动化脚本务必加--json,stdout 只输出一个终态对象{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 ms,Ctrl+C 停止)。

常见问题速查

  • 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.md
  • Node 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),仅供参考

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/9/26 13:43:16

HarmonyOS NDK多线程创建组件:原理、实践与性能优化

做HarmonyOS NDK开发的朋友&#xff0c;肯定对一件事深有体会&#xff1a;C侧的算法再猛、逻辑再快&#xff0c;只要碰到UI&#xff0c;一切工作基本都得回到主线程上排队。尤其是“创建组件”这个动作&#xff0c;在之前版本的API里限制得非常死——你只能在UI主线程创建节点、…

作者头像 李华
网站建设 2026/9/26 13:41:47

SAP系统压测实战:LoadRunner协议选型与瓶颈定位全指南

SAP系统跑得慢、月底结账卡死、大批量过账直接把生产机拖垮&#xff0c;这些事儿干过企业应用运维的人多少都遇到过。而要想在业务出问题之前把系统的真实承受能力摸清楚&#xff0c;压测就是绕不开的一道工序。我在给客户做SAP系统性能评估的时候&#xff0c;最常用的工具就是…

作者头像 李华
网站建设 2026/9/26 13:40:19

考虑直流电压动态的跟网型VSC正负序阻抗建模与扫频验证

做并网变流器稳定性分析&#xff0c;正负序阻抗建模是绕不开的一环。前几年做新能源场站次同步振荡复现时&#xff0c;我最头疼的就是&#xff1a;时域仿真里振荡现象清清楚楚&#xff0c;但手里没有一台能解释机理的解析模型。后来把跟网型&#xff08;GFL&#xff09;VSC的阻…

作者头像 李华
网站建设 2026/9/26 13:40:15

风储深度调峰优化调度:Matlab建模与求解实战

做电力系统仿真的朋友&#xff0c;估计都遇到过这种需求&#xff1a;导师或者领导丢来一句话&#xff0c;“风储深度调峰模型&#xff0c;你用 Matlab 给我跑一下&#xff0c;最好能出图”。风储深度调峰模型&#xff0c;说白了就是把风电和储能当作调节资源&#xff0c;参与电…

作者头像 李华
网站建设 2026/9/26 13:40:08

代运营排行榜的水有多深?一套筛选靠谱服务商的可落地方法

1. 代运营这个行业&#xff0c;为什么榜单越来越不靠谱做电商的朋友&#xff0c;尤其是品牌刚起步、店铺还没跑通的中小卖家&#xff0c;几乎都动过找代运营的念头。你打开任意一个搜索平台&#xff0c;输入"代运营"三个字&#xff0c;跳出来的全是各种"十大品牌…

作者头像 李华