Controla.Club
SaaS para clubes deportivos con un agente que trabaja sobre datos reales.

Fundador e ingeniero · arquitectura, IA, infraestructura
Socios, cobros, control de acceso y entrenamientos para clubes, academias y gimnasios. Los clubes perseguían pagos por WhatsApp y revisaban comprobantes a mano; la plataforma hace las dos cosas, y Controli, su asistente, responde preguntas y actúa sobre los datos del club.
- commits
- 2.469
- commits
- archivos de pruebas
- 628
- archivos de pruebas
- servicios de AWS
- 16
- servicios de AWS
- Next.js 16
- LangGraph
- pgvector
- Supabase
- AWS Lambda
- SQS
- SST
- OpenRouter
- MCP
- Baileys
- C# .NET
Lo que construí
- Controli: un supervisor en LangGraph que enruta cada turno, con una llamada de herramienta forzada, a uno de seis especialistas. Él mismo no tiene herramientas de dominio.
- RAG híbrido: búsqueda de texto completo en español más pgvector, fusionadas con Reciprocal Rank Fusion, que cae a búsqueda léxica si fallan los embeddings.
- IA de pagos: un comprobante de WhatsApp pasa por receptor → SQS → worker; un grafo lo clasifica, lee el monto, lo cruza con los cobros pendientes y se detiene para aprobación humana.
- Club Radar: foto determinista → riesgo de abandono → analizar, criticar, investigar con SQL en sandbox, sintetizar. Validado con zod y con un presupuesto mensual de IA por club.
- Un servidor MCP que expone herramientas del club, del CRM y de noticias con tokens de alcance limitado.
Lo difícil
Texto a SQL sin escapatoria
El agente ejecuta SQL con un rol de Postgres de solo lectura, detrás de un lexer fiel a Postgres que cierra escapes de rol y funciones SECURITY DEFINER. Ambos tienen sus propias pruebas.
La política la decide el servidor, no el modelo
Las llamadas a herramientas se autorizan con el contexto del servidor y una lista permitida. El riesgo crece con el alcance real: borrar un socio no es borrar cuatrocientos. Lo riesgoso pide confirmación escrita.
Guardas nacidas de incidentes
Después de que el modelo inventó una URL en producción, una guarda revisa y quita cualquier enlace de controla.club que no exista. Un verificador elimina las marcas internas de cita antes de responder.



