Dettagli interni dell’installer
OpenClaw include tre script di installazione, distribuiti daopenclaw.ai.
| Script | Piattaforma | Cosa fa |
|---|---|---|
install.sh | macOS / Linux / WSL | Installa Node se necessario, installa OpenClaw tramite npm (predefinito) o git e può eseguire l’onboarding. |
install-cli.sh | macOS / Linux / WSL | Installa Node + OpenClaw in un prefisso locale (~/.openclaw) con modalità npm o checkout git. Non richiede root. |
install.ps1 | Windows (PowerShell) | Installa Node se necessario, installa OpenClaw tramite npm (predefinito) o git e può eseguire l’onboarding. |
Comandi rapidi
- install.sh
- install-cli.sh
- install.ps1
Se l’installazione riesce ma
openclaw non viene trovato in un nuovo terminale, vedi Risoluzione dei problemi di Node.js.install.sh
Flusso (install.sh)
Rileva il sistema operativo
Supporta macOS e Linux (incluso WSL). Se viene rilevato macOS, installa Homebrew se manca.
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à.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
Attività post-installazione
- Aggiorna in best-effort un servizio gateway già caricato (
openclaw gateway install --force, poi riavvio) - Esegue
openclaw doctor --non-interactivenegli 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)
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)
- Predefinito
- Salta onboarding
- Installazione git
- GitHub main tramite npm
- Dry run
Riferimento flag
Riferimento flag
| Flag | Descrizione |
|---|---|
--install-method npm|git | Sceglie il metodo di installazione (predefinito: npm). Alias: --method |
--npm | Scorciatoia per il metodo npm |
--git | Scorciatoia per il metodo git. Alias: --github |
--version <version|dist-tag|spec> | Versione npm, dist-tag o package spec (predefinito: latest) |
--beta | Usa il dist-tag beta se disponibile, altrimenti fallback a latest |
--git-dir <path> | Directory del checkout (predefinita: ~/openclaw). Alias: --dir |
--no-git-update | Salta git pull per un checkout esistente |
--no-prompt | Disabilita i prompt |
--no-onboard | Salta l’onboarding |
--onboard | Abilita l’onboarding |
--dry-run | Stampa le azioni senza applicare modifiche |
--verbose | Abilita output di debug (set -x, log npm a livello notice) |
--help | Mostra l’uso (-h) |
Riferimento variabili d'ambiente
Riferimento variabili d'ambiente
| Variabile | Descrizione |
|---|---|
OPENCLAW_INSTALL_METHOD=git|npm | Metodo di installazione |
OPENCLAW_VERSION=latest|next|main|<semver>|<spec> | Versione npm, dist-tag o package spec |
OPENCLAW_BETA=0|1 | Usa beta se disponibile |
OPENCLAW_GIT_DIR=<path> | Directory del checkout |
OPENCLAW_GIT_UPDATE=0|1 | Attiva/disattiva gli aggiornamenti git |
OPENCLAW_NO_PROMPT=1 | Disabilita i prompt |
OPENCLAW_NO_ONBOARD=1 | Salta l’onboarding |
OPENCLAW_DRY_RUN=1 | Modalità dry run |
OPENCLAW_VERBOSE=1 | Modalità debug |
OPENCLAW_NPM_LOGLEVEL=error|warn|notice | Livello log npm |
SHARP_IGNORE_GLOBAL_LIBVIPS=0|1 | Controlla 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)
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.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
Esempi (install-cli.sh)
- Predefinito
- Prefisso personalizzato + versione
- Installazione git
- Output JSON per automazione
- Esegui onboarding
Riferimento flag
Riferimento flag
| Flag | Descrizione |
|---|---|
--prefix <path> | Prefisso di installazione (predefinito: ~/.openclaw) |
--install-method npm|git | Sceglie il metodo di installazione (predefinito: npm). Alias: --method |
--npm | Scorciatoia per il metodo npm |
--git, --github | Scorciatoia 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) |
--json | Emette eventi NDJSON |
--onboard | Esegue openclaw onboard dopo l’installazione |
--no-onboard | Salta l’onboarding (predefinito) |
--set-npm-prefix | Su Linux, forza il prefisso npm a ~/.npm-global se il prefisso corrente non è scrivibile |
--help | Mostra l’uso (-h) |
Riferimento variabili d'ambiente
Riferimento variabili d'ambiente
| Variabile | Descrizione |
|---|---|
OPENCLAW_PREFIX=<path> | Prefisso di installazione |
OPENCLAW_INSTALL_METHOD=git|npm | Metodo 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|1 | Attiva/disattiva aggiornamenti git per checkout esistenti |
OPENCLAW_NO_ONBOARD=1 | Salta l’onboarding |
OPENCLAW_NPM_LOGLEVEL=error|warn|notice | Livello log npm |
SHARP_IGNORE_GLOBAL_LIBVIPS=0|1 | Controlla il comportamento sharp/libvips (predefinito: 1) |
install.ps1
Flusso (install.ps1)
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à.Installa OpenClaw
- metodo
npm(predefinito): installazione npm globale usando il-Tagselezionato - metodo
git: clona/aggiorna il repository, installa/esegue la build con pnpm e installa il wrapper in%USERPROFILE%\.local\bin\openclaw.cmd
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-interactivenegli aggiornamenti e nelle installazioni git (best effort)
Esempi (install.ps1)
- Predefinito
- Installazione git
- GitHub main tramite npm
- Directory git personalizzata
- Dry run
- Traccia di debug
Riferimento flag
Riferimento flag
| Flag | Descrizione |
|---|---|
-InstallMethod npm|git | Metodo 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) |
-NoOnboard | Salta l’onboarding |
-NoGitUpdate | Salta git pull |
-DryRun | Stampa solo le azioni |
Riferimento variabili d'ambiente
Riferimento variabili d'ambiente
| Variabile | Descrizione |
|---|---|
OPENCLAW_INSTALL_METHOD=git|npm | Metodo di installazione |
OPENCLAW_GIT_DIR=<path> | Directory del checkout |
OPENCLAW_NO_ONBOARD=1 | Salta l’onboarding |
OPENCLAW_GIT_UPDATE=0 | Disabilita git pull |
OPENCLAW_DRY_RUN=1 | Modalità 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.- install.sh (npm non interattivo)
- install.sh (git non interattivo)
- install-cli.sh (JSON)
- install.ps1 (salta onboarding)
Risoluzione dei problemi
Perché Git è richiesto?
Perché Git è richiesto?
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.Perché npm incontra EACCES su Linux?
Perché npm incontra EACCES su Linux?
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).Problemi con sharp/libvips
Problemi con sharp/libvips
Gli script impostano per default
SHARP_IGNORE_GLOBAL_LIBVIPS=1 per evitare che sharp venga compilato contro la libvips di sistema. Per sovrascrivere:Windows: "npm error spawn git / ENOENT"
Windows: "npm error spawn git / ENOENT"
Installa Git for Windows, riapri PowerShell, riesegui l’installer.
Windows: "openclaw is not recognized"
Windows: "openclaw is not recognized"
Esegui
npm config get prefix e aggiungi quella directory al PATH utente (su Windows non serve il suffisso \bin), poi riapri PowerShell.Windows: come ottenere output dettagliato dell'installer
Windows: come ottenere output dettagliato dell'installer
install.ps1 al momento non espone uno switch -Verbose.
Usa il tracing di PowerShell per la diagnostica a livello script:openclaw non trovato dopo l'installazione
openclaw non trovato dopo l'installazione
Di solito è un problema di PATH. Vedi Risoluzione dei problemi di Node.js.