home@lat3dev.tech

Actualizado: junio de 2026 · Apéndice F

Cuando las cosas salen mal

Errores frecuentes organizados por síntoma para diagnosticar sin perder tiempo.

Qué cubre

Diagnóstico de errores frecuentes en Node, OpenClaw, Gateway, modelos, canales, Docker, navegador, seguridad y VPS.

Uso seguro

Copia solo lo que entiendas. Adapta rutas y revisa backups antes de ejecutar comandos que borren, muevan, abran puertos, cambien permisos o toquen secretos.

apendice_f.md

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.

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.