Actualizado: junio de 2026 · Apéndice F
Cuando las cosas salen mal
Errores frecuentes organizados por síntoma para diagnosticar sin perder tiempo.
Diagnóstico de errores frecuentes en Node, OpenClaw, Gateway, modelos, canales, Docker, navegador, seguridad y VPS.
Copia solo lo que entiendas. Adapta rutas y revisa backups antes de ejecutar comandos que borren, muevan, abran puertos, cambien permisos o toquen secretos.
Este apéndice está pensado para cuando algo falla y no quieres improvisar. Lee el síntoma, ejecuta solo diagnósticos de lectura, compara la salida esperada y aplica la acción más pequeña posible.
Regla práctica: un bloque copiable debe ser un comando aislado. Los errores, síntomas y explicaciones aparecen como texto normal para que no los pegues por accidente.
NO PEGUES
Antes de pedir ayuda, compartir registros/logs o pegar una salida en un chat, oculta cualquier dato sensible. No pegues API keys, tokens de BotFather, cabeceras Authorization, valores de OPENROUTER_API_KEY, openclaw.json completo, rutas privadas de tu equipo, IPs públicas, dominios reales, signed URLs, cookies ni logs completos. Comparte solo el error mínimo, la versión y el comando de diagnóstico usado.
Node/npm
Node no existe en la terminal
- Síntoma visible
- La terminal dice que node no se reconoce o que el comando no existe.
- Qué significa
- Node no está instalado, no está en el PATH o estás usando una terminal distinta a la que configuraste.
- Antes de tocar nada
- Cierra y abre la terminal. Si estás en Windows, prueba PowerShell normal antes de cambiar permisos.
- Diagnóstico seguro
- Comprueba la versión visible de Node.
node --version
Salida esperada: una versión como v22.x o v24.x. Para OpenClaw mantén Node 22 o Node 24 salvo que su documentación de tu versión pida otra cosa.
Acción segura: instala o selecciona Node con nvm. Evita arreglar permisos globales con sudo: si npm falla por EACCES, usa nvm o un prefijo de usuario.
npm config set prefix ~/.npm-global
Si no funciona: revisa qué terminal usa tu editor o panel. En servidores, documenta la versión con node --version antes de reinstalar.
Riesgo: SEGURO. No cambia servicios ni datos.
npm dice que falta package.json
- Síntoma visible
- npm muestra un error ENOENT o parece ejecutar desde la carpeta equivocada.
- Qué significa
- Estás fuera de la carpeta del proyecto o has descargado una parte incompleta.
- Antes de tocar nada
- No reinstales dependencias a ciegas. Primero mira dónde estás.
- Diagnóstico seguro
- Lista la carpeta actual y busca package.json.
ls -la
Salida esperada: debería aparecer package.json. Si no aparece, cambia a la carpeta del proyecto antes de ejecutar npm.
Acción segura: abre la carpeta correcta y vuelve a ejecutar el comando original.
Si no funciona: revisa si descargaste el ZIP completo o solo un subdirectorio.
Riesgo: SEGURO.
OpenClaw install
OpenClaw no arranca o no encuentra configuración
- Síntoma visible
- El CLI falla al arrancar, no encuentra perfiles o muestra avisos de configuración incompleta.
- Qué significa
- Puede faltar configuración, una variable de entorno o una versión compatible de Node.
- Antes de tocar nada
- No pegues openclaw.json en chats. Si contiene secretos, trátalo como credencial.
- Diagnóstico seguro
- Ejecuta el diagnóstico general de OpenClaw.
openclaw doctor
Salida esperada: secciones con comprobaciones y una línea tipo Comprobación: ok o avisos concretos. Un aviso explica qué falta; no lo tapes con reinstalaciones masivas.
Acción segura: corrige el primer aviso rojo, reinicia la sesión de terminal y vuelve a lanzar openclaw doctor.
Si no funciona: guarda la salida mínima en un archivo local y elimina secretos antes de compartirla.
Riesgo: SEGURO.
Una skill promete mucho o pide permisos raros
- Síntoma visible
- Una skill de ClawHub parece útil, pero no sabes qué hace por dentro.
- Qué significa
- VirusTotal y metadatos son telemetría, no garantía. Las skills de terceros son no confiables hasta leerlas.
- Antes de tocar nada
- No instales la skill en tu agente principal. Léela y pruébala aislada.
- Diagnóstico seguro
- Verifica la ficha y archivos declarados.
openclaw skills verify <slug>
Salida esperada: autor, archivos, permisos solicitados y advertencias. Si no puedes leer SKILL.md o no entiendes permisos, no la instales.
Acción segura: instala primero en un agente de prueba sin secretos ni permisos amplios.
Si no funciona: busca alternativa oficial o escribe un procedimiento manual pequeño.
Riesgo: PRECAUCIÓN.
Gateway
El Gateway no responde
- Síntoma visible
- El panel, agente o canal no consigue hablar con el Gateway.
- Qué significa
- El servicio puede estar parado, escuchando en otro puerto o no estar listo.
- Antes de tocar nada
- No abras puertos públicos para probar. Primero confirma estado local.
- Diagnóstico seguro
- Consulta estado del Gateway.
openclaw gateway status
Salida esperada: algo equivalente a Gateway: running, puerto local y modo de autenticación activo.
curl -s http://127.0.0.1:18789/healthz
Salida esperada: {"ok":true} o una respuesta de salud equivalente.
curl -s http://127.0.0.1:18789/readyz
Salida esperada: {"ready":true} o una respuesta que indique dependencias listas.
Acción segura: si el servicio está parado, reinicia solo el Gateway con el mecanismo de tu instalación. No cambies bind ni firewall para ocultar un problema local.
Si no funciona: revisa logs del Gateway y el último cambio de configuración.
Riesgo: SEGURO para diagnósticos; PRECAUCIÓN para reinicios.
El Gateway podría estar expuesto
- Síntoma visible
- Alguien puede acceder al puerto 18789 desde fuera, o ves bind en una IP pública.
- Qué significa
- Un Gateway escuchando en 0.0.0.0 o IP pública puede quedar accesible desde internet.
- Antes de tocar nada
- La preferencia segura es loopback:
127.0.0.1:18789. No hay puertos públicos sin auth/VPN/túnel con autenticación. - Diagnóstico seguro
- Comprueba estado, socket real y Docker antes de cambiar firewall.
openclaw gateway status --json
Salida esperada segura: bind en 127.0.0.1, auth activa y puerto 18789 no publicado a internet.
ss -tlnp | grep 18789
Salida esperada segura: una línea con 127.0.0.1:18789. 0.0.0.0:18789 o una IP pública es peligroso salvo arquitectura deliberada con autenticación fuerte.
docker compose ps
Salida esperada: servicios en estado running y sin mapeos públicos tipo 0.0.0.0:18789->18789.
Acción segura: vuelve a loopback, pon autenticación y usa VPN, túnel con Access o reverse proxy con auth si de verdad necesitas acceso remoto.
Si no funciona: corta exposición pública antes de depurar comodidad de acceso.
Riesgo: PELIGROSO si hay bind público.
modelos/API keys
El modelo rechaza la petición
- Síntoma visible
- Ves errores de autenticación, cuota, modelo inexistente o proveedor no disponible.
- Qué significa
- La API key puede no estar cargada, el modelo cambió, falta saldo o el proveedor está limitando tráfico.
- Antes de tocar nada
- No pegues la key ni el header Authorization. Describe el proveedor y el código de error, no el secreto.
- Diagnóstico seguro
- Revisa configuración desde OpenClaw.
openclaw doctor
Salida esperada: proveedor detectado, key presente como referencia segura y avisos de cuota o modelo si aplica.
Acción segura: rota la key si se pegó en un chat, añade un límite de gasto en el proveedor y prueba con un modelo estable antes de producción.
Si no funciona: cambia temporalmente a un modelo de respaldo no crítico y conserva revisión humana.
Riesgo: PRECAUCIÓN.
Ollama consume recursos o queda expuesto
- Síntoma visible
- El equipo va lento, el modelo queda cargado o el puerto 11434 aparece accesible.
- Qué significa
- El modelo local sigue en memoria o el servicio escucha donde no debe.
- Antes de tocar nada
- No uses
ollama serve &como solución principal. Prefiere servicio systemd o app local bien configurada, y bind local. - Diagnóstico seguro
- Mira modelos activos.
ollama ps
Salida esperada: lista de modelos cargados, tamaño y tiempo hasta descarga. Si no esperabas ninguno, puedes pararlo.
ollama stop <modelo>
Acción segura: deja Ollama en 127.0.0.1:11434. Si necesitas acceso remoto, usa red privada y autenticación delante.
Si no funciona: revisa el service systemd o configuración local antes de abrir firewall.
Riesgo: PRECAUCIÓN.
canales
Telegram, WhatsApp o Discord no reciben mensajes
- Síntoma visible
- El canal no responde, no llegan aprobaciones o el agente habla en el chat equivocado.
- Qué significa
- Puede faltar token, pairing, allowlist o binding del agente al canal.
- Antes de tocar nada
- No pegues tokens de BotFather ni IDs privados completos en soporte público.
- Diagnóstico seguro
- Consulta estado de canales.
openclaw channels status
Salida esperada: canal configurado, auth presente como referencia y binding al agente correcto.
Acción segura: limita chats permitidos, activa confirmación humana para envíos externos y separa canales de prueba y producción.
Si no funciona: revisa logs filtrados por canal, no logs completos con tokens.
Riesgo: PRECAUCIÓN.
Docker
Un contenedor no arranca
- Síntoma visible
- Docker muestra servicios caídos o reinicios constantes.
- Qué significa
- Puede haber configuración inválida, dependencia caída o variable ausente.
- Antes de tocar nada
- docker compose down no es un reinicio simple: puede parar todo el stack y romper sesiones. Prefiere
docker compose restart <servicio>cuando el problema sea un servicio concreto. - Diagnóstico seguro
- Mira estado antes de reiniciar.
docker compose ps
Salida esperada: servicios en running o un servicio concreto marcado como exited/restarting.
docker ps --format "table {{.Names}} {{.Status}} {{.Ports}}"
Salida esperada: nombres, estado y puertos publicados. Te permite detectar publicaciones no previstas.
Acción segura: reinicia solo el servicio afectado si sabes cuál es. Si no, revisa logs acotados antes de tocar el stack.
Si no funciona: identifica el primer error real en logs y evita reinicios en bucle.
Riesgo: PRECAUCIÓN.
Docker ocupa demasiado disco
- Síntoma visible
- El VPS se queda sin espacio y Docker parece el principal consumidor.
- Qué significa
- Imágenes antiguas, contenedores parados o volúmenes pueden acumularse.
- Antes de tocar nada
- No uses docker volume prune ni --volumes sin backup verificado. Los volúmenes pueden contener bases de datos, uploads o configuración.
- Diagnóstico seguro
- Mide primero.
docker system df
Salida esperada: tabla con Images, Containers, Local Volumes y Build Cache. El campo reclaimable indica qué podría limpiarse, no qué debes borrar.
docker volume ls
Salida esperada: lista de volúmenes. Si no reconoces un volumen, no lo borres.
Acción segura: limpia solo recursos que entiendes y que no sostienen servicios críticos. Documenta qué borras.
Si no funciona: aumenta disco o mueve datos tras backup; no fuerces prune agresivo en producción desconocida.
Riesgo: PELIGROSO si borras volúmenes.
navegador
El agente no abre navegador o ve una página distinta
- Síntoma visible
- La automatización falla, aparece CAPTCHA o el contenido dinámico no carga.
- Qué significa
- Puede faltar navegador, la web bloquear automatización o la sesión requerir 2FA.
- Antes de tocar nada
- No metas credenciales reales en pruebas rápidas. Usa perfil persistente y permisos mínimos.
- Diagnóstico seguro
- Confirma primero el estado general de OpenClaw.
openclaw doctor
Salida esperada: navegador o dependencia indicada como disponible, o un aviso concreto de instalación.
Acción segura: baja frecuencia, usa esperas explícitas y pide captura al agente antes de cambiar selectores.
Si no funciona: para webs con CAPTCHA frecuente, usa intervención humana o API oficial.
Riesgo: PRECAUCIÓN.
seguridad/puertos
Quieres tocar firewall o SSH
- Síntoma visible
- No puedes entrar por SSH o necesitas limitar acceso a un puerto.
- Qué significa
- Un cambio de firewall puede dejarte fuera del VPS o abrirlo demasiado.
- Antes de tocar nada
- Mantén una sesión SSH abierta. Usa SSH restringido por origen y no abras 22 a todo internet si puedes evitarlo.
- Diagnóstico seguro
- Mira estado actual y simula antes de aplicar.
ufw status
Salida esperada: reglas activas y puertos permitidos. Si aparece 22 ALLOW Anywhere, revisa si puedes restringirlo a tu IP.
ufw --dry-run allow from TU_IP_PUBLICA to any port 22 proto tcp
Salida esperada: plan de regla sin aplicarla. Sustituye TU_IP_PUBLICA solo en privado.
Acción segura: aplica reglas desde una sesión abierta y conserva acceso alternativo del proveedor.
Si no funciona: usa consola del proveedor para revertir firewall.
Riesgo: PELIGROSO si pierdes SSH o abres puertos amplios.
VPS/disco/logs
Disco lleno en el VPS
- Síntoma visible
- Instalaciones fallan, Docker no arranca o los logs dejan de escribirse.
- Qué significa
- El disco puede estar lleno por logs, Docker, backups antiguos o temporales.
- Antes de tocar nada
- No borres directorios a ciegas. Mide y conserva historial útil para investigar.
- Diagnóstico seguro
- Empieza por espacio global y carpetas grandes.
df -h
Salida esperada: tabla de sistemas de archivos. Si la raíz está por encima del 85-90 %, toca actuar con cuidado.
du -h -d1 /var /docker 2>/dev/null
Salida esperada: tamaños por carpeta para localizar el origen antes de borrar.
journalctl --disk-usage
Salida esperada: tamaño total ocupado por journald. Solo después de medir considera vacuum.
journalctl --vacuum-time=3d
Acción segura: vacuum puede liberar espacio, pero borra historial antiguo de investigación. Úsalo solo si ya guardaste lo necesario.
Si no funciona: amplía disco desde el proveedor o mueve datos tras backup.
Riesgo: PRECAUCIÓN; PELIGROSO si borras pruebas necesarias.
backups/rollback
Vas a cambiar configuración y quieres poder volver
- Síntoma visible
- Necesitas tocar workspace, openclaw.json, Docker o reglas y no sabes si podrás deshacer.
- Qué significa
- Sin backup verificado, cada arreglo puede convertirse en pérdida de contexto.
- Antes de tocar nada
- Crea copia local, comprueba que existe y no la subas a un repo público.
- Diagnóstico seguro
- Lista la carpeta de backup antes y después.
ls -la ~/.openclaw
Salida esperada: carpeta de workspace y configuración visibles con permisos razonables.
cp -a ~/.openclaw/workspace ~/.openclaw/backups/workspace-pre-fix-$(date +%Y%m%d_%H%M%S)
Salida esperada: no imprime nada si copia bien. Después revisa que la carpeta exista.
tar -czf ~/openclaw-backup-$(date +%Y%m%d).tar.gz ~/.openclaw/workspace ~/.openclaw/openclaw.json
Acción segura: cifra el backup si contiene openclaw.json. Si una API key ya se filtró, no basta con borrar: rota la key.
Si no funciona: haz rollback desde snapshot del proveedor o copia anterior verificada.
Riesgo: PRECAUCIÓN porque puede copiar secretos.