This is a fan-made community site, not affiliated with the official OpenClaw project or Anthropic. github.com/openclaw/openclaw

Install

Already followed Getting Started? You’re all set — this page is for alternative install methods, platform-specific instructions, and maintenance.

System requirements

  • Node 24 (recommended) (Node 22 LTS, currently 22.16+, is still supported for compatibility; the installer script will install Node 24 if missing)
  • macOS, Linux, or Windows
  • pnpm only if you build from source

Note: On Windows, we strongly recommend running OpenClaw under WSL2.

Install methods

Tip: The installer script is the recommended way to install OpenClaw. It handles Node detection, installation, and onboarding in one step.

Warning: For VPS/cloud hosts, avoid third-party “1-click” marketplace images when possible. Prefer a clean base OS image (for example Ubuntu LTS), then install OpenClaw yourself with the installer script.

Installer script
Downloads the CLI, installs it globally via npm, and launches the onboarding wizard.


  #### macOS / Linux / WSL2
    ```bash
    curl -fsSL https://openclaw.ai/install.sh | bash
    ```

  #### Windows (PowerShell)
    ```powershell
    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:


  #### macOS / Linux / WSL2
    ```bash
    curl -fsSL https://openclaw.ai/install.sh | bash -s -- --no-onboard
    ```

  #### Windows (PowerShell)
    ```powershell
    & ([scriptblock]::Create((iwr -useb https://openclaw.ai/install.ps1))) -NoOnboard
    ```



For all flags, env vars, and CI/automation options, see [Installer internals](/docs/install/installer).
npm / pnpm
If you already manage Node yourself, we recommend Node 24. OpenClaw still supports Node 22 LTS, currently `22.16+`, for compatibility:


  #### npm
    ```bash
    npm install -g openclaw@latest
    openclaw onboard --install-daemon
    ```

    <details>
sharp build errors?
      If you have libvips installed globally (common on macOS via Homebrew) and `sharp` fails, force prebuilt binaries:

      ```bash
      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.
    </details>

  #### pnpm
    ```bash
    pnpm add -g openclaw@latest
    pnpm approve-builds -g        # approve openclaw, node-llama-cpp, sharp, etc.
    openclaw onboard --install-daemon
    ```

    > **Note:** 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.


  ### Step 1: Clone and build
    Clone the [OpenClaw repo](https://github.com/openclaw/openclaw) and build:

    ```bash
    git clone https://github.com/openclaw/openclaw.git
    cd openclaw
    pnpm install
    pnpm ui:build
    pnpm build
    ```

  ### Step 2: Link the CLI
    Make the `openclaw` command available globally:

    ```bash
    pnpm link --global
    ```

    Alternatively, skip the link and run commands via `pnpm openclaw ...` from inside the repo.

  ### Step 3: Run onboarding
    ```bash
    openclaw onboard --install-daemon
    ```



For deeper development workflows, see [Setup](/docs/start/setup).

Other install methods

  • Docker — Containerized or headless deployments.
  • Podman — Rootless container: run setup-podman.sh once, then the launch script.
  • Nix — Declarative install via Nix.
  • Ansible — Automated fleet provisioning.
  • Bun — 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_HOME for home-directory based internal paths
  • OPENCLAW_STATE_DIR for mutable state location
  • OPENCLAW_CONFIG_PATH for 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).

Update / uninstall