OpenClaw on Windows — Installation & Common Issues
Step-by-step Windows installation guide covering Node.js setup, WSL2 configuration, LM Studio integration, and troubleshooting Windows-specific issues.
⚠️ The Problem
Windows users face unique challenges when installing OpenClaw:
- Complete beginner — don't know where to start:
Need help don't have a lot of computer knowledgeNeed help setting clawd on my windows pc- WSL2 cron jobs skipping scheduled runs:
Hourly cron job (0 * * * *) skips slots — nextRunAtMs jumps forward without executingJobs seem to only run when there's user message activityOvernight, zero jobs fire despite gateway staying alive- LM Studio connection errors from WSL2:
Invalid input: expected object, received stringUnrecognized keys in configopenclaw node runon Windows shows nothing:
openclaw node run on Windows only shows node Host Path and nothing has doneNothing on the Gateway side either- Exec commands not working after approval:
"I cannot directly view your hardware... but I can provide precise commands"Bot responds about needing approval but doesn't execute🔍 Why This Happens
Windows-specific issues arise from:
-
Missing prerequisites — Node.js, Git, and pnpm need to be installed before OpenClaw can work. Windows doesn't come with these.
-
WSL2 sleep behavior — When the Windows host sleeps, WSL2 suspends too. Cron jobs can't fire if the system is asleep. Additionally, frequently-scheduled cron jobs may be blocked by long-running previous jobs (only one instance runs at a time by default).
-
WSL2 ↔ Windows networking — Connecting LM Studio (running on Windows) to OpenClaw (running in WSL2) requires using the WSL2 host IP, not localhost. Config format must also match the expected schema.
-
PATH and environment issues — Windows PowerShell and cmd.exe handle environment variables differently. The
openclaw node runcommand may not find required binaries if PATH isn't set up correctly. -
Exec tool permissions — The exec tool requires explicit approval for commands. If approvals aren't being processed correctly, the bot can't execute anything.
✅ The Fix
Complete Windows Installation (From Scratch)
Step 1: Install Node.js
- Go to https://nodejs.org and download the LTS version
- Run the Windows Installer (.msi)
- Click "Next" through everything
- Restart your computer after installing
Open Command Prompt (Windows key + R, type cmd, press Enter) and verify:
node --versionYou should see v24.x.x or higher.
Step 2: Install Git
Download from https://git-scm.com/download/win and install with defaults.
Step 3: Install pnpm
npm install -g pnpmStep 4: Clone and Build OpenClaw
git clone https://github.com/clawdbot/clawdbot.gitcd clawdbotpnpm installpnpm buildStep 5: Run Onboarding
pnpm clawdbot onboardFollow the wizard to set up your model and channels.
WSL2 Cron Jobs Skipping
If your cron jobs only run when there's activity and skip overnight:
Root cause: Windows host is sleeping, which suspends WSL2.
Fixes:
- Prevent Windows from sleeping — Change power settings to never sleep when plugged in
- Move gateway to always-on server — A Linux VPS or dedicated machine won't sleep
- Add timeouts to long jobs — Prevent one job from blocking the next:
{ "cron": { "jobs": [{ "id": "hourly-pulse", "schedule": "0 * * * *", "isolated": true, "payload": { "timeoutSeconds": 300 } }] }}Debug cron issues:
openclaw --versionopenclaw cron runs --id <jobId> --limit 50openclaw logs --limit 300 | grep "cron:"Connecting LM Studio (Windows) to OpenClaw (WSL2)
LM Studio runs on Windows, but OpenClaw in WSL2 can't reach localhost:1234. You need the WSL2 host IP.
Find your WSL2 host IP:
# From inside WSL2:cat /etc/resolv.conf | grep nameserver | awk '{print $2}'Configure OpenClaw:
Your config must use the correct format (object, not string):
{ "providers": { "lmstudio": { "baseUrl": "http://172.x.x.x:1234/v1", "models": { "default": { "id": "your-model-name" } } } }, "model": { "provider": "lmstudio", "id": "your-model-name" }}In LM Studio: Enable "Allow connections from network" in settings.
Fixing openclaw node run on Windows
If the command shows PATH and does nothing:
- Check the SSH tunnel is working:
ssh -L 18789:localhost:18789 user@gateway-host- Verify gateway connectivity:
curl http://localhost:18789/health- Check logs on both sides:
# On the node (Windows)openclaw logs --follow# On the gatewayopenclaw logs --followExec Tool Not Working
If the bot says it can provide commands but won't execute them:
- Check exec is enabled:
{ "exec": { "enabled": true, "approval": "auto" }}- For Discord: Make sure exec approvals are configured for the channel
- Approve in the same channel — The approval button must be clicked where the request appeared
Fresh Start on Windows
# Stop the daemonopenclaw daemon stopopenclaw daemon uninstall# Delete all data (PowerShell)Remove-Item -Recurse -Force $env:USERPROFILE\.clawdbot# Delete workspaceRemove-Item -Recurse -Force $env:USERPROFILE\clawd# Reinstallgit clone https://github.com/clawdbot/clawdbot.gitcd clawdbotpnpm installpnpm buildpnpm clawdbot onboard🚀 Skip the setup. OpenClaw Cloud is ready in 60 seconds.
No server. No SSH. No config files. Just connect your channel and go.
🔥 Your AI should run your business, not just answer questions.
We'll show you how.Free to join.
📋 Quick Commands
| Command | Description |
|---|---|
| node --version | Check Node.js version |
| npm install -g pnpm | Install pnpm package manager |
| pnpm install | Install dependencies |
| pnpm clawdbot onboard | Run the setup wizard |
| openclaw cron runs --id <jobId> --limit 50 | Check cron job history |
| cat /etc/resolv.conf | grep nameserver | Find WSL2 host IP (run in WSL2) |
| Remove-Item -Recurse -Force $env:USERPROFILE\.clawdbot | Delete OpenClaw config (PowerShell) |
| openclaw logs --follow | Watch logs in real-time |
Related Issues
🐙 Your AI should run your business.
Weekly live builds + template vault. We'll show you how to make AI actually work.Free to join.
Join Vibe Combinator →