Skip to content

恢复聊天记录

切换了中转站,或在中转站和官方账号之间来回切换后,发现之前的聊天记录全"不见了"?

记录都在你本地,没有丢失。原因是 Codex 按 provider 名称隔离聊天历史,只要让 config.toml 里 3 个相关的值和之前保持一致,记录就会回来。

为什么记录会"消失"?

Codex 的聊天记录存在本地,按 provider 名称分组管理。切换配置后,你其实是在看另一组记录——原来那组还在,只是暂时"看不见"。

哪 3 个值必须一致?

打开 ~/.codex/config.toml,有 3 个地方用到 provider 名称,必须完全相同:

toml
# ① 顶层:指定当前使用哪个 provider
model_provider = "codexzh"

# ② section 标题
[model_providers.codexzh]

# ③ section 内的 name 字段
name = "codexzh"

三个值(这里都是 codexzh)必须相同,Codex 才能加载对应的历史。

怎么恢复?

第一步:打开 config.toml

bash
# macOS / Linux
open ~/.codex/config.toml
# 或用编辑器打开
code ~/.codex/config.toml

第二步:核对 3 个值是否一致

toml
model_provider = "这里"     # ①

[model_providers.这里]      # ②
name = "这里"               # ③

如果发现不一致(比如 ① 是 openai,② 和 ③ 还是 codexzh),把它们统一改成你之前用的那个值就行。

示例:恢复使用 CodexZH 中转时的记录

toml
model_provider = "codexzh"

[model_providers.codexzh]
name = "codexzh"
base_url = "https://api.codexzh.com/v1"
experimental_bearer_token = "sk-xxx"

第三步:重启 Codex

保存文件后,重启终端里的 codex 命令(或重启 Codex App / IDE 插件),聊天记录就会恢复显示。


想恢复官方账号下的记录?

使用 OpenAI 官方账号时,Codex 默认用 openai 作为 provider 名称。如果你之前用的是官方账号,想找回那时的记录,推荐使用官方账号 + 中转站并用的方式:

登录官方账号 + 使用中转站

这种方式让你用自己的 ChatGPT 账号登录,同时请求走中转站接口,好处是:

  • 官方账号的历史记录完整保留
  • 继续享有中转站的功能和稳定性
  • 不需要在"官方"和"中转"之间二选一

小结

  • 聊天记录不会因切换账号而删除,只是归到了不同的 provider 名称下
  • config.toml 里 3 个值必须完全一致,才能加载对应的历史
  • 两套记录可以长期并存,随时改配置切换