独立小工具,用来处理 Codex provider 切换时最容易出问题的两件事:
- 切换
config.toml中的 provider 配置 - 修复历史对话可见性
它会把下面这些事情串成一次操作:
- 备份
C:\Users\Andrew\.codex - 可选地改写
config.toml - 统一修复
sessions/archived_sessions中历史rollout的session_meta.payload.model_provider - 统一修复
state_5.sqlite中threads.model_provider
codex_switcher.py核心脚本。支持 dry run、备份、切 provider、修历史。run_codex_switcher.ps1PowerShell 启动入口。适合双击或命令行直接调用。run_codex_switcher.shmacOS / Linux 启动入口。适合终端直接调用。AI_INSTRUCTIONS.md给 AI 的固定操作指令模板。把这个文件给下一个 AI,它就能按统一流程做。config_examples.md常见 provider 配置示例。9router_codex_aliases.mdCodex App 裸模型名与 9Router combo/alias 对齐说明。sync_9router_codex_aliases.py一键镜像gpt-5.xcombo 或修复 ekti alias。
先彻底关闭 Codex,再执行。
powershell -ExecutionPolicy Bypass -File .\run_codex_switcher.ps1 -Provider 9router -Model gpt-5.5 -BaseUrl http://127.0.0.1:20128/v1 -WireApi responses -SubagentModel cc-normalbash ./run_codex_switcher.sh --provider 9router --model gpt-5.5 --base-url http://127.0.0.1:20128/v1 --wire-api responses --subagent-model cc-normalpowershell -ExecutionPolicy Bypass -File .\run_codex_switcher.ps1 -Provider 9router -Model gpt-5.5 -BaseUrl http://127.0.0.1:20128/v1 -WireApi responses -SubagentModel cc-normal -DryRunpowershell -ExecutionPolicy Bypass -File .\run_codex_switcher.ps1 -Provider ekti -Model gpt-5.5 -ReasoningEffort xhigh -DisableResponseStorage -BaseUrl https://chat.ekti.cc/v1 -WireApi responses -RequiresOpenAIAuthpowershell -ExecutionPolicy Bypass -File .\run_codex_switcher.ps1 -Provider 9router -RepairOnly先彻底关闭 Codex,再执行。
bash ./run_codex_switcher.sh --provider 9router --model gpt-5.5 --base-url http://127.0.0.1:20128/v1 --wire-api responses --subagent-model cc-normalbash ./run_codex_switcher.sh --provider 9router --model gpt-5.5 --base-url http://127.0.0.1:20128/v1 --wire-api responses --subagent-model cc-normal --dry-runbash ./run_codex_switcher.sh --provider ekti --model gpt-5.5 --reasoning-effort xhigh --disable-response-storage --base-url https://chat.ekti.cc/v1 --wire-api responses --requires-openai-authbash ./run_codex_switcher.sh --provider 9router --repair-onlyApp 选模型会直接改 config.toml 里的裸名(gpt-5.5)。配合 oa-first combo,聊天与 apply_patch 均可正常工作。详见 9router_codex_aliases.md。
# 查看 ~/.9router 里 combo / alias 状态
python3 sync_9router_codex_aliases.py --list
# 写入/同步 oa-first gpt-5.x combo
python3 sync_9router_codex_aliases.py --mirror-combos --dry-run
python3 sync_9router_codex_aliases.py --mirror-combos改默认链路:编辑 sync_9router_codex_aliases.py 里的 DEFAULT_CODEX_COMBO_CHAINS,再跑 --mirror-combos。
- 不依赖 git
- 不要求项目仓库
- 先备份,再改写
- dry run 和正式执行使用同一套逻辑
- 输出 JSON 摘要,方便人看,也方便 AI 读取