一、问题背景
之前在 Windows 上使用 Codex CLI 时安装过 CC Switch,用于模型切换。
后来决定不再使用 CC Switch,希望恢复:
- 官方 Codex CLI
- ChatGPT 账号登录
- 默认模型配置
但是直接执行:
codex logout
出现错误:
Error loading configuration:
failed to parse model_catalog_json path
C:\Users\admin\.codex\cc-switch-model-catalog.json
missing field supports_reasoning_summaries
原因:
CC Switch 修改了 Codex 配置文件:
C:\Users\用户名\.codex\cc-switch-model-catalog.json
新版 Codex 无法解析 CC Switch 生成的模型配置。
二、正确清理流程
1. 关闭 CC Switch 进程
先检查:
tasklist | findstr /i "cc"
输出:
cc-switch.exe 18612
说明 CC Switch 仍在运行。
结束:
taskkill /F /PID 18612
返回:
成功: 已终止 PID 为 18612 的进程。
2. 删除 Codex 配置目录
执行:
Remove-Item -Recurse -Force "$env:USERPROFILE\.codex"
如果删除失败:
可能出现:
文件"codex-dev.db"正由另一进程使用
原因:
Codex 的 SQLite 数据库正在被占用。
例如:
codex-dev.db
goals_1.sqlite
logs_2.sqlite
state_5.sqlite
解决:
先关闭:
- Codex
- CC Switch
- VS Code
然后重新执行。
最终:
Test-Path "$env:USERPROFILE\.codex"
输出:
False
表示删除成功。
三、清理 CC Switch 残留文件
1. 删除用户目录配置
检查:
dir "$env:USERPROFILE" -Force | findstr /i "switch"
发现:
.cc-switch
删除:
Remove-Item -Recurse -Force "$env:USERPROFILE\.cc-switch"
验证:
Test-Path "$env:USERPROFILE\.cc-switch"
输出:
False
2. 删除 AppData 配置
检查:
dir "$env:APPDATA" | findstr /i "switch"
发现:
com.ccswitch.desktop
删除:
Remove-Item -Recurse -Force "$env:APPDATA\com.ccswitch.desktop"
继续检查:
dir "$env:LOCALAPPDATA" | findstr /i "switch"
发现:
com.ccswitch.desktop
删除:
Remove-Item -Recurse -Force "$env:LOCALAPPDATA\com.ccswitch.desktop"
再次检查:
dir "$env:APPDATA" | findstr /i "switch"
dir "$env:LOCALAPPDATA" | findstr /i "switch"
无输出。
四、检查 CC Switch 是否修改环境变量
CC Switch 可能修改 OpenAI API 地址。
检查:
echo $env:OPENAI_BASE_URL
结果:
(无输出)
说明没有代理地址。
检查:
echo $env:OPENAI_API_KEY
结果:
(无输出)
说明没有残留 API Key。
五、删除 CC Switch 开机启动
1. 查看启动项
执行:
wmic startup get caption,command
发现:
CC Switch
D:\ProgramFiles\CC Switch\cc-switch.exe
说明虽然卸载,但是启动项仍然存在。
2. 使用 WMIC 删除失败
尝试:
wmic startup where "name='CC Switch'" delete
结果:
错误:
描述 = 提供程序无法执行所尝试的操作
原因:
新版 Windows 的 WMIC 对启动项删除兼容性较差。
3. 使用注册表删除(正确方式)
启动项位置:
HKCU\Software\Microsoft\Windows\CurrentVersion\Run
执行:
Remove-ItemProperty `
-Path "HKCU:\Software\Microsoft\Windows\CurrentVersion\Run" `
-Name "CC Switch"
验证:
wmic startup get caption,name | findstr /i "switch"
无输出。
查看注册表:
Get-ItemProperty "HKCU:\Software\Microsoft\Windows\CurrentVersion\Run"
结果:
已经没有:
CC Switch
六、卸载 CC Switch
检查安装目录:
Test-Path "D:\ProgramFiles\CC Switch"
结果:
False
说明:
CC Switch 程序已经卸载。
七、重新启动 Codex
执行:
codex
出现:
Welcome to Codex, OpenAI's command-line coding agent
登录方式:
选择:
1. Sign in with ChatGPT
原因:
自己使用 ChatGPT 账号。
登录成功:
✓ Signed in with your ChatGPT account
继续:
Press enter to continue
进入 Codex:
OpenAI Codex (v0.144.6)
model:
gpt-5.6-terra
说明恢复成功。
八、三个登录方式区别
1. Sign in with ChatGPT
适合:
- ChatGPT Plus
- ChatGPT Pro
- 个人用户
特点:
- 使用 ChatGPT 订阅权益
- 不需要 API Key
2. Sign in with Device Code
适合:
- Linux服务器
- SSH环境
- 无浏览器设备
通过验证码登录。
3. Provide your own API key
适合:
- 程序调用
- 自动化
- 企业开发
费用:
按照 API 使用量计费。
九、最终检查结果
最终状态:
| 项目 | 结果 |
|---|---|
| Codex 配置 | 已恢复 |
| CC Switch 配置 | 已删除 |
| CC Switch 缓存 | 已删除 |
| 环境变量 | 正常 |
| 启动项 | 已删除 |
| 程序目录 | 已卸载 |
| Codex 登录 | ChatGPT 登录成功 |
十、总结
如果从 CC Switch 切换回官方 Codex,最简单的方法:
关闭 CC Switch
↓
删除 ~/.codex
↓
删除 CC Switch 配置
↓
删除启动项
↓
卸载 CC Switch
↓
codex 登录 ChatGPT
遇到:
missing field supports_reasoning_summaries
不要尝试修复 cc-switch-model-catalog.json。
直接清理 .codex 是最快方案。