Mise a jour

OpenClaw evolue rapidement (avant la “1.0”). Traitez les mises a jour comme du deploiement d’infrastructure : mettre a jour → lancer les verifications → redemarrer (ou utilisez openclaw update, qui redemarrage automatiquement) → verifier.

Recommande : relancer l’installateur du site web (mise a jour en place)

La methode de mise a jour preferee est de relancer l’installateur depuis le site web. Il detecte les installations existantes, met a jour en place et execute openclaw doctor si necessaire.

curl -fsSL https://openclaw.ai/install.sh | bash

Notes :

  • Ajoutez --no-onboard si vous ne voulez pas que l’assistant d’accueil se relance.

  • Pour les installations depuis les sources, utilisez :

    curl -fsSL https://openclaw.ai/install.sh | bash -s -- --install-method git --no-onboard

    L’installateur executera git pull --rebase uniquement si le depot est propre.

  • Pour les installations globales, le script utilise npm install -g openclaw@latest en coulisses.

  • Note legacy : clawdbot reste disponible comme shim de compatibilite.

Avant de mettre a jour

  • Sachez comment vous avez installe : global (npm/pnpm) vs depuis les sources (git clone).
  • Sachez comment votre passerelle tourne : terminal en premier plan vs service supervise (launchd/systemd).
  • Sauvegardez vos personnalisations :
    • Config : ~/.openclaw/openclaw.json
    • Identifiants : ~/.openclaw/credentials/
    • Espace de travail : ~/.openclaw/workspace

Mise a jour (installation globale)

Installation globale (choisissez l’une) :

npm i -g openclaw@latest
pnpm add -g openclaw@latest

Nous deconseillons Bun pour le runtime de la passerelle (bugs WhatsApp/Telegram).

Pour changer de canal de mise a jour (installations git + npm) :

openclaw update --channel beta
openclaw update --channel dev
openclaw update --channel stable

Utilisez --tag <dist-tag|version> pour un tag/version d’installation ponctuel.

Consultez Canaux de developpement pour la semantique des canaux et les notes de release.

A noter : sur les installations npm, la passerelle affiche un indice de mise a jour au demarrage (verifie le tag du canal actuel). Desactivez via update.checkOnStart: false.

Auto-updater core (optionnel)

L’auto-updater est desactive par defaut et est une fonctionnalite core de la passerelle (pas un plugin).

{
  "update": {
    "channel": "stable",
    "auto": {
      "enabled": true,
      "stableDelayHours": 6,
      "stableJitterHours": 12,
      "betaCheckIntervalHours": 1
    }
  }
}

Comportement :

  • stable : quand une nouvelle version est detectee, OpenClaw attend stableDelayHours puis applique un jitter deterministe par installation dans stableJitterHours (deploiement progressif).
  • beta : verifie selon la cadence betaCheckIntervalHours (par defaut : toutes les heures) et applique quand une mise a jour est disponible.
  • dev : pas d’application automatique ; utilisez manuellement openclaw update.

Utilisez openclaw update --dry-run pour previsualiser les actions de mise a jour avant d’activer l’automatisation.

Puis :

openclaw doctor
openclaw gateway restart
openclaw health

Notes :

  • Si votre passerelle tourne comme service, openclaw gateway restart est prefere a tuer les PID.
  • Si vous etes epingle a une version specifique, consultez “Rollback / epinglage” ci-dessous.

Mise a jour (openclaw update)

Pour les installations depuis les sources (checkout git), preferez :

openclaw update

Cela execute un flux de mise a jour securise :

  • Necessite un worktree propre.
  • Bascule vers le canal selectionne (tag ou branche).
  • Fetch + rebase contre l’upstream configure (canal dev).
  • Installe les deps, compile, compile l’interface de controle et execute openclaw doctor.
  • Redemarrage la passerelle par defaut (utilisez --no-restart pour sauter).

Si vous avez installe via npm/pnpm (pas de metadonnees git), openclaw update essaiera de mettre a jour via votre gestionnaire de paquets. S’il ne peut pas detecter l’installation, utilisez plutot “Mise a jour (installation globale)”.

