Fonctionnement interne de l'installateur
OpenClaw fournit trois scripts d’installation, disponibles depuis openclaw.ai.
| Script | Plateforme | Ce qu’il fait |
|---|---|---|
install.sh | macOS / Linux / WSL | Installe Node si nécessaire, installe OpenClaw via npm (par défaut) ou git, et peut exécuter l’onboarding. |
install-cli.sh | macOS / Linux / WSL | Installe Node + OpenClaw dans un préfixe local (~/.openclawnpm) avec les modes npm ou git checkout. Pas de racine requise. |
install.ps1 | Windows (PowerShell) | Installe Node si nécessaire, installe OpenClaw via npm (par défaut) ou git, et peut exécuter l’onboarding. |
Commandes rapides
Section intitulée « Commandes rapides »curl -fsSL --proto '=https' --tlsv1.2 https://openclaw.ai/install.sh | bashcurl -fsSL --proto '=https' --tlsv1.2 https://openclaw.ai/install.sh | bash -s -- --helpcurl -fsSL --proto '=https' --tlsv1.2 https://openclaw.ai/install-cli.sh | bashcurl -fsSL --proto '=https' --tlsv1.2 https://openclaw.ai/install-cli.sh | bash -s -- --helpiwr -useb https://openclaw.ai/install.ps1 | iex& ([scriptblock]::Create((iwr -useb https://openclaw.ai/install.ps1))) -Tag beta -NoOnboard -DryRuninstall.sh
Section intitulée « install.sh »Flow (install.sh)
Section intitulée « Flow (install.sh) »Detect OS
Prend en charge macOS et Linux (y compris WSL).
Ensure Node.js 24 by default
Vérifie la version de Node et installe Node 24 si nécessaire (Homebrew sur macOS, scripts de configuration NodeSource sur Linux apt/dnf/yum). Sur macOS, Homebrew n’est installé que lorsque l’installateur en a besoin pour Node ou Git. OpenClaw prend toujours en charge Node 22 LTS, actuellement
22.19+, pour la compatibilité. Sur Alpine/musl Linux, l’installateur utilise les paquets apk au lieu de NodeSource ; les dépôts Alpine configurés doivent fournir Node22.19+(Alpine 3.21 ou plus récent au moment de la rédaction).Ensure Git
Installe Git s’il est manquant en utilisant le gestionnaire de paquets détecté, y compris Homebrew sur macOS et apk sur Alpine.
Installer OpenClaw
- méthode
npm(par défaut) : installation npm globale - méthode
git: cloner/mettre à jour le dépôt, installer les dépendances avec pnpm, construire, puis installer le wrapper à~/.local/bin/openclaw
- méthode
Tâches post-installation
- Actualise le service de passerelle chargé au mieux (
openclaw gateway install --force, puis redémarre) - Exécute
openclaw doctor --non-interactivelors des mises à niveau et des installations git (au mieux) - Tente l’onboarding lorsque cela est approprié (TTY disponible, onboarding non désactivé, et les vérifications bootstrap/config réussissent)
- Actualise le service de passerelle chargé au mieux (
Source checkout detection
Section intitulée « Source checkout detection »S’il est exécuté dans un checkout OpenClaw (package.json + pnpm-workspace.yaml), le script propose :
- utiliser le checkout (
git), ou - utiliser l’installation globale (
npm)
Si aucune TTY n’est disponible et qu’aucune méthode d’installation n’est définie, la valeur par défaut est npm et un avertissement est émis.
Le script se termine avec le code 2 pour une sélection de méthode invalide ou des valeurs --install-method invalides.
Exemples (install.sh)
Section intitulée « Exemples (install.sh) »bash curl -fsSL --proto '=https' --tlsv1.2 https://openclaw.ai/install.sh | bash
bash curl -fsSL --proto '=https' --tlsv1.2 https://openclaw.ai/install.sh | bash -s -- --no-onboard
bash curl -fsSL --proto '=https' --tlsv1.2 https://openclaw.ai/install.sh | bash -s -- --install-method git
bash curl -fsSL --proto '=https' --tlsv1.2 https://openclaw.ai/install.sh | bash -s -- --install-method git --version main
bash curl -fsSL --proto '=https' --tlsv1.2 https://openclaw.ai/install.sh | bash -s -- --dry-run
Référence des options
| Option | Description |
|---|---|
--install-method npm|git | Choisir la méthode d’installation (par défaut : npm). Alias : --method |
--npmnpm | Raccourci pour la méthode npm |
--git | Raccourci pour la méthode git. Alias : --github |
| `—version |
npm | Version npm, dist-tag ou spécification de paquet (par défaut : latest) | | —beta | Utiliser le dist-tag beta si disponible, sinon revenir àlatest | |—git-dir
| Répertoire de checkout (par défaut :~/openclaw). Alias : —dir | |—no-git-update | Ignorergit pullpour un checkout existant | |—no-prompt | Désactiver les invites | |—no-onboard | Ignorer l'onboarding | |—onboard | Activer l'onboarding | |—dry-run | Afficher les actions sans appliquer les modifications | |—verbose | Activer la sortie de débogage (set -xnpm, journaux de niveau notice npm) | | —help | Afficher l'utilisation (-h`) |
Référence des variables d'environnement
| Variable | Description |
|---|---|
OPENCLAW_INSTALL_METHOD=git|npm | Méthode d’installation |
| `OPENCLAW_VERSION=latest|next| |
|
| version npm, dist-tag ou spécification de paquet | |OPENCLAW_BETA=0|1 | Utiliser la version bêta si disponible | |OPENCLAW_HOME=
| Répertoire de base pour l'état OpenClaw et les chemins git/onboarding par défaut | |OPENCLAW_GIT_DIR=
| Répertoire de checkout | |OPENCLAW_GIT_UPDATE=0|1 | Activer/Désactiver les mises à jour git | |OPENCLAW_NO_PROMPT=1 | Désactiver les invites | |OPENCLAW_NO_ONBOARD=1 | Ignorer l'onboarding | |OPENCLAW_DRY_RUN=1 | Mode simulation | |OPENCLAW_VERBOSE=1 | Mode de débogage | |OPENCLAW_NPM_LOGLEVEL=error|warn|notice` | niveau de log npm |
install-cli.sh
Section intitulée « install-cli.sh »Flux (install-cli.sh)
Section intitulée « Flux (install-cli.sh) »Installer le runtime Node local
Télécharge une archive tarball Node LTS prise en charge épinglée (la version est intégrée dans le script et mise à jour indépendamment) vers `
/tools/node-v
et vérifie le SHA-256. Sur Alpine/musl Linux, où Node ne publie pas d'archives tarball compatibles pour le runtime épinglé, installenodejsetnpmavecapket lie ce runtime dans le chemin du wrapper de préfixe. Les dépôts Alpine doivent fournir Node22.19+` ; utilisez Alpine 3.21 ou plus récent si les anciens dépôts ne fournissent que Node 20 ou 21.Ensure Git
Si Git est manquant, tente l’installation via apt/dnf/yum/apk sur Linux ou Homebrew sur macOS.
Install OpenClaw under prefix
- Méthode
npm(par défaut) : installe sous le préfixe avec npm, puis écrit un wrapper vers `
/bin/openclaw
- Méthodegit: clone/met à jour une extraction (par défaut~/openclaw) et écrit toujours le wrapper vers/bin/openclaw`
- Méthode
Refresh loaded gateway service
Si un service passerelle est déjà chargé depuis ce même préfixe, le script exécute
openclaw gateway install --force, puisopenclaw gateway restart, et sonde l’état de santé de la passerelle au mieux.
Exemples (install-cli.sh)
Section intitulée « Exemples (install-cli.sh) »bash curl -fsSL --proto '=https' --tlsv1.2 https://openclaw.ai/install-cli.sh | bash
bash curl -fsSL --proto '=https' --tlsv1.2 https://openclaw.ai/install-cli.sh | bash -s -- --prefix /opt/openclaw --version latest
bash curl -fsSL --proto '=https' --tlsv1.2 https://openclaw.ai/install-cli.sh | bash -s -- --install-method git --git-dir ~/openclaw
bash curl -fsSL --proto '=https' --tlsv1.2 https://openclaw.ai/install-cli.sh | bash -s -- --json --prefix /opt/openclaw
bash curl -fsSL --proto '=https' --tlsv1.2 https://openclaw.ai/install-cli.sh | bash -s -- --onboard
Référence des indicateurs
| Indicateur | Description |
|---|---|
| `—prefix |
| Préfixe d'installation (par défaut :~/.openclaw) | | —install-method npm|git| Choisir la méthode d'installation (par défaut :npm). Alias : —method | |—npmnpm | Raccourci pour la méthode npm | | —git, —github | Raccourci pour la méthode git | |—git-dir
| Répertoire de checkout Git (par défaut :~/openclaw). Alias : —dir | |—version
OpenClaw | Version ou balise de distribution d'OpenClaw (par défaut : latest) | | —node-version
| Version de Node (par défaut :22.22.0) | | —json | Émettre des événements NDJSON | |—onboard | Exécuteropenclaw onboardaprès l'installation | |—no-onboard | Ignorer l'onboarding (par défaut) | |—set-npm-prefixLinuxnpm | Sur Linux, forcer le préfixe npm à ~/.npm-globalsi le préfixe actuel n'est pas inscriptible | |—help | Afficher l'utilisation (-h`) |
Référence des variables d'environnement
| Variable | Description |
|---|---|
| `OPENCLAW_PREFIX= |
| Préfixe d'installation | |OPENCLAW_INSTALL_METHOD=git|npm | Méthode d'installation | |OPENCLAW_VERSION=
OpenClaw | Version OpenClaw ou dist-tag | | OPENCLAW_NODE_VERSION=
| Version Node | |OPENCLAW_HOME=
OpenClaw | Répertoire de base pour l'état OpenClaw et les chemins git/onboarding par défaut | | OPENCLAW_GIT_DIR=
| Répertoire de checkout Git pour les installations git | |OPENCLAW_GIT_UPDATE=0|1 | Activer/Désactiver les mises à jour git pour les checkouts existants | |OPENCLAW_NO_ONBOARD=1 | Ignorer l'onboarding | |OPENCLAW_NPM_LOGLEVEL=error|warn|notice`npm | Niveau de log npm |
install.ps1
Section intitulée « install.ps1 »Flux (install.ps1)
Section intitulée « Flux (install.ps1) »WindowsS'assurer de l'environnement PowerShell + Windows
Nécessite PowerShell 5+.
Node.jsS'assurer de Node.js 24 par défaut
S’il est manquant, tente l’installation via winget, puis Chocolatey, puis Scoop. Si aucun gestionnaire de paquets n’est disponible, le script télécharge le zip Windows officiel de Node.js dans
%LOCALAPPDATA%\OpenClaw\deps\portable-nodeet l’ajoute au PATH de l’utilisateur et du processus actuel. Node 22 LTS, actuellement22.19+, reste pris en charge pour la compatibilité.Installer OpenClaw
- méthode
npm(par défaut) : installation globale npm en utilisant le-Tagsélectionné, lancée à partir d’un répertoire temporaire de l’installateur inscriptible afin que les shells ouverts dans des dossiers protégés tels queC:\fonctionnent toujours - méthode
git: clone/met à jour le dépôt, installe/construit avec pnpm, et installe un wrapper à%USERPROFILE%\.local\bin\openclaw.cmd. Si Git est manquant, le script amorce MinGit local utilisateur sous%LOCALAPPDATA%\OpenClaw\deps\portable-gitet l’ajoute au PATH utilisateur et du processus actuel.
- méthode
Tâches post-installation
- Ajoute le répertoire bin nécessaire au PATH utilisateur lorsque cela est possible
- Actualise un service de passerelle chargé au mieux (
openclaw gateway install --force, puis redémarre) - Exécute
openclaw doctor --non-interactivelors des mises à niveau et des installations git (au mieux)
Gérer les échecs
Les installations
iwr ... | iexet de blocs de script signalent une erreur fatale sans fermer la session PowerShell actuelle. Les installations directespowershell -File/pwsh -Filequittent toujours avec un code non nul pour l’automatisation.
Exemples (install.ps1)
Section intitulée « Exemples (install.ps1) »powershell iwr -useb https://openclaw.ai/install.ps1 | iex
powershell & ([scriptblock]::Create((iwr -useb https://openclaw.ai/install.ps1))) -InstallMethod git
powershell & ([scriptblock]::Create((iwr -useb https://openclaw.ai/install.ps1))) -InstallMethod git -Tag main
powershell & ([scriptblock]::Create((iwr -useb https://openclaw.ai/install.ps1))) -InstallMethod git -GitDir "C:\openclaw"
powershell & ([scriptblock]::Create((iwr -useb https://openclaw.ai/install.ps1))) -DryRun
powershell # install.ps1 has no dedicated -Verbose flag yet. Set-PSDebug -Trace 1 & ([scriptblock]::Create((iwr -useb https://openclaw.ai/install.ps1))) -NoOnboard Set-PSDebug -Trace 0
Référence des drapeaux
| Drapeau | Description |
|---|---|
-InstallMethod npm|git | Méthode d’installation (par défaut : npm) |
| `-Tag |
npm | npm dist-tag, version ou spécification de paquet (par défaut : latest) | | -GitDir
| Répertoire de checkout (par défaut :%USERPROFILE%\openclaw) | | -NoOnboard | Ignorer l'onboarding | |-NoGitUpdate | Ignorergit pull | |-DryRun` | Afficher uniquement les actions |
Référence des variables d'environnement
| Variable | Description |
|---|---|
OPENCLAW_INSTALL_METHOD=git|npm | Méthode d’installation |
| `OPENCLAW_GIT_DIR= |
| Répertoire de checkout | |OPENCLAW_NO_ONBOARD=1 | Ignorer l'onboarding | |OPENCLAW_GIT_UPDATE=0 | Désactiver git pull | |OPENCLAW_DRY_RUN=1` | Mode test à blanc |
CI et automatisation
Section intitulée « CI et automatisation »Utilisez les drapeaux/variables d’environnement non interactifs pour des exécutions prévisibles.
bash curl -fsSL --proto '=https' --tlsv1.2 https://openclaw.ai/install.sh | bash -s -- --no-prompt --no-onboard
bash OPENCLAW_INSTALL_METHOD=git OPENCLAW_NO_PROMPT=1 \ curl -fsSL --proto '=https' --tlsv1.2 https://openclaw.ai/install.sh | bash
bash curl -fsSL --proto '=https' --tlsv1.2 https://openclaw.ai/install-cli.sh | bash -s -- --json --prefix /opt/openclaw
powershell & ([scriptblock]::Create((iwr -useb https://openclaw.ai/install.ps1))) -NoOnboard
Dépannage
Section intitulée « Dépannage »Pourquoi Git est-il requis ?
Git est requis pour la méthode d’installation git. Pour les installations npm, Git est toujours vérifié/installé pour éviter les échecs spawn git ENOENT lorsque les dépendances utilisent des URL git.
Pourquoi npm rencontre-t-il EACCES sur Linux ?
Certaines configurations Linux pointent le préfixe global npm vers des chemins détenus par root. install.sh peut changer le préfixe vers ~/.npm-global et ajouter les exports PATH aux fichiers rc du shell (lorsque ces fichiers existent).
Windows : « npm error spawn git / ENOENT »
Relancez le programme d’installation pour qu’il puisse amorcer MinGit local à l’utilisateur, ou installez Git pour Windows et rouvrez PowerShell.
Windows : « openclaw n
Exécutez npm config get prefix et ajoutez ce répertoire à votre PATH utilisateur (pas de suffixe \bin nécessaire sur Windows), puis rouvrez PowerShell.
Windows : comment obtenir une sortie détaillée de l'installateur
install.ps1 n’expose actuellement pas de commutateur -Verbose.
Utilisez le suivi PowerShell pour les diagnostics au niveau du script :
Set-PSDebug -Trace 1& ([scriptblock]::Create((iwr -useb https://openclaw.ai/install.ps1))) -NoOnboardSet-PSDebug -Trace 0openclaw introuvable après l'installation
Généralement un problème de PATH. Voir Node.js troubleshooting.