Maintenance
Aktualisierung
Halten Sie OpenClaw auf dem neuesten Stand.
Informationen zum Ersetzen von Images für Docker, Podman und Kubernetes finden Sie unter Container-Images aktualisieren. Das Gateway führt vor der Bereitschaft sicher ausführbare Aktualisierungsarbeiten aus und wird beendet, wenn der eingebundene Zustand manuell repariert werden muss.
Empfohlen: openclaw update
Erkennt Ihren Installationstyp (npm oder Git), lädt die neueste Version, führt openclaw doctor aus und startet das Gateway neu.
openclaw updateWechseln Sie den Kanal oder geben Sie eine bestimmte Version an:
openclaw update --channel betaopenclaw update --channel extended-stableopenclaw update --channel devopenclaw update --dry-run # Vorschau ohne Anwendungopenclaw update hat kein Flag --verbose (das Installationsprogramm hingegen schon). Verwenden Sie zur Diagnose
--dry-run, um die geplanten Aktionen in einer Vorschau anzuzeigen, --json für strukturierte Ergebnisse oder
openclaw update status --json, um den Kanal- und Verfügbarkeitsstatus zu prüfen.
--channel beta bevorzugt das npm-Dist-Tag „beta“, greift jedoch auf „stable/latest“
zurück, wenn das Beta-Tag fehlt oder seine Version älter als die neueste stabile
Version ist. Verwenden Sie stattdessen --tag beta für eine einmalige Paketaktualisierung,
die fest an das unverarbeitete npm-Beta-Dist-Tag gebunden ist.
--channel extended-stable ist nur für Pakete verfügbar, und die Installation erfolgt
weiterhin ausschließlich im Vordergrund. OpenClaw liest den öffentlichen npm-Selektor
extended-stable, verifiziert das exakt ausgewählte Paket und installiert genau diese
Version. Fehlende oder inkonsistente Registry-Daten führen zu einem sicheren Abbruch;
es wird niemals auf latest zurückgegriffen. Wenn die ausgewählte Version älter als die
installierte Version ist, gilt weiterhin die normale Bestätigung für ein Downgrade. Die
CLI speichert den Kanal nach einer erfolgreichen Aktualisierung des Kerns; ein direktes
npm install -g openclaw@extended-stable aktualisiert update.channel nicht.
Nach dem Austausch des Kerns werden geeignete offizielle npm-Plugins mit unveränderter/
standardmäßiger oder auf latest gerichteter Vorgabe exakt auf diese Kernversion
abgeglichen. Exakte Versionsbindungen und explizite Tags außer latest, Plugins von
Drittanbietern sowie Quellen außerhalb von npm bleiben unverändert. Kataloginstallationen,
die mit aktuellen OpenClaw-Versionen erstellt wurden, behalten diese Standardvorgabe bei.
Ältere Einträge, die nur eine exakte Version enthalten, bleiben fest an diese gebunden,
da OpenClaw eine alte automatische Bindung nicht sicher von einer benutzerdefinierten
Bindung unterscheiden kann. Führen Sie im Kanal „extended-stable“ einmal
openclaw plugins update @openclaw/name aus, damit dieses Plugin wieder die exakte
Kernversion nachverfolgt.
--channel dev stellt einen dauerhaften, fortlaufend aktualisierten GitHub-Checkout von
main bereit. Für eine einmalige Paketaktualisierung wird --tag main auf die
Paketspezifikation github:openclaw/openclaw#main abgebildet und direkt über den
vorgesehenen Paketmanager (npm/pnpm/bun) installiert.
Bei verwalteten Plugins ist eine fehlende Beta-Version eine Warnung und kein Fehler: Die Aktualisierung des Kerns kann trotzdem erfolgreich sein, während ein Plugin auf seine gespeicherte Standardversion bzw. neueste Version zurückgreift.
Informationen zur Bedeutung der Kanäle finden Sie unter Veröffentlichungskanäle.
Zwischen npm- und Git-Installationen wechseln
Verwenden Sie Kanäle, um den Installationstyp zu ändern. Das Aktualisierungsprogramm
behält Ihren Zustand, Ihre Konfiguration, Ihre Zugangsdaten und Ihren Arbeitsbereich
unter ~/.openclaw bei. Es ändert lediglich, welche OpenClaw-Codeinstallation von der
CLI und dem Gateway verwendet wird.
# npm-Paketinstallation -> bearbeitbarer Git-Checkoutopenclaw update --channel dev # Git-Checkout -> npm-Paketinstallationopenclaw update --channel stableZeigen Sie zunächst eine Vorschau des Wechsels des Installationsmodus an:
openclaw update --channel dev --dry-runopenclaw update --channel stable --dry-rundev stellt einen Git-Checkout sicher, erstellt ihn und installiert die globale CLI aus
diesem Checkout. Die Kanäle stable, extended-stable und beta verwenden
Paketinstallationen. „extended-stable“ wird bei einem Git-Checkout abgelehnt, ohne ihn
zu verändern oder umzuwandeln. Wenn das Gateway bereits installiert ist, aktualisiert
openclaw update die Dienstmetadaten und startet es neu, sofern Sie nicht
--no-restart angeben.
Bei Paketinstallationen mit einem verwalteten Gateway-Dienst verwendet
openclaw update als Ziel den von diesem Dienst verwendeten Paketstamm. Wenn der
Shell-Befehl openclaw aus einer anderen Installation stammt, gibt das
Aktualisierungsprogramm beide Stammverzeichnisse sowie den Node-Pfad des verwalteten
Dienstes aus und prüft diese Node-Version anhand der Anforderung engines.node der
Zielversion, bevor das Paket ersetzt wird.
Alternative: Installationsprogramm erneut ausführen
curl -fsSL https://openclaw.ai/install.sh | bashFügen Sie --no-onboard hinzu, um die Ersteinrichtung zu überspringen. Um einen
bestimmten Installationstyp zu erzwingen, übergeben Sie
--install-method git --no-onboard oder --install-method npm --no-onboard.
Wenn openclaw update nach der Phase der npm-Paketinstallation fehlschlägt, führen Sie
stattdessen das Installationsprogramm erneut aus. Es ruft das Aktualisierungsprogramm
nicht auf, sondern führt die globale Paketinstallation direkt aus und kann eine
teilweise aktualisierte npm-Installation wiederherstellen.
curl -fsSL https://openclaw.ai/install.sh | bash -s -- --install-method npmBinden Sie die Wiederherstellung mit --version an eine bestimmte Version oder ein
Dist-Tag:
curl -fsSL https://openclaw.ai/install.sh | bash -s -- --install-method npm --version <version-or-dist-tag>Alternative: npm, pnpm oder bun manuell verwenden
npm i -g openclaw@latestBevorzugen Sie bei überwachten Installationen openclaw update: Der Befehl kann den
Paketaustausch mit dem laufenden Gateway-Dienst koordinieren. Wenn Sie eine überwachte
Installation manuell aktualisieren, halten Sie zuerst das verwaltete Gateway an.
Paketmanager ersetzen Dateien direkt, und ein laufendes Gateway könnte andernfalls
versuchen, während des Austauschs Kern- oder Plugin-Dateien zu laden. Starten Sie das
Gateway neu, nachdem der Paketmanager fertig ist, damit es die neue Installation
übernimmt.
Wenn openclaw update bei einer systemweiten Linux-Installation im Besitz von root mit
EACCES fehlschlägt, führen Sie die Wiederherstellung mit dem systemweiten npm durch und
lassen Sie das Gateway während des manuellen Austauschs angehalten. Verwenden Sie
dieselben Profil-Flags bzw. dieselbe Umgebung, die Sie normalerweise für dieses Gateway
verwenden. Ersetzen Sie /usr/bin/npm durch das systemweite npm, dem das globale
root-eigene Präfix auf Ihrem Host gehört:
openclaw gateway stopsudo /usr/bin/npm i -g openclaw@latestopenclaw gateway install --forceopenclaw gateway restartFühren Sie anschließend die Überprüfung durch:
openclaw --versioncurl -fsS http://127.0.0.1:18789/readyzopenclaw plugins list --jsonopenclaw gateway status --deep --jsonopenclaw doctor --lint --jsonWenn openclaw update eine globale npm-Installation verwaltet, installiert es das Ziel
zunächst in ein temporäres npm-Präfix, verifiziert den Bestand des paketierten
dist-Verzeichnisses und tauscht anschließend den bereinigten Paketbaum in das
tatsächliche globale Präfix ein. Dadurch wird verhindert, dass npm ein neues Paket über
veraltete Dateien des alten Pakets legt. Wenn der Installationsbefehl fehlschlägt,
wiederholt OpenClaw ihn einmal mit --omit=optional. Dies hilft auf Hosts, auf denen
native optionale Abhängigkeiten nicht kompiliert werden können.
Von OpenClaw verwaltete npm-Aktualisierungs- und Plugin-Aktualisierungsbefehle setzen
außerdem die Lieferketten-Quarantäne min-release-age von npm (oder den älteren
Konfigurationsschlüssel before) für den untergeordneten npm-Prozess außer Kraft. Diese
Richtlinie dient dem allgemeinen Schutz, doch eine explizite OpenClaw-Aktualisierung
bedeutet: „Die ausgewählte Version jetzt installieren.“
pnpm add -g openclaw@latestbun add -g openclaw@latestFortgeschrittene Themen zur npm-Installation
Schreibgeschützter Paketbaum
OpenClaw behandelt paketierte globale Installationen zur Laufzeit als schreibgeschützt, selbst wenn das globale Paketverzeichnis für den aktuellen Benutzer beschreibbar ist. Plugin-Paketinstallationen befinden sich in OpenClaw-eigenen npm-/Git-Stammverzeichnissen unter dem Benutzerkonfigurationsverzeichnis, und der Start des Gateways verändert den OpenClaw-Paketbaum nicht.
Einige Linux-npm-Konfigurationen installieren globale Pakete in root-eigenen Verzeichnissen wie /usr/lib/node_modules/openclaw. OpenClaw unterstützt diese Anordnung, da Befehle zur Installation und Aktualisierung von Plugins außerhalb dieses globalen Paketverzeichnisses schreiben.
Gehärtete systemd-Units
Gewähren Sie OpenClaw Schreibzugriff auf seine Konfigurations- und Zustandsstammverzeichnisse, damit explizite Plugin-Installationen, Plugin-Aktualisierungen und Bereinigungen durch Doctor ihre Änderungen dauerhaft speichern können:
ReadWritePaths=/var/lib/openclaw /home/openclaw/.openclaw /tmpVorabprüfung des Speicherplatzes
Vor Paketaktualisierungen und expliziten Plugin-Installationen versucht OpenClaw, den verfügbaren Speicherplatz auf dem Zielvolume nach bestem Bemühen zu prüfen. Bei wenig Speicherplatz wird eine Warnung mit dem geprüften Pfad ausgegeben, die Aktualisierung wird jedoch nicht blockiert, da sich Dateisystemkontingente, Snapshots und Netzwerkvolumes nach der Prüfung ändern können. Maßgeblich bleiben die tatsächliche Installation durch den Paketmanager und die Überprüfung nach der Installation.
Automatische Aktualisierung
Standardmäßig deaktiviert. Aktivieren Sie sie in ~/.openclaw/openclaw.json:
{ update: { channel: "stable", auto: { enabled: true, stableDelayHours: 6, stableJitterHours: 12, betaCheckIntervalHours: 1, }, },}| Kanal | Verhalten |
|---|---|
stable |
Wartet stableDelayHours (Standard: 6) und wendet die Aktualisierung anschließend mit deterministischer Streuung über stableJitterHours (Standard: 12) für eine gestaffelte Einführung an. |
extended-stable |
Prüft beim Start und bei aktiviertem checkOnStart alle 24 Stunden auf einen schreibgeschützten Aktualisierungshinweis. Wendet Aktualisierungen niemals automatisch an. |
beta |
Prüft alle betaCheckIntervalHours (Standard: 1) und wendet die Aktualisierung sofort an. |
dev |
Keine automatische Anwendung. Verwenden Sie openclaw update manuell. |
Das Gateway protokolliert beim Start außerdem einen Aktualisierungshinweis (deaktivierbar
mit update.checkOnStart: false). Gespeicherte „extended-stable“-Auswahlen verwenden
diesen schreibgeschützten Hinweispfad und das bestehende 24-Stunden-Intervall, lösen
jedoch niemals eine automatische Installation, Übergabe, einen Neustart, eine stabile
Verzögerung/Streuung oder Beta-Abfragen aus. Setzen Sie für ein Downgrade oder die
Wiederherstellung nach einem Vorfall OPENCLAW_NO_AUTO_UPDATE=1 in der Gateway-Umgebung,
um automatische Anwendungen auch dann zu blockieren, wenn update.auto.enabled
konfiguriert ist. Aktualisierungshinweise beim Start können weiterhin ausgeführt werden,
sofern update.checkOnStart nicht ebenfalls deaktiviert ist.
Über die Steuerungsebene des laufenden Gateways (update.run) angeforderte
Paketmanager-Aktualisierungen ersetzen den Paketbaum nicht innerhalb des laufenden
Gateway-Prozesses. Bei Installationen mit verwaltetem Dienst startet das Gateway eine
abgekoppelte Übergabe, wird beendet und überlässt dem regulären CLI-Pfad
openclaw update --yes --json das Anhalten des Dienstes, das Ersetzen des Pakets, das
Aktualisieren der Dienstmetadaten, den Neustart, die Überprüfung der Gateway-Version und
Erreichbarkeit sowie nach Möglichkeit die Wiederherstellung eines installierten, aber
nicht geladenen macOS-LaunchAgents. Wenn das Gateway diese Übergabe nicht sicher
durchführen kann, gibt update.run stattdessen einen sicheren Shell-Befehl aus, anstatt
den Paketmanager innerhalb des Prozesses auszuführen.
Die Aktualisierungskarte in der Seitenleiste der Control UI startet denselben
update.run-Ablauf. In der signierten macOS-App aktualisiert die Karte zunächst die App
über Sparkle. Nach dem erneuten Start bringt die App das von ihr verwaltete lokale
Gateway auf die entsprechende Version.
Nach der Aktualisierung
Doctor ausführen
openclaw doctorMigriert die Konfiguration, prüft Richtlinien für Direktnachrichten und kontrolliert den Zustand des Gateways. Details: Doctor
Gateway neu starten
openclaw gateway restartÜberprüfen
openclaw healthZurücksetzen
Eine Version festlegen (npm)
npm i -g openclaw@<version>openclaw doctoropenclaw gateway restartEinen Commit festlegen (Quellcode)
git fetch origingit checkout "$(git rev-list -n 1 --before=\"2026-01-01\" origin/main)"pnpm install && pnpm buildopenclaw gateway restartSo kehren Sie zur neuesten Version zurück: git checkout main && git pull.
Wenn Sie nicht weiterkommen
- Führen Sie
openclaw doctorerneut aus und lesen Sie die Ausgabe sorgfältig. - Bei
openclaw update --channel devin Quellcode-Checkouts richtet das Aktualisierungsprogrammpnpmbei Bedarf automatisch ein. Wenn ein Bootstrap-Fehler von pnpm/corepack angezeigt wird, installieren Siepnpmmanuell (oder aktivieren Siecorepackerneut) und führen Sie die Aktualisierung nochmals aus. - Lesen Sie: Fehlerbehebung
- Fragen Sie in Discord: https://discord.gg/clawd
Verwandte Themen
- Installationsübersicht: alle Installationsmethoden.
- Doctor: Integritätsprüfungen nach Aktualisierungen.
- Migration: Migrationsanleitungen für Hauptversionen.