🦞
Tutorial

Enrutamiento Multi-Agente

Ejecuta múltiples agentes aislados en un solo Gateway para separación trabajo/hogar, uso familiar compartido o diferentes personalidades de IA.

Intermedio20 min de lecturaEnero 2026

1.¿Qué es el Enrutamiento Multi-Agente?

El enrutamiento multi-agente te permite ejecutar múltiples agentes de IA aislados en un solo Gateway de OpenClaw. Cada agente tiene su propia identidad, memoria y configuración, pero comparte la misma infraestructura.

Cada agente tiene:

Identidad Propia

Nombre, personalidad y prompt de sistema separados

Memoria Aislada

Historial de conversación y contexto independientes

Herramientas Personalizadas

Diferentes permisos de herramientas por agente

Vinculaciones de Canal

Enruta canales específicos a agentes específicos

Casos de Uso Comunes

💼

Separación Trabajo/Hogar

Mantén el Slack del trabajo separado del Telegram personal. Diferentes personalidades, diferentes memorias.

👨‍👩‍👧

Uso Familiar Compartido

Cada miembro de la familia tiene su propio agente con respuestas personalizadas y memoria privada.

🎭

Diferentes Personalidades

Un asistente profesional para email, un amigo casual para Discord, un escritor creativo para lluvia de ideas.

📱

Multi-Cuenta

Maneja múltiples números de WhatsApp o cuentas de Telegram con agentes aislados.

2.Conceptos Clave

Espacios de Trabajo

Cada agente vive en un 'espacio de trabajo' - un directorio que contiene su configuración, memoria y archivos.

~/openclaw/agents/work/
├── AGENTS.md    # Define sub-agents and their specialties
├── SOUL.md      # Agent personality and communication style
├── USER.md      # Information about the user
└── skills/      # Agent-specific skills
  • soul.mdPersonalidad del agente y prompt de sistema
  • user.mdPreferencias del usuario y contexto
  • memory/Historial de conversación y datos
  • skills/Skills personalizados para este agente

Importante

Los agentes comparten el mismo proceso Gateway y claves API. Para aislamiento real (claves API separadas, procesos separados), ejecuta múltiples instancias de Gateway.

  • - Los límites de tasa se comparten entre todos los agentes
  • - Los costos de API se combinan
  • - Un fallo afecta a todos los agentes
Vinculaciones de Canal

Las vinculaciones enrutan los mensajes entrantes al agente correcto basándose en canal, usuario o grupo.

// Example: Route WhatsApp business account to work agent
{
  "bindings": [{
    "agent": "work",
    "channel": "whatsapp",
    "accountId": "business-account-id"
  }]
}

3.Configuración Paso a Paso

1

Crear un Nuevo Agente

Crea un directorio de espacio de trabajo para tu nuevo agente:

$
openclaw agents add work

Esto crea un nuevo agente con su propio directorio de espacio de trabajo.

2

Configurar el Espacio de Trabajo

Crea los archivos de personalidad y usuario del agente:

soul.md - Personalidad del agente:

# Work Assistant Soul

You are a professional work assistant. Be formal, concise,
and focused on productivity. Avoid casual language.

## Communication Style
- Use professional language
- Be direct and efficient
- Focus on actionable items
- Respect work-life boundaries

user.md - Contexto del usuario:

# User Profile - Work Context

- Role: Software Engineer at Acme Corp
- Working hours: 9 AM - 6 PM PST
- Key projects: Project Alpha, Customer Portal
- Slack workspace: acme-corp.slack.com
3

Configurar Vinculaciones de Canal

Enruta canales a tu nuevo agente en openclaw.json:

{
  "agents": {
    "default": {
      "workspace": "~/openclaw/agents/default",
      "agentDir": "~/openclaw/state/default"
    },
    "work": {
      "workspace": "~/openclaw/agents/work",
      "agentDir": "~/openclaw/state/work"
    }
  },
  "bindings": [
    {
      "agent": "work",
      "channel": "whatsapp",
      "accountId": "work-phone-id"
    },
    {
      "agent": "work",
      "channel": "slack",
      "teamId": "T123ACMECORP"
    }
  ],
  "defaultAgent": "default"
}

Las vinculaciones le indican a OpenClaw qué agente debe manejar los mensajes de cada canal.

4

Configurar Seguridad (Opcional)

Establece el modo sandbox y restricciones de herramientas para el agente:

{
  "agents": {
    "work": {
      "workspace": "~/openclaw/agents/work",
      "agentDir": "~/openclaw/state/work",
      "sandbox": "all",
      "tools": {
        "allow": ["calendar", "email", "notes"],
        "deny": ["shell", "browser"]
      }
    },
    "home": {
      "workspace": "~/openclaw/agents/home",
      "agentDir": "~/openclaw/state/home",
      "sandbox": "non-main",
      "tools": {
        "allow": ["*"],
        "deny": []
      }
    }
  }
}
5

Verificar Configuración

