Install overview
Interna des Installationsprogramms
OpenClaw stellt drei Installationsskripte bereit, die von openclaw.ai ausgeliefert werden.
| Skript | Plattform | Funktion |
|---|---|---|
install.sh |
macOS / Linux / WSL | Installiert bei Bedarf Node, installiert OpenClaw über npm (Standard) oder git und kann das Onboarding ausführen. |
install-cli.sh |
macOS / Linux / WSL | Installiert Node und OpenClaw über npm oder git in ein lokales Präfix (~/.openclaw). Keine Root-Rechte erforderlich. |
install.ps1 |
Windows (PowerShell) | Installiert bei Bedarf Node, installiert OpenClaw über npm (Standard) oder git und kann das Onboarding ausführen. |
Alle drei unterstützen Node 22.22.3+, 24.15+ oder 25.9+; Node 24 ist das Standardziel für Neuinstallationen.
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 bei Bedarf Node 24 (Homebrew unter macOS, NodeSource-Setup-Skripte unter Linux mit apt/dnf/yum). Unter macOS wird Homebrew nur installiert, wenn das Installationsprogramm es für Node oder Git benötigt. Node 22.22.3+, Node 24.15+ und Node 25.9+ werden unterstützt; Node 23 wird nicht unterstützt.
Unter Alpine/musl Linux verwendet das Installationsprogramm anstelle von NodeSource apk-Pakete und überprüft die tatsächlich verknüpfte SQLite-Version. Aktuelle stabile Alpine-Paketquellen können eine ausreichend neue Node-Version mit einer anfälligen Systemversion von SQLite bereitstellen; verwenden Sie in diesem Fall stattdessen einen offiziellen node:24-alpine-Container oder einen glibc-basierten Host.
Git sicherstellen
Installiert Git bei Bedarf mit dem erkannten Paketmanager, einschließlich Homebrew unter macOS und apk unter Alpine.
OpenClaw installieren
npm-Methode (Standard): globale Installation mit npmgit-Methode: Repository klonen/aktualisieren, Abhängigkeiten mit pnpm installieren, erstellen und anschließend den Wrapper unter~/.local/bin/openclawinstallieren
Aufgaben nach der Installation
- Ermittelt die soeben installierte Binärdatei
openclawfür nachfolgende Befehle - Bei einer nicht konfigurierten Installation wird das Onboarding vor Doctor- oder Gateway-Prüfungen gestartet. Mit
--no-onboardoder ohne TTY wird der Befehl ausgegeben, mit dem die Einrichtung später abgeschlossen werden kann. - Bei einer konfigurierten Installation wird ein geladener Gateway-Dienst nach bestem Bemühen aktualisiert und neu gestartet und anschließend Doctor ausgeführt. Bei Upgrades werden Plugins nach Möglichkeit aktualisiert; alternativ wird bei einer Headless-Ausführung mit aktivierten Eingabeaufforderungen der manuelle Befehl ausgegeben.
- Wenn
--verifyausgeführt wird, prüft es die installierte Version und den Zustand des Gateways erst, nachdem eine Konfiguration vorhanden ist.
Erkennung eines Quellcode-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 und keine Installationsmethode festgelegt ist, wird standardmäßig npm verwendet und eine Warnung ausgegeben.
Das Skript wird bei einer ungültigen Methodenwahl oder ungültigen Werten für --install-method mit dem Code 2 beendet.
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 gitCheckout des main-Branches von GitHub
curl -fsSL --proto '=https' --tlsv1.2 https://openclaw.ai/install.sh | bash -s -- --install-method git --version mainTestlauf
curl -fsSL --proto '=https' --tlsv1.2 https://openclaw.ai/install.sh | bash -s -- --dry-runNach der Installation überprüfen
curl -fsSL --proto '=https' --tlsv1.2 https://openclaw.ai/install.sh | bash -s -- --no-onboard --verifyFlag-Referenz
| Flag | Beschreibung |
|---|---|
--install-method | --method npm|git |
Installationsmethode auswählen (Standard: npm) |
--npm |
Kurzform für die npm-Methode |
--git | --github |
Kurzform für die git-Methode |
--version <version|dist-tag|spec> |
npm-Version, Dist-Tag oder Paketspezifikation (Standard: latest) |
--beta |
Beta-Dist-Tag verwenden, sofern verfügbar, andernfalls auf latest zurückfallen |
--git-dir | --dir <path> |
Checkout-Verzeichnis (Standard: ~/openclaw) |
--no-git-update |
git pull für vorhandenen Checkout überspringen |
--no-prompt |
Eingabeaufforderungen deaktivieren |
--no-onboard |
Onboarding überspringen |
--onboard |
Onboarding aktivieren |
--verify |
Smoke-Test nach der Installation ausführen (--version, Gateway-Zustand, falls geladen) |
--dry-run |
Aktionen ausgeben, ohne Änderungen anzuwenden |
--verbose |
Debug-Ausgabe aktivieren (set -x, npm-Protokolle auf Notice-Ebene) |
--help | -h |
Verwendung anzeigen |
Referenz der Umgebungsvariablen
| Variable | Beschreibung |
|---|---|
OPENCLAW_INSTALL_METHOD=git|npm |
Installationsmethode |
OPENCLAW_VERSION=latest|next|<semver>|<spec> |
npm-Version, Dist-Tag oder Paketspezifikation |
OPENCLAW_BETA=0|1 |
Beta verwenden, sofern verfügbar |
OPENCLAW_HOME=<path> |
Basisverzeichnis für den OpenClaw-Zustand und die standardmäßigen Git-/Onboarding-Pfade |
OPENCLAW_GIT_DIR=<path> |
Checkout-Verzeichnis |
OPENCLAW_GIT_UPDATE=0|1 |
Git-Aktualisierungen umschalten |
OPENCLAW_NO_PROMPT=1 |
Eingabeaufforderungen deaktivieren |
OPENCLAW_VERIFY_INSTALL=1 |
Smoke-Test nach der Installation ausführen |
OPENCLAW_NO_ONBOARD=1 |
Onboarding überspringen |
OPENCLAW_DRY_RUN=1 |
Testlaufmodus |
OPENCLAW_VERBOSE=1 |
Debug-Modus |
OPENCLAW_NPM_LOGLEVEL=error|warn|notice |
npm-Protokollierungsstufe (Standard: error, blendet npm-Hinweise zu veralteten Funktionen aus) |
install-cli.sh
Ablauf (install-cli.sh)
Lokale Node-Laufzeit installieren
Lädt ein angeheftetes, unterstütztes Node-LTS-Tarball (die Version ist im Skript eingebettet und wird unabhängig aktualisiert, Standard: 24.15.0) nach <prefix>/tools/node-v<version> herunter und überprüft SHA-256.
Linux ARMv7 verwendet Node 22.22.3, da keine offiziellen Binärdateien für Node 24+ unter ARMv7 verfügbar sind.
Unter Alpine/musl Linux, für das Node keine kompatiblen Tarballs für die angeheftete Laufzeit veröffentlicht, werden nodejs und npm mit apk installiert; anschließend werden sowohl Node als auch die tatsächlich verknüpfte SQLite-Bibliothek überprüft. Aktuelle stabile Alpine-Paketquellen können selbst mit einer ausreichend neuen Node-Version weiterhin eine anfällige SQLite-Version verknüpfen; verwenden Sie einen offiziellen node:24-alpine-Container oder einen glibc-basierten Host, wenn die Sicherheitsprüfung das Paket ablehnt.
Git sicherstellen
Wenn Git fehlt, wird versucht, es unter Linux über apt/dnf/yum/apk oder unter macOS über Homebrew zu installieren.
OpenClaw unter dem Präfix installieren
npm-Methode (Standard): installiert mit npm unter dem Präfix und schreibt anschließend den Wrapper nach<prefix>/bin/openclawgit-Methode: klont/aktualisiert einen Checkout (Standard:~/openclaw) und schreibt den Wrapper ebenfalls nach<prefix>/bin/openclaw
Geladenen Gateway-Dienst aktualisieren
Wenn bereits ein Gateway-Dienst aus demselben Präfix geladen ist, führt das Skript
openclaw gateway install --force aus, wodurch der Ersatzdienst aktiviert wird,
und prüft anschließend nach bestem Bemühen den Zustand des Gateways.
Beispiele (install-cli.sh)
Standard
curl -fsSL --proto '=https' --tlsv1.2 https://openclaw.ai/install-cli.sh | bashBenutzerdefiniertes Präfix und benutzerdefinierte 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 die 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 -- --onboardFlag-Referenz
| Flag | Beschreibung |
|---|---|
--prefix <path> |
Installationspräfix (Standard: ~/.openclaw) |
--install-method | --method npm|git |
Installationsmethode auswählen (Standard: npm) |
--npm |
Kurzform für die npm-Methode |
--git | --github |
Kurzform für die Git-Methode |
--git-dir | --dir <path> |
Git-Checkout-Verzeichnis (Standard: ~/openclaw) |
--version <ver> |
OpenClaw-Version oder Dist-Tag (Standard: latest) |
--node-version <ver> |
Node-Version (Standard: 24.15.0; 22.22.3 unter Linux ARMv7) |
--json |
NDJSON-Ereignisse ausgeben |
--onboard |
Nach der Installation openclaw onboard ausführen |
--no-onboard |
Onboarding überspringen (Standard) |
--set-npm-prefix |
Unter Linux das npm-Präfix auf ~/.npm-global setzen, wenn das aktuelle Präfix nicht beschreibbar ist |
--help | -h |
Verwendung anzeigen |
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 den OpenClaw-Status und die standardmäßigen Git-/Onboarding-Pfade |
OPENCLAW_GIT_DIR=<path> |
Git-Checkout-Verzeichnis für Git-Installationen |
OPENCLAW_GIT_UPDATE=0|1 |
Git-Aktualisierungen für vorhandene Checkouts ein- oder ausschalten |
OPENCLAW_NO_ONBOARD=1 |
Onboarding überspringen |
OPENCLAW_NPM_LOGLEVEL=error|warn|notice |
npm-Protokollierungsstufe (Standard: error) |
install.ps1
Ablauf (install.ps1)
PowerShell- und Windows-Umgebung sicherstellen
Erfordert PowerShell 5+.
Standardmäßig Node.js 24 sicherstellen
Falls nicht vorhanden, wird die Installation zunächst über winget, dann über Chocolatey und anschließend über Scoop versucht. Wenn kein Paketmanager verfügbar ist, lädt das Skript die offizielle Windows-ZIP-Datei von Node.js 24 nach %LOCALAPPDATA%\OpenClaw\deps\portable-node herunter und fügt sie dem PATH des aktuellen Prozesses und des Benutzers hinzu. Node 22.22.3+, Node 24.15+ und Node 25.9+ werden unterstützt; Node 23 wird nicht unterstützt.
OpenClaw installieren
npm-Methode (Standard): globale npm-Installation mit dem ausgewählten-Tag, gestartet aus einem beschreibbaren temporären Installationsverzeichnis, damit auch Shells funktionieren, die in geschützten Ordnern wieC:\geöffnet wurdengit-Methode: Repository klonen/aktualisieren, mit pnpm installieren/erstellen und Wrapper unter%USERPROFILE%\.local\bin\openclaw.cmdinstallieren. Falls Git fehlt, richtet das Skript benutzerlokales MinGit unter%LOCALAPPDATA%\OpenClaw\deps\portable-gitein und fügt es dem PATH des aktuellen Prozesses und des Benutzers hinzu.
Aufgaben nach der Installation
- Fügt das erforderliche Binärverzeichnis nach Möglichkeit dem Benutzer-PATH hinzu
- Aktualisiert einen geladenen Gateway-Dienst nach bestem Bemühen (
openclaw gateway install --force, anschließend Neustart) - Führt bei Upgrades und Git-Installationen
openclaw doctor --non-interactiveaus (nach bestem Bemühen)
Fehler behandeln
iwr ... | iex- und Skriptblockinstallationen melden einen beendenden Fehler, ohne die aktuelle PowerShell-Sitzung zu schließen. Direkte Installationen über powershell -File / pwsh -File werden für Automatisierungen weiterhin mit einem Exitcode ungleich null beendet.
Beispiele (install.ps1)
Standard
iwr -useb https://openclaw.ai/install.ps1 | iexGit-Installation
& ([scriptblock]::Create((iwr -useb https://openclaw.ai/install.ps1))) -InstallMethod gitCheckout des GitHub-Hauptzweigs
& ([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"Testlauf
& ([scriptblock]::Create((iwr -useb https://openclaw.ai/install.ps1))) -DryRunReferenz der Flags
| 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 |
Testlaufmodus |
CI und Automatisierung
Verwenden Sie nicht interaktive Flags/Umgebungsvariablen für vorhersehbare Ausführungen.
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 Installationsmethode git 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?
Bei einigen Linux-Konfigurationen verweist das globale npm-Präfix auf Pfade, die root gehören. install.sh kann das Präfix auf ~/.npm-global umstellen und PATH-Exporte an Shell-RC-Dateien anhängen (sofern diese Dateien vorhanden sind).
Windows: "npm error spawn git / ENOENT"
Führen Sie das Installationsprogramm erneut aus, damit es 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 Suffix \bin erforderlich). Öffnen Sie anschließend PowerShell erneut.
Windows: ausführliche Ausgabe des Installationsprogramms erhalten
install.ps1 stellt keinen Schalter -Verbose bereit.
Verwenden Sie PowerShell-Ablaufverfolgung 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 liegt ein PATH-Problem vor. Siehe Fehlerbehebung für Node.js.