Install overview
Detalhes internos do instalador
O OpenClaw disponibiliza três scripts de instalação, servidos por openclaw.ai.
| Script | Plataforma | O que faz |
|---|---|---|
install.sh |
macOS / Linux / WSL | Instala o Node se necessário, instala o OpenClaw via npm (padrão) ou git e pode executar a integração inicial. |
install-cli.sh |
macOS / Linux / WSL | Instala o Node + OpenClaw em um prefixo local (~/.openclaw) via npm ou git. Não requer acesso root. |
install.ps1 |
Windows (PowerShell) | Instala o Node se necessário, instala o OpenClaw via npm (padrão) ou git e pode executar a integração inicial. |
Todos os três oferecem suporte ao Node 22.19+, 23.11+ ou 24+; o Node 24 é o destino padrão para novas instalações.
Comandos rápidos
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
Fluxo (install.sh)
Detectar o sistema operacional
Oferece suporte ao macOS e ao Linux (incluindo WSL).
Garantir o Node.js 24 por padrão
Verifica a versão do Node e instala o Node 24 se necessário (Homebrew no macOS, scripts de configuração do NodeSource no apt/dnf/yum do Linux). No macOS, o Homebrew é instalado somente quando o instalador precisa dele para o Node ou o Git. O Node 22.19+ e o 23.11+ continuam sendo compatíveis. No Alpine/Linux musl, o instalador usa pacotes apk em vez do NodeSource; os repositórios Alpine configurados devem fornecer uma versão compatível do Node (Alpine 3.21 ou mais recente no momento da redação).
Garantir o Git
Instala o Git caso esteja ausente usando o gerenciador de pacotes detectado, incluindo o Homebrew no macOS e o apk no Alpine.
Instalar o OpenClaw
- Método
npm(padrão): instalação global pelo npm - Método
git: clona/atualiza o repositório, instala as dependências com pnpm, compila e instala o wrapper em~/.local/bin/openclaw
Tarefas pós-instalação
- Localiza o binário
openclawrecém-instalado para os comandos subsequentes - Em uma instalação não configurada, inicia a integração inicial antes das verificações do doctor ou do Gateway. Com
--no-onboardou sem TTY, exibe o comando para concluir a configuração posteriormente. - Em uma instalação configurada, atualiza e reinicia, na medida do possível, um serviço Gateway carregado e executa o doctor. As atualizações atualizam os plugins quando possível ou exibem o comando manual em uma execução sem interface com prompts habilitados.
- Quando
--verifyé executado, verifica a versão instalada e a integridade do Gateway somente após existir uma configuração.
Detecção de checkout do código-fonte
Se for executado dentro de um checkout do OpenClaw (package.json + pnpm-workspace.yaml), o script oferece:
- usar o checkout (
git), ou - usar a instalação global (
npm)
Se não houver TTY disponível e nenhum método de instalação estiver definido, o padrão será npm, e um aviso será exibido.
O script encerra com o código 2 quando há uma seleção de método inválida ou valores inválidos para --install-method.
Exemplos (install.sh)
Padrão
curl -fsSL --proto '=https' --tlsv1.2 https://openclaw.ai/install.sh | bashIgnorar a integração inicial
curl -fsSL --proto '=https' --tlsv1.2 https://openclaw.ai/install.sh | bash -s -- --no-onboardInstalação via Git
curl -fsSL --proto '=https' --tlsv1.2 https://openclaw.ai/install.sh | bash -s -- --install-method gitCheckout da branch main do GitHub
curl -fsSL --proto '=https' --tlsv1.2 https://openclaw.ai/install.sh | bash -s -- --install-method git --version mainSimulação
curl -fsSL --proto '=https' --tlsv1.2 https://openclaw.ai/install.sh | bash -s -- --dry-runVerificar após a instalação
curl -fsSL --proto '=https' --tlsv1.2 https://openclaw.ai/install.sh | bash -s -- --no-onboard --verifyReferência de flags
| Flag | Descrição |
|---|---|
--install-method | --method npm|git |
Escolhe o método de instalação (padrão: npm) |
--npm |
Atalho para o método npm |
--git | --github |
Atalho para o método git |
--version <version|dist-tag|spec> |
Versão, dist-tag ou especificação de pacote do npm (padrão: latest) |
--beta |
Usa a dist-tag beta se disponível; caso contrário, volta para latest |
--git-dir | --dir <path> |
Diretório do checkout (padrão: ~/openclaw) |
--no-git-update |
Ignora git pull para um checkout existente |
--no-prompt |
Desabilita os prompts |
--no-onboard |
Ignora a integração inicial |
--onboard |
Habilita a integração inicial |
--verify |
Executa uma verificação rápida pós-instalação (--version e integridade do Gateway, se carregado) |
--dry-run |
Exibe as ações sem aplicar alterações |
--verbose |
Habilita a saída de depuração (set -x e logs do npm no nível notice) |
--help | -h |
Exibe as instruções de uso |
Referência de variáveis de ambiente
| Variável | Descrição |
|---|---|
OPENCLAW_INSTALL_METHOD=git|npm |
Método de instalação |
OPENCLAW_VERSION=latest|next|<semver>|<spec> |
Versão, dist-tag ou especificação de pacote do npm |
OPENCLAW_BETA=0|1 |
Usa a versão beta, se disponível |
OPENCLAW_HOME=<path> |
Diretório-base para o estado do OpenClaw e os caminhos padrão de git/integração inicial |
OPENCLAW_GIT_DIR=<path> |
Diretório do checkout |
OPENCLAW_GIT_UPDATE=0|1 |
Ativa ou desativa as atualizações do git |
OPENCLAW_NO_PROMPT=1 |
Desabilita os prompts |
OPENCLAW_VERIFY_INSTALL=1 |
Executa a verificação rápida pós-instalação |
OPENCLAW_NO_ONBOARD=1 |
Ignora a integração inicial |
OPENCLAW_DRY_RUN=1 |
Modo de simulação |
OPENCLAW_VERBOSE=1 |
Modo de depuração |
OPENCLAW_NPM_LOGLEVEL=error|warn|notice |
Nível de log do npm (padrão: error, oculta o ruído de avisos de descontinuação do npm) |
install-cli.sh
Fluxo (install-cli.sh)
Instalar o runtime local do Node
Baixa um tarball fixado de uma versão LTS compatível do Node (a versão é incorporada ao script e atualizada de forma independente; o padrão é 22.22.2) para <prefix>/tools/node-v<version> e verifica o SHA-256.
No Alpine/Linux musl, para o qual o Node não publica tarballs compatíveis com o runtime fixado, instala nodejs e npm com apk e vincula esse runtime ao caminho do wrapper no prefixo. Os repositórios Alpine devem fornecer uma versão compatível do Node (22.19+, 23.11+ ou 24+); use o Alpine 3.21 ou mais recente se os repositórios antigos fornecerem apenas o Node 20 ou 21.
Garantir o Git
Se o Git estiver ausente, tenta instalá-lo via apt/dnf/yum/apk no Linux ou Homebrew no macOS.
Instalar o OpenClaw no prefixo
- Método
npm(padrão): instala no prefixo com o npm e grava o wrapper em<prefix>/bin/openclaw - Método
git: clona/atualiza um checkout (padrão:~/openclaw) e também grava o wrapper em<prefix>/bin/openclaw
Atualizar o serviço Gateway carregado
Se um serviço Gateway já estiver carregado a partir desse mesmo prefixo, o script executará
openclaw gateway install --force, depois openclaw gateway restart e
verificará a integridade do Gateway na medida do possível.
Exemplos (install-cli.sh)
Padrão
curl -fsSL --proto '=https' --tlsv1.2 https://openclaw.ai/install-cli.sh | bashPrefixo personalizado + versão
curl -fsSL --proto '=https' --tlsv1.2 https://openclaw.ai/install-cli.sh | bash -s -- --prefix /opt/openclaw --version latestInstalação via Git
curl -fsSL --proto '=https' --tlsv1.2 https://openclaw.ai/install-cli.sh | bash -s -- --install-method git --git-dir ~/openclawSaída JSON para automação
curl -fsSL --proto '=https' --tlsv1.2 https://openclaw.ai/install-cli.sh | bash -s -- --json --prefix /opt/openclawExecutar a integração inicial
curl -fsSL --proto '=https' --tlsv1.2 https://openclaw.ai/install-cli.sh | bash -s -- --onboardReferência de flags
| Flag | Descrição |
|---|---|
--prefix <path> |
Prefixo de instalação (padrão: ~/.openclaw) |
--install-method | --method npm|git |
Escolhe o método de instalação (padrão: npm) |
--npm |
Atalho para o método npm |
--git | --github |
Atalho para o método git |
--git-dir | --dir <path> |
Diretório de checkout do Git (padrão: ~/openclaw) |
--version <ver> |
Versão ou dist-tag do OpenClaw (padrão: latest) |
--node-version <ver> |
Versão do Node (padrão: 22.22.2) |
--json |
Emite eventos NDJSON |
--onboard |
Executa openclaw onboard após a instalação |
--no-onboard |
Ignora a integração inicial (padrão) |
--set-npm-prefix |
No Linux, força o prefixo do npm para ~/.npm-global se não for possível gravar no prefixo atual |
--help | -h |
Exibe as instruções de uso |
Referência de variáveis de ambiente
| Variável | Descrição |
|---|---|
OPENCLAW_PREFIX=<path> |
Prefixo de instalação |
OPENCLAW_INSTALL_METHOD=git|npm |
Método de instalação |
OPENCLAW_VERSION=<ver> |
Versão ou dist-tag do OpenClaw |
OPENCLAW_NODE_VERSION=<ver> |
Versão do Node |
OPENCLAW_HOME=<path> |
Diretório base para o estado do OpenClaw e os caminhos padrão de git/integração inicial |
OPENCLAW_GIT_DIR=<path> |
Diretório de checkout do Git para instalações via git |
OPENCLAW_GIT_UPDATE=0|1 |
Ativa ou desativa atualizações do git em checkouts existentes |
OPENCLAW_NO_ONBOARD=1 |
Ignora a integração inicial |
OPENCLAW_NPM_LOGLEVEL=error|warn|notice |
Nível de log do npm (padrão: error) |
install.ps1
Fluxo (install.ps1)
Garantir o ambiente PowerShell + Windows
Requer PowerShell 5 ou posterior.
Garantir o Node.js 24 por padrão
Se estiver ausente, tenta instalá-lo via winget, depois Chocolatey e, por fim, Scoop. Se nenhum gerenciador de pacotes estiver disponível, o script baixa o arquivo zip oficial do Node.js 24 para Windows em %LOCALAPPDATA%\OpenClaw\deps\portable-node e o adiciona ao PATH do processo atual e do usuário. O Node 22.19 ou posterior e o 23.11 ou posterior continuam compatíveis.
Instalar o OpenClaw
- Método
npm(padrão): instalação global via npm usando o-Tagselecionado, iniciada a partir de um diretório temporário gravável do instalador para que shells abertos em pastas protegidas, comoC:\, continuem funcionando - Método
git: clona/atualiza o repositório, instala/compila com pnpm e instala o wrapper em%USERPROFILE%\.local\bin\openclaw.cmd. Se o Git estiver ausente, o script inicializa o MinGit local do usuário em%LOCALAPPDATA%\OpenClaw\deps\portable-gite o adiciona ao PATH do processo atual e do usuário.
Executar tarefas pós-instalação
- Adiciona o diretório de binários necessário ao PATH do usuário quando possível
- Atualiza, em caráter de melhor esforço, um serviço Gateway carregado (
openclaw gateway install --forcee, em seguida, reinicia) - Executa
openclaw doctor --non-interactiveem atualizações e instalações via git (melhor esforço)
Tratar falhas
Instalações com iwr ... | iex e blocos de script relatam um erro de encerramento sem fechar a sessão atual do PowerShell. Instalações diretas com powershell -File / pwsh -File ainda encerram com código diferente de zero para automação.
Exemplos (install.ps1)
Padrão
iwr -useb https://openclaw.ai/install.ps1 | iexInstalação via Git
& ([scriptblock]::Create((iwr -useb https://openclaw.ai/install.ps1))) -InstallMethod gitCheckout da branch main do GitHub
& ([scriptblock]::Create((iwr -useb https://openclaw.ai/install.ps1))) -InstallMethod git -Tag mainDiretório git personalizado
& ([scriptblock]::Create((iwr -useb https://openclaw.ai/install.ps1))) -InstallMethod git -GitDir "C:\openclaw"Simulação
& ([scriptblock]::Create((iwr -useb https://openclaw.ai/install.ps1))) -DryRunReferência de flags
| Flag | Descrição |
|---|---|
-InstallMethod npm|git |
Método de instalação (padrão: npm) |
-Tag <tag|version|spec> |
Dist-tag, versão ou especificação de pacote npm (padrão: latest) |
-GitDir <path> |
Diretório de checkout (padrão: %USERPROFILE%\openclaw) |
-NoOnboard |
Ignora a integração inicial |
-NoGitUpdate |
Ignora git pull |
-DryRun |
Apenas exibe as ações |
Referência de variáveis de ambiente
| Variável | Descrição |
|---|---|
OPENCLAW_INSTALL_METHOD=git|npm |
Método de instalação |
OPENCLAW_GIT_DIR=<path> |
Diretório de checkout |
OPENCLAW_NO_ONBOARD=1 |
Ignora a integração inicial |
OPENCLAW_GIT_UPDATE=0 |
Desativa o git pull |
OPENCLAW_DRY_RUN=1 |
Modo de simulação |
CI e automação
Use flags/variáveis de ambiente não interativas para obter execuções previsíveis.
install.sh (npm não interativo)
curl -fsSL --proto '=https' --tlsv1.2 https://openclaw.ai/install.sh | bash -s -- --no-prompt --no-onboardinstall.sh (git não interativo)
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 (ignorar integração inicial)
& ([scriptblock]::Create((iwr -useb https://openclaw.ai/install.ps1))) -NoOnboardSolução de problemas
Por que o Git é necessário?
O Git é necessário para o método de instalação git. Em instalações via npm, o Git ainda é verificado/instalado para evitar falhas spawn git ENOENT quando as dependências usam URLs git.
Por que o npm encontra EACCES no Linux?
Algumas configurações do Linux apontam o prefixo global do npm para caminhos pertencentes ao root. O install.sh pode alterar o prefixo para ~/.npm-global e acrescentar exportações de PATH aos arquivos rc do shell (quando esses arquivos existem).
Windows: "npm error spawn git / ENOENT"
Execute novamente o instalador para que ele possa inicializar o MinGit local do usuário ou instale o Git for Windows e reabra o PowerShell.
Windows: "openclaw is not recognized"
Execute npm config get prefix e adicione esse diretório ao PATH do usuário (nenhum sufixo \bin é necessário no Windows); em seguida, reabra o PowerShell.
Windows: como obter uma saída detalhada do instalador
O install.ps1 não disponibiliza uma opção -Verbose.
Use o rastreamento do PowerShell para diagnósticos no nível do script:
Set-PSDebug -Trace 1& ([scriptblock]::Create((iwr -useb https://openclaw.ai/install.ps1))) -NoOnboardSet-PSDebug -Trace 0openclaw não encontrado após a instalação
Geralmente, é um problema no PATH. Consulte solução de problemas do Node.js.