Switch between OpenAI Codex CLI provider configurations (official OpenAI provider, third-party relays, multiple API keys). CLI + Alfred workflow.
Project description
codex-safe-switch
中文 | English
在官方 ChatGPT、第三方 relay、多组 API key 之间切换 Codex CLI 配置。
30 秒上手
uv tool install codex-safe-switch
codex-safe-switch
第一次运行会导入你当前的 ~/.codex/config.toml。
之后常用的就三个命令:
codex-safe-switch ls # 看已有 profiles
codex-safe-switch use myrelay # 切到 relay / 自定义 provider
codex-safe-switch official # 切回官方 ChatGPT
保存一个新 profile
先把 Codex 手动配置到能用的状态。比如你已经配好了某个 relay,并确认 codex 能跑。
然后保存:
codex-safe-switch save myrelay
以后就可以这样切回去:
codex-safe-switch use myrelay
第一次用时会怎样
| 你现在的状态 | 会发生什么 |
|---|---|
| 正在用官方 ChatGPT | 自动保存成 official |
| 正在用 relay / 自定义 provider | 自动保存成当前 provider 名 |
| 登录过 ChatGPT,但当前正在用 relay | 先保存当前 relay;以后跑 codex-safe-switch official 回官方 |
还没有 ~/.codex/config.toml |
提示你先配置一次 Codex |
codex-safe-switch official 不需要提前存在 official profile。缺少时会自动创建默认官方配置再切换。
它不会碰登录信息
这个工具只切换 provider 配置。
它不会保存、复制或覆盖:
~/.codex/auth.json- ChatGPT 登录 token
- API key 文件
- trusted projects、插件、MCP、TUI 偏好
如果你切到官方后还没登录过 ChatGPT,Codex 会自己提示你登录。
历史会话不见了
通常不是历史丢了,只是历史记录里的 provider 跟当前 provider 对不上。
先看状态:
codex-safe-switch doctor-history
然后切到你想用的 profile,工具会自动对齐历史:
codex-safe-switch use myrelay
# 或
codex-safe-switch official
更多命令
codex-safe-switch 交互选择 profile
codex-safe-switch ls 列出 profiles
codex-safe-switch current 显示当前 profile
codex-safe-switch use <name> 切到指定 profile
codex-safe-switch official 切回官方 ChatGPT
codex-safe-switch save <name> 保存当前 provider 配置
codex-safe-switch show <name> 查看 profile 内容
codex-safe-switch rm <name> 删除 profile
codex-safe-switch restart-codex
重启 Codex app/server 进程
codex-safe-switch merge-history --dry-run
预览历史修复
codex-safe-switch merge-history
修复历史 metadata
use 和 official 可以加 --restart-codex:
codex-safe-switch use myrelay --restart-codex
Alfred
安装后双击 alfred/codex-safe-switch.alfredworkflow 导入,关键词是 cx。
如果 Alfred 找不到命令,先看安装位置:
uv tool dir --bin
然后把 workflow 里的命令路径改成对应的 codex-safe-switch。
文件位置和环境变量
Profiles 默认放在:
~/.codex/profiles/
├── .active
├── .official/
│ └── provider.toml
└── myrelay/
└── provider.toml
环境变量:
| 变量 | 默认值 | 用途 |
|---|---|---|
CODEX_PROFILE_ROOT |
~/.codex/profiles |
profile 存放位置 |
CODEX_HOME |
~/.codex |
Codex 配置目录 |
relay profile 示例见 examples/relay-profile/provider.toml。
License
MIT
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file codex_safe_switch-1.0.4.tar.gz.
File metadata
- Download URL: codex_safe_switch-1.0.4.tar.gz
- Upload date:
- Size: 158.7 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
c6e0c30be0ee63bba334439e68dab771885c8ecbc2b27e88737b3c59c5bbad52
|
|
| MD5 |
3b57e983a80d43d3400e2e508ef21e85
|
|
| BLAKE2b-256 |
c9b66366b2f840bd84871acb0f4a1feccdb860a52fec2949de5adc6836d17134
|
File details
Details for the file codex_safe_switch-1.0.4-py3-none-any.whl.
File metadata
- Download URL: codex_safe_switch-1.0.4-py3-none-any.whl
- Upload date:
- Size: 21.4 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
36adc97501b8c60af6e7557d3c30993cacd2468625c703fc9b83a776ddc8e4cd
|
|
| MD5 |
c2543b9d21d7d817532858763b9ef7e5
|
|
| BLAKE2b-256 |
a11bcc51d4b6b898911b9d80cb344e945f2321a32fb8435c6a65be1c43982dbd
|