Autonomous Agents

Guía de Agente Autónomo OpenClaw: Arquitectura, Docker y Costes

### Respuesta Rápida: ¿Qué es OpenClaw y cuáles son sus ventajas?

OpenClaw es un asistente de IA personal autónomo de código abierto con arquitectura Gateway desacoplada, soporte para más de 20 plataformas de mensajería y ejecución en sandbox multi-agente. A diferencia de agentes SaaS cerrados que cuestan $20–$50 al mes, OpenClaw no cobra suscripción ($0) y opera a solo $0.003–$0.042 por ejecución mediante API directa.


1. Visión General: ¿Qué representa OpenClaw en 2026?

En 2026, el ecosistema de agentes de IA ha superado las ventanas de chat tradicionales para dar paso a bucles de ejecución continua 24/7 impulsados por eventos. Mientras que Claude Code y OpenAI Codex se centran en la terminal local del desarrollador, OpenClaw (anteriormente openclaw.ai) se ha consolidado como el framework de código abierto líder para asistentes de IA personales capaces de operar a través de múltiples canales de mensajería, tareas programadas (Cron) y ejecución multi-agente segura.

OpenClaw se estructura en tres pilares:

  1. Protocolo Gateway Desacoplado: Demonio central en el puerto 18789 que gestiona el enrutamiento de canales, la persistencia de sesiones, el planificador Cron y los webhooks.
  2. Mensajería Multiplataforma Nativa: Compatibilidad directa con más de 20 redes, incluyendo Telegram, WhatsApp (Baileys), Discord (Bot API + Gateway), Slack (Bolt SDK), Signal, iMessage, Matrix y WebChat.
  3. Skills Modulares y Sandboxing: Estándar en Markdown (SKILL.md) publicado en el registro ClawHub, combinado con aislamiento estricto en contenedores Docker y descarte de privilegios POSIX.

2. Arquitectura de OpenClaw: Gateway, Canales y Workspace

OpenClaw separa el plano de control y ejecución a través de su servicio en segundo plano (OpenClaw Gateway), comunicándose mediante WebSockets y sockets de dominio Unix.

+-----------------------------------------------------------------------------------+
|                           Canales de Mensajería Externos                          |
|   Telegram  |  WhatsApp  |  Discord  |  Slack  |  Signal  |  iMessage  |  Matrix  |
+-----------------------------------------------------------------------------------+
                                          | (Webhook / WebSocket / Bot API)
                                          v
+-----------------------------------------------------------------------------------+
|                            OpenClaw Gateway (Puerto 18789)                        |
|  - Emparejamiento DM y motor Allowlist    - Almacén de contexto y sesiones        |
|  - Planificador de tareas (CronTab)       - Enrutador de webhooks entrantes       |
|  - Recarga en caliente (Hybrid Watch)     - Conmutación por error entre modelos   |
+-----------------------------------------------------------------------------------+
       |                                      |                              |
       v                                      v                              v
+------------------+                  +------------------+         +-------------------+
|  Agente: Hogar   |                  |  Agente: Trabajo |         |  Agente: DevOps   |
|  - Workspace-Home|                  |  - Workspace-Work|         |  - Workspace-Ops  |
|  - SOUL.md       |                  |  - SOUL.md       |         |  - SOUL.md        |
|  - CRM Personal  |                  |  - Jira / Linear |         |  - CI/CD e Infra  |
+------------------+                  +------------------+         +-------------------+
       |                                      |                              |
       +--------------------------------------+------------------------------+
                                          |
                                          v
+-----------------------------------------------------------------------------------+
|                      Capa de Ejecución en Sandbox Multi-Agente                    |
|  - Aislamiento en contenedores Docker (`mode: non-main` / `mode: all`)            |
|  - Privilegios POSIX eliminados (`cap_drop: ALL`, UID sin privilegios 10001)      |
|  - Volúmenes de solo lectura (`:ro`) y memoria temporal (`/tmp:noexec`)           |
|  - Motor de habilidades ClawHub (intérprete `SKILL.md` y chequeo de binarios)     |
+-----------------------------------------------------------------------------------+

