agimate-backend
Backend de AgiMate: plataforma donde agentes especializados trabajan juntos en tu propio servidor con sus propias claves.
Ficha actualizada 22 sept 2026, 21:54 · upstream 22 sept 2026, 21:28 · release sin release detectada
Qué es agimate-backend
Descripción editorial construida a partir del repositorio, su documentación y sus señales de mantenimiento.
El backend es el núcleo del agente AgiMate, que proporciona acceso a conectores y herramientas por agente, credenciales que nunca llegan al modelo de lenguaje. Cada llamada se verifica antes de salir y se registra después.
Se construye con Java 21 (threads virtuales), Spring Boot 4, PostgreSQL 18, Liquibase, gRPC y Centrifugo como WebSocket. Todo reside en un solo proyecto Gradle llamado 'services'.
Los módulos principales son: user-api (autenticación OAuth2 y JWT), control-api (agentes, habilidades, conectores, canales, triggers, tableros, proveedores de LLM), agent-worker (loop del agente sin cabeza — consume correas de trabajo desde DBOS y ejecuta la conversación con el modelo) y libs/common (seguridad compartida, JWT y utilidades).
- Automatizar tareas repetitivas como facturación o notificaciones de correo mediante conectores integrados.
- Conectar agentes especializados para que un agente de marketing genere contenido y otro de ventas lo procese automáticamente.
- Implementar flujos de trabajo complejos donde múltiples agentes colaboran en tableros de gestión sin intervención humana.
- Automatizar procesos de onboarding o offboarding de clientes mediante triggers configurables por canal (email, Slack, webhook).
- Conectar herramientas externas como APIs de pago, CRM o bases de datos para extender la funcionalidad del agente.
- Monitorear el rendimiento y salud de los agentes en tiempo real a través de logs centralizados.
- Credenciales nunca se exponen al modelo: cada credencial se cifra con AES-256-GCM bajo una clave de datos propia, que el propio AgiMate envía al modelo.
- Las herramientas y triggers tienen reglas estrictas de acceso: sin un binding activo, ninguna herramienta o trigger es habilitado.
- Cada acción genera un registro detallado (agent_runs, trigger_logs, tool_call_logs) con timestamps y contexto completo.
- Los agentes pueden ser cancelados en cualquier punto del flujo, incluso durante una llamada a herramienta abierta.
- Las comunicaciones hacia direcciones externas se verifican antes de la conexión TLS, impidiendo que redirecciones o DNS responses accedan internamente.
- No incluye autenticación de dos factores (2FA) ni gestión de sesiones en tiempo real.
- La cancelación de run no puede revertir acciones completadas una vez iniciadas, especialmente herramientas con comportamiento abierto-world.
- El modelo de base de datos es PostgreSQL 18; la compatibilidad con versiones anteriores requiere migraciones manuales o scripts personalizados.
- No hay soporte nativo para autenticación federada (SSO) ni integración con Identity Providers externos como Okta o Azure AD.
- La arquitectura monolítica en un solo proyecto Gradle puede dificultar el escalado horizontal y la separación de responsabilidades a largo plazo.
Perfil de infraestructura
Estimación inicial derivada del repositorio y de los servicios detectados.
Despliegue detectado
Qué señales reales de instalación hemos encontrado.
Para despliegue local: ejecutar `./dev-init.sh` para generar claves, configurar `.env`, luego `docker compose --profile infra up -d`. Para producción: usar `docker compose --profile full up -d`. Se recomienda mantener el proyecto en Docker Compose con contenedores separados por entorno (infra, prod). El agente-worker se ejecuta en un contenedor separado para evitar bloqueos de recursos del backend. En entornos Kubernetes, se puede migrar a Helm charts o Deployments personalizados.
Stack y dependencias
Componentes inferidos a partir de manifests, configuración y documentación.
Puede sustituir a
Relaciones detectadas por el análisis del repositorio y su categoría.
Experiencia real de la comunidad
Ayuda a contrastar la estimación automática con instalaciones reales.
Todavía no hay datos comunitarios para este proyecto.