Reinicia OpenClaw y prueba tu configuración multi-agente:

$
openclaw agents list
$
openclaw agents test --channel whatsapp --from +1234567890

4.Ejemplos de Configuración

📱Dos Números de WhatsApp

Enruta diferentes números de WhatsApp a diferentes agentes:

{
  "agents": {
    "personal": { "workspace": "~/.openclaw/personal" },
    "business": { "workspace": "~/.openclaw/business" }
  },
  "bindings": [
    { "channel": "whatsapp:+1234567890", "agent": "personal" },
    { "channel": "whatsapp:+0987654321", "agent": "business" }
  ]
}
🤖Diferentes Modelos por Canal

Usa GPT-4 para trabajo, Claude para personal:

{
  "agents": {
    "work": {
      "workspace": "~/.openclaw/work",
      "model": "gpt-4o"
    },
    "personal": {
      "workspace": "~/.openclaw/personal",
      "model": "claude-3-5-sonnet-20241022"
    }
  }
}
👥Agentes Específicos por Grupo

Diferentes agentes para diferentes servidores de Discord o espacios de trabajo de Slack:

{
  "bindings": [
    { "channel": "discord", "guild": "gaming-server-id", "agent": "gaming-buddy" },
    { "channel": "discord", "guild": "work-server-id", "agent": "work-assistant" },
    { "channel": "slack", "workspace": "company-workspace", "agent": "work-assistant" }
  ]
}
👨‍👩‍👧‍👦Uso Familiar Compartido

Cada miembro de la familia obtiene su propio agente mediante ID de usuario de Telegram:

{
  "agents": {
    "dad": { "workspace": "~/.openclaw/dad" },
    "mom": { "workspace": "~/.openclaw/mom" },
    "kids": { "workspace": "~/.openclaw/kids", "sandbox": "all" }
  },
  "bindings": [
    { "channel": "telegram", "userId": "123456", "agent": "dad" },
    { "channel": "telegram", "userId": "789012", "agent": "mom" },
    { "channel": "telegram", "userId": "345678", "agent": "kids" }
  ]
}

5.Prioridad de Vinculación

Cuando múltiples vinculaciones podrían coincidir, OpenClaw usa la más específica:

  1. 1

    Específica de usuario

    Las vinculaciones con userId coinciden primero

    { "channel": "telegram", "userId": "123", "agent": "personal" }
  2. 2

    Específica de grupo

    Las vinculaciones con group/guild/workspace coinciden segundo

    { "channel": "discord", "guild": "abc", "agent": "gaming" }
  3. 3

    Específica de canal

    Las vinculaciones solo de canal coinciden último

    { "channel": "telegram", "agent": "default" }

Ejemplo

Si tienes vinculaciones para 'telegram' (por defecto) y 'telegram + userId:123' (personal), los mensajes del usuario 123 van a 'personal', todos los demás van a 'default'.

6.Seguridad y Aislamiento

Controla lo que cada agente puede hacer con modos de sandbox y políticas de herramientas.

Modos de Sandbox

Limita las capacidades del agente según el nivel de confianza:

"sandbox": "off"Acceso Completo

El agente puede usar todas las herramientas. Usar para agentes personales de confianza.

"sandbox": "non-main"Limitado

Restringir acceso a archivos/shell solo al directorio del espacio de trabajo.

"sandbox": "all"Estricto

Sin acceso al sistema de archivos o shell. Solo chat y web.

Política de Herramientas

Control detallado sobre qué herramientas puede usar un agente:

{
  "agents": {
    "restricted": {
      "workspace": "~/openclaw/agents/restricted",
      "agentDir": "~/openclaw/state/restricted",
      "tools": {
        // Only allow these specific tools
        "allow": ["calendar", "notes", "reminders"],
        // Explicitly block dangerous tools
        "deny": ["shell", "filesystem", "browser", "email"]
      }
    },
    "trusted": {
      "workspace": "~/openclaw/agents/trusted",
      "agentDir": "~/openclaw/state/trusted",
      "tools": {
        // Allow everything except...
        "allow": ["*"],
        "deny": ["shell"]  // Still block shell for safety
      }
    }
  }
}
Acceso al Espacio de Trabajo

Por defecto, los agentes solo pueden acceder a archivos dentro de su directorio de espacio de trabajo. Esto evita que un agente lea la memoria o archivos de otro.

{
  "agents": {
    "work": {
      "workspace": "~/openclaw/agents/work",
      "agentDir": "~/openclaw/state/work",
      "filesystem": {
        // Only allow access to these directories
        "allowedPaths": [
          "~/Documents/Work",
          "~/Projects",
          "/tmp"
        ],
        // Block access to sensitive areas
        "blockedPaths": [
          "~/.ssh",
          "~/.aws",
          "~/Documents/Personal"
        ]
      }
    }
  }
}

¡Multi-Agente Listo!

Ahora tienes agentes aislados para diferentes casos de uso.

¿Preguntas? Únete a Discord o Abre un Issue en GitHub