Estructura de Directorios del Workspace

~/.openclaw/
├── openclaw.json          # Configuración declarativa principal (formato JSON5)
├── cron.json              # Tareas programadas persistentes
├── state/                 # Almacenamiento SQLite, tokens y caché
├── skills/                # Habilidades compartidas globales
└── workspace/             # Directorio de trabajo predeterminado
    ├── AGENTS.md          # Instrucciones y reglas de comportamiento del agente
    ├── SOUL.md            # Personalidad, tono, límites y directrices éticas
    ├── TOOLS.md           # Especificaciones de herramientas locales
    └── skills/            # Habilidades exclusivas del espacio de trabajo
        └── repo-analyzer/
            └── SKILL.md   # Declaración ejecutable de la habilidad

Comandos de Gestión del Gateway

# Comprobar estado del demonio, puertos y memoria
openclaw gateway status

# Iniciar Gateway en segundo plano
openclaw gateway start

# Iniciar en primer plano con registro detallado (verbose)
openclaw gateway --port 18789 --verbose

# Ejecutar auditoría y diagnóstico del sistema
openclaw doctor

# Reparar automáticamente permisos y rutas dañadas
openclaw doctor --fix

3. Despliegue en Producción con Docker: Guía Completa

Otorgar acceso a la terminal a un agente directamente sobre el sistema operativo anfitrión implica graves riesgos. El estándar de despliegue en producción emplea Docker Compose con redes aisladas.

Archivo docker-compose.yml

version: "3.9"

services:
  openclaw-gateway:
    image: ghcr.io/openclaw/openclaw:latest
    container_name: openclaw-gateway
    restart: unless-stopped
    user: "10001:10001"
    security_opt:
      - no-new-privileges:true
    cap_drop:
      - ALL
    cap_add:
      - CHOWN
      - SETUID
      - SETGID
    environment:
      - NODE_ENV=production
      - OPENCLAW_HOME=/home/openclaw/.openclaw
      - OPENCLAW_STATE_DIR=/home/openclaw/.openclaw/state
      - OPENCLAW_GATEWAY_TOKEN=${OPENCLAW_GATEWAY_TOKEN}
      - OPENCLAW_GATEWAY_PASSWORD=${OPENCLAW_GATEWAY_PASSWORD}
      - ANTHROPIC_API_KEY=${ANTHROPIC_API_KEY}
      - OPENAI_API_KEY=${OPENAI_API_KEY}
      - DEEPSEEK_API_KEY=${DEEPSEEK_API_KEY}
    volumes:
      - openclaw-config:/home/openclaw/.openclaw
      - openclaw-workspace:/home/openclaw/.openclaw/workspace
      - /var/run/docker.sock:/var/run/docker.sock:ro
    ports:
      - "127.0.0.1:18789:18789"
    networks:
      - openclaw-net
    healthcheck:
      test: ["CMD", "openclaw", "health"]
      interval: 30s
      timeout: 10s
      retries: 3
      start_period: 20s

  openclaw-sandbox:
    image: ghcr.io/openclaw/sandbox-runner:latest
    container_name: openclaw-sandbox
    restart: always
    network_mode: none
    read_only: true
    tmpfs:
      - /tmp:rw,noexec,nosuid,size=256m
    security_opt:
      - no-new-privileges:true
    cap_drop:
      - ALL
    volumes:
      - openclaw-workspace:/workspace:rw
    environment:
      - RUNNER_UID=10001
      - RUNNER_GID=10001

volumes:
  openclaw-config:
    driver: local
  openclaw-workspace:
    driver: local

networks:
  openclaw-net:
    driver: bridge

Configuración openclaw.json

