How to Install OpenClaw on Windows with WSL2
The official OpenClaw docs strongly recommend Windows via WSL2. The stable path is to install WSL2 first, then run the Linux OpenClaw install and onboarding flow inside that WSL environment.
How to install OpenClaw on Windows with WSL2
The current official OpenClaw guidance strongly recommends Windows via WSL2. The simplest stable path is to create a WSL2 Linux environment, install OpenClaw inside it, then finish onboarding and open the dashboard from that Linux shell.
Who this is for
- You use Windows but want the supported OpenClaw path.
- You want the gateway and agent runtime in Linux, not native Windows services.
- You want to avoid unstable channel behavior on a direct Windows host.
What you need before you start
- Windows 11 or a Windows build that supports WSL2.
- Administrator access so you can install WSL2.
- A Linux distribution for WSL2, such as Ubuntu.
- Node.js 22 or newer inside the WSL environment.
Step-by-step setup
Step 1: Install WSL2 and a Linux distribution
Run this in PowerShell as Administrator:
| wsl --install -d Ubuntu |
Expected result: WSL2 installs and asks you to reboot if needed.
Step 2: Open Ubuntu and confirm Node.js 22 or newer
Inside the WSL terminal:
| node --version |
Expected result: a version string that starts with v22 or newer.
Step 3: Install OpenClaw inside WSL2
Still inside WSL:
| curl -fsSL https://openclaw.ai/install.sh | bash |
Expected result: the installer completes and openclaw is available in the WSL shell.
Step 4: Run onboarding and install the user service
| openclaw onboard --install-daemon |
Use the local gateway path when the wizard asks where OpenClaw should run. The onboarding wizard is the recommended setup flow for Windows via WSL2.
Step 5: Verify the gateway from WSL
| openclaw gateway status |
Expected result: the service reports as running and the probe succeeds.
Step 6: Open the dashboard
| openclaw dashboard --no-open |
Open the printed URL in your Windows browser. If the gateway runs inside WSL2 on loopback, the dashboard should still be reachable from the same machine.
Verify it worked
- Run
openclaw gateway statusagain inside WSL. - Open the dashboard URL from the previous step.
- Confirm the Control UI loads and does not immediately disconnect.
Common problems and fixes
WSL2 is not installed or did not start
Run the install command again in elevated PowerShell:
| wsl --install -d Ubuntu |
The gateway service is not healthy after onboarding
Check service, logs, and doctor output inside WSL:
| openclaw gateway status |
| openclaw logs --follow |
| openclaw doctor |
The dashboard loads but requests pairing
That is expected for remote or non-localhost devices. Approve the pending device:
| openclaw devices list |
| openclaw devices approve --latest |
FAQ
Why use WSL2 instead of a direct Windows install?
Because the onboarding docs explicitly call out Windows via WSL2 as the strongly recommended Windows path.
Can I use the same guide for Docker later?
Yes. Once OpenClaw is working inside WSL2, you can move to the Docker guide if you want a containerized gateway instead of a direct local install.
Do I need to finish channel setup before I can use OpenClaw?
No. The dashboard path works without channel setup, and it is the fastest way to confirm the install.
Official sources
Related OpenClaw guides
Follow the next most relevant setup guide without leaving the cluster.
Install OpenClaw on macOS with the official installer, finish onboarding, and verify the local gateway and dashboard.
Install OpenClaw on Linux with the official installer, onboard it, verify the service, and open the local dashboard.
Finish the OpenClaw onboarding wizard, configure the gateway, open the dashboard, and approve first device access when needed.