# Installer Internals OpenClaw provides three installer scripts from `openclaw.ai`: * **install.sh** — Primary installer supporting macOS, Linux, and WSL * **install-cli.sh** — Non-root alternative that bundles Node runtime * **install.ps1** — Windows PowerShell installer ## install.sh Overview The recommended installer performs several key functions: 1. Detects the operating system 2. Ensures Node.js version 22 or higher is available 3. Offers two installation methods: - `npm install -g openclaw@latest` (default) - Git-based source checkout with wrapper script The script addresses common Linux permission issues by redirecting npm's global prefix to `~/.npm-global` when necessary, then updates PATH variables in shell configuration files. Additionally, it mitigates `sharp` native install gotchas by defaulting `SHARP_IGNORE_GLOBAL_LIBVIPS=1` to avoid system library conflicts. Users needing different behavior can override this with `SHARP_IGNORE_GLOBAL_LIBVIPS=0`. When run inside an existing OpenClaw checkout, the installer prompts whether to update locally or migrate to global npm installation. ## install-cli.sh This variant installs OpenClaw to a dedicated prefix (typically `~/.openclaw`) alongside a self-contained Node runtime, eliminating system-level dependencies. ## install.ps1 The Windows PowerShell version requires Node.js 22+ and supports both npm and git installation methods. Common issues include missing Git for Windows and PATH configuration problems with npm's global bin folder.