Files
clawdbot/docs/install/node.md
2026-01-22 04:31:25 +00:00

2.3 KiB
Raw Blame History

summary: "Node.js + npm install sanity: versions, PATH, and global installs" read_when: - You installed Clawdbot but clawdbot 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)

Clawdbots runtime baseline is Node 22+.

If you can run npm install -g clawdbot@latest but later see clawdbot: command not found, its almost always a PATH issue: the directory where npm puts global binaries isnt on your shells PATH.

Quick diagnosis

Run:

node -v
npm -v
npm prefix -g
echo "$PATH"

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 clawdbot).

Fix: put npms global bin dir on PATH

  1. Find your global npm prefix:
npm prefix -g
  1. Add the global npm bin directory to your shell startup file:
  • zsh: ~/.zshrc
  • bash: ~/.bashrc

Example (replace the path with your npm prefix -g output):

# macOS / Linux
export PATH="/path/from/npm/prefix/bin:$PATH"

Then open a new terminal (or run rehash in zsh / hash -r in bash).

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:

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.

Youll have the fewest surprises if Node/npm are installed in a way that:

  • keeps Node updated (22+)
  • 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.