Ir al contenido

Aspectos internos del instalador

OpenClaw incluye tres scripts de instalación, servidos desde openclaw.ai.

ScriptPlataformaLo que hace
install.shmacOS / Linux / WSLInstala Node si es necesario, instala OpenClaw a través de npm (por defecto) o git, y puede ejecutar la incorporación.
install-cli.shmacOS / Linux / WSLInstala Node + OpenClaw en un prefijo local (~/.openclaw) con modos npm o git checkout. No se requieren permisos de root.
install.ps1Windows (PowerShell)Instala Node si es necesario, instala OpenClaw a través de npm (por defecto) o git, y puede ejecutar la incorporación.
Ventana de terminal
curl -fsSL --proto '=https' --tlsv1.2 https://openclaw.ai/install.sh | bash
Ventana de terminal
curl -fsSL --proto '=https' --tlsv1.2 https://openclaw.ai/install.sh | bash -s -- --help


  1. Detectar SO

    Soporta macOS y Linux (incluyendo WSL).

  2. Asegurar Node.js 24 por defecto

    Verifica la versión de Node e instala Node 24 si es necesario (Homebrew en macOS, scripts de configuración de NodeSource en Linux apt/dnf/yum). En macOS, Homebrew se instala solo cuando el instalador lo necesita para Node o Git. OpenClaw todavía es compatible con Node 22 LTS, actualmente 22.19+, por compatibilidad. En Alpine/musl Linux, el instalador usa paquetes apk en lugar de NodeSource; los repositorios de Alpine configurados deben proporcionar Node 22.19+ (Alpine 3.21 o más reciente en el momento de escribir esto).

  3. Asegurar Git

    Instala Git si falta usando el gestor de paquetes detectado, incluyendo Homebrew en macOS y apk en Alpine.

  4. Instalar OpenClaw

    • Método npm (predeterminado): instalación global npm
    • Método git: clonar/actualizar repositorio, instalar dependencias con pnpm, construir, luego instalar contenedor en ~/.local/bin/openclaw
  5. Tareas posteriores a la instalación

    • Actualiza el servicio de puerta de enlace cargado lo mejor posible (openclaw gateway install --force, luego reinicia)
    • Ejecuta openclaw doctor --non-interactive en actualizaciones e instalaciones de git (mejor esfuerzo)
    • Intenta la incorporación cuando sea apropiado (TTY disponible, incorporación no deshabilitada y las verificaciones de arranque/configuración pasan)

Si se ejecuta dentro de una copia de trabajo de OpenClaw (package.json + pnpm-workspace.yaml), el script ofrece:

  • usar la copia de trabajo (git), o
  • usar la instalación global (npm)

Si no hay TTY disponible y no se establece ningún método de instalación, por defecto es npm y avisa.

El script sale con el código 2 por una selección de método no válida o valores de --install-method no válidos.

bash curl -fsSL --proto '=https' --tlsv1.2 https://openclaw.ai/install.sh | bash

Referencia de banderas
BanderaDescripción
--install-method npm|gitElige el método de instalación (predeterminado: npm). Alias: --method
--npmAcceso directo para el método npm
--gitAcceso directo para el método git. Alias: --github
`—version

| versión de npm, dist-tag o especificación de paquete (predeterminado:latest) | | —beta | Usa la dist-tag beta si está disponible, de lo contrario vuelve alatest | |—git-dir

| Directorio de checkout (predeterminado:~/openclaw). Alias: —dir | |—no-git-update | Omitegit pullpara un checkout existente | |—no-prompt | Desactiva las indicaciones | |—no-onboard | Omite la incorporación | |—onboard | Activa la incorporación | |—dry-run | Imprime las acciones sin aplicar cambios | |—verbose | Activa la salida de depuración (set -x, registros de nivel de aviso de npm) | | —help | Muestra el uso (-h`) |

