Install
Already followed Getting Started? You're all set — this page is for alternative install methods, platform-specific instructions, and maintenance.
System requirements
- Node 22+ (the installer script will install it if missing)
- macOS, Linux, or Windows
pnpmonly if you build from source
On Windows, we strongly recommend running OpenClaw under WSL2.
Install methods
The installer script is the recommended way to install OpenClaw. It handles Node detection, installation, and onboarding in one step.
Installer script
Downloads the CLI, installs it globally via npm, and launches the onboarding wizard.
curl -fsSL https://openclaw.ai/install.sh | bash
iwr -useb https://openclaw.ai/install.ps1 | iex
That's it — the script handles Node detection, installation, and onboarding.
To skip onboarding and just install the binary:
curl -fsSL https://openclaw.ai/install.sh | bash -s -- --no-onboard
& ([scriptblock]::Create((iwr -useb https://openclaw.ai/install.ps1))) -NoOnboard
For all flags, env vars, and CI/automation options, see Installer internals.
npm / pnpm
If you already have Node 22+ and prefer to manage the install yourself:
npm install -g openclaw@latest
openclaw onboard --install-daemon
sharp build errors?
If you have libvips installed globally (common on macOS via Homebrew) and sharp fails, force prebuilt binaries:
SHARP_IGNORE_GLOBAL_LIBVIPS=1 npm install -g openclaw@latest
If you see sharp: Please add node-gyp to your dependencies, either install build tooling (macOS: Xcode CLT + npm install -g node-gyp) or use the env var above.
pnpm add -g openclaw@latest
pnpm approve-builds -g # approve openclaw, node-llama-cpp, sharp, etc.
openclaw onboard --install-daemon
pnpm requires explicit approval for packages with build scripts. After the first install shows the "Ignored build scripts" warning, run pnpm approve-builds -g and select the listed packages.
From source
For contributors or anyone who wants to run from a local checkout.
- Clone and build
Clone the OpenClaw repo and build:
git clone https://github.com/openclaw/openclaw.git cd openclaw pnpm install pnpm ui:build pnpm build - Link the CLI
Make the
openclawcommand available globally:pnpm link --globalAlternatively, skip the link and run commands via
pnpm openclaw ...from inside the repo. - Run onboarding
openclaw onboard --install-daemon
For deeper development workflows, see Setup.
Other install methods
Containerized or headless deployments.
Rootless container: run setup-podman.sh once, then the launch script.
Declarative install via Nix.
Automated fleet provisioning.
CLI-only usage via the Bun runtime.
After install
Verify everything is working:
openclaw doctor # check for config issues
openclaw status # gateway status
openclaw dashboard # open the browser UI
If you need custom runtime paths, use:
OPENCLAW_HOMEfor home-directory based internal pathsOPENCLAW_STATE_DIRfor mutable state locationOPENCLAW_CONFIG_PATHfor config file location
See Environment vars for precedence and full details.
Troubleshooting: openclaw not found
PATH diagnosis and fix
Quick diagnosis:
node -v
npm -v
npm prefix -g
echo "$PATH"
If $(npm prefix -g)/bin (macOS/Linux) or $(npm prefix -g) (Windows) is not in your $PATH, your shell can't find global npm binaries (including openclaw).
Fix — add it to your shell startup file (~/.zshrc or ~/.bashrc):
export PATH="$(npm prefix -g)/bin:$PATH"
On Windows, add the output of npm prefix -g to your PATH.
Then open a new terminal (or rehash in zsh / hash -r in bash).