Appearance
恢复聊天记录
切换了中转站,或在中转站和官方账号之间来回切换后,发现之前的聊天记录全"不见了"?
别担心,记录都在你本地,没有丢失。原因是 Codex 按 provider 的名称来隔离聊天历史,只要让 config.toml 里 3 个相关的值和之前保持一致,记录就会回来。
为什么记录会"消失"?
Codex 的聊天记录存放在本地,按 provider 名称分组管理。不同的名称对应不同的历史目录,切换后看起来"一片空白",其实只是在看另一组记录而已。
哪 3 个值?
打开 ~/.codex/config.toml,一共有 3 个地方用了这个名称,必须完全一致:
toml
# ① 顶层:指定当前使用哪个 provider
model_provider = "codexzh"
# ② section 标题:方括号里的键名
[model_providers.codexzh]
# ③ section 内的 name 字段
name = "codexzh"这三个位置的值(本例中都是 codexzh)必须相同,Codex 才能正确加载对应的聊天历史。
官方账号的默认值是什么?
使用 OpenAI 官方账号时,通常没有手动写这些配置,Codex 默认使用 openai 作为 provider 名称。所以如果要恢复官方账号下的记录,把 3 个值都改成 openai 即可。
怎么恢复?
第一步:打开 config.toml
bash
# macOS / Linux
open ~/.codex/config.toml
# 或者直接用编辑器打开
code ~/.codex/config.toml第二步:核对 3 个值是否一致
找到这 3 个位置,确认它们的值完全相同:
toml
model_provider = "这里" # ①
[model_providers.这里] # ②
name = "这里" # ③如果发现不一致(比如 ① 是 openai,但 ② 和 ③ 还是 codexzh),把它们统一改成你之前用的那个值就行。
示例:恢复用 CodexZH 中转时的记录
toml
model_provider = "codexzh"
[model_providers.codexzh]
name = "codexzh"
baseURL = "https://..."示例:恢复用官方账号时的记录
toml
model_provider = "openai"
[model_providers.openai]
name = "openai"第三步:重启 Codex
保存文件后,重启终端里的 codex 命令(或重启 Codex App / IDE 插件),聊天记录就会恢复显示。
小结
- 聊天记录不会因为切换账号而删除,只是被归到了另一个 provider 名称下
config.toml里 3 个值(model_provider、[model_providers.xxx]的键名、name)必须完全一致,才能加载对应的历史- 两套记录(中转 + 官方)可以长期并存,随时改配置切换