Windows 11 更新 ChatGPT / Codex 后提示 Unable to locate the Codex CLI binary 的解决方法
问题现象
在 Windows 11 上更新新版 ChatGPT / Codex Desktop 后,部分用户会遇到 Codex 无法正常启动的问题,并出现如下提示:
Unable to locate the Codex CLI binary.
Set CODEX_CLI_PATH or ensure the Electron resources include bin/codex.
这个问题有一个比较明显的特点:
卸载、重装、清理
.codex、删除 npm 版本 Codex 等操作,很多情况下都无法解决。
目前 OpenAI Codex GitHub 仓库已经有多个类似问题报告。2026 年 8 月 26 日也有用户反馈 Windows 11 更新 Desktop App 后直接出现相同错误,并且重新安装不能从根本上解决。
一、为什么卸载重装可能没用?
这个错误看起来像:
Codex CLI 没安装。
但实际上很多情况下,codex.exe 已经存在于 ChatGPT / Codex Desktop 的安装目录中。
例如 Microsoft Store / MSIX 版本通常位于:
C:\Program Files\WindowsApps\OpenAI.Codex_xxx\app\resources\codex.exe
也就是说:
codex.exe
实际上存在,但新版 Desktop App 在更新之后,没有正确定位或启动这个 CLI。
GitHub 上已经有案例确认:
app\resources\codex.exe
明明存在,但 Desktop App 仍然提示:
Unable to locate the Codex CLI binary
因此单纯卸载重装并不一定有效。
二、先确认自己的 Codex 安装位置
打开:
PowerShell
执行:
$pkg = Get-AppxPackage OpenAI.Codex
$pkg | Select-Object Version, InstallLocation
例如我的电脑输出:
Version InstallLocation
------- ---------------
26.820.7780.0 C:\Program Files\WindowsApps\OpenAI.Codex_26.820.7780.0_x64__2p2nqsd0c76g0
说明当前安装目录是:
C:\Program Files\WindowsApps\OpenAI.Codex_26.820.7780.0_x64__2p2nqsd0c76g0
三、确认 codex.exe 是否存在
继续在 PowerShell 执行:
Test-Path "$($pkg.InstallLocation)\app\resources\codex.exe"
如果返回:
True
说明 Windows 版本的 Codex CLI 实际已经包含在安装包中。
还可以顺便检查 WSL/Linux 版本:
Test-Path "$($pkg.InstallLocation)\app\resources\codex"
如果也是:
True
说明安装包同时包含:
codex.exe
和:
codex
两个版本。
其中:
codex.exe
是 Windows CLI。
而没有扩展名的:
codex
主要用于 Linux / WSL 环境。
四、解决方法:手动设置 CODEX_CLI_PATH
目前社区中比较简单、有效的临时解决方案,是直接告诉 Desktop App:
codex.exe到底在哪里。
首先动态获取自己电脑上的路径:
$pkg = Get-AppxPackage OpenAI.Codex
$codexPath = Join-Path $pkg.InstallLocation "app\resources\codex.exe"
$codexPath
例如可能得到:
C:\Program Files\WindowsApps\OpenAI.Codex_26.820.7780.0_x64__2p2nqsd0c76g0\app\resources\codex.exe
然后设置 Windows 用户环境变量:
[Environment]::SetEnvironmentVariable(
"CODEX_CLI_PATH",
$codexPath,
"User"
)
实际上也可以直接一次完成:
$pkg = Get-AppxPackage OpenAI.Codex
$codexPath = Join-Path $pkg.InstallLocation "app\resources\codex.exe"
[Environment]::SetEnvironmentVariable(
"CODEX_CLI_PATH",
$codexPath,
"User"
)
这样不用自己填写版本号。
五、验证环境变量是否设置成功
执行:
[Environment]::GetEnvironmentVariable(
"CODEX_CLI_PATH",
"User"
)
正常应该输出类似:
C:\Program Files\WindowsApps\OpenAI.Codex_26.820.7780.0_x64__2p2nqsd0c76g0\app\resources\codex.exe
然后继续执行:
Test-Path (
[Environment]::GetEnvironmentVariable(
"CODEX_CLI_PATH",
"User"
)
)
如果返回:
True
说明:
-
CODEX_CLI_PATH已经设置成功; -
指向的文件确实存在。
六、重新启动 ChatGPT / Codex
设置环境变量后,不要直接在原来的进程里测试。
建议:
-
完全退出 ChatGPT / Codex;
-
打开任务管理器;
-
确认 ChatGPT、Codex 等相关进程已经结束;
-
重新打开 ChatGPT。
如果仍然读取不到环境变量,可以直接:
重启 Windows
再启动 ChatGPT。
因为已经启动的 Electron 进程不一定能够读取后续新增的用户环境变量。
七、也可以通过 Windows 图形界面设置
如果不想使用 PowerShell:
按:
Win + R
输入:
sysdm.cpl
然后进入:
高级
→ 环境变量
→ 用户变量
→ 新建
变量名:
CODEX_CLI_PATH
变量值填写自己电脑实际的:
...\app\resources\codex.exe
例如:
C:\Program Files\WindowsApps\OpenAI.Codex_26.820.7780.0_x64__2p2nqsd0c76g0\app\resources\codex.exe
保存以后重新启动 ChatGPT。
八、不要把 CODEX_CLI_PATH 指向 codex.cmd
这一点比较重要。
如果电脑之前通过 npm 安装过:
npm install -g @openai/codex
执行:
where.exe codex
可能看到:
D:\nvm4w\nodejs\codex
D:\nvm4w\nodejs\codex.cmd
不建议把:
CODEX_CLI_PATH
设置成:
D:\nvm4w\nodejs\codex.cmd
GitHub 上已经有报告表明,Electron 直接启动 .cmd wrapper 时可能出现:
spawn EINVAL
因此应当直接指向真正的:
codex.exe
而不是:
codex.cmd
。
九、如果使用 WSL,需要额外注意
如果之前在 ChatGPT / Codex 中开启了:
Agent Environment → WSL
那么这个问题可能还涉及另外一个 Windows/MSIX Bug。
可以执行:
$pkg = Get-AppxPackage OpenAI.Codex
(Get-Item "$($pkg.InstallLocation)\app\resources\codex").Attributes
如果返回:
Archive, Encrypted
那么你很可能遇到了目前社区已经确认的:
Windows MSIX / Application Protected 文件复制失败问题。
Codex Desktop 在 WSL 模式下需要把:
app\resources\codex
复制到类似:
%USERPROFILE%\.codex\bin\wsl\
的位置。
但因为 WindowsApps 中的文件被标记为:
Encrypted
复制过程中可能触发:
ERROR_ENCRYPTION_FAILED
0x80071770
最终 Desktop App 却只显示:
Unable to locate the Codex CLI binary
这也是目前 OpenAI Codex GitHub 上已经确认存在的问题。
因此:
CODEX_CLI_PATH=...\codex.exe
目前更适合作为 Windows Desktop 能够启动的临时 workaround。
如果高度依赖真正的 WSL Agent 环境,需要注意它不一定彻底解决 WSL 二进制 relocation 问题。GitHub 上也有用户
更多推荐




所有评论(0)