OpenClaw requiere Node.js 24+ —

OpenClaw en Windows: instalación nativa, WSL y gestión con PM2

OpenClaw es un proceso Node.js que puede ejecutarse de forma nativa en Windows, aunque el ecosistema completo de herramientas que el agente puede invocar funciona mejor bajo WSL. Esta guía cubre ambas rutas: la instalación nativa en Windows con PowerShell y la instalación dentro de WSL 2, junto con la configuración de PM2 para mantener el gateway activo en segundo plano, la gestión de puertos y el firewall de Windows.

Lo más importante de OpenClaw en Windows
  • OpenClaw requiere Node.js 24 o superior. Versiones anteriores no son compatibles.
  • WSL 2 ofrece mayor compatibilidad con herramientas Unix que el agente puede invocar. Recomendado para producción.
  • Windows nativo funciona bien para desarrollo y para agentes que no usan herramientas de sistema Unix.
  • PM2 con pm2-windows-startup es la forma más sencilla de mantener el gateway activo tras reinicios en Windows nativo.
  • El firewall de Windows Defender bloquea el puerto 18789 por defecto. Necesitas añadir una regla de entrada si usas webhooks externos.
Flujo de instalación de OpenClaw en Windows: nativo o WSL 2
Dos rutas de instalación en Windows: nativa con PowerShell (más sencilla) o con WSL 2 (más compatible con herramientas Unix).
Decisión inicial

WSL vs instalación nativa en Windows: cuál elegir

La elección entre WSL y Windows nativo depende principalmente de qué herramientas va a usar el agente y del nivel de familiaridad con Linux.

Comparativa WSL 2 vs Windows nativo para OpenClaw — mayo 2026
Aspecto Windows nativo WSL 2
Compatibilidad de Node.js Completa Completa
Herramientas Unix del agente Limitada (algunos comandos no disponibles) Completa (kernel Linux real)
Sandbox de herramientas Funciona con limitaciones Funciona completamente
Gestión de procesos (PM2) Requiere pm2-windows-startup systemd o pm2 nativo de Linux
Acceso a archivos Windows Directo Vía /mnt/c/ (más lento)
Rendimiento de red Sin overhead WSL 2 + network mirroring (Windows 11): sin overhead
Curva de aprendizaje Mínima para usuarios Windows Requiere conocimientos básicos de Linux
Recomendado para Desarrollo local, agentes simples sin herramientas Unix Producción, agentes con herramientas de sistema completas

Recomendación general: usa Windows nativo si eres nuevo en OpenClaw o si el agente no necesita herramientas de sistema Unix. Migra a WSL 2 cuando necesites el ecosistema completo de herramientas o para entornos de producción donde la compatibilidad con el sandbox es importante.

Windows nativo

Instalación nativa de OpenClaw en Windows

Instalación directa en Windows sin virtualización. Funciona en Windows 10 versión 1903 o posterior y Windows 11.

Requisitos previos

  • Windows 10 versión 1903 o posterior (o Windows 11)
  • Node.js 24 LTS instalado (ver sección siguiente)
  • PowerShell 5.1 o superior (incluido en Windows 10/11)
  • Git para Windows (opcional, para clonar el repositorio)

Instalación paso a paso

# En PowerShell o Terminal de Windows (como administrador no es necesario)

# 1. Verificar la versión de Node.js
node --version
# Debe mostrar v24.x.x o superior

# 2. Instalar OpenClaw globalmente
npm install -g openclaw

# 3. Verificar la instalación
openclaw --version

# 4. Iniciar el asistente de configuración
openclaw setup

# 5. Arrancar el gateway por primera vez
openclaw gateway start

El asistente de configuración (openclaw setup) guía por los pasos de configuración del primer agente: nombre, SOUL.md, modelo de LLM y canales. Después del setup, el gateway arranca y la dashboard es accesible en http://localhost:18789.

Instalación como tarea programada de Windows

Para que el gateway arranque automáticamente al iniciar Windows sin necesidad de PM2, puedes crear una tarea programada en el Programador de tareas:

# PowerShell — Crear tarea programada para OpenClaw
$action  = New-ScheduledTaskAction -Execute "node" `
           -Argument "C:\Users\TU_USUARIO\AppData\Roaming\npm\node_modules\openclaw\openclaw.mjs gateway start" `
           -WorkingDirectory "C:\Users\TU_USUARIO"

