Skip to main content

System requirements

  • Node 22.22.3+, 24.15+, or 25.9+ - Node 26 is the recommended default; the installer script provisions it automatically when Node is missing.
  • macOS, Linux, or Windows - Windows users can start with the native Windows Hub app, the PowerShell CLI installer, or a WSL2 Gateway. See Windows.
  • pnpm is only needed if you build from source.
The fastest way to install. It detects your OS, installs Node if needed, installs OpenClaw, and launches onboarding.
Windows desktop users can also install the native Windows Hub companion app, which includes setup, tray status, chat, node mode, and local MCP mode.
To install without running onboarding:
For all flags and CI/automation options, see Installer internals.

Alternative install methods

Local prefix installer (install-cli.sh)

Use this when you want OpenClaw and Node kept under a local prefix such as ~/.openclaw, without depending on a system-wide Node install:
It supports npm installs by default, plus git-checkout installs under the same prefix flow. Full reference: Installer internals. Already installed? Switch between package and git installs with openclaw update --channel dev and openclaw update --channel stable. See Updating.

npm, pnpm, or bun

If you already manage Node yourself:
On npm 12 or npm 11.16+:
On npm 11.15 and earlier, use the same command without --allow-scripts=openclaw.
npm 12 blocks unapproved package lifecycle scripts by default. The --allow-scripts=openclaw option explicitly allows OpenClaw’s preinstall and postinstall steps; without it, npm reports them as blocked because they are not covered by allowScripts.npm 11.16 accepts the option but otherwise only warns that the scripts are not yet covered by allowScripts and still runs them. npm 11.15 and earlier have neither the policy nor the option, so their command must be unflagged. The npm approve-scripts openclaw command suggested by npm 11.16 does not work for a global install — it fails with ENOMATCH No installed packages match: openclaw.
The hosted installer clears npm freshness filters such as min-release-age for the OpenClaw package install. If you install manually with npm, your own npm policy still applies.

From source

For contributors or anyone who wants to run from a local checkout:
Or skip the link and use pnpm openclaw ... from inside the repo. See Setup for full development workflows.

Install from the GitHub main checkout

Containers and package managers

Ansible

Automated fleet provisioning.

Bun

Optional dependency installer and package-script runner.

ClawDock

Community Docker Compose setup and shell helpers.

Docker

Containerized or headless deployments.

Nix

Declarative install via Nix flake.

Podman

Rootless container alternative to Docker.

Verify the install

If you want managed startup after install:
  • macOS: LaunchAgent via openclaw onboard --install-daemon or openclaw gateway install
  • Linux/WSL2: systemd user service via the same commands
  • Native Windows: Scheduled Task first, with a per-user Startup-folder login item fallback if task creation is denied

Hosting and deployment

Deploy OpenClaw on a cloud server or VPS. See Linux server for the full provider picker (DigitalOcean, Hetzner, Hostinger, Fly.io, GCP, Azure, Railway, Northflank, Oracle Cloud, Raspberry Pi, and more), deploy declaratively on Render, or try the experimental Cloudflare Containers template.

Cloudflare

Experimental Worker + Container deployment.

Docker VM

Shared Docker steps.

Kubernetes

K8s deployment.

macOS VM

Isolated local or hosted macOS deployment.

Upstash Box

Managed Linux host with SSH-tunneled access.

VPS

Pick a provider.

Back up, update, migrate, or uninstall

Backups

Create, verify, and restore state archives.

Updating

Keep OpenClaw up to date.

Migrating

Move to a new machine.

Uninstall

Remove OpenClaw completely.

Troubleshooting: openclaw not found

Almost always a PATH issue: npm’s global bin directory isn’t on your shell’s PATH. See Node.js troubleshooting for the full fix, including the Windows path.