Windows GUI tool for switching Codex provider profiles and keeping local history usable across providers.
一个给 Codex 插件用的本地 Windows 工具。
核心目标:
- 一键切换多个中转商配置
- 不再拆成一堆字段,直接粘贴原始配置块
- 统一浏览本地历史
- 尽量把插件左侧历史归并到一起
每个商家配置只保留两个大框:
config.toml 上半部auth.json 内容
也就是说,你直接把这类内容整段粘进去。下面是脱敏示例,发布仓库时不要放真实商家名称、真实接口地址或真实密钥:
model_provider = "example-provider"
model = "gpt-5"
model_reasoning_effort = "high"
disable_response_storage = true
[model_providers.example-provider]
name = "example-provider"
base_url = "https://api.example.com/v1"
wire_api = "responses"
env_key = "EXAMPLE_API_KEY"{
"EXAMPLE_API_KEY": "REPLACE_WITH_YOUR_API_KEY"
}工具不会再逼你把 model、reasoning、base_url 拆成很多小输入框。
默认会自动定位当前 Windows 用户的 Codex 目录:
C:\Users\你的用户名\.codex
也就是等价于 ~/.codex。如果别人的 Windows 用户名不同,工具会自动用他自己的用户目录,不会写死到作者电脑。
切换时只做两件事:
- 把
~/.codex/config.toml的“上半部分”替换成你粘贴的配置块 - 把整个
~/.codex/auth.json替换成你粘贴的 JSON
会尽量保留 config.toml 下面这些尾部内容不动:
[projects.*][mcp_servers.*]- 其他不属于顶部 provider 配置块的内容
因为不同商家 auth.json 不一定一样,比如:
{
"OPENAI_API_KEY": "REPLACE_WITH_YOUR_API_KEY"
}或者:
{
"EXAMPLE_API_KEY": "REPLACE_WITH_YOUR_API_KEY"
}这个工具现在不再写死键名,直接按你粘贴的 auth.json 原样写回。
- 打开
dist/CodexApiSwitcher.exe - 左侧点
新增配置 - 给这个配置起个名字
- 在右侧第一个大框粘贴该商家的
config.toml顶部配置块 - 在右侧第二个大框粘贴该商家的完整
auth.json - 点
保存 - 以后切换时,左侧选中这个商家,点
启用
如果当前 .codex 已经是某个商家,可以先选中一个配置,再点 从当前读取。
这里可以:
- 直接扫
~/.codex/sessions - 直接扫
~/.codex/archived_sessions - 不管中转商/provider,统一列出来看
- 按关键词、目录、provider 过滤
- 导出某条会话为 Markdown
统一历史 页里有一个按钮:
归并到插件历史
它的作用不是新建历史,而是尽量把旧历史里这些维度统一:
model_providercwd
目标是尽量减少 Codex 插件左侧历史按不同中转商分裂。
- 先检查是否真的还有内容需要归并
- 如果已经归并过、没有新分裂内容,会直接提示:
No merge needed
- 这时不会再新建备份
只有检测到真有变更时,才会备份:
state_5.sqlitestate_5.sqlite-shmstate_5.sqlite-walsession_index.jsonlconfig.tomlauth.json- 将要改写的
sessions/*.jsonl - 将要改写的
archived_sessions/*.jsonl
备份目录:
~/.codex/vendor_switcher/merge_backups/latest
这个目录会覆盖上一次归并备份,避免频繁切换商家时备份无限增长。它不会进入 Codex 原生历史扫描目录,所以不会把左侧历史搞乱。
.\dist\CodexApiSwitcher.Cli.exe --show
.\dist\CodexApiSwitcher.Cli.exe --capture profile-1
.\dist\CodexApiSwitcher.Cli.exe --apply profile-3
.\dist\CodexApiSwitcher.Cli.exe --history
.\dist\CodexApiSwitcher.Cli.exe --merge-native-historyProgram.cs主程序源码build.ps1编译脚本dist/CodexApiSwitcher.exe构建后生成的 GUI 可执行文件,默认不提交到仓库dist/CodexApiSwitcher.Cli.exe构建后生成的 CLI 可执行文件,默认不提交到仓库
第一次使用时:
- 先把常用商家一个个新增进去
- 每个商家只粘贴两段原始配置
- 关掉 Codex 插件
- 点一次
归并到插件历史 - 重新打开 Codex 插件
以后就只需要:
- 左侧选中商家
- 点
启用