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 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.
dev 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 metscripts/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.
openclaw update --channel dev
— deze beheert de checkout, build en herstart van de Gateway voor je.
Alternatief: voer het installatieprogramma opnieuw uit
--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.
--version:
Alternatief: handmatig met npm, pnpm of bun
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 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.”
Geavanceerde onderwerpen voor npm-installaties
Alleen-lezen pakketstructuur
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
Versterkte systemd-eenheden
Geef OpenClaw schrijftoegang tot de configuratie-/statusroots, zodat expliciete plugininstallaties, pluginupdates en opschoning door doctor hun wijzigingen kunnen opslaan:
Voorcontrole van schijfruimte
Voorcontrole 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:
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
Terugdraaien
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.
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:
Een pakketinstallatie terugdraaien
Geef gepubliceerde versies weer en bekijk en installeer vervolgens de bekende goede versie: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:
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 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: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. Bredeopenclaw 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
Als 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.