Aller au contenu

Installer internals

OpenClaw est fourni avec trois scripts d’installation, accessibles via openclaw.ai.

ScriptPlateformeCe qu’il fait
install.shmacOS / Linux / WSLInstalle Node si nécessaire, installe OpenClaw via npm (par défaut) ou git, et peut exécuter l’onboarding.
install-cli.shmacOS / Linux / WSLInstalle Node + OpenClaw dans un préfixe local (~/.openclaw) avec les modes npm ou git checkout. Aucun accès root requis.
install.ps1Windows (PowerShell)Installe Node si nécessaire, installe OpenClaw via npm (par défaut) ou git, et peut exécuter l’onboarding.
Fenêtre de terminal
curl -fsSL --proto '=https' --tlsv1.2 https://openclaw.ai/install.sh | bash
Fenêtre de terminal
curl -fsSL --proto '=https' --tlsv1.2 https://openclaw.ai/install.sh | bash -s -- --help


  1. Détecter le système d'exploitation

    Prend en charge macOS et Linux (y compris WSL). Si macOS est détecté, installe Homebrew s’il est manquant.

  2. Node.jsGarantir Node.js 24 par défaut

    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). OpenClaw prend toujours en charge Node 22 LTS, actuellement 22.19+, pour la compatibilité.

  3. Assurer Git

    Installe Git s’il est manquant.

  4. Installer OpenClaw

    • Méthode npm (par défaut) : installation globale npm
    • Méthode git : cloner/mettre à jour le dépôt, installer les dépendances avec pnpm, construire, puis installer le wrapper dans ~/.local/bin/openclaw
  5. Tâches post-installation

    • Actualise un service de passerelle chargé au mieux (openclaw gateway install --force, puis redémarre)
    • Exécute openclaw doctor --non-interactive lors 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)
    • Définit SHARP_IGNORE_GLOBAL_LIBVIPS=1 par défaut

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 aucun TTY n’est disponible et qu’aucune méthode d’installation n’est définie, il par défaut sur npm et avertit.

Le script se termine avec le code 2 pour une sélection de méthode invalide ou des valeurs --install-method invalides.

bash curl -fsSL --proto '=https' --tlsv1.2 https://openclaw.ai/install.sh | bash

Référence des options
OptionDescription
--install-method npm|gitChoisir la méthode d’installation (par défaut : npm). Alias : --method
--npmRaccourci pour la méthode npm
--gitRaccourci pour la méthode git. Alias : --github
`—version

| 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 -x, logs de niveau notice npm) | | —help | Afficher l'utilisation (-h`) |

Référence des variables d'environnement
VariableDescription
OPENCLAW_INSTALL_METHOD=git|npmMéthode d’installation
`OPENCLAW_VERSION=latest|next|main|

|

| version npm, dist-tag ou spécification de paquet | |OPENCLAW_BETA=0|1 | Utiliser la bêta si disponible | |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 (dry run) | |OPENCLAW_VERBOSE=1 | Mode débogage | |OPENCLAW_NPM_LOGLEVEL=error|warn|notice | niveau de log npm | |SHARP_IGNORE_GLOBAL_LIBVIPS=0|1 | Contrôler le comportement de sharp/libvips (défaut :1`) |


  1. Installer l'exécution Node locale

    Télécharge une archive tarball Node LTS prise en charge et é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.

  2. S'assurer de la présence de Git

    Si Git est manquant, tente une installation via apt/dnf/yum sur Linux ou Homebrew sur macOS.

  3. Installer OpenClaw sous le préfixe

    • Méthode npm (par défaut) : installe sous le préfixe avec npm, puis écrit le wrapper dans `

    /bin/openclaw - Méthodegit: clone/met à jour une extraction (par défaut~/openclaw) et écrit toujours le wrapper dans

    /bin/openclaw`

  4. Actualiser le service de passerelle chargé

    Si un service de passerelle est déjà chargé à partir du même préfixe, le script exécute openclaw gateway install --force, puis openclaw gateway restart, et sonde l’état de santé de la passerelle au mieux.

bash curl -fsSL --proto '=https' --tlsv1.2 https://openclaw.ai/install-cli.sh | bash

Référence des options
OptionDescription
`—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 | |—npm | 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

| Version de OpenClaw ou dist-tag (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'intégration (par défaut) | |—set-npm-prefix | Sur Linux, forcer le préfixe npm à~/.npm-globalsi le préfixe actuel n'est pas accessible en écriture | |—help | Afficher l'utilisation (-h`) |