{
  agents: {
    defaults: {
      workspace: "/home/openclaw/.openclaw/workspace",
      model: {
        primary: "anthropic/claude-sonnet-4-6",
        fallbacks: ["deepseek/deepseek-chat", "openai/gpt-5.4"],
      },
      thinking: "high",
      sandbox: {
        mode: "non-main", // off | non-main | all
        scope: "agent",   // session | agent | shared
        dockerImage: "ghcr.io/openclaw/sandbox-runner:latest",
        timeoutSeconds: 300,
        memoryLimitMb: 1024,
      },
    },
    list: [
      {
        id: "main",
        default: true,
        workspace: "/home/openclaw/.openclaw/workspace",
      },
      {
        id: "devops",
        workspace: "/home/openclaw/.openclaw/workspace-devops",
        sandbox: { mode: "all" },
      },
    ],
  },
  channels: {
    telegram: {
      enabled: true,
      botToken: "7123456789:AAFq_example_token_secret",
      dmPolicy: "pairing", // pairing | allowlist | open | disabled
      allowFrom: ["tg:987654321"],
    },
    discord: {
      enabled: true,
      botToken: "MTI4OTexampleDiscordBotToken",
      dmPolicy: "allowlist",
      allowFrom: ["dc:382910394857291029"],
    },
  },
  cron: {
    enabled: true,
    maxConcurrentRuns: 4,
  },
  hotReload: "hybrid",
}

4. Orquestación Multi-Agente y Seguridad en Sandbox

Políticas de DM y Niveles de Sandbox

  1. Control de Mensajes Entrantes (DM Policy):
  • pairing (Predeterminado): Contactos desconocidos reciben un código de emparejamiento. El administrador debe aprobarlo con openclaw pairing approve .
  • allowlist: Solo las cuentas en allowFrom pueden interactuar con el agente.
  • open: Acceso libre a cualquier usuario (solo recomendado para bots de soporte con sandbox en all).
  • disabled: Desactiva mensajes entrantes, reservando el sistema para alertas salientes.
  1. Modos de Sandbox:
  • off: Ejecución en el host (rendimiento máximo, pero riesgo elevado).
  • non-main (Recomendado): El agente principal planifica en entorno estándar; tareas delegadas y skills no confiables corren en Docker.
  • all: Toda ejecución se confina en un contenedor sin red (network_mode: none).

5. Motor de Habilidades y Ecosistema ClawHub

Las capacidades se extienden mediante Skills declaradas en SKILL.md:

---
name: github-pr-analyzer
description: Analiza pull requests en GitHub, ejecuta pruebas unitarias y genera resúmenes.
metadata: {
  "openclaw": {
    "requires": {
      "bins": ["gh", "jq", "git"],
      "env": ["GITHUB_TOKEN"],
      "config": ["sandbox.enabled"]
    },
    "os": ["linux", "darwin"],
    "always": false,
    "primaryEnv": "GITHUB_TOKEN"
  }
}
---

# Habilidad de Análisis de PRs de GitHub

Al invocarse por usuario o webhook:
1. Extraer el diff del PR con `gh pr diff <pr_number>`.
2. Identificar los archivos modificados y evaluar cobertura de pruebas.
3. Redactar el informe estructurado en Markdown con referencias a código.

Comandos de Gestión

# Listar habilidades instaladas
openclaw skills list

# Instalar desde el registro oficial ClawHub
openclaw skills install web-researcher

# Instalar desde un repositorio GitHub específico
openclaw skills install git:github.com/openclaw-community/postgres-inspector@v1.4.0

# Verificar firma digital y permisos del skill
openclaw skills verify web-researcher

# Actualizar todas las habilidades instaladas
openclaw skills update --all

6. Rendimiento y Benchmarks: SWE-bench y Recursos

