Detalles internos del instalador
OpenClaw incluye tres scripts de instalación, servidos desdeopenclaw.ai.
| Script | Plataforma | Qué hace |
|---|---|---|
install.sh | macOS / Linux / WSL | Instala Node si es necesario, instala OpenClaw mediante npm (predeterminado) o git, y puede ejecutar onboarding. |
install-cli.sh | macOS / Linux / WSL | Instala Node + OpenClaw en un prefijo local (~/.openclaw) con modos npm o copia git. No requiere root. |
install.ps1 | Windows (PowerShell) | Instala Node si es necesario, instala OpenClaw mediante npm (predeterminado) o git, y puede ejecutar onboarding. |
Comandos rápidos
- install.sh
- install-cli.sh
- install.ps1
Si la instalación se completa correctamente pero
openclaw no aparece en una terminal nueva, consulta Resolución de problemas de Node.js.install.sh
Flujo (install.sh)
Detectar el SO
Compatible con macOS y Linux (incluido WSL). Si detecta macOS, instala Homebrew si falta.
Garantizar Node.js 24 de forma predeterminada
Comprueba la versión de Node e instala Node 24 si es necesario (Homebrew en macOS, scripts de configuración de NodeSource en apt/dnf/yum de Linux). OpenClaw sigue siendo compatible con Node 22 LTS, actualmente
22.14+, por compatibilidad.Instalar OpenClaw
- Método
npm(predeterminado): instalación global con npm - Método
git: clona/actualiza el repositorio, instala dependencias con pnpm, compila y luego instala el wrapper en~/.local/bin/openclaw
Tareas posteriores a la instalación
- Actualiza, en el mejor esfuerzo, un servicio gateway cargado (
openclaw gateway install --force, luego reinicio) - Ejecuta
openclaw doctor --non-interactiveen actualizaciones e instalaciones con git (mejor esfuerzo) - Intenta onboarding cuando corresponde (TTY disponible, onboarding no desactivado y comprobaciones de bootstrap/configuración superadas)
- Usa por defecto
SHARP_IGNORE_GLOBAL_LIBVIPS=1
Detección de copia del código fuente
Si se ejecuta dentro de una copia de OpenClaw (package.json + pnpm-workspace.yaml), el script ofrece:
- usar la copia (
git), o - usar la instalación global (
npm)
npm de forma predeterminada y muestra una advertencia.
El script sale con código 2 para selecciones de método no válidas o valores --install-method no válidos.
Ejemplos (install.sh)
- Predeterminado
- Omitir onboarding
- Instalación con git
- GitHub main mediante npm
- Simulación
Referencia de flags
Referencia de flags
| Flag | Descripción |
|---|---|
--install-method npm|git | Elige el método de instalación (predeterminado: npm). Alias: --method |
--npm | Atajo para el método npm |
--git | Atajo para el método git. Alias: --github |
--version <version|dist-tag|spec> | Versión npm, dist-tag o especificación de paquete (predeterminado: latest) |
--beta | Usa la dist-tag beta si está disponible; en caso contrario usa latest |
--git-dir <path> | Directorio de la copia (predeterminado: ~/openclaw). Alias: --dir |
--no-git-update | Omite git pull en copias existentes |
--no-prompt | Desactiva los prompts |
--no-onboard | Omite onboarding |
--onboard | Habilita onboarding |
--dry-run | Muestra las acciones sin aplicar cambios |
--verbose | Habilita salida de depuración (set -x, registros npm de nivel notice) |
--help | Muestra el uso (-h) |
Referencia de variables de entorno
Referencia de variables de entorno
| Variable | Descripción |
|---|---|
OPENCLAW_INSTALL_METHOD=git|npm | Método de instalación |
OPENCLAW_VERSION=latest|next|main|<semver>|<spec> | Versión npm, dist-tag o especificación de paquete |
OPENCLAW_BETA=0|1 | Usar beta si está disponible |
OPENCLAW_GIT_DIR=<path> | Directorio de la copia |
OPENCLAW_GIT_UPDATE=0|1 | Activa o desactiva actualizaciones git |
OPENCLAW_NO_PROMPT=1 | Desactiva los prompts |
OPENCLAW_NO_ONBOARD=1 | Omite onboarding |
OPENCLAW_DRY_RUN=1 | Modo de simulación |
OPENCLAW_VERBOSE=1 | Modo de depuración |
OPENCLAW_NPM_LOGLEVEL=error|warn|notice | Nivel de registro de npm |
SHARP_IGNORE_GLOBAL_LIBVIPS=0|1 | Controla el comportamiento de sharp/libvips (predeterminado: 1) |
install-cli.sh
Diseñado para entornos en los que quieres que todo viva bajo un prefijo local
(predeterminado
~/.openclaw) y sin dependencia de Node del sistema. Admite instalaciones con npm
de forma predeterminada, además de instalaciones desde copia git dentro del mismo flujo por prefijo.Flujo (install-cli.sh)
Instalar runtime local de Node
Descarga un tarball fijado de una versión LTS compatible de Node (la versión está integrada en el script y se actualiza independientemente) en
<prefix>/tools/node-v<version> y verifica SHA-256.Garantizar Git
Si Git no está disponible, intenta instalarlo mediante apt/dnf/yum en Linux o Homebrew en macOS.
Instalar OpenClaw bajo el prefijo
- Método
npm(predeterminado): instala bajo el prefijo con npm y luego escribe el wrapper en<prefix>/bin/openclaw - Método
git: clona/actualiza una copia (predeterminado~/openclaw) y aun así escribe el wrapper en<prefix>/bin/openclaw
Ejemplos (install-cli.sh)
- Predeterminado
- Prefijo personalizado + versión
- Instalación con git
- Salida JSON para automatización
- Ejecutar onboarding
Referencia de flags
Referencia de flags
| Flag | Descripción |
|---|---|
--prefix <path> | Prefijo de instalación (predeterminado: ~/.openclaw) |
--install-method npm|git | Elige el método de instalación (predeterminado: npm). Alias: --method |
--npm | Atajo para el método npm |
--git, --github | Atajo para el método git |
--git-dir <path> | Directorio de la copia git (predeterminado: ~/openclaw). Alias: --dir |
--version <ver> | Versión de OpenClaw o dist-tag (predeterminado: latest) |
--node-version <ver> | Versión de Node (predeterminado: 22.22.0) |
--json | Emite eventos NDJSON |
--onboard | Ejecuta openclaw onboard después de la instalación |
--no-onboard | Omite onboarding (predeterminado) |
--set-npm-prefix | En Linux, fuerza el prefijo npm a ~/.npm-global si el prefijo actual no se puede escribir |
--help | Muestra el uso (-h) |
Referencia de variables de entorno
Referencia de variables de entorno
| Variable | Descripción |
|---|---|
OPENCLAW_PREFIX=<path> | Prefijo de instalación |
OPENCLAW_INSTALL_METHOD=git|npm | Método de instalación |
OPENCLAW_VERSION=<ver> | Versión o dist-tag de OpenClaw |
OPENCLAW_NODE_VERSION=<ver> | Versión de Node |
OPENCLAW_GIT_DIR=<path> | Directorio de copia git para instalaciones con git |
OPENCLAW_GIT_UPDATE=0|1 | Activa o desactiva actualizaciones git en copias existentes |
OPENCLAW_NO_ONBOARD=1 | Omite onboarding |
OPENCLAW_NPM_LOGLEVEL=error|warn|notice | Nivel de registro de npm |
SHARP_IGNORE_GLOBAL_LIBVIPS=0|1 | Controla el comportamiento de sharp/libvips (predeterminado: 1) |
install.ps1
Flujo (install.ps1)
Garantizar Node.js 24 de forma predeterminada
Si falta, intenta instalarlo mediante winget, luego Chocolatey y después Scoop. Node 22 LTS, actualmente
22.14+, sigue siendo compatible por compatibilidad.Instalar OpenClaw
- Método
npm(predeterminado): instalación global con npm usando el-Tagseleccionado - Método
git: clona/actualiza el repositorio, instala/compila con pnpm e instala el wrapper en%USERPROFILE%\.local\bin\openclaw.cmd
Tareas posteriores a la instalación
- Añade el directorio binario necesario al PATH del usuario cuando es posible
- Actualiza, en el mejor esfuerzo, un servicio gateway cargado (
openclaw gateway install --force, luego reinicio) - Ejecuta
openclaw doctor --non-interactiveen actualizaciones e instalaciones con git (mejor esfuerzo)
Ejemplos (install.ps1)
- Predeterminado
- Instalación con git
- GitHub main mediante npm
- Directorio git personalizado
- Simulación
- Traza de depuración
Referencia de flags
Referencia de flags
| Flag | Descripción |
|---|---|
-InstallMethod npm|git | Método de instalación (predeterminado: npm) |
-Tag <tag|version|spec> | Dist-tag, versión o especificación de paquete npm (predeterminado: latest) |
-GitDir <path> | Directorio de la copia (predeterminado: %USERPROFILE%\openclaw) |
-NoOnboard | Omite onboarding |
-NoGitUpdate | Omite git pull |
-DryRun | Solo muestra acciones |
Referencia de variables de entorno
Referencia de variables de entorno
| Variable | Descripción |
|---|---|
OPENCLAW_INSTALL_METHOD=git|npm | Método de instalación |
OPENCLAW_GIT_DIR=<path> | Directorio de la copia |
OPENCLAW_NO_ONBOARD=1 | Omite onboarding |
OPENCLAW_GIT_UPDATE=0 | Desactiva git pull |
OPENCLAW_DRY_RUN=1 | Modo de simulación |
Si se usa
-InstallMethod git y Git no está disponible, el script sale e imprime el enlace de Git for Windows.CI y automatización
Usa flags/variables de entorno no interactivas para ejecuciones predecibles.- install.sh (npm no interactivo)
- install.sh (git no interactivo)
- install-cli.sh (JSON)
- install.ps1 (omitir onboarding)
Resolución de problemas
¿Por qué se requiere Git?
¿Por qué se requiere Git?
Git es necesario para el método de instalación
git. En instalaciones con npm, Git también se comprueba/instala para evitar errores spawn git ENOENT cuando las dependencias usan URL de git.¿Por qué npm da EACCES en Linux?
¿Por qué npm da EACCES en Linux?
Algunas configuraciones de Linux apuntan el prefijo global de npm a rutas propiedad de root.
install.sh puede cambiar el prefijo a ~/.npm-global y añadir exportaciones PATH a los archivos rc del shell (cuando esos archivos existen).Problemas con sharp/libvips
Problemas con sharp/libvips
Los scripts usan por defecto
SHARP_IGNORE_GLOBAL_LIBVIPS=1 para evitar que sharp se compile contra libvips del sistema. Para sobrescribirlo:Windows: "npm error spawn git / ENOENT"
Windows: "npm error spawn git / ENOENT"
Instala Git for Windows, vuelve a abrir PowerShell y ejecuta de nuevo el instalador.
Windows: "openclaw is not recognized"
Windows: "openclaw is not recognized"
Ejecuta
npm config get prefix y añade ese directorio al PATH de tu usuario (no se necesita sufijo \bin en Windows), luego vuelve a abrir PowerShell.Windows: cómo obtener salida detallada del instalador
Windows: cómo obtener salida detallada del instalador
install.ps1 actualmente no expone un interruptor -Verbose.
Usa el trazado de PowerShell para diagnósticos a nivel de script:openclaw no aparece después de instalar
openclaw no aparece después de instalar
Normalmente es un problema de PATH. Consulta Resolución de problemas de Node.js.