Configuración de Channels y routing en OpenClaw
Gestionar múltiples plataformas de chat suele ser un dolor de cabeza. Es común que los mensajes se mezclen o que pierdas el hilo de la conversación cuando intentas escalar tu bot a diferentes canales. OpenClaw soluciona esto con un sistema de routing determinista: las respuestas siempre vuelven al canal de donde vino el mensaje original.
Aquí no hay adivinanzas por parte del modelo. El host controla el flujo mediante reglas claras, asegurando que cada conversación mantenga su contexto, ya sea en un mensaje directo o en un hilo de Discord.
Requisitos previos
Sección titulada «Requisitos previos»- Archivo de configuración de OpenClaw (JSON5).
- Directorio de estado configurado (por defecto
~/.openclaw). - Acceso a las credenciales de los canales que quieras conectar (WhatsApp, Telegram, Slack, etc.).
Inicio rápido
Sección titulada «Inicio rápido»Configura tu primer agente y conéctalo a un canal en menos de 5 minutos siguiendo estos pasos:
- Define tu agente: Añade una entrada en
agents.listdentro de tu configuración. - Crea un binding: Indica a OpenClaw qué mensajes debe procesar ese agente.
{ agents: { list: [{ id: "support", name: "Support", workspace: "~/.openclaw/workspace-support" }], }, bindings: [ { match: { channel: "slack", teamId: "T123" }, agentId: "support" }, { match: { channel: "telegram", peer: { kind: "group", id: "-100123" } }, agentId: "support" }, ],}Con esto, cualquier mensaje de ese equipo de Slack o grupo de Telegram será gestionado por el agente “support”.
Conceptos clave
Sección titulada «Conceptos clave»Para dominar el routing, debes entender estos cuatro términos:
- Channel: La plataforma de mensajería (
whatsapp,telegram,discord,slack,signal,imessage,webchat). - AccountId: La instancia de la cuenta específica en ese canal.
- AgentId: Un espacio de trabajo aislado con su propia memoria o “cerebro”.
- SessionKey: La clave que identifica dónde se guarda el contexto y controla quién habla con quién.
Estructura de las Session Keys
Sección titulada «Estructura de las Session Keys»OpenClaw organiza las sesiones de forma automática. Los mensajes directos van a la sesión principal del agente (agent:<agentId>:main), mientras que los grupos y canales se mantienen aislados:
- Groups:
agent:<agentId>:<channel>:group:<id> - Threads: En Slack o Discord, se añade
:thread:<threadId>al final de la clave. - Telegram Topics: Se incluye
:topic:<topicId>dentro de la clave del grupo.
Reglas de Routing
Sección titulada «Reglas de Routing»Cuando llega un mensaje, OpenClaw elige un solo agente siguiendo este orden de prioridad:
- Exact peer match: Coincidencia exacta de
peer.kindypeer.id. - Guild match: Por
guildId(específico de Discord). - Team match: Por
teamId(específico de Slack). - Account match: Coincidencia por el
accountIddel canal. - Channel match: Cualquier cuenta en ese canal específico.
- Default agent: El agente marcado como
default, o el primero de la lista.
Broadcast groups
Sección titulada «Broadcast groups»Si necesitas que varios agentes respondan al mismo mensaje simultáneamente, utiliza los Broadcast groups. Esto es útil en grupos de WhatsApp para que, por ejemplo, un agente de soporte y uno de registro de logs actúen a la vez.
{ broadcast: { strategy: "parallel", "120363403215116621@g.us": ["alfred", "baerbel"], "+15555550123": ["support", "logger"], },}Session storage
Sección titulada «Session storage»Por defecto, todo el historial y los estados se guardan en ~/.openclaw. Encontrarás los archivos en:
~/.openclaw/agents/<agentId>/sessions/sessions.json- Transcripciones en formato JSONL junto al archivo de sesión.
Si lo prefieres, puedes cambiar esta ruta usando session.store y la plantilla {agentId}.
Solución de problemas
Sección titulada «Solución de problemas»El agente no responde en el canal esperado
Revisa el orden de prioridad del routing. Si tienes un agente por defecto y no has definido un match específico en bindings para tu canal, OpenClaw usará siempre el agente main.
Los hilos de Discord o Slack se mezclan
Verifica que las Session Keys se estén generando correctamente. OpenClaw añade automáticamente el :threadId a la clave base; si esto falla, confirma que el canal soporta hilos en la documentación oficial.
WebChat no muestra el contexto de otros canales WebChat se conecta al agente seleccionado y usa su sesión principal. Para ver contexto cruzado, asegúrate de que el agente sea el mismo que gestiona los otros canales.
What’s Next:
OpenClaw Expert
Sigues atascado?
Si esta pagina no resolvio tu caso, pregunta a OpenClaw Expert para pasos concretos.