Referencia de variables de entorno
VariableDescripción
OPENCLAW_INSTALL_METHOD=git|npmMétodo de instalación
`OPENCLAW_VERSION=latest|next|

|

| versión de npm, dist-tag o especificación de paquete | |OPENCLAW_BETA=0|1 | Usar beta si está disponible | |OPENCLAW_HOME=

| Directorio base para el estado de OpenClaw y las rutas predeterminadas de git/onboarding | |OPENCLAW_GIT_DIR=

| Directorio de checkout | |OPENCLAW_GIT_UPDATE=0|1 | Alternar actualizaciones de git | |OPENCLAW_NO_PROMPT=1 | Desactivar solicitudes | |OPENCLAW_NO_ONBOARD=1 | Saltar onboarding | |OPENCLAW_DRY_RUN=1 | Modo de prueba (dry run) | |OPENCLAW_VERBOSE=1 | Modo de depuración | |OPENCLAW_NPM_LOGLEVEL=error|warn|notice` | nivel de registro de npm |


  1. Instalar el tiempo de ejecución de Node local

    Descarga un tarball fijado de una versión compatible de Node LTS (la versión está incrustada en el script y se actualiza de forma independiente) en `

    /tools/node-v

    y verifica el SHA-256. En Alpine/musl Linux, donde Node no publica tarballs compatibles para el tiempo de ejecución fijado, instalanodejsynpmconapky enlaza ese tiempo de ejecución en la ruta del contenedor del prefijo. Los repositorios de Alpine deben proporcionar Node22.19+`; usa Alpine 3.21 o más reciente si los repositorios más antiguos solo proporcionan Node 20 o 21.

  2. Asegurar Git

    Si falta Git, intenta instalarlo mediante apt/dnf/yum/apk en Linux o Homebrew en macOS.

  3. Instalar OpenClaw bajo el prefijo

    • método npm (predeterminado): instala bajo el prefijo con npm, luego escribe el contenedor en `

    /bin/openclaw - métodogit: clona/actualiza una copia (predeterminado ~/openclaw) y aún escribe el contenedor en

    /bin/openclaw`

  4. Actualizar el servicio de puerta de enlace cargado

    Si ya se ha cargado un servicio de puerta de enlace desde ese mismo prefijo, el script ejecuta openclaw gateway install --force, luego openclaw gateway restart y verifica el estado de la puerta de enlace con el mejor esfuerzo posible.

bash curl -fsSL --proto '=https' --tlsv1.2 https://openclaw.ai/install-cli.sh | bash

Referencia de banderas
BanderaDescripción
`—prefix

| Prefijo de instalación (predeterminado:~/.openclaw) | | —install-method npm|git| Elegir método de instalación (predeterminado:npm). Alias: —method | |—npm | Acceso directo para el método npm | |—git, —github | Acceso directo para el método git | |—git-dir

| Directorio de checkout de Git (predeterminado:~/openclaw). Alias: —dir | |—version

| Versión de OpenClaw o dist-tag (predeterminado:latest) | | —node-version

| Versión de Node (predeterminado:22.22.0) | | —json | Emitir eventos NDJSON | |—onboard | Ejecutaropenclaw onboarddespués de la instalación | |—no-onboard | Saltar onboarding (predeterminado) | |—set-npm-prefix | En Linux, forzar el prefijo de npm a~/.npm-globalsi el prefijo actual no es escribible | |—help | Mostrar uso (-h`) |

