OpenClaw Windows Setup Guide: Install on Windows 10 & 11
Complete Windows installation guide for OpenClaw. Covers Node.js setup, PowerShell vs CMD, WSL2 recommendations, and Windows-specific configuration.
Quick Answer
Install OpenClaw on Windows: `npm i -g openclaw` (requires Node.js 18+). PowerShell recommended over CMD. WSL2 provides the best experience. Run `openclaw onboard` after installation to configure.
Introduction
OpenClaw works great on Windows, though the installation process differs slightly from macOS and Linux. This guide covers everything you need to install and run OpenClaw on Windows 10 or Windows 11, including PowerShell setup, Node.js installation, and WSL2 recommendations.
For general installation instructions, see our complete installation guide.
System Requirements
Windows Version
- Windows 10 (version 1903 or later)
- Windows 11 (all versions)
- Older versions may work but aren’t officially supported
Hardware
- RAM — 2GB+ recommended (4GB+ for best performance)
- Storage — 500MB+ for installation, additional space for memory/data
- Processor — Any modern x64 processor
Software Prerequisites
- Node.js 18+ — Required for running OpenClaw
- PowerShell 5.1+ or Windows Terminal — Recommended over CMD
- Git (optional) — For hackable install from source
Installation Methods
Method 1: npm Install (Recommended)
The standard way to install OpenClaw on Windows:
-
Install Node.js (if not already installed):
- Download from nodejs.org
- Choose the LTS version (18.x or higher)
- Run the installer with default settings
- Verify installation:
node --version npm --version
-
Install OpenClaw:
npm i -g openclaw -
Verify installation:
openclaw --version
Method 2: PowerShell One-Liner
A PowerShell script automates the installation:
irm https://openclaw.ai/install.ps1 | iex
Note: You may need to enable script execution:
Set-ExecutionPolicy -ExecutionPolicy RemoteSigned -Scope CurrentUser
This script will:
- Check for Node.js (prompt to install if missing)
- Install OpenClaw globally
- Set up PATH if needed
- Verify installation
Method 3: WSL2 Install (Best Experience)
Windows Subsystem for Linux 2 (WSL2) provides a Linux environment that often works better for OpenClaw:
-
Install WSL2:
wsl --installRestart your computer when prompted.
-
Install Ubuntu (or your preferred Linux distribution):
wsl --install -d Ubuntu -
Inside WSL2, install OpenClaw:
curl -fsSL https://openclaw.ai/install.sh | bash
WSL2 provides:
- Better compatibility with Unix tools
- Native Linux performance
- Easier integration with Linux-based services
- Access to Linux package managers
See our Linux setup guide for WSL2-specific instructions.
Method 4: Hackable Install (From Source)
For developers who want to modify the source:
-
Install Git:
- Download from git-scm.com
- Or install via winget:
winget install Git.Git
-
Clone and build:
git clone https://github.com/openclaw/openclaw.git cd openclaw npm install npm run build -
Run from source:
npm run openclaw onboard
Installing Node.js on Windows
Option 1: Official Installer
- Visit nodejs.org
- Download the LTS version (18.x or higher)
- Run the installer
- Check “Add to PATH” during installation
- Verify:
node --version npm --version
Option 2: winget (Windows Package Manager)
winget install OpenJS.NodeJS.LTS
Option 3: Chocolatey
If you have Chocolatey installed:
choco install nodejs-lts
Option 4: Scoop
If you use Scoop:
scoop install nodejs-lts
PowerShell vs Command Prompt
PowerShell (Recommended)
PowerShell is more powerful and modern:
- Better scripting capabilities
- More consistent with cross-platform commands
- Better error handling
- Native JSON support
Use PowerShell for all OpenClaw commands.
Command Prompt (CMD)
CMD works but has limitations:
- Older syntax
- Less powerful scripting
- Some npm scripts may not work correctly
If you must use CMD, commands are mostly the same, but PowerShell is recommended.
Windows Terminal
Windows Terminal provides the best experience:
- Multiple tabs
- Better font rendering
- Customizable appearance
- Integrated PowerShell, CMD, and WSL
Install from Microsoft Store or:
winget install Microsoft.WindowsTerminal
Post-Installation Setup
After installation, configure OpenClaw:
openclaw onboard
This interactive setup covers:
1. AI Model Configuration
Choose your AI provider:
Anthropic Claude:
- Claude 3.5 Sonnet (recommended)
- Claude 3 Opus
- Claude 4
Get your API key from console.anthropic.com.
OpenAI GPT:
- GPT-4o
- GPT-4 Turbo
- GPT-4.1
Get your API key from platform.openai.com.
Local Models:
- Ollama (runs locally)
- LM Studio
- MiniMax
2. Windows Permissions
OpenClaw may request permissions:
- Firewall — Allow Node.js/OpenClaw through Windows Firewall
- Antivirus — May need to whitelist OpenClaw directory
- File System — For reading/writing files
3. PATH Configuration
Ensure OpenClaw is in your PATH:
$env:PATH -split ';' | Select-String "npm"
If not found, add npm global path:
$npmPath = npm config get prefix
$env:PATH += ";$npmPath"
[Environment]::SetEnvironmentVariable("Path", $env:Path, [EnvironmentVariableTarget]::User)
Restart PowerShell after modifying PATH.
Running OpenClaw
Start the Server
openclaw
This starts the local server and connects all configured integrations.
Run in Background
Use Start-Process:
Start-Process -NoNewWindow openclaw
Or use a process manager like pm2:
npm i -g pm2
pm2 start openclaw
pm2 save
pm2 startup
Run as Windows Service
Install as a Windows service using node-windows:
npm i -g node-windows
Create a service script (see node-windows docs).
Launch at Startup
Create a scheduled task:
- Open Task Scheduler
- Create Basic Task
- Name: “OpenClaw”
- Trigger: “When I log on”
- Action: “Start a program”
- Program:
C:\Users\YourName\AppData\Roaming\npm\openclaw.cmd - Arguments: (leave empty)
Or use the Startup folder:
$startup = [Environment]::GetFolderPath("Startup")
$shortcut = "$startup\OpenClaw.lnk"
$shell = New-Object -ComObject WScript.Shell
$link = $shell.CreateShortcut($shortcut)
$link.TargetPath = "C:\Users\YourName\AppData\Roaming\npm\openclaw.cmd"
$link.Save()
Windows-Specific Considerations
Antivirus Software
Some antivirus software may flag OpenClaw:
- Windows Defender — Usually works fine, may need exclusion
- Third-party AV — May require whitelisting
Add exclusion for:
- OpenClaw installation directory
~/.openclawdata directory- Node.js executable
Firewall Configuration
Allow OpenClaw through Windows Firewall:
New-NetFirewallRule -DisplayName "OpenClaw" -Direction Inbound -Program "C:\Users\YourName\AppData\Roaming\npm\node_modules\openclaw\bin\openclaw.js" -Action Allow
Or use Windows Defender Firewall GUI:
- Windows Security → Firewall & network protection
- Allow an app through firewall
- Add OpenClaw
Long Path Support
Windows has a 260-character path limit. Enable long paths:
- Open Group Policy Editor (
gpedit.msc) - Navigate to: Computer Configuration → Administrative Templates → System → Filesystem
- Enable “Enable Win32 long paths”
- Restart computer
Or edit registry (advanced users only).
Line Endings
Windows uses CRLF, Unix uses LF. Most tools handle this automatically, but if you encounter issues:
git config --global core.autocrlf true
Troubleshooting
Command Not Found
If openclaw isn’t recognized:
-
Check npm global path:
npm config get prefix -
Add to PATH:
$npmPath = npm config get prefix [Environment]::SetEnvironmentVariable("Path", "$env:Path;$npmPath", [EnvironmentVariableTarget]::User) -
Restart PowerShell
-
Verify:
Get-Command openclaw
Permission Denied
If you see permission errors:
-
Run PowerShell as Administrator: Right-click PowerShell → “Run as Administrator”
-
Install globally:
npm i -g openclaw -
Fix npm permissions (alternative):
mkdir $env:APPDATA\npm-global npm config set prefix "$env:APPDATA\npm-global" $env:PATH += ";$env:APPDATA\npm-global" [Environment]::SetEnvironmentVariable("Path", $env:Path, [EnvironmentVariableTarget]::User)
Port Already in Use
Change the port:
openclaw --port 3001
Or find and kill the process:
netstat -ano | findstr :3000
taskkill /PID <PID> /F
Node.js Version Issues
Ensure you have Node.js 18+:
node --version
If outdated, update:
winget upgrade OpenJS.NodeJS.LTS
Or download latest from nodejs.org.
WSL2 Integration
If using WSL2, access Windows files:
# In WSL2
cd /mnt/c/Users/YourName
Access WSL2 files from Windows:
# In PowerShell
cd \\wsl$\Ubuntu\home\username
Performance Tips
WSL2 Performance
If using WSL2:
- Store OpenClaw data in WSL2 filesystem (faster)
- Use WSL2 for all operations
- Access Windows files via
/mnt/c/when needed
Windows Defender
Exclude OpenClaw directories from real-time scanning:
- Windows Security → Virus & threat protection
- Manage settings → Exclusions
- Add folders:
C:\Users\YourName\AppData\Roaming\npmC:\Users\YourName\.openclaw
Memory Management
Monitor resource usage:
Get-Process | Where-Object {$_.ProcessName -like "*node*"} | Select-Object ProcessName, CPU, WorkingSet
Updating OpenClaw
Update to the latest version:
npm update -g openclaw
Or re-run the installer:
irm https://openclaw.ai/install.ps1 | iex
Uninstalling
Remove OpenClaw:
npm uninstall -g openclaw
Remove configuration:
Remove-Item -Recurse -Force $env:USERPROFILE\.openclaw
Remove from PATH (if manually added).
Next Steps
Now that OpenClaw is installed on Windows:
- Connect Chat Apps — WhatsApp, Telegram, Discord
- Set Up Integrations — Gmail, Slack
- Explore Skills — Skills Library
- Read FAQ — Common Questions
Conclusion
Installing OpenClaw on Windows is straightforward with npm. While WSL2 provides the best experience, native Windows installation works perfectly for most users. PowerShell is recommended over CMD for better compatibility and scripting capabilities.
For more help, check our general installation guide or FAQ page. Happy automating on Windows!
Need help?
Join the OpenClaw community on Discord for support, tips, and shared skills.
Join Discord →