Mise a jour (interface de controle / RPC)

L’interface de controle a Mettre a jour et redemarrer (RPC : update.run). Elle :

  1. Execute le meme flux de mise a jour source que openclaw update (checkout git uniquement).
  2. Ecrit un sentinel de redemarrage avec un rapport structure (queue stdout/stderr).
  3. Redemarrage la passerelle et ping la derniere session active avec le rapport.

Si le rebase echoue, la passerelle annule et redemarrage sans appliquer la mise a jour.

Mise a jour (depuis les sources)

Depuis le checkout du depot :

Prefere :

openclaw update

Manuel (equivalent approximatif) :

git pull
pnpm install
pnpm build
pnpm ui:build # installe automatiquement les deps UI au premier lancement
openclaw doctor
openclaw health

Notes :

  • pnpm build est important quand vous executez le binaire empaquete openclaw (openclaw.mjs) ou utilisez Node pour executer dist/.
  • Si vous executez depuis un checkout du depot sans installation globale, utilisez pnpm openclaw ... pour les commandes CLI.
  • Si vous executez directement depuis TypeScript (pnpm openclaw ...), une recompilation est generalement inutile, mais les migrations de configuration s’appliquent quand meme → executez doctor.
  • Basculer entre installations globales et git est facile : installez l’autre variante, puis executez openclaw doctor pour que le point d’entree du service de passerelle soit reecrit vers l’installation actuelle.

Toujours executer : openclaw doctor

Doctor est la commande de “mise a jour sure”. Elle est volontairement ennuyeuse : reparer + migrer + avertir.

A noter : si vous etes sur une installation depuis les sources (checkout git), openclaw doctor proposera d’executer openclaw update d’abord.

Ce qu’il fait typiquement :

  • Migrer les cles de configuration obsoletes / emplacements de fichiers de configuration legacy.
  • Auditer les politiques de DM et avertir sur les parametres “ouverts” risques.
  • Verifier la sante de la passerelle et proposer de redemarrer.
  • Detecter et migrer les anciens services de passerelle (launchd/systemd ; legacy schtasks) vers les services OpenClaw actuels.
  • Sur Linux, s’assurer du lingering systemd utilisateur (pour que la passerelle survive a la deconnexion).

Details : Doctor

Demarrer / arreter / redemarrer la passerelle

CLI (fonctionne quel que soit l’OS) :

openclaw gateway status
openclaw gateway stop
openclaw gateway restart
openclaw gateway --port 18789
openclaw logs --follow

Si vous etes supervise :

  • macOS launchd (LaunchAgent fourni par l’app) : launchctl kickstart -k gui/$UID/ai.openclaw.gateway (utilisez ai.openclaw.<profile> ; le legacy com.openclaw.* fonctionne encore)
  • Service utilisateur systemd Linux : systemctl --user restart openclaw-gateway[-<profile>].service
  • Windows (WSL2) : systemctl --user restart openclaw-gateway[-<profile>].service
    • launchctl/systemctl ne fonctionnent que si le service est installe ; sinon executez openclaw gateway install.

Runbook + labels de service exacts : Runbook passerelle

Rollback / epinglage (quand quelque chose casse)

Epingler (installation globale)

Installez une version connue comme fonctionnelle (remplacez <version> par la derniere qui marchait) :

npm i -g openclaw@<version>
pnpm add -g openclaw@<version>

Astuce : pour voir la version publiee actuelle, executez npm view openclaw version.

Puis redemarrez + relancez doctor :

openclaw doctor
openclaw gateway restart

Epingler (source) par date

Choisissez un commit a une date donnee (exemple : “etat de main au 1er janvier 2026”) :

git fetch origin
git checkout "$(git rev-list -n 1 --before=\"2026-01-01\" origin/main)"

Puis reinstallez les deps + redemarrez :

pnpm install
pnpm build
openclaw gateway restart

Pour revenir au dernier commit par la suite :

git checkout main
git pull

Si vous etes bloque

  • Executez openclaw doctor a nouveau et lisez attentivement la sortie (elle indique souvent la correction).
  • Consultez : Depannage
  • Demandez sur Discord : https://discord.gg/clawd