Vai al contenuto principale

Dettagli interni dell’installer

OpenClaw include tre script di installazione, distribuiti da openclaw.ai.
ScriptPiattaformaCosa fa
install.shmacOS / Linux / WSLInstalla Node se necessario, installa OpenClaw tramite npm (predefinito) o git e può eseguire l’onboarding.
install-cli.shmacOS / Linux / WSLInstalla Node + OpenClaw in un prefisso locale (~/.openclaw) con modalità npm o checkout git. Non richiede root.
install.ps1Windows (PowerShell)Installa Node se necessario, installa OpenClaw tramite npm (predefinito) o git e può eseguire l’onboarding.

Comandi rapidi

curl -fsSL --proto '=https' --tlsv1.2 https://openclaw.ai/install.sh | bash
curl -fsSL --proto '=https' --tlsv1.2 https://openclaw.ai/install.sh | bash -s -- --help
Se l’installazione riesce ma openclaw non viene trovato in un nuovo terminale, vedi Risoluzione dei problemi di Node.js.

install.sh

Consigliato per la maggior parte delle installazioni interattive su macOS/Linux/WSL.

Flusso (install.sh)

1

Rileva il sistema operativo

Supporta macOS e Linux (incluso WSL). Se viene rilevato macOS, installa Homebrew se manca.
2

Assicura Node.js 24 per impostazione predefinita

Controlla la versione di Node e installa Node 24 se necessario (Homebrew su macOS, script di setup NodeSource su Linux apt/dnf/yum). OpenClaw continua a supportare Node 22 LTS, attualmente 22.14+, per compatibilità.
3

Assicura Git

Installa Git se manca.
4

Installa OpenClaw

  • metodo npm (predefinito): installazione npm globale
  • metodo git: clona/aggiorna il repository, installa le dipendenze con pnpm, esegue la build, poi installa il wrapper in ~/.local/bin/openclaw
5

Attività post-installazione

  • Aggiorna in best-effort un servizio gateway già caricato (openclaw gateway install --force, poi riavvio)
  • Esegue openclaw doctor --non-interactive negli aggiornamenti e nelle installazioni git (best effort)
  • Tenta l’onboarding quando appropriato (TTY disponibile, onboarding non disabilitato e controlli bootstrap/config superati)
  • Imposta per default SHARP_IGNORE_GLOBAL_LIBVIPS=1

Rilevamento del checkout sorgente

Se viene eseguito all’interno di un checkout OpenClaw (package.json + pnpm-workspace.yaml), lo script propone di:
  • usare il checkout (git), oppure
  • usare l’installazione globale (npm)
Se non è disponibile alcun TTY e non è impostato alcun metodo di installazione, usa npm come predefinito e mostra un avviso. Lo script termina con codice 2 per una selezione del metodo non valida o valori --install-method non validi.

Esempi (install.sh)

curl -fsSL --proto '=https' --tlsv1.2 https://openclaw.ai/install.sh | bash
FlagDescrizione
--install-method npm|gitSceglie il metodo di installazione (predefinito: npm). Alias: --method
--npmScorciatoia per il metodo npm
--gitScorciatoia per il metodo git. Alias: --github
--version <version|dist-tag|spec>Versione npm, dist-tag o package spec (predefinito: latest)
--betaUsa il dist-tag beta se disponibile, altrimenti fallback a latest
--git-dir <path>Directory del checkout (predefinita: ~/openclaw). Alias: --dir
--no-git-updateSalta git pull per un checkout esistente
--no-promptDisabilita i prompt
--no-onboardSalta l’onboarding
--onboardAbilita l’onboarding
--dry-runStampa le azioni senza applicare modifiche
--verboseAbilita output di debug (set -x, log npm a livello notice)
--helpMostra l’uso (-h)
VariabileDescrizione
OPENCLAW_INSTALL_METHOD=git|npmMetodo di installazione
OPENCLAW_VERSION=latest|next|main|<semver>|<spec>Versione npm, dist-tag o package spec
OPENCLAW_BETA=0|1Usa beta se disponibile
OPENCLAW_GIT_DIR=<path>Directory del checkout
OPENCLAW_GIT_UPDATE=0|1Attiva/disattiva gli aggiornamenti git
OPENCLAW_NO_PROMPT=1Disabilita i prompt
OPENCLAW_NO_ONBOARD=1Salta l’onboarding
OPENCLAW_DRY_RUN=1Modalità dry run
OPENCLAW_VERBOSE=1Modalità debug
OPENCLAW_NPM_LOGLEVEL=error|warn|noticeLivello log npm
SHARP_IGNORE_GLOBAL_LIBVIPS=0|1Controlla il comportamento sharp/libvips (predefinito: 1)

install-cli.sh

Progettato per ambienti in cui vuoi tutto sotto un prefisso locale (predefinito ~/.openclaw) e senza una dipendenza da Node di sistema. Supporta installazioni npm per impostazione predefinita, oltre a installazioni da checkout git nello stesso flusso basato su prefisso.

Flusso (install-cli.sh)

1

Installa il runtime Node locale

Scarica un tarball Node LTS supportato e fissato a versione (la versione è incorporata nello script e aggiornata in modo indipendente) in <prefix>/tools/node-v<version> e ne verifica lo SHA-256.
2

Assicura Git

Se Git manca, tenta l’installazione tramite apt/dnf/yum su Linux o Homebrew su macOS.
3

Installa OpenClaw sotto il prefisso

  • metodo npm (predefinito): installa sotto il prefisso con npm, poi scrive il wrapper in <prefix>/bin/openclaw
  • metodo git: clona/aggiorna un checkout (predefinito ~/openclaw) e scrive comunque il wrapper in <prefix>/bin/openclaw
