Un Gateway, varios asistentes: usa Bindings para llevar cada mensaje al agente correcto

3 min read

Si tu grupo de trabajo y tu chat personal hablan con el mismo asistente, el caos llega rapidísimo.

Varios agentes + Bindings resuelven eso: cada contexto usa el asistente que le corresponde.

Qué vas a aprender

  • Saber cuándo conviene tener varios agentes
  • Definir varios agentes en la config
  • Enrutar mensajes con reglas de Bindings
  • Encontrar el ID de tu grupo de Telegram

¿Por qué usar varios agentes?

Escenario Necesidad
Grupo de trabajo vs chat personal Workspaces separados, datos separados
Respuesta rápida vs análisis profundo Modelos distintos
Varios proyectos independientes Un workspace por proyecto

¿Cómo se configura?

Paso 1: define tus asistentes en agents.list

{
  "agents": {
    "list": [
      { "id": "main",      "name": "Asistente principal", "workspace": "~/.openclaw/workspace-main", "default": true },
      { "id": "project-a", "name": "Proyecto A",          "workspace": "~/.openclaw/workspace-project-a" },
      { "id": "project-b", "name": "Proyecto B",          "workspace": "~/.openclaw/workspace-project-b" }
    ]
  }
}

Paso 2: añade reglas de enrutamiento en bindings

Piensa en ello como una recepción:

"Los mensajes del grupo A van al asistente A. Los del grupo B van al asistente B. Todo lo demás va al predeterminado."

{
  "bindings": [
    { "agentId": "project-a", "match": { "channel": "telegram", "peer": { "kind": "group", "id": "-1001234567890" } } },
    { "agentId": "project-b", "match": { "channel": "telegram", "peer": { "kind": "group", "id": "-1009876543210" } } },
    { "agentId": "main",      "match": { "channel": "telegram" } }
  ]
}

⚠️ El orden de los Bindings importa muchísimo. Las reglas más específicas deben ir primero. El matching es "la primera coincidencia gana".


¿Cómo encontrar el ID del grupo?

Método 1: manda un mensaje cualquiera en el grupo y ejecuta:

openclaw logs --follow
# Busca chat.id en los logs; normalmente es un número negativo como -1001234567890

Método 2: reenvía un mensaje del grupo a @userinfobot.


Avanzado: distintas cuentas de bot para distintos asistentes

Si tienes varios bot tokens:

{
  "channels": {
    "telegram": {
      "accounts": {
        "default": { "botToken": "Token del Bot A" },
        "alerts":  { "botToken": "Token del Bot B" }
      }
    }
  },
  "bindings": [
    { "agentId": "main",   "match": { "channel": "telegram", "accountId": "default" } },
    { "agentId": "alerts", "match": { "channel": "telegram", "accountId": "alerts" } }
  ]
}

Guarda después de editar

Tras cambiar la Config, pulsa Save / Apply. Si aparece conflicto de baseHash, la configuración cambió en otro sitio. Recárgala y vuelve a aplicar los cambios.


Siguiente paso

Ya tienes varios asistentes. Ahora toca mover uno a un VPS para que se quede en línea 24/7.

← Anterior: Memoria y workspace | 👉 Mover el asistente a un VPS para usarlo en remoto