$trigger = New-ScheduledTaskTrigger -AtLogOn

$settings = New-ScheduledTaskSettingsSet `
            -RestartCount 3 `
            -RestartInterval (New-TimeSpan -Minutes 1) `
            -ExecutionTimeLimit (New-TimeSpan -Hours 0)

Register-ScheduledTask `
  -TaskName "OpenClaw Gateway" `
  -Action $action `
  -Trigger $trigger `
  -Settings $settings `
  -RunLevel Limited
WSL 2

Instalación de OpenClaw en WSL 2

WSL 2 proporciona un entorno Linux completo sobre Windows. Es la opción recomendada para usuarios que quieren el ecosistema completo de herramientas.

Paso 1 — Instalar y configurar WSL 2

# PowerShell como administrador

# Habilitar WSL con Ubuntu (recomendado)
wsl --install -d Ubuntu-24.04

# Si ya tienes WSL 1, migrar a WSL 2
wsl --set-default-version 2

# Verificar que estás usando WSL 2
wsl --list --verbose
# Debe mostrar VERSION 2 para Ubuntu-24.04

Reinicia el sistema después de instalar WSL si es la primera vez. Windows 11 tiene WSL 2 preinstalado y solo necesitas ejecutar wsl --install. En Windows 10, el proceso puede requerir activar la característica «Virtual Machine Platform» y «Windows Subsystem for Linux» desde «Activar o desactivar las características de Windows».

Paso 2 — Instalar Node.js 24 en Ubuntu/WSL

# Dentro de la terminal WSL (Ubuntu)

# Instalar nvm (gestor de versiones de Node)
curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.7/install.sh | bash
source ~/.bashrc

# Instalar Node.js 24 LTS
nvm install 24
nvm use 24
nvm alias default 24

# Verificar
node --version  # v24.x.x
npm --version

Paso 3 — Instalar y configurar OpenClaw en WSL

# Dentro de WSL

# Instalar OpenClaw globalmente
npm install -g openclaw

# Verificar la instalación
openclaw --version

# Ejecutar el asistente de configuración
openclaw setup

# Arrancar el gateway
openclaw gateway start

# Acceder a la dashboard desde el navegador de Windows
# http://localhost:18789 (WSL 2 reenvía puertos automáticamente)

En WSL 2 con Windows 11 y la función de red espejada activada (networkingMode=mirrored en .wslconfig), los puertos del proceso Linux son directamente accesibles desde Windows en localhost sin configuración adicional. En WSL 2 estándar (sin red espejada), el reenvío de puertos también funciona automáticamente para la mayoría de los casos.

Activar red espejada en WSL 2 (Windows 11)

# En Windows, crear o editar C:\Users\TU_USUARIO\.wslconfig
# (archivo de configuración global de WSL)

[wsl2]
networkingMode=mirrored
memory=4GB
processors=2

La red espejada hace que la interfaz de red de WSL 2 sea la misma que la de Windows, eliminando la necesidad de reenvío de puertos y facilitando el acceso desde la red local a los servicios que corren en WSL.

Gestión de versiones

Node.js 24 en Windows: instalación y gestión

OpenClaw requiere Node.js 24. Hay varias formas de instalarlo en Windows, desde el instalador oficial hasta gestores de versiones como nvm-windows.

Opción 1 — Instalador oficial de nodejs.org

La forma más sencilla para usuarios nuevos. Descarga el instalador LTS de nodejs.org (elige la rama 24.x LTS). El instalador configura automáticamente las variables de entorno PATH y es la opción recomendada si solo necesitas una versión de Node.

Opción 2 — nvm-windows (recomendado para developers)

Si trabajas con múltiples proyectos Node.js o necesitas cambiar de versión, usa nvm-windows ( github.com/coreybutler/nvm-windows ):

# PowerShell — después de instalar nvm-windows desde el instalador

# Listar versiones disponibles de Node
nvm list available

# Instalar Node.js 24 LTS
nvm install 24.0.0

# Seleccionar la versión
nvm use 24.0.0

# Verificar
node --version  # v24.x.x

Opción 3 — Winget