4

Aggiorna il servizio gateway caricato

Se un servizio gateway è già caricato da quello stesso prefisso, lo script esegue openclaw gateway install --force, poi openclaw gateway restart ed esegue in best-effort una probe di integrità del gateway.

Esempi (install-cli.sh)

curl -fsSL --proto '=https' --tlsv1.2 https://openclaw.ai/install-cli.sh | bash
FlagDescrizione
--prefix <path>Prefisso di installazione (predefinito: ~/.openclaw)
--install-method npm|gitSceglie il metodo di installazione (predefinito: npm). Alias: --method
--npmScorciatoia per il metodo npm
--git, --githubScorciatoia per il metodo git
--git-dir <path>Directory del checkout git (predefinita: ~/openclaw). Alias: --dir
--version <ver>Versione OpenClaw o dist-tag (predefinito: latest)
--node-version <ver>Versione di Node (predefinito: 22.22.0)
--jsonEmette eventi NDJSON
--onboardEsegue openclaw onboard dopo l’installazione
--no-onboardSalta l’onboarding (predefinito)
--set-npm-prefixSu Linux, forza il prefisso npm a ~/.npm-global se il prefisso corrente non è scrivibile
--helpMostra l’uso (-h)
VariabileDescrizione
OPENCLAW_PREFIX=<path>Prefisso di installazione
OPENCLAW_INSTALL_METHOD=git|npmMetodo di installazione
OPENCLAW_VERSION=<ver>Versione OpenClaw o dist-tag
OPENCLAW_NODE_VERSION=<ver>Versione di Node
OPENCLAW_GIT_DIR=<path>Directory del checkout git per installazioni git
OPENCLAW_GIT_UPDATE=0|1Attiva/disattiva aggiornamenti git per checkout esistenti
OPENCLAW_NO_ONBOARD=1Salta l’onboarding
OPENCLAW_NPM_LOGLEVEL=error|warn|noticeLivello log npm
SHARP_IGNORE_GLOBAL_LIBVIPS=0|1Controlla il comportamento sharp/libvips (predefinito: 1)

install.ps1

Flusso (install.ps1)

1

Assicura PowerShell + ambiente Windows

Richiede PowerShell 5+.
2

Assicura Node.js 24 per impostazione predefinita

Se manca, tenta l’installazione tramite winget, poi Chocolatey, poi Scoop. Node 22 LTS, attualmente 22.14+, resta supportato per compatibilità.
3

Installa OpenClaw

  • metodo npm (predefinito): installazione npm globale usando il -Tag selezionato
  • metodo git: clona/aggiorna il repository, installa/esegue la build con pnpm e installa il wrapper in %USERPROFILE%\.local\bin\openclaw.cmd
4

Attività post-installazione

  • Aggiunge la directory bin necessaria al PATH utente quando possibile
  • Aggiorna in best-effort un servizio gateway già caricato (openclaw gateway install --force, poi riavvio)
  • Esegue openclaw doctor --non-interactive negli aggiornamenti e nelle installazioni git (best effort)

Esempi (install.ps1)

iwr -useb https://openclaw.ai/install.ps1 | iex
FlagDescrizione
-InstallMethod npm|gitMetodo di installazione (predefinito: npm)
-Tag <tag|version|spec>Dist-tag npm, versione o package spec (predefinito: latest)
-GitDir <path>Directory del checkout (predefinita: %USERPROFILE%\openclaw)
-NoOnboardSalta l’onboarding
-NoGitUpdateSalta git pull
-DryRunStampa solo le azioni
VariabileDescrizione
OPENCLAW_INSTALL_METHOD=git|npmMetodo di installazione
OPENCLAW_GIT_DIR=<path>Directory del checkout
OPENCLAW_NO_ONBOARD=1Salta l’onboarding
OPENCLAW_GIT_UPDATE=0Disabilita git pull
OPENCLAW_DRY_RUN=1Modalità dry run
Se viene usato -InstallMethod git e Git manca, lo script termina e stampa il link a Git for Windows.

CI e automazione

Usa flag/variabili d’ambiente non interattivi per esecuzioni prevedibili.
curl -fsSL --proto '=https' --tlsv1.2 https://openclaw.ai/install.sh | bash -s -- --no-prompt --no-onboard

Risoluzione dei problemi

Git è richiesto per il metodo di installazione git. Per le installazioni npm, Git viene comunque controllato/installato per evitare errori spawn git ENOENT quando le dipendenze usano URL git.
Alcune configurazioni Linux puntano il prefisso globale npm a percorsi posseduti da root. install.sh può cambiare il prefisso in ~/.npm-global e aggiungere esportazioni PATH ai file rc della shell (quando quei file esistono).
Gli script impostano per default SHARP_IGNORE_GLOBAL_LIBVIPS=1 per evitare che sharp venga compilato contro la libvips di sistema. Per sovrascrivere:
SHARP_IGNORE_GLOBAL_LIBVIPS=0 curl -fsSL --proto '=https' --tlsv1.2 https://openclaw.ai/install.sh | bash
Installa Git for Windows, riapri PowerShell, riesegui l’installer.
Esegui npm config get prefix e aggiungi quella directory al PATH utente (su Windows non serve il suffisso \bin), poi riapri PowerShell.
install.ps1 al momento non espone uno switch -Verbose. Usa il tracing di PowerShell per la diagnostica a livello script:
Set-PSDebug -Trace 1
& ([scriptblock]::Create((iwr -useb https://openclaw.ai/install.ps1))) -NoOnboard
Set-PSDebug -Trace 0
Di solito è un problema di PATH. Vedi Risoluzione dei problemi di Node.js.