Install overview
Installer-Interna
OpenClaw liefert drei Installationsskripte aus, die über openclaw.ai bereitgestellt werden.
| Skript | Plattform | Funktion |
|---|---|---|
install.sh |
macOS / Linux / WSL | Installiert Node bei Bedarf, installiert OpenClaw über npm (Standard) oder git und kann das Onboarding ausführen. |
install-cli.sh |
macOS / Linux / WSL | Installiert Node + OpenClaw in ein lokales Präfix (~/.openclaw) mit npm- oder git-Checkout-Modi. Kein Root nötig. |
install.ps1 |
Windows (PowerShell) | Installiert Node bei Bedarf, installiert OpenClaw über npm (Standard) oder git und kann das Onboarding ausführen. |
Schnellbefehle
install.sh
curl -fsSL --proto '=https' --tlsv1.2 https://openclaw.ai/install.sh | bashcurl -fsSL --proto '=https' --tlsv1.2 https://openclaw.ai/install.sh | bash -s -- --helpinstall-cli.sh
curl -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 -- --helpinstall.ps1
iwr -useb https://openclaw.ai/install.ps1 | iex& ([scriptblock]::Create((iwr -useb https://openclaw.ai/install.ps1))) -Tag beta -NoOnboard -DryRuninstall.sh
Ablauf (install.sh)
Betriebssystem erkennen
Unterstützt macOS und Linux (einschließlich WSL).
Standardmäßig Node.js 24 sicherstellen
Prüft die Node-Version und installiert Node 24 bei Bedarf (Homebrew unter macOS, NodeSource-Setup-Skripte unter Linux apt/dnf/yum). Unter macOS wird Homebrew nur installiert, wenn der Installer es für Node oder Git benötigt. OpenClaw unterstützt aus Kompatibilitätsgründen weiterhin Node 22 LTS, derzeit 22.19+.
Unter Alpine/musl Linux verwendet der Installer apk-Pakete statt NodeSource; die konfigurierten Alpine-Repositorys müssen Node 22.19+ bereitstellen (zum Zeitpunkt der Erstellung Alpine 3.21 oder neuer).
Git sicherstellen
Installiert Git, falls es fehlt, mit dem erkannten Paketmanager, einschließlich Homebrew unter macOS und apk unter Alpine.
OpenClaw installieren
npm-Methode (Standard): globale npm-Installationgit-Methode: Repository klonen/aktualisieren, Abhängigkeiten mit pnpm installieren, bauen, dann Wrapper unter~/.local/bin/openclawinstallieren
Aufgaben nach der Installation
- Aktualisiert einen geladenen Gateway-Dienst nach bestem Aufwand (
openclaw gateway install --force, dann Neustart) - Führt
openclaw doctor --non-interactivebei Upgrades und git-Installationen aus (nach bestem Aufwand) - Versucht das Onboarding, wenn geeignet (TTY verfügbar, Onboarding nicht deaktiviert und Bootstrap-/Konfigurationsprüfungen erfolgreich)
Erkennung eines Source-Checkouts
Wenn das Skript innerhalb eines OpenClaw-Checkouts (package.json + pnpm-workspace.yaml) ausgeführt wird, bietet es Folgendes an:
- Checkout verwenden (
git) oder - globale Installation verwenden (
npm)
Wenn kein TTY verfügbar ist und keine Installationsmethode festgelegt wurde, verwendet es standardmäßig npm und gibt eine Warnung aus.
Das Skript beendet sich mit Code 2 bei ungültiger Methodenauswahl oder ungültigen --install-method-Werten.
Beispiele (install.sh)
Standard
curl -fsSL --proto '=https' --tlsv1.2 https://openclaw.ai/install.sh | bashOnboarding überspringen
curl -fsSL --proto '=https' --tlsv1.2 https://openclaw.ai/install.sh | bash -s -- --no-onboardGit-Installation
curl -fsSL --proto '=https' --tlsv1.2 https://openclaw.ai/install.sh | bash -s -- --install-method gitGitHub-main-Checkout
curl -fsSL --proto '=https' --tlsv1.2 https://openclaw.ai/install.sh | bash -s -- --install-method git --version mainProbelauf
curl -fsSL --proto '=https' --tlsv1.2 https://openclaw.ai/install.sh | bash -s -- --dry-runReferenz der Flags
| Flag | Beschreibung |
|---|---|
--install-method npm|git |
Installationsmethode wählen (Standard: npm). Alias: --method |
--npm |
Kurzform für npm-Methode |
--git |
Kurzform für git-Methode. Alias: --github |
--version <version|dist-tag|spec> |
npm-Version, Dist-Tag oder Paket-Spezifikation (Standard: latest) |
--beta |
Beta-Dist-Tag verwenden, falls verfügbar, sonst Fallback auf latest |
--git-dir <path> |
Checkout-Verzeichnis (Standard: ~/openclaw). Alias: --dir |
--no-git-update |
git pull für bestehenden Checkout überspringen |
--no-prompt |
Eingabeaufforderungen deaktivieren |
--no-onboard |
Onboarding überspringen |
--onboard |
Onboarding aktivieren |
--dry-run |
Aktionen ausgeben, ohne Änderungen anzuwenden |
--verbose |
Debug-Ausgabe aktivieren (set -x, npm notice-level logs) |
--help |
Verwendung anzeigen (-h) |
Referenz der Umgebungsvariablen
| Variable | Beschreibung |
|---|---|
OPENCLAW_INSTALL_METHOD=git|npm |
Installationsmethode |
OPENCLAW_VERSION=latest|next|<semver>|<spec> |
npm-Version, Dist-Tag oder Paket-Spezifikation |
OPENCLAW_BETA=0|1 |
Beta verwenden, falls verfügbar |
OPENCLAW_HOME=<path> |
Basisverzeichnis für OpenClaw-Zustand und standardmäßige git-/Onboarding-Pfade |
OPENCLAW_GIT_DIR=<path> |
Checkout-Verzeichnis |
OPENCLAW_GIT_UPDATE=0|1 |
git-Updates umschalten |
OPENCLAW_NO_PROMPT=1 |
Eingabeaufforderungen deaktivieren |
OPENCLAW_NO_ONBOARD=1 |
Onboarding überspringen |
OPENCLAW_DRY_RUN=1 |
Probelauf-Modus |
OPENCLAW_VERBOSE=1 |
Debug-Modus |
OPENCLAW_NPM_LOGLEVEL=error|warn|notice |
npm-Protokollstufe |
install-cli.sh
Ablauf (install-cli.sh)
Lokale Node-Laufzeit installieren
Lädt ein festgelegtes unterstütztes Node-LTS-Tarball (die Version ist im Skript eingebettet und wird unabhängig aktualisiert) nach <prefix>/tools/node-v<version> herunter und prüft SHA-256.
Unter Alpine/musl Linux, wo Node keine kompatiblen Tarballs für die festgelegte Laufzeit veröffentlicht, installiert es nodejs und npm mit apk und verknüpft diese Laufzeit in den Präfix-Wrapper-Pfad. Die Alpine-Repositorys müssen Node 22.19+ bereitstellen; verwenden Sie Alpine 3.21 oder neuer, wenn ältere Repositorys nur Node 20 oder 21 bereitstellen.
Git sicherstellen
Wenn Git fehlt, versucht das Skript die Installation über apt/dnf/yum/apk unter Linux oder Homebrew unter macOS.
OpenClaw unter Präfix installieren
npm-Methode (Standard): installiert unter dem Präfix mit npm und schreibt dann den Wrapper nach<prefix>/bin/openclawgit-Methode: klont/aktualisiert einen Checkout (Standard~/openclaw) und schreibt den Wrapper dennoch nach<prefix>/bin/openclaw
Geladenen Gateway-Dienst aktualisieren
Wenn ein Gateway-Dienst bereits aus demselben Präfix geladen ist, führt das Skript
openclaw gateway install --force, dann openclaw gateway restart aus und
prüft den Gateway-Zustand nach bestem Aufwand.
Beispiele (install-cli.sh)
Standard
curl -fsSL --proto '=https' --tlsv1.2 https://openclaw.ai/install-cli.sh | bashBenutzerdefiniertes Präfix + Version
curl -fsSL --proto '=https' --tlsv1.2 https://openclaw.ai/install-cli.sh | bash -s -- --prefix /opt/openclaw --version latestGit-Installation
curl -fsSL --proto '=https' --tlsv1.2 https://openclaw.ai/install-cli.sh | bash -s -- --install-method git --git-dir ~/openclawJSON-Ausgabe für Automatisierung
curl -fsSL --proto '=https' --tlsv1.2 https://openclaw.ai/install-cli.sh | bash -s -- --json --prefix /opt/openclawOnboarding ausführen
curl -fsSL --proto '=https' --tlsv1.2 https://openclaw.ai/install-cli.sh | bash -s -- --onboardReferenz der Flags
| Flag | Beschreibung |
|---|---|
--prefix <path> |
Installationspräfix (Standard: ~/.openclaw) |
--install-method npm|git |
Installationsmethode wählen (Standard: npm). Alias: --method |
--npm |
Kurzform für die npm-Methode |
--git, --github |
Kurzform für die git-Methode |
--git-dir <path> |
Git-Checkout-Verzeichnis (Standard: ~/openclaw). Alias: --dir |
--version <ver> |
OpenClaw-Version oder dist-tag (Standard: latest) |
--node-version <ver> |
Node-Version (Standard: 22.22.0) |
--json |
NDJSON-Ereignisse ausgeben |
--onboard |
Nach der Installation openclaw onboard ausführen |
--no-onboard |
Onboarding überspringen (Standard) |
--set-npm-prefix |
Unter Linux npm-Präfix auf ~/.npm-global erzwingen, wenn das aktuelle Präfix nicht beschreibbar ist |
--help |
Nutzung anzeigen (-h) |
Referenz der Umgebungsvariablen
| Variable | Beschreibung |
|---|---|
OPENCLAW_PREFIX=<path> |
Installationspräfix |
OPENCLAW_INSTALL_METHOD=git|npm |
Installationsmethode |
OPENCLAW_VERSION=<ver> |
OpenClaw-Version oder dist-tag |
OPENCLAW_NODE_VERSION=<ver> |
Node-Version |
OPENCLAW_HOME=<path> |
Basisverzeichnis für OpenClaw-Status und Standardpfade für git/Onboarding |
OPENCLAW_GIT_DIR=<path> |
Git-Checkout-Verzeichnis für git-Installationen |
OPENCLAW_GIT_UPDATE=0|1 |
Git-Updates für vorhandene Checkouts umschalten |
OPENCLAW_NO_ONBOARD=1 |
Onboarding überspringen |
OPENCLAW_NPM_LOGLEVEL=error|warn|notice |
npm-Protokollstufe |
install.ps1
Ablauf (install.ps1)
PowerShell- und Windows-Umgebung sicherstellen
Erfordert PowerShell 5+.
Standardmäßig Node.js 24 sicherstellen
Falls nicht vorhanden, versucht das Skript die Installation über winget, dann Chocolatey, dann Scoop. Wenn kein Paketmanager verfügbar ist, lädt das Skript das offizielle Node.js-Windows-Zip nach %LOCALAPPDATA%\OpenClaw\deps\portable-node herunter und fügt es dem aktuellen Prozess und dem Benutzer-PATH hinzu. Node 22 LTS, derzeit 22.19+, bleibt aus Kompatibilitätsgründen unterstützt.
OpenClaw installieren
npm-Methode (Standard): globale npm-Installation mit dem ausgewählten-Tag, gestartet aus einem beschreibbaren temporären Installer-Verzeichnis, sodass Shells, die in geschützten Ordnern wieC:\geöffnet wurden, weiterhin funktionierengit-Methode: Repo klonen/aktualisieren, mit pnpm installieren/bauen und Wrapper unter%USERPROFILE%\.local\bin\openclaw.cmdinstallieren. Wenn Git fehlt, richtet das Skript benutzerlokales MinGit unter%LOCALAPPDATA%\OpenClaw\deps\portable-gitein und fügt es dem aktuellen Prozess und dem Benutzer-PATH hinzu.
Aufgaben nach der Installation
- Fügt das benötigte bin-Verzeichnis nach Möglichkeit dem Benutzer-PATH hinzu
- Aktualisiert bestmöglich einen geladenen Gateway-Dienst (
openclaw gateway install --force, dann Neustart) - Führt bei Upgrades und git-Installationen
openclaw doctor --non-interactiveaus (bestmöglich)
Fehler behandeln
iwr ... | iex und Scriptblock-Installationen melden einen beendenden Fehler, ohne die aktuelle PowerShell-Sitzung zu schließen. Direkte Installationen mit powershell -File / pwsh -File beenden sich für Automatisierung weiterhin mit einem Exit-Code ungleich null.
Beispiele (install.ps1)
Standard
iwr -useb https://openclaw.ai/install.ps1 | iexGit-Installation
& ([scriptblock]::Create((iwr -useb https://openclaw.ai/install.ps1))) -InstallMethod gitGitHub-main-Checkout
& ([scriptblock]::Create((iwr -useb https://openclaw.ai/install.ps1))) -InstallMethod git -Tag mainBenutzerdefiniertes git-Verzeichnis
& ([scriptblock]::Create((iwr -useb https://openclaw.ai/install.ps1))) -InstallMethod git -GitDir "C:\openclaw"Probelauf
& ([scriptblock]::Create((iwr -useb https://openclaw.ai/install.ps1))) -DryRunDebug-Trace
# install.ps1 has no dedicated -Verbose flag yet.Set-PSDebug -Trace 1& ([scriptblock]::Create((iwr -useb https://openclaw.ai/install.ps1))) -NoOnboardSet-PSDebug -Trace 0Flag-Referenz
| Flag | Beschreibung |
|---|---|
-InstallMethod npm|git |
Installationsmethode (Standard: npm) |
-Tag <tag|version|spec> |
npm-dist-tag, Version oder Paketspezifikation (Standard: latest) |
-GitDir <path> |
Checkout-Verzeichnis (Standard: %USERPROFILE%\openclaw) |
-NoOnboard |
Onboarding überspringen |
-NoGitUpdate |
git pull überspringen |
-DryRun |
Nur Aktionen ausgeben |
Referenz der Umgebungsvariablen
| Variable | Beschreibung |
|---|---|
OPENCLAW_INSTALL_METHOD=git|npm |
Installationsmethode |
OPENCLAW_GIT_DIR=<path> |
Checkout-Verzeichnis |
OPENCLAW_NO_ONBOARD=1 |
Onboarding überspringen |
OPENCLAW_GIT_UPDATE=0 |
git pull deaktivieren |
OPENCLAW_DRY_RUN=1 |
Probelaufmodus |
CI und Automatisierung
Verwenden Sie nicht-interaktive Flags/Umgebungsvariablen für vorhersagbare Läufe.
install.sh (nicht-interaktives npm)
curl -fsSL --proto '=https' --tlsv1.2 https://openclaw.ai/install.sh | bash -s -- --no-prompt --no-onboardinstall.sh (nicht-interaktives git)
OPENCLAW_INSTALL_METHOD=git OPENCLAW_NO_PROMPT=1 \ curl -fsSL --proto '=https' --tlsv1.2 https://openclaw.ai/install.sh | bashinstall-cli.sh (JSON)
curl -fsSL --proto '=https' --tlsv1.2 https://openclaw.ai/install-cli.sh | bash -s -- --json --prefix /opt/openclawinstall.ps1 (Onboarding überspringen)
& ([scriptblock]::Create((iwr -useb https://openclaw.ai/install.ps1))) -NoOnboardFehlerbehebung
Warum ist Git erforderlich?
Git ist für die git-Installationsmethode erforderlich. Bei npm-Installationen wird Git dennoch geprüft/installiert, um spawn git ENOENT-Fehler zu vermeiden, wenn Abhängigkeiten git-URLs verwenden.
Warum tritt bei npm unter Linux EACCES auf?
Einige Linux-Setups verweisen das globale npm-Präfix auf root-eigene Pfade. install.sh kann das Präfix auf ~/.npm-global umstellen und PATH-Exporte an Shell-rc-Dateien anhängen (wenn diese Dateien vorhanden sind).
Windows: "npm error spawn git / ENOENT"
Führen Sie den Installer erneut aus, damit er benutzerlokales MinGit einrichten kann, oder installieren Sie Git for Windows und öffnen Sie PowerShell erneut.
Windows: "openclaw is not recognized"
Führen Sie npm config get prefix aus und fügen Sie dieses Verzeichnis Ihrem Benutzer-PATH hinzu (unter Windows ist kein \bin-Suffix erforderlich), öffnen Sie anschließend PowerShell erneut.
Windows: ausführliche Installer-Ausgabe erhalten
install.ps1 stellt derzeit keinen -Verbose-Schalter bereit.
Verwenden Sie PowerShell-Tracing für Diagnosen auf Skriptebene:
Set-PSDebug -Trace 1& ([scriptblock]::Create((iwr -useb https://openclaw.ai/install.ps1))) -NoOnboardSet-PSDebug -Trace 0openclaw nach der Installation nicht gefunden
In der Regel ist dies ein PATH-Problem. Siehe Node.js-Fehlerbehebung.