Parámetro Evaluado OpenClaw (Self-Hosted + Sonnet 4.6) Claude Code (CLI Oficial) Devin (Empresarial) AutoGen v0.4 (Docker) Bots SaaS Comerciales
SWE-bench Verified (Tasa de Éxito) 68.4% 72.4% 71.8% 52.1% 41.2%
Precisión en Invocación de Tools 94.6% 96.8% 95.2% 84.3% 79.5%
Latencia Primer Token (TTFT) 0.42s (Gateway Activo) 1.84s 4.80s (Arranque VM Nube) 1.10s 2.45s
RAM en Reposo (Gateway) 84 MB (Híbrido Node/Rust) N/A (CLI Efímero) Alojado en la nube 420 MB (Motor Python) Alojado en la nube
Pico de RAM (5 Tareas en Paralelo) 340 MB N/A (Sesión única) Alojado en la nube 1,840 MB Alojado en la nube
Sobrecarga de Sandbox 180ms (Contenedor precalentado) Ninguna (Nativo) Hipervisor propietario 450ms Sandbox propietario
Canales de Mensajería Nativos 20+ Redes Solo Terminal Web y Slack Solo API Python Web / Telegram
Soberanía y Privacidad de Datos 100% en Premisa Local / API Nube SaaS Nube Cerrado 100% en Premisa SaaS Nube Cerrado

7. Precios de OpenClaw y Economía de Tokens

La búsqueda de openclaw pricing es muy frecuente: ¿OpenClaw es gratuito o de pago?

El software de OpenClaw es 100% gratuito y de código abierto (Apache 2.0 / MIT). No hay tarifas mensuales por usuario ni costes de licencia. Los gastos se limitan a:

  1. Infraestructura: Servidor VPS ($4–$15 al mes).
  2. Tokens de API de Modelos: Facturación directa por consumo con Anthropic, OpenAI, DeepSeek, etc.

Coste Estimado por Cada 1.000 Ejecuciones

Plataforma Tarifa Mensual Base Modelo de Facturación Coste por Consulta Simple Coste por Tarea Compleja (Auditoría) Gasto Mensual Estimado (500 tareas)
OpenClaw (DeepSeek V4) $0.00 API directa ($0.14 / $0.28 por 1M) $0.0008 $0.012 $6.40 (con VPS de $5)
OpenClaw (Claude Sonnet 4.6) $0.00 API directa ($3.00 / $15.00 por 1M) $0.0042 $0.058 $29.50 (con VPS de $5)
Claude Code (Anthropic) $0.00 (Requiere plan Max) $20/mes + API excedente $0.0042 $0.058 $45.00 – $80.00
Devin Enterprise $500.00 / usuario / mes ACUs incluidas + extras Incluido en tarifa Incluido en tarifa $500.00+
Bots SaaS Comerciales $20.00 – $50.00 / mes Cuotas cerradas de mensajes Consumo de cuota Bloqueo al superar límite $20.00 – $100.00

8. Mantenimiento, Monitorización y Resolución de Problemas

# Verificar estado del demonio y canales
openclaw gateway status

# Seguir registros de ejecución en tiempo real
openclaw logs --follow --lines 50

# Validar sintaxis y coherencia de configuración
openclaw config validate

# Ejecutar consulta interactiva con razonamiento profundo
openclaw agent --message "Realizar auditoría de seguridad del proyecto" --thinking high

# Enviar mensaje directo a un chat de Telegram
openclaw message send --target "tg:987654321" --message "Despliegue finalizado con éxito."

Solución de Errores Comunes

  1. Conflicto de Puertos (EADDRINUSE 18789): Proceso anterior en ejecución. Detener con openclaw gateway stop o matar con kill -9 $(lsof -t -i :18789).
  2. Conflicto en Telegram (409 Conflict): Múltiples instancias compartiendo el mismo Token. Consolidar en un único contenedor activo.
  3. Error de Permisos en Sandbox (EACCES): Conflicto de UID entre anfitrión y contenedor. Ejecutar chown -R 10001:10001 ~/.openclaw/workspace.

9. Conclusión y Recomendación

OpenClaw representa el equilibrio perfecto entre la agilidad de las herramientas CLI y la potencia de los sistemas autónomos de producción. Su arquitectura desacoplada, soporte para más de 20 canales y despliegue seguro en Docker garantizan soberanía de datos y ahorros superiores al 80% frente a alternativas SaaS cerradas.

← Todos los Artículos
0 / 4