# PowerShell — Instalar Node.js 24 con winget
winget install OpenJS.NodeJS.LTS

# Reinicia PowerShell para actualizar el PATH
node --version

Verificar que OpenClaw puede ejecutarse

# Verificar Node y npm
node --version     # v24.x.x
npm --version      # 10.x.x o superior

# Instalar OpenClaw
npm install -g openclaw

# Comprobar el binario
openclaw --version

# Si el comando no se encuentra, verifica el PATH:
# La carpeta de binarios globales de npm debe estar en PATH
npm config get prefix
# El resultado + \bin debe estar en la variable PATH de Windows
Proceso en segundo plano

PM2 en Windows: mantener OpenClaw activo

PM2 es el gestor de procesos Node.js más popular. Mantiene el gateway de OpenClaw activo, lo reinicia si falla y puede arrancar automáticamente con Windows.

Instalar PM2 en Windows

# PowerShell
npm install -g pm2

# Verificar
pm2 --version

Registrar OpenClaw en PM2

# Iniciar el gateway de OpenClaw con PM2
pm2 start "openclaw gateway start" --name openclaw-gateway

# Ver el estado del proceso
pm2 status

# Ver logs en tiempo real
pm2 logs openclaw-gateway

# Parar el gateway
pm2 stop openclaw-gateway

# Reiniciar el gateway
pm2 restart openclaw-gateway

Arranque automático con Windows usando pm2-windows-startup

PM2 en Linux usa pm2 startup para generar un servicio de sistema. En Windows este mecanismo no está disponible de forma nativa, pero el paquete pm2-windows-startup resuelve el problema:

# Instalar pm2-windows-startup
npm install -g pm2-windows-startup

# Configurar el inicio automático con Windows
pm2-startup install

# Guardar la lista de procesos activos
# (esto hace que PM2 recuerde el proceso openclaw-gateway al reiniciar)
pm2 save

# Verificar que el servicio existe
Get-Service -Name "pm2.exe"

Después de ejecutar pm2-startup install, PM2 crea un servicio de Windows que arranca automáticamente en el inicio del sistema y relanza todos los procesos guardados con pm2 save. El gateway de OpenClaw estará activo sin necesidad de iniciar sesión ni abrir una terminal.

PM2 dentro de WSL

Si usas WSL, el mecanismo de arranque es diferente. WSL no usa servicios de Windows sino que puede configurarse con systemd (disponible en Ubuntu 22.04+ dentro de WSL 2) o con el script de inicio de WSL:

# Dentro de WSL con systemd activo

# Instalar PM2 y configurar startup
npm install -g pm2
pm2 start "openclaw gateway start" --name openclaw-gateway
pm2 startup systemd

# Ejecutar el comando que pm2 genera (copia y pega el resultado)
# sudo env PATH=$PATH:/home/USER/.nvm/versions/node/v24.0.0/bin \
#   /home/USER/.nvm/versions/node/v24.0.0/lib/node_modules/pm2/bin/pm2 \
#   startup systemd -u USER --hp /home/USER

pm2 save

Con systemd activo en WSL, el proceso de OpenClaw arrancará cuando se inicie la distribución WSL. Para que WSL arranque automáticamente con Windows, crea una tarea programada que ejecute wsl -d Ubuntu-24.04 en el inicio de sesión.

Red y acceso

Configuración de puertos y firewall de Windows

El gateway de OpenClaw usa el puerto 18789 por defecto. Esta sección explica cuándo necesitas abrirlo en el firewall y cómo hacerlo de forma segura.

¿Cuándo necesitas abrir puertos?

