Arquitectura de Clawdbot
Profundiza en la arquitectura del asistente de IA Clawdbot. Aprende sobre el modelo Gateway-Agent, la API WebSocket, el flujo de mensajes y el diseño del sistema.
Resumen de la Arquitectura de Clawdbot
Clawdbot sigue una arquitectura Gateway-Agent que separa las responsabilidades entre el transporte de mensajes y el procesamiento de IA. Este diseño permite escalabilidad, confiabilidad y soporte multicanal.
Componentes del Sistema
Capa de Gateway
El Gateway de Clawdbot es el coordinador central:
| Componente | Responsabilidad |
|---|---|
| Gestor de Conexiones | Mantiene las conexiones de proveedores |
| Enrutador de Mensajes | Enruta mensajes a los agentes |
| Gestor de Sesiones | Gestiona el estado de la conversación |
| Servidor WebSocket | Expone API tipada |
Capa de Agentes
Los agentes de Clawdbot manejan el procesamiento de IA:
| Componente | Responsabilidad |
|---|---|
| Runtime | Ejecuta la lógica del agente |
| Ejecutor de Herramientas | Ejecuta herramientas y habilidades |
| Gestor de Contexto | Gestiona el contexto de la conversación |
| Generador de Respuestas | Genera respuestas de IA |
Flujo de Mensajes
Flujo Entrante
Provider → Gateway → Router → Agent → Runtime- El proveedor recibe el mensaje
- El Gateway normaliza el formato
- El enrutador selecciona el agente destino
- El agente procesa el mensaje
- El Runtime genera la respuesta
Flujo Saliente
Runtime → Agent → Gateway → Provider → User- El Runtime genera la respuesta
- El agente formatea el mensaje
- El Gateway enruta al proveedor
- El proveedor entrega el mensaje
API WebSocket
Conexión
const ws = new WebSocket('ws://localhost:3010');
ws.on('open', () => {
ws.send(JSON.stringify({
type: 'auth',
token: 'your-token'
}));
});Tipos de Mensajes
| Tipo | Dirección | Descripción |
|---|---|---|
auth | Cliente→Servidor | Autenticar conexión |
message | Bidireccional | Enviar/recibir mensajes |
status | Servidor→Cliente | Actualizaciones de estado de conexión |
typing | Servidor→Cliente | Indicadores de escritura |
Gestión de Estado
Estado de Sesión
Clawdbot mantiene el estado en múltiples niveles:
Global State
└── Agent State
└── Session State
└── Message StatePersistencia de Estado
| Tipo de Estado | Almacenamiento | Ciclo de Vida |
|---|---|---|
| Global | clawdbot.json | Permanente |
| Agente | agents/<id>/ | Por agente |
| Sesión | sessions/<key>.jsonl | Hasta expiración |
| Mensaje | En memoria | Por solicitud |
Escalabilidad
Escalado Horizontal
Clawdbot soporta escalado horizontal:
- Múltiples instancias de Gateway detrás de balanceador de carga
- Almacén de sesiones compartido para consistencia
- Procesamiento de mensajes sin estado
Límites de Recursos
| Recurso | Por Defecto | Configurable |
|---|---|---|
| Conexiones máximas | 100 | Sí |
| Buffer de mensajes | 1000 | Sí |
| Tiempo de espera de sesión | 24h | Sí |
Modelo de Seguridad
Autenticación
- Autenticación por clave API
- Autenticación WebSocket basada en token
- Credenciales por proveedor
Autorización
- Permisos a nivel de herramienta
- Aislamiento a nivel de agente
- Control de acceso a nivel de sesión
Próximos Pasos
- Gateway de Clawdbot - Configuración del Gateway
- Conceptos de Clawdbot - Conceptos principales
- Herramientas de Clawdbot - Configuración de herramientas
Conceptos de Clawdbot
Conceptos principales para entender la arquitectura del asistente de IA Clawdbot, sesiones, enrutamiento multi-agente y manejo de mensajes.
Grupos de Clawdbot
Configura el asistente de IA Clawdbot para chats grupales. Aprende sobre detección de grupos, manejo de mensajes, menciones y conversaciones multiusuario.