相信大家在使用Codex插件的时候都会遇到Codex用着用着就打不开的情况,其实根本不是 VS Code 本身打不开,而是 Codex 无法打开它的 SQLite 状态数据库。
调用日志中的关键错误是:
failed to initialize sqlite state runtime under C:\Users\Admin\.codex
failed to initialize state runtime at C:\Users\Admin\.codex
同时目前存在多个残留的 Code.exe 进程,可能锁住了 state_5.sqlite-wal/shm。你的电脑还有 TSD 透明加密特征,也可能拦截 SQLite 文件读写。
按下面顺序处理:
-
完全关闭 VS Code。
-
在任务管理器结束全部
Code.exe。 -
备份并重建 Codex 状态数据库。打开 PowerShell 执行:
codexDir = "env:USERPROFILE.codex"
$stamp = Get-Date -Format "yyyyMMdd_HHmmss"Get-ChildItem codexDir -Filter "state_5.sqlite*" | Rename-Item -NewName { .Name + ".bak" + $stamp }
-
重新打开 VS Code,Codex 会自动创建新的数据库。
不要删除这些文件:
C:\Users\Admin\.codex\auth.json
C:\Users\Admin\.codex\config.toml
C:\Users\Admin\.codex\sessions
如果仍然打不开,需要在公司的 TSD/透明加密软件中将以下目录加入白名单:
C:\Users\Admin\.codex
C:\Users\Admin\.vscode\extensions\openai.chatgpt-*
C:\Users\Admin\AppData\Roaming\Code
重点允许 .sqlite、.sqlite-wal 和 .sqlite-shm 文件正常读写。仅重新安装 Codex 扩展通常解决不了这个问题,因为故障位置在 C:\Users\Admin\.codex 的状态数据库。