背景
Windows环境下使用ChatGPT,想要读取和修改飞书文档内容,遂选用ChatGPT桌面端+安装飞书cli(lark-cli)的方式。然而实际使用时,Codex报错找不到lark-cli命令,自己在终端运行lark-cli正常,claude code在终端运行lark-cli正常。
原因
是PATH导致的问题,通常使用terminal(非管理员模式)安装的插件会落到用户级PATH下
对于机器级 PATH:system32、Wbem、OpenSSH、C:\Program Files\nodejs\、Git... ← 没有 npm 目录
对于用户级 PATH:... C:\Users\ThinkPad\AppData\Roaming\npm ← lark-cli 在这里
- node/npm 装在 C:\Program Files\nodejs\,在机器级 PATH里 → 所以 Codex 里 node 能用 ✅
- lark-cli 装在 C:\Users\ThinkPad\AppData\Roaming\npm,只在用户级 PATH里 → Codex 桌面端的沙箱 shell 只继承机器级PATH,所以找不到 ❌
- 自己开的 PowerShell 是"机器级 + 用户级"合并的完整 PATH,Claude Code 终端版也是 → 所以能用 ✅
解决方案
建议让AI Agent解决,提示其把 npm 目录加进机器级 PATH,生成类似:
[Environment]::SetEnvironmentVariable(
'Path',
[Environment]::GetEnvironmentVariable('Path','Machine') + ';C:\Users\xxx\AppData\Roaming\npm',
'Machine')
的指令,管理员模式下Powershell执行后重启Codex。
此外在~/.codex/config.toml加:
sandbox_mode = "workspace-write" [sandbox_workspace_write] network_access = true writable_roots = [ "C:\\Users\\xxx(根据实际情况写)\\AppData\\Roaming\\npm" ]BTW:飞书cli的skill自动落到~/.codex目录下,如果没有,其实调用lark-cli也会慢很多,建议一并排查。