Si solo usas el agente desde la misma máquina (accediendo a http://localhost:18789), no necesitas abrir ningún puerto en el firewall de Windows. Solo debes abrir puertos si:

  • Necesitas que webhooks externos (WhatsApp, Telegram, Discord) lleguen al gateway
  • Quieres acceder a la dashboard desde otro dispositivo en tu red local
  • Usas OpenClaw en un servidor Windows accesible desde internet

Abrir el puerto 18789 en el Firewall de Windows

# PowerShell como administrador

# Crear regla de entrada para el puerto de OpenClaw
New-NetFirewallRule `
  -DisplayName "OpenClaw Gateway" `
  -Direction Inbound `
  -Protocol TCP `
  -LocalPort 18789 `
  -Action Allow `
  -Profile Private, Domain

# Verificar que la regla existe
Get-NetFirewallRule -DisplayName "OpenClaw Gateway"

El perfil Private, Domain permite el acceso desde la red local y la red corporativa, pero no desde redes públicas (por ejemplo, una red WiFi de café). Si necesitas acceso desde internet, cambia a Public, pero considera añadir autenticación al proxy inverso primero.

Cambiar el puerto del gateway

Si el puerto 18789 está ocupado o prefieres uno diferente, cámbialo en openclaw.json. Si ejecutas varios gateways en el mismo host, la documentación oficial recomienda separar al menos 20 puertos entre ellos:

{
  "gateway": {
    "port": 18789,
    "host": "127.0.0.1"
  }
}

// Ejemplo con múltiples gateways en el mismo equipo:
// Gateway principal: puerto 18789
// Gateway de rescate: puerto 19789
// Gateway de pruebas: puerto 20789

Usar un proxy inverso con TLS (recomendado)

Para acceso externo, lo más seguro es colocar un proxy inverso (Caddy o nginx) delante del gateway de OpenClaw. Caddy es especialmente fácil en Windows porque gestiona los certificados SSL automáticamente:

# Caddyfile de ejemplo para OpenClaw
# (coloca en el mismo directorio que caddy.exe)

tu-dominio.com {
    reverse_proxy localhost:18789
    basicauth /* {
        admin JDJiJDEyJHRoYXNoZGVsYXBhc3N3b3Jk   # hash bcrypt de tu contraseña
    }
}
Flujo de trabajo

Desarrollo local de agentes en Windows

Configuración recomendada para desarrollar y probar agentes de OpenClaw en un entorno Windows local antes de desplegar en producción.

Estructura de directorios en Windows

OpenClaw almacena su configuración y estado en el directorio home del usuario. En Windows, la ruta por defecto es:

C:\Users\TU_USUARIO\.openclaw\
├── agents\
│   └── mi-agente\
│       ├── agent\
│       │   ├── SOUL.md             ← personalidad del agente
│       │   └── auth-profiles.json  ← credenciales de servicios
│       └── memory\
│           └── MEMORY.md           ← memoria persistente
├── workspace\                      ← workspace por defecto del agente
└── openclaw.json                   ← configuración del gateway

Puedes cambiar la ubicación del estado del gateway con la variable de entorno OPENCLAW_STATE_DIR y la del workspace con OPENCLAW_WORKSPACE. Esto es útil si quieres almacenar el estado en un disco diferente o en una ruta con más espacio.

Variables de entorno en Windows

# PowerShell — Configurar variables de entorno para OpenClaw
# (válidas solo para la sesión actual)
$env:OPENCLAW_STATE_DIR = "D:\openclaw-state"
$env:OPENCLAW_CONFIG_PATH = "D:\openclaw-state\openclaw.json"

# Para hacerlas persistentes (afectan a todas las sesiones del usuario):
[System.Environment]::SetEnvironmentVariable(
    "OPENCLAW_STATE_DIR",
    "D:\openclaw-state",
    "User"
)

# Verificar
Get-ChildItem Env:OPENCLAW_STATE_DIR

Tunnel ngrok para pruebas de webhooks

Para probar webhooks de WhatsApp o Telegram en local sin un servidor, usa ngrok para crear un túnel temporal:

# Instalar ngrok (winget)
winget install ngrok.ngrok

# Crear un túnel al puerto del gateway
ngrok http 18789

# ngrok mostrará una URL pública tipo:
# Forwarding  https://abc123.ngrok.io -> http://localhost:18789

# Usa esa URL para configurar el webhook de WhatsApp o Telegram
# Recuerda actualizar la URL en Meta/Telegram cada vez que reinicies ngrok
# (a menos que uses un dominio fijo de pago)
Resolución de errores

Problemas comunes en Windows y sus soluciones

Lista de los errores más frecuentes al instalar y ejecutar OpenClaw en Windows, con la causa y la solución para cada uno.

«openclaw» no se reconoce como un comando interno

El directorio de binarios globales de npm no está en el PATH de Windows. Ejecuta npm config get prefix para ver la ruta (normalmente C:\Users\TU_USUARIO\AppData\Roaming\npm) y añádela a las variables de entorno del sistema. Reinicia PowerShell.

Error «execution of scripts is disabled on this system»

PowerShell tiene la política de ejecución de scripts bloqueada. Ejecuta Set-ExecutionPolicy -ExecutionPolicy RemoteSigned -Scope CurrentUser en PowerShell como administrador para permitir scripts locales firmados o sin firmar.

El puerto 18789 ya está en uso

Otro proceso está usando el puerto. Identifícalo con netstat -ano | findstr :18789 y el PID resultante con tasklist /fi "PID eq <PID>". O cambia el puerto del gateway en openclaw.json a otro libre.

El gateway no está accesible desde la red local

Verifica que el gateway escucha en 0.0.0.0 y no solo en 127.0.0.1: cambia "host": "0.0.0.0" en openclaw.json. Comprueba también que el Firewall de Windows tiene la regla de entrada para el puerto 18789.

Rutas con espacios causan errores en herramientas

Si tu nombre de usuario de Windows contiene espacios (por ejemplo, «Juan García»), algunas herramientas pueden fallar. Configura OPENCLAW_STATE_DIR a una ruta sin espacios, como D:\openclaw, y usa esa ruta en la configuración.

Alto consumo de CPU en Windows (antivirus)

Windows Defender puede escanear intensamente el directorio .openclaw cuando el agente trabaja con muchos archivos. Añade la carpeta %USERPROFILE%\.openclaw a las exclusiones de Windows Defender para reducir el impacto en el rendimiento.

Preguntas frecuentes

Preguntas frecuentes sobre OpenClaw en Windows

Sí. OpenClaw es un proceso Node.js y funciona de forma nativa en Windows. Sin embargo, algunas herramientas que el agente puede invocar (comandos de shell Unix, utilidades del ecosistema Linux) no están disponibles en Windows nativo. Para agentes sencillos que usan el LLM para chat y tareas de ofimática, Windows nativo es suficiente. Para el ecosistema completo, WSL 2.

Node.js 24 o superior. Versiones anteriores (Node 18, 20 o 22) no son compatibles con las dependencias más recientes de OpenClaw. Instala la versión LTS de la rama 24.x desde nodejs.org o usa nvm-windows para gestionar varias versiones en el mismo equipo.

La opción más robusta es PM2 con el módulo pm2-windows-startup, que crea un servicio de Windows para el proceso. Alternativas: el Programador de tareas de Windows (sin dependencias adicionales) o, si usas WSL, systemd dentro de la distribución Linux. Cualquiera de las tres opciones mantiene el gateway activo tras reinicios del sistema.

El puerto por defecto es el 18789. Para acceso solo local no necesitas abrir puertos. Si necesitas acceso externo (webhooks de WhatsApp, Telegram o acceso desde la red local), añade una regla de entrada en el Firewall de Windows Defender con PowerShell: New-NetFirewallRule -DisplayName "OpenClaw" -Direction Inbound -Protocol TCP -LocalPort 18789 -Action Allow. Se recomienda usar un proxy inverso con TLS en lugar de exponer el puerto directamente.

No actualmente (mayo 2026). OpenClaw se instala mediante npm install -g openclaw. No hay paquete oficial en winget ni Chocolatey. La forma más rápida es instalar Node.js 24 desde nodejs.org y ejecutar el comando npm en PowerShell o Terminal de Windows.

WSL 2 siempre. OpenClaw y sus herramientas de sistema funcionan mejor bajo WSL 2, que usa un kernel de Linux real con mayor compatibilidad de llamadas al sistema. WSL 1 tiene limitaciones con inotify, sockets Unix y algunas operaciones de red que pueden causar problemas con el gateway. Activa WSL 2 con wsl --set-default-version 2.

Guía completa de OpenClaw

Arquitectura, instalación en Linux y macOS, modelos soportados, más de 20 canales de mensajería, sistema de skills, memoria y comparativa con Hermes Agent y OpenSwarm. Todo lo que necesitas para dominar OpenClaw.

Ver guía completa de OpenClaw
Guía gratuita

Crea tu primer agente de IA, paso a paso

Descarga la guía en PDF: 12 secciones, ejemplos reales y datos de 2026. Gratis.