codex-provider-sync Vibe 项目

对齐 Codex 会话 Provider 元数据的同步工具

项目简介

切换 Codex 的 Provider(服务商)之后,旧会话文件与 SQLite 聊天索引里仍然记录着原来的 Provider,会话元数据不一致,旧对话可能无法继续。codex-provider-sync 就是专门做这件事的工具:把会话文件与索引中的 Provider 信息对齐到当前配置,并提供切换、备份与恢复能力。它有三个入口——Windows 桌面版、本地 Web 与命令行,三者共用同一套核心逻辑。

核心功能

  • 预览后同步:先“预览同步”查看影响范围,确认无误再“直接同步”,也可开启自动同步;
  • Provider 切换:可在工具内直接选择目标 Provider,更新配置的同时把历史 Provider 一并同步;
  • 备份与恢复:修改前自动备份,默认保留最近 2 份,支持恢复、清理,受保护备份不受数量限制;
  • 聊天与日志:按项目浏览会话,查看每步操作的结果与耗时,异常会话会被跳过并保留索引;
  • 存储与修复:可自定义数据位置,提供状态诊断与专项修复,CLI 有 JSON 退出码供脚本判断;
  • 三个入口同一内核:桌面版日常双击使用,本地 Web 监听 127.0.0.1:8791 浏览器配对操作,CLI 适合脚本与 WSL。

技术实现

同步过程只解析每个会话文件的首行元数据,绝不触碰聊天正文。写入分两种策略并自动选择:当满足原地写条件(例如 Provider 字符串字节等长)时,直接改写首行,不生成副本;其他有效首行则更新首行后把正文流式复制到新文件,再原子替换原文件。SQLite 聊天索引中的 Provider 字段同步对齐,登录文件 auth.json、历史模型与会话排序时间既不读取也不修改。内核内置计划校验、并发控制、进度与取消、写前校验与时间戳恢复;CLI 写命令直接执行,状态查询与同步分离。分发上,桌面版是 Windows x64 的安装版与便携 ZIP(未签名,便携版需完整解压),CLI 与本地 Web 通过 npm 包 @dailin521/codex-provider-sync 发布,要求 Node.js 16.20.2 及以上,源码开发使用 Node 24 并带架构检查与测试。

快速上手

  1. 打开“概览”,确认当前 Provider、存储路径与同步状态;
  2. 若已用 CCSwitch 等工具切换过 Provider,点“预览同步”查看影响,再点“直接同步”立即执行;
  3. 想在本工具内切换:选择目标 Provider,工具会更新配置并同步历史 Provider(不改历史模型);
  4. 命令行方式:npm install -g @dailin521/codex-provider-sync,先跑 codex-provider status,再跑 codex-provider sync;本地 Web 版用 codex-provider web;
  5. 出问题进入“备份 / 恢复”回滚,CLI 可用 codex-provider restore 。

适用人群

在多个 Codex 服务商或账号之间频繁切换的开发者;用 CCSwitch 等工具管理 Provider、需要让旧会话重新可用的人;希望用脚本批量维护会话一致性的重度用户;需要中文界面与多语言文档的国内开发者。

开源与链接

仓库地址 github.com/Dailin521/codex-provider-sync,MIT 许可;npm 包 @dailin521/codex-provider-sync 提供 CLI 与本地 Web;文档含中文、English、日本語、한국어四语版本,反馈与问题走 GitHub Issues。

团队信息

由 AI 猎手自动发现

评论与建议

0 条评论