Référence des variables d'environnement
VariableDescription
`OPENCLAW_PREFIX=

| Préfixe d'installation | |OPENCLAW_INSTALL_METHOD=git|npm | Méthode d'installation | |OPENCLAW_VERSION=

| Version OpenClaw ou dist-tag | |OPENCLAW_NODE_VERSION=

| Version Node | |OPENCLAW_GIT_DIR=

| Répertoire de checkout Git pour les installations git | |OPENCLAW_GIT_UPDATE=0|1 | Activer les mises à jour git pour les checkouts existants | |OPENCLAW_NO_ONBOARD=1 | Ignorer l'onboarding | |OPENCLAW_NPM_LOGLEVEL=error|warn|notice| Niveau de log npm | |SHARP_IGNORE_GLOBAL_LIBVIPS=0|1 | Contrôler le comportement de sharp/libvips (par défaut :1`) |


  1. S'assurer de l'environnement PowerShell + Windows

    Nécessite PowerShell 5+.

  2. Node.jsGarantir Node.js 24 par défaut

    Si manquant, tente l’installation via winget, puis Chocolatey, puis Scoop. Node 22 LTS, actuellement 22.19+, reste pris en charge pour la compatibilité.

  3. OpenClawInstaller OpenClaw

    • Méthode npmnpm (par défaut) : installation npm globale utilisant le -Tag sélectionné, lancée à partir d’un répertoire temporaire de l’installateur accessible en écriture afin que les shells ouverts dans des dossiers protégés tels que C:\ fonctionnent toujours
    • Méthode git : clone/mise à jour du dépôt, installation/construction avec pnpm, et installation du wrapper à %USERPROFILE%\.local\bin\openclaw.cmd
  4. Tâches post-installation

    • Ajoute le répertoire bin nécessaire au PATH utilisateur lorsque possible
    • Tente de rafraîchir un service de passerelle chargé (openclaw gateway install --force, puis redémarrage)
    • Exécute openclaw doctor --non-interactive lors des mises à niveau et des installations git (au mieux)
  5. Gérer les échecs

    Les installations iwr ... | iex et de blocs de script signalent une erreur sans fermer la session PowerShell actuelle. Les installations directes powershell -File / pwsh -File sortent toujours avec un code non nul pour l’automatisation.

powershell iwr -useb https://openclaw.ai/install.ps1 | iex

Référence des drapeaux
DrapeauDescription
-InstallMethod npm|gitMéthode d’installation (par défaut : npm)
`-Tag

npm | dist-tag npm, 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
VariableDescription
OPENCLAW_INSTALL_METHOD=git|npmMé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 Dry run |


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


Pourquoi Git est-il requis ?

Git est requis pour la méthode d’installation git. Pour les installations npm, Git est tout de même 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 font pointer le préfixe global npm vers des chemins détenus par root. install.sh peut modifier le préfixe vers ~/.npm-global et ajouter des exports PATH aux fichiers rc du shell (lorsque ces fichiers existent).

sharp/libvips issues

Par défaut, les scripts définissent SHARP_IGNORE_GLOBAL_LIBVIPS=1 pour éviter que sharp ne soit compilé avec la libvips du système. Pour remplacer :

Fenêtre de terminal
SHARP_IGNORE_GLOBAL_LIBVIPS=0 curl -fsSL --proto '=https' --tlsv1.2 https://openclaw.ai/install.sh | bash
Windows: "npm error spawn git / ENOENT"

Installez Git pour Windows, rouvrez PowerShell, relancez l’installateur.

WindowsWindows: "openclaw is not recognized"

Exécutez npm config get prefix et ajoutez ce répertoire à votre PATH utilisateur (le suffixe \binWindows n’est pas nécessaire sous Windows), puis rouvrez PowerShell.

WindowsWindows: how to get verbose installer output

install.ps1 n’expose pas actuellement de commutateur -Verbose. Utilisez le traçage PowerShell pour les diagnostics au niveau du script :

Fenêtre de terminal
Set-PSDebug -Trace 1
& ([scriptblock]::Create((iwr -useb https://openclaw.ai/install.ps1))) -NoOnboard
Set-PSDebug -Trace 0
openclaw not found after install

Généralement un problème de PATH. Voir Node.js troubleshooting.