Dailin521/codex-provider-sync

Synchronize Codex session provider metadata across rollout files and SQLite state.

What it solves

當在 Codex 中切換 AI 提供者時,舊的聊天會話通常仍與之前的提供者連結,導致它們無法使用或出現不一致。此工具會對齊會話文件和 SQLite 聊天索引中的提供者資訊,使其與當前配置進行匹配,從而允許用戶在更換提供者後恢復對其聊天記錄的訪問權限。

How it works

該工具會從 config.toml 讀取當前提供者,並更新會話文件和 SQLite 資料庫中的提供者元數據。它使用兩種主要的更新策略:

  • In-place replacement: 如果提供者名稱的位元組長度(byte length)相同,它會直接覆寫位元組,以維持文件身份和大小。
  • Streaming replacement: 如果長度不同,它會更新第一行(元數據)並將剩餘的內容流式傳輸到一個臨時文件,然後原子性地替換原文件。

它為此過程提供了多種介面,包括 Windows 桌面應用程式 (Electron)、本地 Web UI 和 CLI。

Who it’s for

Codex 的用戶,他們頻繁地在不同的 AI 提供者或帳號之間切換,並希望維持對其歷史聊天會話的訪問權限。

Highlights

  • Multi-interface support: 提供桌面應用程式、Web UI 和命令列介面。

  • Automatic Backups: 在修改數據之前會自動創建備份,並支持對齊與清理。

  • Coded for Efficiency: 使用優化的 I/O 策略來避免在更新元數據時掃描完整的聊天內容。

  • Session Management: 提供工具來按專案瀏覽會話,診斷問題並執行針對性的修復。

相關

  • 專案
  • 專案