Referencia de variables de entorno
VariableDescripción
`OPENCLAW_PREFIX=

| Prefijo de instalación | |OPENCLAW_INSTALL_METHOD=git|npm | Método de instalación | |OPENCLAW_VERSION=

| Versión de OpenClaw o dist-tag | |OPENCLAW_NODE_VERSION=

| Versión de Node | |OPENCLAW_HOME=

| Directorio base para el estado de OpenClaw y rutas git/onboarding por defecto | |OPENCLAW_GIT_DIR=

| Directorio de checkout de Git para instalaciones git | |OPENCLAW_GIT_UPDATE=0|1 | Alternar actualizaciones de git para checkouts existentes | |OPENCLAW_NO_ONBOARD=1 | Saltar onboarding | |OPENCLAW_NPM_LOGLEVEL=error|warn|notice` | Nivel de log de npm |


  1. Asegurar entorno de PowerShell + Windows

    Requiere PowerShell 5+.

  2. Asegurar Node.js 24 por defecto

    Si falta, intenta la instalación vía winget, luego Chocolatey, luego Scoop. Si no hay ningún gestor de paquetes disponible, el script descarga el zip oficial de Node.js para Windows en %LOCALAPPDATA%\OpenClaw\deps\portable-node y lo añade al PATH del proceso actual y del usuario. Node 22 LTS, actualmente 22.19+, sigue siendo soportado por compatibilidad.

  3. Instalar OpenClaw

    • método npm (por defecto): instalación global npm usando el -Tag seleccionado, lanzado desde un directorio temporal de instalador escribible para que los shells abiertos en carpetas protegidas como C:\ sigan funcionando
    • método git: clonar/actualizar repositorio, instalar/construir con pnpm, e instalar wrapper en %USERPROFILE%\.local\bin\openclaw.cmd. Si falta Git, el script inicia (bootstraps) MinGit local de usuario bajo %LOCALAPPDATA%\OpenClaw\deps\portable-git y lo añade al PATH del proceso actual y del usuario.
  4. Tareas posteriores a la instalación

    • Añade el directorio bin necesario al PATH del usuario cuando es posible
    • Actualiza un servicio de puerta de enlace cargado de mejor esfuerzo posible (openclaw gateway install --force, luego reinicia)
    • Ejecuta openclaw doctor --non-interactive en actualizaciones e instalaciones de git (mejor esfuerzo posible)
  5. Manejo de fallos

    Las instalaciones de iwr ... | iex y de bloques de scripts reportan un error de terminación sin cerrar la sesión actual de PowerShell. Las instalaciones directas de powershell -File / pwsh -File todavía salen con un código distinto de cero para la automatización.

powershell iwr -useb https://openclaw.ai/install.ps1 | iex

Referencia de banderas
BanderaDescripción
-InstallMethod npm|gitMétodo de instalación (predeterminado: npm)
`-Tag

| dist-tag de npm, versión o especificación de paquete (predeterminado:latest) | | -GitDir

| Directorio de checkout (predeterminado:%USERPROFILE%\openclaw) | | -NoOnboard | Saltar onboarding | |-NoGitUpdate | Saltargit pull | |-DryRun` | Imprimir solo acciones |

Referencia de variables de entorno
VariableDescripción
OPENCLAW_INSTALL_METHOD=git|npmMétodo de instalación
`OPENCLAW_GIT_DIR=

| Directorio de checkout | |OPENCLAW_NO_ONBOARD=1 | Saltar onboarding | |OPENCLAW_GIT_UPDATE=0 | Desactivar git pull | |OPENCLAW_DRY_RUN=1` | Modo de ejecución en seco |


Use opciones/variables de entorno no interactivas para ejecuciones predecibles.

bash curl -fsSL --proto '=https' --tlsv1.2 https://openclaw.ai/install.sh | bash -s -- --no-prompt --no-onboard


¿Por qué se requiere Git?

Git es necesario para el método de instalación git. Para instalaciones npm, Git aún se verifica/instala para evitar fallos de spawn git ENOENT cuando las dependencias usan URLs de git.

¿Por qué npm encuentra 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 de PATH a los archivos rc de shell (cuando esos archivos existen).

Windows: "npm error spawn git / ENOENT"

Vuelva a ejecutar el instalador para que pueda realizar el arranque de MinGit local de usuario, o instale Git for Windows y reinicie PowerShell.

Windows: "openclaw is not recognized"

Ejecute npm config get prefix y añada ese directorio a su PATH de usuario (no se necesita el sufijo \bin en Windows), luego vuelva a abrir PowerShell.

Windows: how to get verbose installer output

install.ps1 actualmente no expone un modificador -Verbose. Utilice el seguimiento de PowerShell para diagnósticos a nivel de script:

Ventana de terminal
Set-PSDebug -Trace 1
& ([scriptblock]::Create((iwr -useb https://openclaw.ai/install.ps1))) -NoOnboard
Set-PSDebug -Trace 0
openclaw not found after install

Generalmente es un problema de PATH. Consulte solución de problemas de Node.js.