Install overview
Componenti interni del programma di installazione
OpenClaw distribuisce tre script di installazione, disponibili da openclaw.ai.
| Script | Piattaforma | Funzione |
|---|---|---|
install.sh |
macOS / Linux / WSL | Installa Node se necessario, installa OpenClaw tramite npm (predefinito) o git e può avviare la configurazione iniziale. |
install-cli.sh |
macOS / Linux / WSL | Installa Node e OpenClaw in un prefisso locale (~/.openclaw) tramite npm o git. Non richiede privilegi di root. |
install.ps1 |
Windows (PowerShell) | Installa Node se necessario, installa OpenClaw tramite npm (predefinito) o git e può avviare la configurazione iniziale. |
Tutti e tre supportano Node 22.19+, 23.11+ o 24+; Node 24 è la destinazione predefinita per le nuove installazioni.
Comandi rapidi
install.sh
curl -fsSL --proto '=https' --tlsv1.2 https://openclaw.ai/install.sh | bashcurl -fsSL --proto '=https' --tlsv1.2 https://openclaw.ai/install.sh | bash -s -- --helpinstall-cli.sh
curl -fsSL --proto '=https' --tlsv1.2 https://openclaw.ai/install-cli.sh | bashcurl -fsSL --proto '=https' --tlsv1.2 https://openclaw.ai/install-cli.sh | bash -s -- --helpinstall.ps1
iwr -useb https://openclaw.ai/install.ps1 | iex& ([scriptblock]::Create((iwr -useb https://openclaw.ai/install.ps1))) -Tag beta -NoOnboard -DryRuninstall.sh
Flusso (install.sh)
Rilevamento del sistema operativo
Supporta macOS e Linux (incluso WSL).
Installazione predefinita di Node.js 24
Controlla la versione di Node e installa Node 24 se necessario (Homebrew su macOS, script di configurazione NodeSource su Linux con apt/dnf/yum). Su macOS, Homebrew viene installato solo quando il programma di installazione ne ha bisogno per Node o Git. Node 22.19+ e 23.11+ rimangono supportati per compatibilità. Su Alpine/Linux musl, il programma di installazione utilizza i pacchetti apk anziché NodeSource; i repository Alpine configurati devono fornire una versione di Node supportata (Alpine 3.21 o versioni successive al momento della stesura).
Installazione di Git
Installa Git se mancante tramite il gestore di pacchetti rilevato, inclusi Homebrew su macOS e apk su Alpine.
Installazione di OpenClaw
- Metodo
npm(predefinito): installazione globale tramite npm - Metodo
git: clona o aggiorna il repository, installa le dipendenze con pnpm, esegue la compilazione e infine installa il wrapper in~/.local/bin/openclaw
Operazioni successive all'installazione
- Individua il binario
openclawappena installato per i comandi successivi - Per un'installazione non configurata, avvia la configurazione iniziale prima delle verifiche di doctor o del Gateway. Con
--no-onboardo senza TTY, stampa il comando per completare la configurazione in seguito. - Per un'installazione configurata, aggiorna e riavvia, con la massima diligenza possibile, un servizio Gateway caricato ed esegue doctor. Quando possibile, gli aggiornamenti aggiornano i Plugin; in alternativa, durante un'esecuzione senza interfaccia con richieste interattive abilitate, stampano il comando manuale.
- Quando viene eseguito
--verify, controlla la versione installata e verifica lo stato del Gateway solo dopo che è stata creata una configurazione.
Rilevamento del checkout del codice sorgente
Se viene eseguito all'interno di un checkout di OpenClaw (package.json + pnpm-workspace.yaml), lo script propone:
- utilizzare il checkout (
git), oppure - utilizzare l'installazione globale (
npm)
Se non è disponibile alcun TTY e non è stato impostato alcun metodo di installazione, utilizza npm come predefinito e mostra un avviso.
Lo script termina con il codice 2 in caso di selezione non valida del metodo o di valori non validi per --install-method.
Esempi (install.sh)
Predefinito
curl -fsSL --proto '=https' --tlsv1.2 https://openclaw.ai/install.sh | bashIgnora la configurazione iniziale
curl -fsSL --proto '=https' --tlsv1.2 https://openclaw.ai/install.sh | bash -s -- --no-onboardInstallazione tramite Git
curl -fsSL --proto '=https' --tlsv1.2 https://openclaw.ai/install.sh | bash -s -- --install-method gitCheckout del ramo main di GitHub
curl -fsSL --proto '=https' --tlsv1.2 https://openclaw.ai/install.sh | bash -s -- --install-method git --version mainSimulazione
curl -fsSL --proto '=https' --tlsv1.2 https://openclaw.ai/install.sh | bash -s -- --dry-runVerifica dopo l'installazione
curl -fsSL --proto '=https' --tlsv1.2 https://openclaw.ai/install.sh | bash -s -- --no-onboard --verifyRiferimento delle opzioni
| Opzione | Descrizione |
|---|---|
--install-method | --method npm|git |
Sceglie il metodo di installazione (predefinito: npm) |
--npm |
Scorciatoia per il metodo npm |
--git | --github |
Scorciatoia per il metodo git |
--version <version|dist-tag|spec> |
Versione npm, dist-tag o specifica del pacchetto (predefinito: latest) |
--beta |
Usa il dist-tag beta se disponibile, altrimenti ripiega su latest |
--git-dir | --dir <path> |
Directory di checkout (predefinita: ~/openclaw) |
--no-git-update |
Ignora git pull per un checkout esistente |
--no-prompt |
Disabilita le richieste interattive |
--no-onboard |
Ignora la configurazione iniziale |
--onboard |
Abilita la configurazione iniziale |
--verify |
Esegue una verifica rapida successiva all'installazione (--version, stato del Gateway se caricato) |
--dry-run |
Stampa le operazioni senza applicare modifiche |
--verbose |
Abilita l'output di debug (set -x, log npm di livello notice) |
--help | -h |
Mostra le istruzioni per l'uso |
Riferimento delle variabili d'ambiente
| Variabile | Descrizione |
|---|---|
OPENCLAW_INSTALL_METHOD=git|npm |
Metodo di installazione |
OPENCLAW_VERSION=latest|next|<semver>|<spec> |
Versione npm, dist-tag o specifica del pacchetto |
OPENCLAW_BETA=0|1 |
Usa la versione beta se disponibile |
OPENCLAW_HOME=<path> |
Directory di base per lo stato di OpenClaw e i percorsi predefiniti di git/configurazione iniziale |
OPENCLAW_GIT_DIR=<path> |
Directory di checkout |
OPENCLAW_GIT_UPDATE=0|1 |
Attiva o disattiva gli aggiornamenti git |
OPENCLAW_NO_PROMPT=1 |
Disabilita le richieste interattive |
OPENCLAW_VERIFY_INSTALL=1 |
Esegue la verifica rapida successiva all'installazione |
OPENCLAW_NO_ONBOARD=1 |
Ignora la configurazione iniziale |
OPENCLAW_DRY_RUN=1 |
Modalità di simulazione |
OPENCLAW_VERBOSE=1 |
Modalità di debug |
OPENCLAW_NPM_LOGLEVEL=error|warn|notice |
Livello di log npm (predefinito: error, nasconde i messaggi di deprecazione di npm) |
install-cli.sh
Flusso (install-cli.sh)
Installazione del runtime Node locale
Scarica un archivio tar di una versione LTS di Node supportata e fissata (la versione è incorporata nello script e aggiornata in modo indipendente; il valore predefinito è 22.22.2) in <prefix>/tools/node-v<version> e ne verifica l'hash SHA-256.
Su Alpine/Linux musl, per cui Node non pubblica archivi tar compatibili con il runtime fissato, installa nodejs e npm tramite apk e collega tale runtime al percorso del wrapper nel prefisso. I repository Alpine devono fornire una versione di Node supportata (22.19+, 23.11+ o 24+); utilizza Alpine 3.21 o versioni successive se i repository meno recenti forniscono solo Node 20 o 21.
Installazione di Git
Se Git è mancante, tenta di installarlo tramite apt/dnf/yum/apk su Linux o Homebrew su macOS.
Installazione di OpenClaw nel prefisso
- Metodo
npm(predefinito): esegue l'installazione nel prefisso tramite npm, quindi scrive il wrapper in<prefix>/bin/openclaw - Metodo
git: clona o aggiorna un checkout (predefinito:~/openclaw) e scrive comunque il wrapper in<prefix>/bin/openclaw
Aggiornamento del servizio Gateway caricato
Se un servizio Gateway è già caricato dallo stesso prefisso, lo script esegue
openclaw gateway install --force, quindi openclaw gateway restart e
verifica lo stato del Gateway con la massima diligenza possibile.
Esempi (install-cli.sh)
Predefinito
curl -fsSL --proto '=https' --tlsv1.2 https://openclaw.ai/install-cli.sh | bashPrefisso e versione personalizzati
curl -fsSL --proto '=https' --tlsv1.2 https://openclaw.ai/install-cli.sh | bash -s -- --prefix /opt/openclaw --version latestInstallazione tramite Git
curl -fsSL --proto '=https' --tlsv1.2 https://openclaw.ai/install-cli.sh | bash -s -- --install-method git --git-dir ~/openclawOutput JSON per l'automazione
curl -fsSL --proto '=https' --tlsv1.2 https://openclaw.ai/install-cli.sh | bash -s -- --json --prefix /opt/openclawEsecuzione della configurazione iniziale
curl -fsSL --proto '=https' --tlsv1.2 https://openclaw.ai/install-cli.sh | bash -s -- --onboardRiferimento delle opzioni
| Flag | Descrizione |
|---|---|
--prefix <path> |
Prefisso di installazione (predefinito: ~/.openclaw) |
--install-method | --method npm|git |
Sceglie il metodo di installazione (predefinito: npm) |
--npm |
Scorciatoia per il metodo npm |
--git | --github |
Scorciatoia per il metodo git |
--git-dir | --dir <path> |
Directory di checkout Git (predefinita: ~/openclaw) |
--version <ver> |
Versione o dist-tag di OpenClaw (predefinito: latest) |
--node-version <ver> |
Versione di Node (predefinita: 22.22.2) |
--json |
Emette eventi NDJSON |
--onboard |
Esegue openclaw onboard dopo l'installazione |
--no-onboard |
Salta la configurazione iniziale (impostazione predefinita) |
--set-npm-prefix |
Su Linux, forza il prefisso npm a ~/.npm-global se quello attuale non è scrivibile |
--help | -h |
Mostra le istruzioni d'uso |
Riferimento delle variabili d'ambiente
| Variabile | Descrizione |
|---|---|
OPENCLAW_PREFIX=<path> |
Prefisso di installazione |
OPENCLAW_INSTALL_METHOD=git|npm |
Metodo di installazione |
OPENCLAW_VERSION=<ver> |
Versione o dist-tag di OpenClaw |
OPENCLAW_NODE_VERSION=<ver> |
Versione di Node |
OPENCLAW_HOME=<path> |
Directory di base per lo stato di OpenClaw e i percorsi git/configurazione iniziale predefiniti |
OPENCLAW_GIT_DIR=<path> |
Directory di checkout Git per le installazioni git |
OPENCLAW_GIT_UPDATE=0|1 |
Attiva o disattiva gli aggiornamenti git per i checkout esistenti |
OPENCLAW_NO_ONBOARD=1 |
Salta la configurazione iniziale |
OPENCLAW_NPM_LOGLEVEL=error|warn|notice |
Livello dei log npm (predefinito: error) |
install.ps1
Flusso (install.ps1)
Verificare l'ambiente PowerShell e Windows
Richiede PowerShell 5 o versione successiva.
Garantire Node.js 24 per impostazione predefinita
Se non è presente, tenta l'installazione tramite winget, quindi Chocolatey e infine Scoop. Se non è disponibile alcun gestore di pacchetti, lo script scarica il file zip ufficiale di Node.js 24 per Windows in %LOCALAPPDATA%\OpenClaw\deps\portable-node e lo aggiunge al PATH del processo corrente e dell'utente. Node 22.19+ e 23.11+ rimangono supportati per compatibilità.
Installare OpenClaw
- Metodo
npm(predefinito): installazione npm globale con il-Tagselezionato, avviata da una directory temporanea scrivibile del programma di installazione, in modo che funzionino anche le shell aperte in cartelle protette comeC:\ - Metodo
git: clona o aggiorna il repository, installa e compila con pnpm e installa il wrapper in%USERPROFILE%\.local\bin\openclaw.cmd. Se Git non è presente, lo script configura MinGit localmente per l'utente in%LOCALAPPDATA%\OpenClaw\deps\portable-gite lo aggiunge al PATH del processo corrente e dell'utente.
Attività successive all'installazione
- Aggiunge al PATH dell'utente la directory dei binari necessaria, quando possibile
- Aggiorna, con il massimo impegno possibile, un servizio Gateway caricato (
openclaw gateway install --force, quindi lo riavvia) - Esegue
openclaw doctor --non-interactivedurante gli aggiornamenti e le installazioni git (con il massimo impegno possibile)
Gestire gli errori
Le installazioni tramite iwr ... | iex e blocco di script segnalano un errore irreversibile senza chiudere la sessione PowerShell corrente. Le installazioni dirette tramite powershell -File / pwsh -File continuano a terminare con un codice diverso da zero per l'automazione.
Esempi (install.ps1)
Predefinito
iwr -useb https://openclaw.ai/install.ps1 | iexInstallazione Git
& ([scriptblock]::Create((iwr -useb https://openclaw.ai/install.ps1))) -InstallMethod gitCheckout del ramo main di GitHub
& ([scriptblock]::Create((iwr -useb https://openclaw.ai/install.ps1))) -InstallMethod git -Tag mainDirectory git personalizzata
& ([scriptblock]::Create((iwr -useb https://openclaw.ai/install.ps1))) -InstallMethod git -GitDir "C:\openclaw"Esecuzione di prova
& ([scriptblock]::Create((iwr -useb https://openclaw.ai/install.ps1))) -DryRunRiferimento dei flag
| Flag | Descrizione |
|---|---|
-InstallMethod npm|git |
Metodo di installazione (predefinito: npm) |
-Tag <tag|version|spec> |
Dist-tag npm, versione o specifica del pacchetto (predefinito: latest) |
-GitDir <path> |
Directory di checkout (predefinita: %USERPROFILE%\openclaw) |
-NoOnboard |
Salta la configurazione iniziale |
-NoGitUpdate |
Salta git pull |
-DryRun |
Stampa solamente le azioni |
Riferimento delle variabili d'ambiente
| Variabile | Descrizione |
|---|---|
OPENCLAW_INSTALL_METHOD=git|npm |
Metodo di installazione |
OPENCLAW_GIT_DIR=<path> |
Directory di checkout |
OPENCLAW_NO_ONBOARD=1 |
Salta la configurazione iniziale |
OPENCLAW_GIT_UPDATE=0 |
Disabilita git pull |
OPENCLAW_DRY_RUN=1 |
Modalità di esecuzione di prova |
CI e automazione
Usa flag e variabili d'ambiente non interattivi per ottenere esecuzioni prevedibili.
install.sh (npm non interattivo)
curl -fsSL --proto '=https' --tlsv1.2 https://openclaw.ai/install.sh | bash -s -- --no-prompt --no-onboardinstall.sh (git non interattivo)
OPENCLAW_INSTALL_METHOD=git OPENCLAW_NO_PROMPT=1 \ curl -fsSL --proto '=https' --tlsv1.2 https://openclaw.ai/install.sh | bashinstall-cli.sh (JSON)
curl -fsSL --proto '=https' --tlsv1.2 https://openclaw.ai/install-cli.sh | bash -s -- --json --prefix /opt/openclawinstall.ps1 (salta la configurazione iniziale)
& ([scriptblock]::Create((iwr -useb https://openclaw.ai/install.ps1))) -NoOnboardRisoluzione dei problemi
Perché è richiesto Git?
Git è richiesto per il metodo di installazione git. Per le installazioni npm, Git viene comunque verificato o installato per evitare errori spawn git ENOENT quando le dipendenze utilizzano URL git.
Perché npm genera un errore EACCES su Linux?
Alcune configurazioni Linux impostano il prefisso globale di npm su percorsi di proprietà di root. install.sh può cambiare il prefisso in ~/.npm-global e aggiungere le esportazioni del PATH ai file rc della shell, quando tali file esistono.
Windows: "npm error spawn git / ENOENT"
Esegui nuovamente il programma di installazione affinché possa configurare MinGit localmente per l'utente, oppure installa Git per Windows e riapri PowerShell.
Windows: "openclaw is not recognized"
Esegui npm config get prefix e aggiungi tale directory al PATH dell'utente (su Windows non è necessario il suffisso \bin), quindi riapri PowerShell.
Windows: come ottenere un output dettagliato dal programma di installazione
install.ps1 non espone un'opzione -Verbose.
Usa la traccia di PowerShell per la diagnostica a livello di script:
Set-PSDebug -Trace 1& ([scriptblock]::Create((iwr -useb https://openclaw.ai/install.ps1))) -NoOnboardSet-PSDebug -Trace 0openclaw non trovato dopo l'installazione
Di solito si tratta di un problema del PATH. Consulta Risoluzione dei problemi di Node.js.