Maintenance
Bijwerken
Houd OpenClaw up-to-date.
Zie voor het vervangen van Docker-, Podman- en Kubernetes-images Container-images upgraden. De Gateway voert vóór de gereedheidscontrole upgradebewerkingen uit die veilig zijn bij het opstarten en sluit af als gekoppelde status handmatig moet worden hersteld.
Aanbevolen: openclaw update
Detecteert je installatietype (npm, pnpm, Bun of git), haalt de nieuwste versie op, voert openclaw doctor uit en herstart de Gateway.
openclaw updateWissel van kanaal of kies een specifieke versie:
openclaw update --channel betaopenclaw update --channel extended-stableopenclaw update --channel devopenclaw update --dry-run # voorbeeldweergave zonder toe te passenopenclaw update heeft geen vlag --verbose (het installatieprogramma wel). Gebruik voor diagnostiek
--dry-run om geplande acties vooraf te bekijken, --json voor gestructureerde resultaten of
openclaw update status --json om de kanaal- en beschikbaarheidsstatus te controleren.
--channel beta geeft de voorkeur aan de npm-dist-tag beta, maar valt terug op stable/latest
wanneer de beta-tag ontbreekt of de versie ervan ouder is dan de nieuwste stabiele
release. Gebruik in plaats daarvan --tag beta voor een eenmalige pakketupdate die is vastgezet op de onbewerkte npm-
dist-tag beta.
--channel extended-stable geldt alleen voor pakketten en de installatie blijft
uitsluitend op de voorgrond plaatsvinden. OpenClaw leest de openbare npm-selector extended-stable,
verifieert het exact geselecteerde pakket en installeert die exacte versie. Ontbrekende
of inconsistente registergegevens leiden tot een veilige fout; er wordt nooit teruggevallen op latest.
Als de geselecteerde versie ouder is dan de geïnstalleerde versie, blijft de normale
bevestiging voor downgraden van toepassing. De CLI slaat het kanaal op na een
geslaagde kernupdate; een rechtstreekse npm install -g openclaw@extended-stable
werkt update.channel niet bij.
Na het vervangen van de kern worden in aanmerking komende officiële npm-plugins met een kale/standaardintentie of
latest-intentie afgestemd op die exacte kernversie. Exacte vastzettingen en expliciete
niet-latest-tags, plugins van derden en bronnen anders dan npm blijven ongewijzigd.
Catalogusinstallaties die door huidige OpenClaw-versies zijn gemaakt, behouden die standaard-
intentie. Oudere records die alleen een exacte versie bevatten, blijven vastgezet omdat
OpenClaw niet veilig het verschil kan bepalen tussen een oude automatische vastzetting en een gebruikersvastzetting; voer
openclaw plugins update @openclaw/name eenmaal uit op het extended-stable-kanaal
om die plugin weer exacte-kerntracking te laten gebruiken.
--channel dev biedt een permanente, meebewegende GitHub-main-checkout. Voor een eenmalige
pakketupdate wordt --tag main gekoppeld aan de pakketspecificatie github:openclaw/openclaw#main
en rechtstreeks via het doelpakketbeheer (npm/pnpm/bun) geïnstalleerd.
Voor beheerde plugins is een ontbrekende betarelease een waarschuwing, geen fout: de kernupdate kan nog steeds slagen terwijl een plugin terugvalt op de vastgelegde standaard-/nieuwste release.
Zie Releasekanalen voor de semantiek van kanalen.
Wisselen tussen npm- en git-installaties
Gebruik kanalen om het installatietype te wijzigen. De updater behoudt je status, configuratie,
inloggegevens en werkruimte in ~/.openclaw; alleen de OpenClaw-
code-installatie die de CLI en Gateway gebruiken, wordt gewijzigd.
# npm-pakketinstallatie -> bewerkbare git-checkoutopenclaw update --channel dev # git-checkout -> npm-pakketinstallatieopenclaw update --channel stableBekijk eerst een voorbeeld van de wisseling van installatiemodus:
openclaw update --channel dev --dry-runopenclaw update --channel stable --dry-rundev zorgt voor een git-checkout, bouwt deze en installeert de globale CLI vanuit die
checkout. De kanalen stable, extended-stable en beta gebruiken pakket-
installaties. Extended-stable wordt geweigerd bij een git-checkout zonder deze te wijzigen of
converteren. Als de Gateway al is geïnstalleerd, vernieuwt openclaw update
de servicemetadata en herstart deze, tenzij je --no-restart doorgeeft.
Voor pakketinstallaties met een beheerde Gateway-service richt openclaw update zich op
de pakketroot die door die service wordt gebruikt. Als de shellopdracht openclaw uit
een andere installatie komt, toont de updater beide roots en het Node-pad van de beheerde
service, en controleert deze de Node-versie aan de hand van de vereiste engines.node
van de doelrelease voordat het pakket wordt vervangen.
Servers met een broncheckout (referentiescript)
Teams die een Gateway rechtstreeks vanuit een git-checkout op een server uitvoeren, kunnen deze bijwerken
met scripts/update-gateway.sh vanuit die checkout. Dit is de referentie
voor een efficiënte update van een bronserver: het herstelt bijgehouden builduitvoer die
pnpm build herschrijft, leidt tot een veilige fout bij alle andere lokale wijzigingen, fast-forwardt
main (of rebaset een lokale servertak op origin/main), installeert
afhankelijkheden, voert een schone build uit en herstart de Gateway.
ssh you@server 'cd /path/to/openclaw && scripts/update-gateway.sh'Overschrijf de herstart voor aangepaste service-eenheden of sla deze volledig over:
OPENCLAW_UPDATE_RESTART_CMD='systemctl --user restart openclaw-gateway.service' scripts/update-gateway.shOPENCLAW_UPDATE_RESTART_CMD='' scripts/update-gateway.shGeef voor een eenvoudige broninstallatie voor één gebruiker de voorkeur aan openclaw update --channel dev
— deze beheert de checkout, build en herstart van de Gateway voor je.
Alternatief: voer het installatieprogramma opnieuw uit
curl -fsSL https://openclaw.ai/install.sh | bashVoeg --no-onboard toe om onboarding over te slaan. Geef
--install-method git --no-onboard of --install-method npm --no-onboard door om een specifiek installatietype af te dwingen.
Als openclaw update mislukt na de npm-pakketinstallatiefase, voer dan het
installatieprogramma opnieuw uit. Het roept de updater niet aan; het voert de globale pakket-
installatie rechtstreeks uit en kan een gedeeltelijk bijgewerkte npm-installatie herstellen.
curl -fsSL https://openclaw.ai/install.sh | bash -s -- --install-method npmZet het herstel vast op een specifieke versie of dist-tag met --version:
curl -fsSL https://openclaw.ai/install.sh | bash -s -- --install-method npm --version <version-or-dist-tag>Alternatief: handmatig met npm, pnpm of bun
npm i -g openclaw@latestGeef bij installaties onder toezicht de voorkeur aan openclaw update: dit kan de pakket-
vervanging coördineren met de actieve Gateway-service. Als je een installatie onder toezicht handmatig
bijwerkt, stop dan eerst de beheerde Gateway. Pakketbeheerders vervangen bestanden
ter plaatse en een actieve Gateway kan anders tijdens het vervangen proberen kern- of pluginbestanden
te laden. Herstart de Gateway nadat het pakketbeheer is voltooid, zodat deze
de nieuwe installatie gebruikt.
Als openclaw update bij een globale Linux-systeeminstallatie die eigendom is van root mislukt met
EACCES, herstel je met systeem-npm terwijl de Gateway gestopt blijft voor de
handmatige vervanging. Gebruik dezelfde profielvlaggen/-omgeving die je normaal voor
die Gateway gebruikt. Vervang /usr/bin/npm door de systeem-npm die eigenaar is van het
globale root-prefix op je host:
openclaw gateway stopsudo /usr/bin/npm i -g openclaw@latestopenclaw gateway install --forceopenclaw gateway restartVerifieer vervolgens:
openclaw --versioncurl -fsS http://127.0.0.1:18789/readyzopenclaw plugins list --jsonopenclaw gateway status --deep --jsonopenclaw doctor --lint --jsonWanneer openclaw update een globale npm-installatie beheert, installeert het doel
eerst in een tijdelijk npm-prefix. Het kandidaatpakket valideert de Node-
versie van de host tijdens preinstall; pas daarna verifieert OpenClaw de verpakte
dist-inventaris en vervangt het de schone pakketstructuur in het werkelijke globale prefix. Een
verpakte voltooiingsbeveiliging wordt weggelaten uit de verwachte inventaris en pas verwijderd
nadat preinstall slaagt, zodat overgeslagen levenscyclusscripts eveneens vóór de
vervanging mislukken. Bij npm 12 en nieuwer keurt de updater alleen de levenscyclus van
OpenClaw als kandidaat goed; scripts van transitieve afhankelijkheden blijven geblokkeerd. Dit voorkomt dat npm
een nieuw pakket over achtergebleven bestanden van het oude pakket heen legt. Als de installatie-
opdracht mislukt, probeert OpenClaw het eenmaal opnieuw met --omit=optional, wat nuttig is op hosts
waar native optionele afhankelijkheden niet kunnen worden gecompileerd.
Door OpenClaw beheerde npm-update- en plugin-updateopdrachten wissen ook npm's
min-release-age-toeleveringsketenquarantaine (of de oudere configuratiesleutel before)
voor het onderliggende npm-proces. Dat beleid bestaat voor algemene bescherming, maar een
expliciete OpenClaw-update betekent: "installeer de geselecteerde release nu."
pnpm add -g openclaw@latestAls pnpm 11 OpenClaw 2026.7.1 heeft geïnstalleerd, voer die handmatige opdracht dan eenmaal uit. Die release dateert van vóór de geïsoleerde globale pakketindeling van pnpm 11, waardoor de updater een andere npm-installatie kan aanzien voor de actieve CLI. Latere releases behouden het eigenaarschap van pnpm en volgen tijdens updates de pakketroot van het vervangende pakket. Ze gebruiken ook de door de eigenaar-beheerder gerapporteerde globale bin-directory en stoppen vóór wijziging wanneer de beschikbare pnpm-opdracht een andere globale root of hoofdversie meldt, of wanneer het aanroepende pakket verweesd is of daar niet de enige actieve OpenClaw- installatie is.
Als OpenClaw een globale pnpm 11-installatiegroep deelt met een ander pakket, stopt de automatische updater voordat de groep wordt gewijzigd. Werk de oorspronkelijke door komma's gescheiden groep handmatig bij, zodat de zusterpakketten en het buildbeleid intact blijven.
bun add -g openclaw@latestGeavanceerde onderwerpen voor npm-installaties
Alleen-lezen pakketstructuur
OpenClaw behandelt verpakte globale installaties tijdens runtime als alleen-lezen, zelfs wanneer de globale pakketdirectory beschrijfbaar is voor de huidige gebruiker. Installaties van pluginpakketten bevinden zich in npm-/git-roots onder de gebruikersconfiguratiedirectory die eigendom zijn van OpenClaw, en bij het opstarten van de Gateway wordt de OpenClaw-pakketstructuur niet gewijzigd.
Sommige Linux-npm-configuraties installeren globale pakketten in directory's die eigendom zijn van root, zoals /usr/lib/node_modules/openclaw. OpenClaw ondersteunt die indeling omdat opdrachten voor het installeren/bijwerken van plugins buiten die globale pakketdirectory schrijven.
Versterkte systemd-eenheden
Geef OpenClaw schrijftoegang tot de configuratie-/statusroots, zodat expliciete plugininstallaties, pluginupdates en opschoning door doctor hun wijzigingen kunnen opslaan:
ReadWritePaths=/var/lib/openclaw /home/openclaw/.openclaw /tmpVoorcontrole van schijfruimte
Vóór pakketupdates en expliciete plugininstallaties probeert OpenClaw naar beste vermogen de schijfruimte op het doelvolume te controleren. Weinig ruimte levert een waarschuwing met het gecontroleerde pad op, maar blokkeert de update niet omdat bestandssysteemquota, momentopnamen en netwerkvolumes na de controle kunnen veranderen. De daadwerkelijke installatie door het pakketbeheer en de verificatie na installatie blijven doorslaggevend.
Automatische updater
Standaard uitgeschakeld. Schakel deze in via ~/.openclaw/openclaw.json:
{ update: { channel: "stable", auto: { enabled: true, }, },}| Kanaal | Gedrag |
|---|---|
stable |
Wordt toegepast na een ingebouwde vertraging met deterministische jitter voor een gespreide uitrol. |
extended-stable |
Controleert bij het opstarten en elke 24 uur op een alleen-lezen updatehint wanneer checkOnStart is ingeschakeld. Wordt nooit automatisch toegepast. |
beta |
Controleert volgens een ingebouwd interval en past de update onmiddellijk toe. |
dev |
Geen automatische toepassing. Gebruik openclaw update handmatig. |
De Gateway registreert bij het opstarten ook een updatehint (uitschakelen met
update.checkOnStart: false). Opgeslagen selecties voor extended-stable gebruiken dit
alleen-lezenhintpad en het bestaande hintinterval van 24 uur, maar voeren nooit
automatische installatie, overdracht, herstart, stabiele vertraging/jitter of bètapolling uit.
Stel voor een downgrade of herstel na een incident OPENCLAW_NO_AUTO_UPDATE=1 in de Gateway-omgeving in om automatische toepassingen te blokkeren, zelfs wanneer update.auto.enabled is geconfigureerd. Updatehints bij het opstarten kunnen nog steeds worden uitgevoerd, tenzij update.checkOnStart ook is uitgeschakeld.
Updates van de pakketbeheerder die via het live besturingsvlak van de Gateway
(update.run) worden aangevraagd, vervangen de pakketstructuur niet binnen het actieve Gateway-
proces. Bij installaties als beheerde service start de Gateway een losgekoppelde overdracht,
sluit af en laat het normale openclaw update --yes --json-CLI-pad de
service stoppen, het pakket vervangen, servicemetadata vernieuwen, opnieuw starten, de
Gateway-versie en bereikbaarheid verifiëren en waar mogelijk een geïnstalleerde maar niet-geladen macOS-
LaunchAgent herstellen. Als de Gateway die overdracht niet veilig kan uitvoeren,
rapporteert update.run een veilige shellopdracht in plaats van de pakketbeheerder
in het proces uit te voeren.
De updatekaart in de zijbalk van de Control UI toont Gateway bijwerken wanneer deze
deze update.run-flow rechtstreeks start. Dit omvat de in een browser gehoste Control UI, externe
Gateways en handmatig beheerde lokale Gateways.
In de ondertekende macOS-app verandert een lokale Gateway die eigendom is van de app die kaart in
Mac-app + Gateway bijwerken. Sparkle werkt eerst de app bij; na het opnieuw starten
voert de app openclaw update --tag <app-version> --json uit, herstart de Gateway
en verifieert de status in een voortgangsvenster in installatiestijl. Het venster verschijnt alleen
wanneer die beheerde Gateway een update, reparatie of installatie nodig heeft; updates die alleen de app betreffen, starten
rechtstreeks opnieuw in de app. Foutdetails blijven zichtbaar met de acties Opnieuw proberen, Updatehandleiding en
Discord. De app gebruikt dit gecoördineerde
pad nooit voor een externe of extern beheerde Gateway, voert nooit een downgrade van een nieuwere
Gateway uit en negeert nooit een extended-stable-kanaalvastlegging.
Wanneer de update slaagt, zet de app een eenmalige welkomstgebeurtenis in de wachtrij voor de meest recente directe sessie op het hoogste niveau met een echte gebruikers-/kanaalinteractie. Cron-uitvoeringen, Heartbeats en sessie-updates die alleen op de achtergrond plaatsvinden, wijzigen die selectie niet. In de externe modus werkt de app alleen de runtime van de lokale Mac-node bij en verzendt de gebeurtenis alleen wanneer de verbonden externe Gateway minstens even nieuw is als de app.
Na het bijwerken
Doctor uitvoeren
openclaw doctorMigreert de configuratie, controleert DM-beleid en controleert de status van de Gateway. Details: Doctor
De Gateway opnieuw starten
openclaw gateway restartVerifiëren
openclaw healthTerugdraaien
Terugdraaien bestaat uit twee lagen:
- Installeer oudere OpenClaw-code opnieuw met behoud van de huidige status.
- Herstel de status van vóór de update alleen wanneer de oudere code een gemigreerde configuratie of database niet kan gebruiken.
Begin met het terugdraaien van alleen de code. Bij het herstellen van de status gaan wijzigingen verloren die na de back-up zijn aangebracht.
Vóór het bijwerken: een geverifieerde back-up maken
openclaw update bewaart automatisch een kopie van de configuratie van vóór de update, maar maakt geen
volledig herstelpunt voor de status. Maak vóór een belangrijke update expliciet
een herstelpunt:
mkdir -p ~/Backups/openclawopenclaw backup create --output ~/Backups/openclaw --verifyHet archiefmanifest vermeldt de OpenClaw-versie en de bronpaden die in de back-up zijn opgenomen. Het archief kan referenties, authenticatieprofielen en kanaalstatus bevatten. Bewaar het daarom met alleen-eigenaarrechten en dezelfde bescherming als de map met de actieve status. Zie Back-up voor opgenomen en bewust weggelaten bestanden.
Voor een byte-voor-byteherstelpunt dat vluchtige artefacten bevat die uit het overdraagbare archief zijn weggelaten, stop je de Gateway en gebruik je een door je platform geleverde momentopname van het bestandssysteem, volume of de virtuele machine.
Een pakketinstallatie terugdraaien
Geef gepubliceerde versies weer en bekijk en installeer vervolgens de bekende goede versie:
npm view openclaw versions --jsonopenclaw update --tag <known-good-version> --dry-runopenclaw update --tag <known-good-version>openclaw update --tag heeft de voorkeur boven een rechtstreekse installatie via de pakketbeheerder. Deze
detecteert de downgrade, vraagt om bevestiging, voert convergentie van beheerde Plugins
en compatibiliteitscontroles voor het geïnstalleerde doel uit, vernieuwt service-
metadata, herstart de Gateway en verifieert de actieve versie. Als het opgeslagen
kanaal extended-stable is, gebruik je
--channel stable --tag <known-good-version>, omdat exacte eenmalige tags niet
met de selector extended-stable kunnen worden gecombineerd.
Pakketupdates worden vóór activering klaargezet en geverifieerd. Als het wisselen van het bestandssysteem of het vervangen van de opdrachtsnelkoppeling mislukt, herstelt OpenClaw automatisch het oude pakket. Als na een geslaagde wissel een latere statuscontrole van de Gateway mislukt, worden de vorige versie en instructies voor handmatig terugdraaien gemeld in plaats van het pakket opnieuw automatisch te vervangen.
Als het CLI-updatepad niet beschikbaar is, gebruik je dezelfde pakketbeheerder en hetzelfde installatie- bereik die eigenaar zijn van de huidige Gateway:
openclaw gateway stopnpm i -g openclaw@<known-good-version>openclaw gateway install --forceopenclaw gateway restartVervang npm door pnpm of bun wanneer die beheerder eigenaar is van de installatie. Voorkom tijdens
herstel na een incident dat een ingeschakelde automatische updater onmiddellijk een
nieuwere release toepast door OPENCLAW_NO_AUTO_UPDATE=1 in de Gateway-omgeving in te stellen.
Een broncodecheckout terugdraaien
Gebruik een schone checkout en selecteer een bekende goede tag of commit:
git fetch --all --tagsgit checkout --detach <known-good-tag-or-commit>pnpm install && pnpm buildopenclaw gateway restartTerugkeren naar de nieuwste versie: git checkout main && git pull.
De updater brengt een Git-checkout automatisch terug naar de vorige branch en SHA wanneer de installatie van afhankelijkheden, build, UI-build of Doctor mislukt nadat een Git- update is gestart. Handmatig uitchecken blijft vereist wanneer je bewust een oudere commit kiest.
Downgraden over de SQLite-migratie van sessies heen
Gebruik voordat je een oudere, bestandsgebaseerde OpenClaw-release start de huidige CLI om gearchiveerde verouderde transcriptartefacten te herstellen:
openclaw gateway stopopenclaw doctor --session-sqlite restore --session-sqlite-all-agentsHiermee worden geen SQLite-gegevens verwijderd. Sessies die na de SQLite-migratie zijn gemaakt, bestaan alleen in SQLite en verschijnen niet in de oudere runtime. Zie Downgraden na de SQLite-migratie van sessies.
Herstel de status alleen wanneer dat nodig is
Als de oudere code een nieuwere configuratie of een nieuwer databaseschema niet kan lezen, stop je de Gateway en herstel je de geverifieerde momentopname van het bestandssysteem, volume of de virtuele machine van vóór de update. Bewaar de huidige status afzonderlijk voordat je herstelt, omdat hierdoor wijzigingen worden verwijderd die na de momentopname zijn aangebracht.
Brede openclaw backup create-archieven ondersteunen aanmaken en verifiëren, maar
niet het ter plaatse activeren van het volledige archief. Pak een breed archief uit in een tijdelijke
map en gebruik de manifest.json-toewijzing van bron naar archief voor offline
herstel. openclaw backup sqlite restore schrijft eveneens een geverifieerde database
naar een nieuw doel; het activeren van dat doel blijft een expliciete offlinebeheerders-
stap.
Het terugdraaien verifiëren
openclaw --versionopenclaw healthopenclaw plugins list --jsonopenclaw gateway status --deep --jsonopenclaw doctor --lint --jsonAls je vastloopt
- Voer
openclaw doctoropnieuw uit en lees de uitvoer zorgvuldig. - Voor
openclaw update --channel devbij broncodecheckouts initialiseert de updaterpnpmindien nodig automatisch. Als je een initialisatiefout van pnpm/corepack ziet, installeer jepnpmhandmatig (of schakel jecorepackopnieuw in) en voer je de update opnieuw uit. - Bekijk: Probleemoplossing
- Vraag het in Discord: https://discord.gg/clawd
Gerelateerd
- Installatieoverzicht: alle installatiemethoden.
- Doctor: statuscontroles na updates.
- Migreren: migratiehandleidingen voor hoofdversies.