openclaw.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, consulta risoluzione dei problemi di Node.js.install.sh
Flusso (install.sh)
Garantisce Node.js 24 per impostazione predefinita
Controlla la versione di Node e installa Node 24 se necessario (Homebrew su macOS, script di configurazione NodeSource su Linux apt/dnf/yum). Su macOS, Homebrew viene installato solo quando il programma di installazione ne ha bisogno per Node o Git. OpenClaw supporta ancora Node 22 LTS, attualmente
22.19+, per compatibilità.
Su Alpine/musl Linux, il programma di installazione usa i pacchetti apk invece di NodeSource; i repository Alpine configurati devono fornire Node 22.19+ (Alpine 3.21 o successiva al momento della stesura).Garantisce Git
Installa Git se manca usando il gestore di pacchetti rilevato, inclusi Homebrew su macOS e apk su Alpine.
Installa OpenClaw
- metodo
npm(predefinito): installazione npm globale - metodo
git: clona/aggiorna il repository, installa le dipendenze con pnpm, compila, quindi installa il wrapper in~/.local/bin/openclaw
Attività post-installazione
- Aggiorna al meglio un servizio Gateway caricato (
openclaw gateway install --force, quindi riavvio) - Esegue
openclaw doctor --non-interactivedurante aggiornamenti e installazioni git (al meglio) - Tenta l’onboarding quando appropriato (TTY disponibile, onboarding non disabilitato e controlli bootstrap/config superati)
Rilevamento del checkout sorgente
Se eseguito all’interno di un checkout OpenClaw (package.json + pnpm-workspace.yaml), lo script offre:
- 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
- Checkout main di GitHub
- Dry run
Riferimento dei flag
Riferimento dei flag
| Flag | Descrizione |
|---|---|
--install-method npm|git | Scegli 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 specifica del pacchetto (predefinito: latest) |
--beta | Usa il dist-tag beta se disponibile, altrimenti ripiega su latest |
--git-dir <path> | Directory di 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 l’output di debug (set -x, log npm a livello notice) |
--help | Mostra l’utilizzo (-h) |
Riferimento delle variabili d'ambiente
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 beta se disponibile |
OPENCLAW_HOME=<path> | Directory base per lo stato OpenClaw e i percorsi git/onboarding predefiniti |
OPENCLAW_GIT_DIR=<path> | Directory di 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 di log npm |
install-cli.sh
Progettato per ambienti in cui vuoi tutto sotto un prefisso locale
(predefinito
~/.openclaw) e nessuna dipendenza Node di sistema. Supporta le installazioni npm
per impostazione predefinita, più installazioni da checkout git nello stesso flusso con prefisso.Flusso (install-cli.sh)
Installa il runtime Node locale
Scarica un tarball Node LTS supportato e fissato (la versione è incorporata nello script e aggiornata indipendentemente) in
<prefix>/tools/node-v<version> e verifica SHA-256.
Su Alpine/musl Linux, dove Node non pubblica tarball compatibili per il runtime fissato, installa nodejs e npm con apk e collega quel runtime nel percorso del wrapper del prefisso. I repository Alpine devono fornire Node 22.19+; usa Alpine 3.21 o successiva se repository più vecchi forniscono solo Node 20 o 21.Garantisce Git
Se Git manca, tenta l’installazione tramite apt/dnf/yum/apk su Linux o Homebrew su macOS.
Installa OpenClaw sotto il prefisso
- metodo
npm(predefinito): installa sotto il prefisso con npm, quindi 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 dei flag
Riferimento dei flag
| Flag | Descrizione |
|---|---|
--prefix <path> | Prefisso di installazione (predefinito: ~/.openclaw) |
--install-method npm|git | Scegli 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 di OpenClaw o dist-tag (predefinito: latest) |
--node-version <ver> | Versione di Node (predefinita: 22.22.0) |
--json | Emetti eventi NDJSON |
--onboard | Esegui 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 attuale non è scrivibile |
--help | Mostra l’utilizzo (-h) |
Environment variables reference
Environment variables reference
| Variabile | Descrizione |
|---|---|
OPENCLAW_PREFIX=<path> | Prefisso di installazione |
OPENCLAW_INSTALL_METHOD=git|npm | Metodo di installazione |
OPENCLAW_VERSION=<ver> | Versione di OpenClaw o dist-tag |
OPENCLAW_NODE_VERSION=<ver> | Versione di Node |
OPENCLAW_HOME=<path> | Directory di base per lo stato di OpenClaw e i percorsi git/onboarding predefiniti |
OPENCLAW_GIT_DIR=<path> | Directory del 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 l’onboarding |
OPENCLAW_NPM_LOGLEVEL=error|warn|notice | Livello di log npm |
install.ps1
Flusso (install.ps1)
Ensure Node.js 24 by default
Se manca, tenta l’installazione tramite winget, poi Chocolatey, poi Scoop. Se non è disponibile alcun gestore di pacchetti, lo script scarica lo zip ufficiale di Node.js per Windows in
%LOCALAPPDATA%\OpenClaw\deps\portable-node e lo aggiunge al PATH del processo corrente e dell’utente. Node 22 LTS, attualmente 22.19+, rimane supportato per compatibilità.Install OpenClaw
- Metodo
npm(predefinito): installazione npm globale usando il-Tagselezionato, avviata da una directory temporanea del programma di installazione scrivibile, così le shell aperte in cartelle protette comeC:\funzionano comunque - Metodo
git: clona/aggiorna il repo, installa/compila con pnpm e installa il wrapper in%USERPROFILE%\.local\bin\openclaw.cmd. Se Git manca, lo script esegue il bootstrap di MinGit locale per l’utente in%LOCALAPPDATA%\OpenClaw\deps\portable-gite lo aggiunge al PATH del processo corrente e dell’utente.
Post-install tasks
- Aggiunge la directory bin necessaria al PATH dell’utente quando possibile
- Aggiorna al meglio un servizio gateway caricato (
openclaw gateway install --force, poi riavvio) - Esegue
openclaw doctor --non-interactivesugli aggiornamenti e sulle installazioni git (al meglio)
Esempi (install.ps1)
- Default
- Git install
- GitHub main checkout
- Custom git directory
- Dry run
- Debug trace
Flags reference
Flags reference
| 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 del checkout (predefinita: %USERPROFILE%\openclaw) |
-NoOnboard | Salta l’onboarding |
-NoGitUpdate | Salta git pull |
-DryRun | Stampa solo le azioni |
Environment variables reference
Environment variables reference
| 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 prova un bootstrap di MinGit locale per l’utente prima di stampare il link a Git for Windows.CI e automazione
Usa flag/variabili d’ambiente non interattivi per esecuzioni prevedibili.- install.sh (non-interactive npm)
- install.sh (non-interactive git)
- install-cli.sh (JSON)
- install.ps1 (skip onboarding)
Risoluzione dei problemi
Why is Git required?
Why is Git required?
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.Why does npm hit EACCES on Linux?
Why does npm hit EACCES on Linux?
Alcune configurazioni Linux puntano il prefisso globale npm a percorsi di proprietà di root.
install.sh può cambiare il prefisso in ~/.npm-global e aggiungere esportazioni PATH ai file rc della shell (quando tali file esistono).Windows: "npm error spawn git / ENOENT"
Windows: "npm error spawn git / ENOENT"
Riesegui il programma di installazione affinché possa eseguire il bootstrap di MinGit locale per l’utente, oppure installa Git for Windows e riapri PowerShell.
Windows: "openclaw is not recognized"
Windows: "openclaw is not recognized"
Esegui
npm config get prefix e aggiungi quella directory al PATH dell’utente (su Windows non serve il suffisso \bin), poi riapri PowerShell.Windows: how to get verbose installer output
Windows: how to get verbose installer output
install.ps1 attualmente non espone uno switch -Verbose.
Usa il tracing di PowerShell per la diagnostica a livello di script:openclaw not found after install
openclaw not found after install
Di solito è un problema di PATH. Vedi risoluzione dei problemi di Node.js.