| summary | Install and configure Node.js for OpenClaw - version requirements, install options, and PATH troubleshooting | |||
|---|---|---|---|---|
| title | Node.js | |||
| read_when |
|
OpenClaw requires Node 22.22.3+, Node 24.15+, or Node 25.9+ (which includes Node 26). Node 26 is the default and recommended runtime — it starts the Gateway noticeably faster and uses less memory than Node 24, and the installer script provisions it when Node is missing. CI and release workflows still pin Node 24; Node 22 remains supported via its LTS line. Node 23 is unsupported. The installer script detects and installs Node automatically — use this page when you want to set up Node yourself (versions, PATH, global installs).
node -vv26 (any release) is the recommended default. v24.15.0 or newer 24.x remains fully supported (and is what CI pins); v22.22.3 or newer 22.x is the supported Node 22 LTS path; Node v25.9.0+ is also supported. Node 23 is unsupported. If Node is missing or outside the supported range, pick an install method below.
```bash
brew install node
```
Or download the macOS installer from [nodejs.org](https://nodejs.org/).
```bash
curl -fsSL https://deb.nodesource.com/setup_26.x | sudo -E bash -
sudo apt-get install -y nodejs
```
**Fedora / RHEL:**
```bash
sudo dnf install nodejs
```
Or use a version manager (see below).
```powershell
winget install OpenJS.NodeJS.LTS
```
**Chocolatey:**
```powershell
choco install nodejs-lts
```
Or download the Windows installer from [nodejs.org](https://nodejs.org/).
- fnm - fast, cross-platform
- nvm - widely used on macOS/Linux
- mise - polyglot (Node, Python, Ruby, etc.)
Example with fnm:
fnm install 26
fnm use 26This almost always means npm's global bin directory isn't on your PATH.
```bash npm prefix -g ``` ```bash echo "$PATH" ```Look for `<npm-prefix>/bin` (macOS/Linux) or `<npm-prefix>` (Windows) in the output.
```bash
export PATH="$(npm prefix -g)/bin:$PATH"
```
Then open a new terminal (or run `rehash` in zsh / `hash -r` in bash).
</Tab>
<Tab title="Windows">
Add the output of `npm prefix -g` to your system PATH via Settings → System → Environment Variables.
</Tab>
</Tabs>
If you see EACCES errors, switch npm's 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"Add the export PATH=... line to your ~/.bashrc or ~/.zshrc to make it permanent.
- Install Overview - all installation methods
- Updating - keeping OpenClaw up to date
- Getting Started - first steps after install