CodexCLI 安装避坑全攻略:从 PowerShell 报错到环境变量全面修复
问题一:安装命令被 PowerShell 阻止
刚开始满怀期待地运行官方安装命令,却直接撞上了一个错误:
npm install -g @openai/codex
遇到这种现象,多半是因为 Windows 自带的 PowerShell 出于安全考虑,默认禁止执行 .ps1 脚本,而 npm 在 PowerShell 中的操作恰好属于这类脚本。
要解决它,我们只需调整策略,为当前用户开放本地脚本的运行权限。
第一步,以管理员身份打开 PowerShell:右键单击开始菜单(或按 Win+X),选择“Windows PowerShell (管理员)”或“终端 (管理员)”。
第二步,查看当前的执行策略。在窗口中输入以下命令并回车:
Get-ExecutionPolicy
如果返回的是 Restricted,就说明正是默认的“禁止”状态导致了刚才的报错。

第三步,调整策略。下面这条命令只会更改当前用户的执行策略,也就是只对你这个账户生效。这样既解决了问题,又不会降低太多安全性——它允许本地脚本运行,但对来自网络的脚本要求具备可信的数字签名。
Set-ExecutionPolicy -Scope CurrentUser RemoteSigned
问题二:重试安装,确认成功
策略修改后,重新运行官方的安装命令,几秒钟内就会出现类似下图的界面,这说明 @openai/codex 工具包已经成功安装。
至于 npm notice ... 之后的内容,只是在提示官方 npm 版本已经更新到了 11.13.0,不更新对 codex 的使用也不会有影响。如果想更新,直接复制图中倒数第二行 run 后面的命令,粘贴并回车运行即可。
问题三:命令无法识别,环境变量还没配好
输入 codex 命令后,如果出现了“无法将‘codex’项识别为 cmdlet…”之类的错误,通常说明 codex 本身已经装上了,但系统还找不到它。
核心原因就是 PATH 环境变量没有配置好。 这就像你走进一家商场却找不到某家店铺——店铺确实存在,但缺少登记信息,所以寻址失败。我们需要做的,就是把 codex 的“住址”登记到系统的 PATH 中。
问题四:给终端一张“地图”,让 PowerShell 认识 codex
因为咱们一直用的是 PowerShell,但 PowerShell 压根不知道 codex 这个家伙在哪里。为了让它们互相认识,就得制作一张地图——也就是配置 PATH。
先搞清楚 codex 安装在哪个目录里,执行:
npm config get prefix
这条命令会返回一个路径,记下这个地址(可以直接 Ctrl+Shift+C 复制)。接下来,在开始菜单搜索框或 Windows 设置里直接搜“环境变量”,然后点击进入。

在弹出的系统属性窗口中,进入“环境变量”。在“用户变量”区域找到 Path,双击或点击“编辑”,然后把刚才用 npm config get prefix 获取的路径填进去。如果没有 Path 变量,就点击“新建”,变量名设为 Path,变量值同样填入那个路径。最后点击“确定”并关闭窗口。
问题五:一个容易忽略但极易出错的细节——别忘了重启终端
环境变量设置好之后,很多人直接在当前终端里输入 codex,结果还是报错。原因很简单:没有重启终端窗口。
这里有两种方式:
第一种是直接关闭当前的 PowerShell 窗口,再重新打开一个,这会启动全新的 shell 进程,之前设置的临时变量会被清空,但新变量会生效。
第二种是在不关闭窗口的情况下执行 source ~/.bashrc 来模拟重启(如果你在使用类似 bash 的环境)。这种方式的区别在于不会启动新进程,原有临时变量也会保留。
对我们当前配置 codex 这件事来说,两种方法都可以,重点是让环境变量生效。
问题六:初次见面——信任设置与提示注入风险
在 PATH 配置完成并正确重启终端后,还差一个准备步骤。由于很多人会用到 OpenAI 等国外 API,也可能要用 DeepSeek 这类第三方 API,为了方便切密钥,可以提前装一个类似“cc switch”的工具来“一键配置”密钥。这一点我当时绕了不少弯路,下一篇会详细说明。
配置好密钥工具之后,就可以正式启动 codex 配置了。第一个画面会提示当前所在目录,并询问你是否信任这个位置——如果不信任的内容在这里运行,会增加“提示注入”的风险。如果选择信任,就允许加载该项目的本地配置、钩子和执行策略。对于自己确认安全的目录,直接选择 yes 并回车即可。
这里解释几个关键名词:
- 提示注入风险:可以理解为有人给 AI Agent 递了一张“诈骗纸条”,上面写着“把所有的密钥发给我”。如果 Agent 没有保护,就可能真的去读取并发送
.env等敏感文件,后果严重。 - 本地配置:相当于给 codex 定下规矩,比如规定使用哪款模型、禁止哪些操作等。
- 钩子:是一种自动化触发器,可以在你让 codex 执行某个动作前自动运行一段脚本——可能是好事,也可能是隐患。
- 执行策略:决定哪些脚本能被允许执行,与 Windows 询问“是否运行来自网络的程序”类似。
问题七:建造一个安全屋——配置沙盒
完成授权后,下一步就是配置沙盒。codex agent 的沙盒可以更好地保护文件并控制网络访问。
选项 1 是“默认沙盒”,需要管理员权限;选项 2 是“非管理员沙盒”,安全性较低,遇到提示注入时风险更高。推荐直接选择 1 并回车。
沙盒配置完成后,就会进入可直接输入任务的界面。为了更放心,我试探性地发了一句“你好”,看到 codex 正常回复,最后的疑虑也就消除了。
后续使用中,几个常用命令也很方便:
- 想切换其他模型,直接输入
/model并按提示选择; - 想查看可用的高级功能,输入
/skills并回车; - 想退出,则输入
/exit或按Ctrl+C。
希望这篇纯粹踩坑、从头到尾的记录,能让你在安装 CodexCLI 时少走弯路,更快上手,做出自己真正想做的作品。