Dailin521/codex-provider-sync
Synchronize Codex session provider metadata across rollout files and SQLite state.
它解决了什么问题
当在 Codex 中切换 AI 提供商时,旧的聊天会话通常仍与之前的提供商相关联,导致它们无法使用或出现不一致。此工具可以将会话文件和 SQLite 聊天索引中的提供商信息对齐,以匹配当前配置,从而允许用户在更换提供商后恢复对聊天历史的访问。
工作原理
该工具从 config.toml 中读取当前的提供商,并更新会话文件和 SQLite 数据库中的提供商元数据。它使用两种主要的更新策略:
- 原地替换 (In-place replacement):如果提供商名称的字节长度相同,它将直接覆盖字节以保持文件标识和大小。
- 流式替换 (Streaming replacement):如果长度不同,它将更新第一行(元数据)并将剩余内容流式传输到临时文件,然后原子化地替换原始文件。
它为此过程提供了多种界面,包括 Windows 桌面应用 (Electron)、本地 Web UI 和 CLI。
适用人群
经常在不同 AI 提供商或账户之间切换并希望保持对历史聊天会话访问权限的 Codex 用户。
亮点
多界面支持:提供桌面应用程序、Web UI 和命令行界面。
自动备份:在修改数据之前自动创建备份,并支持恢复和清理。
高效编码:使用优化的 I/O 策略,在更新元数据时避免扫描完整的聊天正文。
会话管理:包括按项目浏览会话、诊断问题和执行针对性修复的工具。
相关
- 项目
- 项目