根本不是vscode配置问题,而是它未加载shell初始化后的完整path:macos/linux需设terminal.integrated.shellargs为["-l"]启用登录shell并source配置文件,windows需确保node安装时勾选“add to path”或手动将npm prefix/bin路径加入系统环境变量,且必须完全重启vscode。

VSCode 里执行 node、npm 或全局安装的命令(如 nodemon、http-server)失败,根本不是 VSCode 配置问题,而是它没读到你 shell 初始化后的完整 PATH —— 修环境变量比调配置更优先。
为什么 VSCode 终端里 node 找不到
VSCode 内置终端(Ctrl+`)启动时,只继承系统 PATH 的“快照”,不自动加载 shell 配置文件(比如 ~/.zshrc 或 ~/.bash_profile)。Windows 上更常见:Node 安装时没勾选 “Add to PATH”,或者用了 nvm-windows 却没执行 nvm use 激活版本。
- 在 VSCode 终端里直接运行
which node(macOS/Linux)或where node(Windows),无输出就说明路径没通 -
npm -v同样失败?那npm install -g装的工具也必然不可用 - 别在系统终端验证完就以为万事大吉——VSCode 可能用的是 PowerShell、Git Bash 或 WSL,和你日常用的 shell 不一致
全局命令(如 nodemon)在 VSCode 里报 command not found
全局 npm 包默认装在 npm config get prefix 指向的目录下(比如 /usr/local 或 C:\Users\XXX\AppData\Roaming\npm),这个路径必须显式加进系统 PATH,否则 VSCode 根本看不到。
ZenHeart zenlink 与 zenlink-mcp 为 OpenClaw,涵盖安装、MCP 注册、钩子接线、入站轮询及升级维护。
- 先查全局 bin 路径:
npm config get prefix,然后拼上bin(macOS/Linux 是$(npm config get prefix)/bin,Windows 是$(npm config get prefix)\bin) - 把这个完整路径手动加进系统环境变量 PATH(Windows:系统属性 → 高级 → 环境变量;macOS/Linux:改
~/.zshrc并source ~/.zshrc) - 关掉所有 VSCode 窗口,**重新启动 VSCode**(仅重启终端无效)
- 再开终端,跑
nodemon --version验证
launch.json 调试时提示 “无法启动程序” 或断点灰掉
调试器找不到入口文件,90% 是因为 program 字段写的路径不对,或者工作区没打开项目根目录 —— 这和 Node 环境本身无关,但常被误判为环境问题。
- 确保用 “文件 → 打开文件夹” 打开含
package.json或主 JS 文件的整个目录,而不是单个文件 -
launch.json中"program"必须是绝对路径表达式,比如"${workspaceFolder}/app.js",不能写相对路径或硬编码"./app.js" - 如果想调试任意当前打开的 JS 文件,把
"program"改成"${file}",但注意:ES Module 场景下需额外加--experimental-specifier-resolution=node -
"type": "node"和"request": "launch"别动,改错会导致调试器压根不识别配置
真正卡住人的从来不是 launch.json 里多一个逗号,而是 node 命令本身在 VSCode 终端里就不存在——所有后续配置都建立在这个前提之上。修 PATH 是唯一前置动作,其他都是锦上添花。










