Windows (WSL2)
OpenClaw unter Windows wird über WSL2 empfohlen (Ubuntu empfohlen). Die
CLI + das Gateway laufen innerhalb von Linux, was die Runtime konsistent hält und
Tooling weitaus kompatibler macht (Node/Bun/pnpm, Linux-Binaries, Skills). Natives
Windows kann umständlicher sein. WSL2 gibt dir die volle Linux-Erfahrung — ein Befehl
zur Installation: wsl --install.
Native Windows-Companion-Apps sind geplant.
Installation (WSL2)
- Erste Schritte (innerhalb von WSL verwenden)
- Installation & Updates
- Offizieller WSL2-Guide (Microsoft): https://learn.microsoft.com/windows/wsl/install
Nativer Windows-Status
Native Windows-CLI-Flows werden verbessert, aber WSL2 bleibt der empfohlene Weg.
Was heute auf nativem Windows gut funktioniert:
- Website-Installer über
install.ps1 - Lokale CLI-Nutzung wie
openclaw --version,openclaw doctorundopenclaw plugins list --json - Eingebettete Local-Agent/Provider-Smoke-Tests wie:
openclaw agent --local --agent main --thinking low -m "Reply with exactly WINDOWS-HATCH-OK."
Aktuelle Einschränkungen:
openclaw onboard --non-interactiveerwartet weiterhin ein erreichbares lokales Gateway, es sei denn du übergibst--skip-healthopenclaw onboard --non-interactive --install-daemonundopenclaw gateway installversuchen zuerst Windows Scheduled Tasks- Falls die Scheduled-Task-Erstellung verweigert wird, fällt OpenClaw auf ein benutzerspezifisches Startup-Ordner-Login-Item zurück und startet das Gateway sofort
- Falls
schtasksselbst hängt oder nicht mehr reagiert, bricht OpenClaw diesen Pfad jetzt schnell ab und fällt stattdessen zurück - Scheduled Tasks werden weiterhin bevorzugt, wenn verfügbar, da sie besseren Supervisor-Status bieten
Wenn du nur die native CLI möchtest, ohne Gateway-Service-Installation, verwende eine dieser Optionen:
openclaw onboard --non-interactive --skip-health
openclaw gateway run
Wenn du verwalteten Startup auf nativem Windows möchtest:
openclaw gateway install
openclaw gateway status --json
Falls die Scheduled-Task-Erstellung blockiert wird, startet der Fallback-Service-Modus trotzdem automatisch nach dem Login über den Startup-Ordner des aktuellen Benutzers.
Gateway
Gateway-Service installieren (CLI)
Innerhalb von WSL2:
openclaw onboard --install-daemon
Oder:
openclaw gateway install
Oder:
openclaw configure
Wähle Gateway service wenn aufgefordert.
Reparatur/Migration:
openclaw doctor
Gateway-Autostart vor dem Windows-Login
Für Headless-Setups stelle sicher, dass die gesamte Boot-Kette auch ohne Windows-Anmeldung läuft.
1) User-Services ohne Login am Laufen halten
Innerhalb von WSL:
sudo loginctl enable-linger "$(whoami)"
2) OpenClaw-Gateway-User-Service installieren
Innerhalb von WSL:
openclaw gateway install
3) WSL beim Windows-Boot automatisch starten
In PowerShell als Administrator:
schtasks /create /tn "WSL Boot" /tr "wsl.exe -d Ubuntu --exec /bin/true" /sc onstart /ru SYSTEM
Ersetze Ubuntu mit deinem Distro-Namen aus:
wsl --list --verbose
Startup-Kette prüfen
Nach einem Neustart (vor der Windows-Anmeldung), prüfe in WSL:
systemctl --user is-enabled openclaw-gateway
systemctl --user status openclaw-gateway --no-pager
Fortgeschritten: WSL-Services über LAN bereitstellen (Portproxy)
WSL hat sein eigenes virtuelles Netzwerk. Wenn ein anderer Rechner einen Service erreichen muss, der innerhalb von WSL läuft (SSH, ein lokaler TTS-Server oder das Gateway), musst du einen Windows-Port an die aktuelle WSL-IP weiterleiten. Die WSL-IP ändert sich nach Neustarts, daher musst du die Weiterleitungsregel ggf. aktualisieren.
Beispiel (PowerShell als Administrator):
$Distro = "Ubuntu-24.04"
$ListenPort = 2222
$TargetPort = 22
$WslIp = (wsl -d $Distro -- hostname -I).Trim().Split(" ")[0]
if (-not $WslIp) { throw "WSL IP not found." }
netsh interface portproxy add v4tov4 listenaddress=0.0.0.0 listenport=$ListenPort `
connectaddress=$WslIp connectport=$TargetPort
Den Port durch die Windows-Firewall erlauben (einmalig):
New-NetFirewallRule -DisplayName "WSL SSH $ListenPort" -Direction Inbound `
-Protocol TCP -LocalPort $ListenPort -Action Allow
Portproxy nach WSL-Neustart aktualisieren:
netsh interface portproxy delete v4tov4 listenport=$ListenPort listenaddress=0.0.0.0 | Out-Null
netsh interface portproxy add v4tov4 listenport=$ListenPort listenaddress=0.0.0.0 `
connectaddress=$WslIp connectport=$TargetPort | Out-Null
Hinweise:
- SSH von einem anderen Rechner zielt auf die Windows-Host-IP (Beispiel:
ssh user@windows-host -p 2222). - Remote-Nodes müssen auf eine erreichbare Gateway-URL zeigen (nicht
127.0.0.1); verwendeopenclaw status --allzur Bestätigung. - Verwende
listenaddress=0.0.0.0für LAN-Zugriff;127.0.0.1hält es lokal. - Wenn du das automatisieren möchtest, registriere einen Scheduled Task, der den Aktualisierungsschritt beim Login ausführt.
Schritt-für-Schritt WSL2-Installation
1) WSL2 + Ubuntu installieren
Öffne PowerShell (Admin):
wsl --install
# Oder wähle eine Distro explizit:
wsl --list --online
wsl --install -d Ubuntu-24.04
Starte neu, falls Windows das verlangt.
2) systemd aktivieren (erforderlich für Gateway-Installation)
In deinem WSL-Terminal:
sudo tee /etc/wsl.conf >/dev/null <<'EOF'
[boot]
systemd=true
EOF
Dann aus PowerShell:
wsl --shutdown
Öffne Ubuntu erneut und prüfe:
systemctl --user status
3) OpenClaw installieren (innerhalb von WSL)
Folge dem Linux-Erste-Schritte-Flow innerhalb von WSL:
git clone https://github.com/openclaw/openclaw.git
cd openclaw
pnpm install
pnpm ui:build # installiert UI-Deps beim ersten Lauf automatisch
pnpm build
openclaw onboard
Vollständiger Guide: Erste Schritte
Windows-Companion-App
Eine Windows-Companion-App gibt es noch nicht. Beiträge sind willkommen, wenn du dabei helfen möchtest, sie zu realisieren.