Windows
OpenClaw prend en charge à la fois le Windows natif et WSL2. WSL2 est la solution la plus stable et recommandée pour une expérience complète — l’interface en ligne de commande (CLI), le Gateway et les outils s’exécutent à l’intérieur de Linux avec une compatibilité totale. Le Windows natif fonctionne pour une utilisation de base de l’CLI et du GatewayGateway, avec quelques réserves notées ci-dessous.
Les applications compagnes natives pour Windows sont prévues.
WSL2 (recommandé)
Section intitulée « WSL2 (recommandé) »- Getting Started (à utiliser dans WSL)
- Install & updates
- Guide officiel WSL2 (Microsoft) : https://learn.microsoft.com/windows/wsl/install
Statut du Windows natif
Section intitulée « Statut du Windows natif »Les flux de l’Windows natif CLI s’améliorent, mais WSL2 reste tout de même le chemin recommandé.
Ce qui fonctionne bien sur le Windows natif aujourd’hui :
- programme d’installation du site Web via
install.ps1 - utilisation locale de la CLI telle que
openclaw --version,openclaw doctoretopenclaw plugins list --json - test de fumée local-agent/provider intégré, tel que :
openclaw agent --local --agent main --thinking low -m "Reply with exactly WINDOWS-HATCH-OK."Avertissements actuels :
openclaw onboard --non-interactives’attend toujours à une passerelle locale accessible, sauf si vous passez--skip-healthopenclaw onboard --non-interactive --install-daemonetopenclaw gateway installessaient d’abord les tâches planifiées Windows- si la création de tâche planifiée est refusée, OpenClaw revient à un élément de connexion dans le dossier de démarrage par utilisateur et démarre la passerelle immédiatement
- si
schtaskslui-même se bloque ou cesse de répondre, OpenClaw abandonne maintenant rapidement cette voie et bascule au lieu de rester bloqué indéfiniment - Les tâches planifiées sont toujours préférées lorsqu’elles sont disponibles car elles offrent un meilleur statut de superviseur
Si vous ne voulez que le CLI natif, sans installation du service de passerelle, utilisez l’un de ceux-ci :
openclaw onboard --non-interactive --skip-healthopenclaw gateway runSi vous souhaitez un démarrage géré sur Windows natif :
openclaw gateway installopenclaw gateway status --jsonSi la création de tâche planifiée est bloquée, le mode de service de secours démarre automatiquement après la connexion via le dossier Démarrage de l’utilisateur actuel.
Gateway service install (CLI)
Section intitulée « Gateway service install (CLI) »Inside WSL2 :
openclaw onboard --install-daemonOu :
openclaw gateway installOu :
openclaw configureSélectionnez Gateway service lorsque vous y êtes invité.
Réparer/migrer :
openclaw doctorGateway auto-start before Windows login
Section intitulée « Gateway auto-start before Windows login »Pour les configurations sans tête, assurez-vous que la chaîne de démarrage complète s’exécute même lorsque personne ne se connecte à Windows.
1) Keep user services running without login
Section intitulée « 1) Keep user services running without login »Inside WSL :
sudo loginctl enable-linger "$(whoami)"2) Install the OpenClaw gateway user service
Section intitulée « 2) Install the OpenClaw gateway user service »Inside WSL :
openclaw gateway install3) Start WSL automatically at Windows boot
Section intitulée « 3) Start WSL automatically at Windows boot »In PowerShell as Administrator :
schtasks /create /tn "WSL Boot" /tr "wsl.exe -d Ubuntu --exec /bin/true" /sc onstart /ru SYSTEMRemplacez Ubuntu par le nom de votre distribution depuis :
wsl --list --verboseVerify startup chain
Section intitulée « Verify startup chain »After a reboot (before Windows sign-in), check from WSL :
systemctl --user is-enabled openclaw-gateway.servicesystemctl --user status openclaw-gateway.service --no-pagerAdvanced: expose WSL services over LAN (portproxy)
Section intitulée « Advanced: expose WSL services over LAN (portproxy) »WSL possède son propre réseau virtuel. Si une autre machine doit accéder à un service exécuté à l’intérieur de WSL (SSH, un serveur TTS local, ou le Gateway), vous devez transférer un port Windows vers l’adresse IP WSL actuelle. L’adresse IP WSL change après les redémarrages, vous devrez donc peut-être actualiser la règle de transfert.
Exemple (PowerShell en tant qu’administrateur) :
$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=$TargetPortAutoriser le port via le pare-feu Windows (une seule fois) :
New-NetFirewallRule -DisplayName "WSL SSH $ListenPort" -Direction Inbound ` -Protocol TCP -LocalPort $ListenPort -Action AllowActualiser le portproxy après les redémarrages WSL :
netsh interface portproxy delete v4tov4 listenport=$ListenPort listenaddress=0.0.0.0 | Out-Nullnetsh interface portproxy add v4tov4 listenport=$ListenPort listenaddress=0.0.0.0 ` connectaddress=$WslIp connectport=$TargetPort | Out-NullRemarques :
- Le SSH depuis une autre machine cible l’IP de l’hôte Windows (exemple :
ssh user@windows-host -p 2222). - Les nœuds distants doivent pointer vers une URL de Gateway accessible (pas
127.0.0.1) ; utilisezopenclaw status --allpour confirmer. - Utilisez
listenaddress=0.0.0.0pour l’accès LAN ;127.0.0.1le garde uniquement en local. - Si vous souhaitez que ce soit automatique, enregistrez une tâche planifiée pour exécuter l’étape d’actualisation à la connexion.
Installation étape par étape de WSL2
Section intitulée « Installation étape par étape de WSL2 »1) Installer WSL2 + Ubuntu
Section intitulée « 1) Installer WSL2 + Ubuntu »Ouvrez PowerShell (Admin) :
wsl --install# Or pick a distro explicitly:wsl --list --onlinewsl --install -d Ubuntu-24.04Redémarrez si Windows le demande.
2) Activer systemd (requis pour l’installation de la passerelle)
Section intitulée « 2) Activer systemd (requis pour l’installation de la passerelle) »Dans votre terminal WSL :
sudo tee /etc/wsl.conf >/dev/null <<'EOF'[boot]systemd=trueEOFPuis depuis PowerShell :
wsl --shutdownRouvez Ubuntu, puis vérifiez :
systemctl --user status3) Installer OpenClaw (à l’intérieur de WSL)
Section intitulée « 3) Installer OpenClaw (à l’intérieur de WSL) »Pour une première configuration normale dans WSL, suivez le flux de démarrage Linux Getting Started :
git clone https://github.com/openclaw/openclaw.gitcd openclawpnpm installpnpm buildpnpm ui:buildpnpm openclaw onboard --install-daemonSi vous développez à partir du code source au lieu de faire une intégration pour la première fois, utilisez la boucle de développement source depuis Setup :
pnpm install# First run only (or after resetting local OpenClaw config/workspace)pnpm openclaw setuppnpm gateway:watchGuide complet : Getting Started
Application compagnon Windows
Section intitulée « Application compagnon Windows »Nous n’avons pas encore d’application compagnon Windows. Les contributions sont les bienvenues si vous souhaitez aider à sa réalisation.
Connectivité Git et GitHub (contributeurs)
Section intitulée « Connectivité Git et GitHub (contributeurs) »Certains réseaux bloquent ou limitent le HTTPS vers GitHub. Si GitHubgit clone échoue avec des expirations de délai (timeouts) ou des réinitialisations de connexion, essayez un autre réseau, un VPN ou un proxy HTTP/HTTPS fourni par votre organisation.
Si gh auth login échoue lors du flux de périphérique du navigateur (par exemple une expiration de délai pour atteindre github.com:443), authentifiez-vous plutôt avec un jeton d’accès personnel (PAT) :
- Créez un jeton avec au moins la portée (scope)
repo(PAT classique) ou un accès granulaire équivalent. - Dans PowerShell pour la session actuelle :
$env:GH_TOKEN="<your-token>"gh auth statusgh auth setup-git- Si
gh auth statusavertit concernant l’absence deread:org, créez un jeton incluant cette portée et réassignez la variable :
$env:GH_TOKEN="<your-token-with-repo-and-read:org>"gh auth statusgh auth refresh -s read:org s’applique uniquement lorsque vous vous êtes authentifié via gh auth login et que vous avez stocké des informations d’identification pour actualiser (pas lors de l’utilisation de GH_TOKEN).
Ne commettez jamais de jetons ou ne les collez pas dans des tickets de suivi (issues) ou des demandes de tirage (pull requests).