先说几个核心判断:如果你把Codex装到了D盘或E盘这类非系统盘,启动时遇到报错或命令无法识别,十有八九是Windows环境变量PATH没有指向正确的位置。系统找不到codex.exe或对应的CLI入口,自然就会报错。这个问题虽然不复杂,但容易让人走不少弯路——除了环境变量,还可能是快捷方式残留、注册表关联错误,甚至杀毒软件干扰所致。

接下来,我们按照步骤逐一排查。
第一步:确认Codex的实际安装位置
打开资源管理器,找到你当初选择的非系统盘安装目录——比如D:Codex或E:Program FilesCodex。检查里面是否有codex.exe或codex.cmd文件。如果目录下空空如也,只有.config或.sqlite这类子文件夹,说明安装时主程序并未放到这个目录中。遇到这种情况,建议重新运行安装程序,在自定义安装界面勾选“将可执行文件放入安装目录根路径”,或者手动将bin子目录指定为安装目标。
第二步:手动将安装路径添加到系统环境变量PATH
按下Win + R,输入sysdm.cpl回车 → 切换到「高级」选项卡 → 点击「环境变量」→ 在「系统变量」区域找到并双击Path → 点「新建」→ 把你实际的Codex可执行路径粘贴进去(比如D:Codex或E:Program FilesCodexbin)→ 点「确定」保存所有窗口。
⚠️ 注意:路径末尾不能加反斜杠 ,否则PATH会解析失败;如果安装目录包含空格(如Program Files),不需要额外添加引号——Windows PATH本身能识别含空格的路径。
第三步:验证配置并强制刷新终端环境
关闭所有已经打开的CMD、PowerShell、Git Bash窗口;然后重新以管理员身份启动PowerShell;执行:
codex --version
如果依然提示“不是内部或外部命令”,说明环境变量尚未生效。此时不必急着再改PATH——可以先在当前PowerShell中临时注入路径:
$env:Path += ";D:Codex"(请将D:Codex替换为你的实际路径)→ 再运行一次 codex --version。如果能正常返回版本号,说明路径本身正确,只是系统级PATH未被新终端读取——这种情况下必须重启电脑,才能让所有进程(包括Explorer、IDE、后台服务)加载到更新后的PATH。
第四步:解决快捷方式残留引起的路径混乱
方法一:右键点击桌面上或开始菜单里的Codex快捷方式 → 选择“属性” → 查看“目标”一栏。如果里面显示类似"C:WindowsSystem32cmd.exe" /c "C:UsersXXXAppDataLocalProgramsCodexcodex.exe"这种硬编码在系统盘里的路径,说明这个快捷方式是旧版本遗留的。直接删除它,然后去你真正的非系统盘安装目录,找到codex.exe → 右键 → “发送到” → “桌面快捷方式”重新创建一个即可。
方法二:如果通过开始菜单启动失败,但直接在非系统盘下双击codex.exe能正常运行,那么问题出在Windows的注册表关联上。这时不必手动修改注册表——用管理员PowerShell执行:
cd D:Codex; .codex.exe --register-shell-integration(路径按实际替换)。该操作会主动重写Shell集成项,直接覆盖旧的系统盘路径引用。
第五步:排查防病毒软件是否拦截了Codex
部分国产安全软件(如火绒、360、腾讯电脑管家)会把非系统盘里运行的.exe默认标记为“高风险行为”,尤其是当Codex第一次从D盘启动时,可能静默阻止它创建子进程或访问网络。打开你的杀毒软件主界面 → 找到“防护日志”或“拦截记录” → 筛选今天的时间段 → 检查是否有codex.exe被拦截的记录。如果有,点击“添加信任”,勾选“永久信任此文件”和“信任该路径下所有程序”。【这是非系统盘安装后最容易被忽略的真凶】
