Files
openclaw/docs/install/node.md

79 lines
2.3 KiB
Markdown
Raw Normal View History

---
title: "Node.js + npm (PATH sanity)"
summary: "Node.js + npm install sanity: versions, PATH, and global installs"
read_when:
2026-01-30 03:15:10 +01:00
- "You installed OpenClaw but `openclaw` is “command not found”"
- "Youre setting up Node.js/npm on a new machine"
- "npm install -g ... fails with permissions or PATH issues"
---
# Node.js + npm (PATH sanity)
2026-01-30 03:15:10 +01:00
OpenClaws runtime baseline is **Node 22+**.
2026-01-30 03:15:10 +01:00
If you can run `npm install -g openclaw@latest` but later see `openclaw: command not found`, its almost always a **PATH** issue: the directory where npm puts global binaries isnt on your shells PATH.
## Quick diagnosis
Run:
```bash
node -v
npm -v
2026-01-22 04:26:18 +00:00
npm prefix -g
echo "$PATH"
```
2026-01-30 03:15:10 +01:00
If `$(npm prefix -g)/bin` (macOS/Linux) or `$(npm prefix -g)` (Windows) is **not** present inside `echo "$PATH"`, your shell cant find global npm binaries (including `openclaw`).
## Fix: put npms global bin dir on PATH
2026-01-31 21:13:13 +09:00
1. Find your global npm prefix:
```bash
2026-01-22 04:26:18 +00:00
npm prefix -g
```
2026-01-31 21:13:13 +09:00
2. Add the global npm bin directory to your shell startup file:
- zsh: `~/.zshrc`
- bash: `~/.bashrc`
2026-01-22 04:26:18 +00:00
Example (replace the path with your `npm prefix -g` output):
```bash
2026-01-22 04:26:18 +00:00
# macOS / Linux
export PATH="/path/from/npm/prefix/bin:$PATH"
```
Then open a **new terminal** (or run `rehash` in zsh / `hash -r` in bash).
2026-01-22 04:26:18 +00:00
On Windows, add the output of `npm prefix -g` to your PATH.
## Fix: avoid `sudo npm install -g` / permission errors (Linux)
If `npm install -g ...` fails with `EACCES`, switch npms global prefix to a user-writable directory:
```bash
mkdir -p "$HOME/.npm-global"
npm config set prefix "$HOME/.npm-global"
export PATH="$HOME/.npm-global/bin:$PATH"
```
Persist the `export PATH=...` line in your shell startup file.
## Recommended Node install options
Youll have the fewest surprises if Node/npm are installed in a way that:
- keeps Node updated (22+)
2026-01-22 04:26:18 +00:00
- makes the global npm bin dir stable and on PATH in new shells
Common choices:
- macOS: Homebrew (`brew install node`) or a version manager
- Linux: your preferred version manager, or a distro-supported install that provides Node 22+
- Windows: official Node installer, `winget`, or a Windows Node version manager
If you use a version manager (nvm/fnm/asdf/etc), ensure its initialized in the shell you use day-to-day (zsh vs bash) so the PATH it sets is present when you run installers.