Maintenance
Canali di rilascio
OpenClaw viene distribuito tramite quattro canali di aggiornamento:
- stable: dist-tag npm
latest. Consigliato per la maggior parte degli utenti. - extended-stable: dist-tag npm
extended-stable. Un nuovo canale di pacchetti relativo a un mese supportato precedente. È disponibile solo come pacchetto e l'installazione avviene esclusivamente in primo piano. Una selezione salvata riceve indicazioni di aggiornamento di sola lettura quandoupdate.checkOnStartè abilitato, ma gli aggiornamenti non vengono mai applicati automaticamente. - beta: dist-tag npm
beta. Ripiega sulatestquandobetanon è disponibile o è precedente alla versione stabile corrente. - dev: versione più recente e in continuo movimento di
main(git). dist-tag npmdev, quando pubblicato.mainè destinato alla sperimentazione e allo sviluppo attivo; può contenere funzionalità incomplete o modifiche incompatibili. Non utilizzarlo per Gateway di produzione.
Le build stabili vengono solitamente distribuite prima su beta, verificate
in tale canale e quindi promosse a latest senza incrementare la versione.
I manutentori possono anche pubblicare direttamente su latest. I dist-tag
costituiscono la fonte autorevole per le installazioni npm.
Passaggio da un canale all'altro
openclaw update --channel stableopenclaw update --channel extended-stableopenclaw update --channel betaopenclaw update --channel dev--channel salva la scelta in update.channel nella configurazione e determina
entrambi i percorsi di installazione:
| Canale | Installazioni npm/pacchetto | Installazioni git |
|---|---|---|
stable |
dist-tag latest |
tag git stabile più recente (esclude -alpha.N, -beta.N, -rc.N, -dev.N, -next.N, -preview.N, -canary.N, -nightly.N e altri suffissi di prerelease denominati) |
extended-stable |
risolve il selettore npm pubblico extended-stable, verifica esattamente il pacchetto selezionato e installa quella versione esatta. In caso di errore si interrompe senza ripiegare su latest, beta o dev. |
non supportato: OpenClaw lascia invariato il checkout e richiede di utilizzare un'installazione tramite pacchetto |
beta |
dist-tag beta, con ripiego su latest quando beta non è disponibile o è precedente |
tag git beta più recente, con ripiego sul tag git stabile più recente quando la versione beta non è disponibile o è precedente |
dev |
dist-tag dev (raro; la maggior parte degli utenti dev utilizza installazioni git) |
esegue il recupero, applica il rebase del checkout sul ramo main upstream, compila e reinstalla la CLI globale |
Per le installazioni git dev, il checkout predefinito è ~/openclaw (oppure
$OPENCLAW_HOME/openclaw quando è impostato OPENCLAW_HOME); è possibile
sovrascriverlo con OPENCLAW_GIT_DIR.
Selezione temporanea di una versione o di un tag
Utilizza --tag per selezionare uno specifico dist-tag, una versione o una
specifica di pacchetto per un singolo aggiornamento senza modificare il
canale salvato:
# Installa una versione specificaopenclaw update --tag 2026.4.1-beta.1 # Installa dal dist-tag beta (una sola volta, senza salvare la scelta)openclaw update --tag beta # Passa al checkout mobile main di GitHub (persistente)openclaw update --channel dev # Installa una specifica di pacchetto npmopenclaw update --tag openclaw@2026.4.1-beta.1 # Installa una volta da main di GitHub senza salvare il canaleopenclaw update --tag mainNote:
--tagsi applica solo alle installazioni tramite pacchetto (npm); le installazioni git lo ignorano.- Il tag non viene salvato; il successivo
openclaw updateutilizza il canale configurato. --tag mainviene associato alla specifica compatibile con npmgithub:openclaw/openclaw#mainper quella singola esecuzione. Per un'installazione persistente e mobile dimain, utilizzaopenclaw update --channel dev(le installazioni tramite pacchetto passano a un checkout git) oppure reinstalla con il metodo git del programma di installazione:curl -fsSL https://openclaw.ai/install.sh | bash -s -- --install-method git --version main. Il percorso di installazione npm rifiuta esplicitamente le destinazioni basate su sorgenti GitHub/git e indirizza invece al metodo git.- Protezione dal downgrade: se la versione di destinazione è precedente a
quella corrente, OpenClaw richiede una conferma (ignorabile con
--yes). - Extended-stable utilizza sempre la propria destinazione esatta e verificata
del pacchetto. Non è un alias temporaneo di
--tag extended-stablee--tagnon può essere combinato con un canale extended-stable effettivo. --channel betaè diverso da--tag beta: il flusso del canale può ripiegare su stable/latest quando beta non è disponibile o è precedente, mentre--tag betaseleziona sempre direttamente il dist-tagbetaper quella singola esecuzione.
Esecuzione di prova
Visualizza in anteprima le operazioni che openclaw update eseguirebbe senza
apportare modifiche:
openclaw update --dry-runopenclaw update --channel beta --dry-runopenclaw update --tag 2026.4.1-beta.1 --dry-runopenclaw update --dry-run --jsonL'esecuzione di prova indica il canale effettivo, la versione di destinazione, le azioni pianificate e se sarebbe necessaria una conferma per il downgrade.
Plugin e canali
Il passaggio da un canale all'altro con openclaw update sincronizza anche le
sorgenti dei Plugin:
devriporta i Plugin installati che hanno una controparte inclusa alla rispettiva sorgente inclusa (checkout git).stableebetaripristinano i pacchetti Plugin installati tramite npm o ClawHub.extended-stablerisolve i Plugin npm ufficiali idonei con intento semplice/predefinito olatestalla stessa versione esatta del core installato. Non interroga i tag@extended-stabledei Plugin durante l'esecuzione.- I Plugin installati tramite npm vengono aggiornati dopo il completamento dell'aggiornamento del core.
Verifica dello stato corrente
openclaw update statusMostra il canale attivo (insieme alla fonte che lo ha determinato: configurazione, tag git, ramo git, versione installata o valore predefinito), il tipo di installazione (git o pacchetto), la versione corrente e la disponibilità di aggiornamenti.
Procedure consigliate per i tag
- Assegna tag alle release che vuoi rendere disponibili ai checkout git:
vYYYY.M.PATCHper stable,vYYYY.M.PATCH-beta.Nper beta. I suffissi di prerelease denominati, come-alpha.N,-rc.Ne-next.N, non sono destinazioni stable o beta. - I tag stabili numerici precedenti, come
vYYYY.M.PATCH-1ev1.0.1-1, vengono ancora riconosciuti come tag git stabili per compatibilità. - Anche
vYYYY.M.PATCH.beta.N(con separazione tramite punti) viene riconosciuto per compatibilità; preferisci-beta.N. - Mantieni immutabili i tag: non spostare né riutilizzare mai un tag.
- I dist-tag npm restano la fonte autorevole per le installazioni npm:
latest-> stableextended-stable-> release del pacchetto relativa a un mese supportato precedentebeta-> build candidata o build stabile pubblicata prima su betadev-> snapshot di main (facoltativa)
Disponibilità dell'app per macOS
Le build beta e dev potrebbero non includere una release dell'app per macOS. Non è un problema:
- Il tag git e il dist-tag npm possono comunque essere pubblicati autonomamente.
- Specifica "nessuna build macOS per questa beta" nelle note di rilascio o nel registro delle modifiche.