Agente AI

El agente de OnClock no es un chatbot de preguntas y respuestas — es un agente autónomo con function calling que ejecuta acciones reales sobre el proyecto: crea tareas, cierra etapas, envía correos, genera reportes y mucho más.

Qué hace

Interactúa con el agente desde el chat del proyecto escribiendo @onclock. También le puedes escribir por email, WhatsApp o Telegram — él entiende el canal y responde adecuadamente.

Responde preguntas del proyecto
«¿cómo va la etapa de diseño?», «¿quién tiene más tareas retrasadas?», «¿cuándo termina el proyecto X?»
Crea y modifica el proyecto
Crea etapas, tareas, subtareas, asigna integrantes, reordena dependencias — todo con comandos naturales.
Envía correos por ti
Redacta y envía emails en nombre del proyecto: recordatorios, resúmenes ejecutivos, alertas a clientes.
Genera reportes
Reportes ejecutivos de proyecto, análisis de carga del equipo, detección de riesgos — al momento.
Consulta documentos
RAG con pgvector: sube contratos, actas y entregables y el agente los consulta para contextualizar sus respuestas.

Arquitectura

El agente corre como un servicio Python (FastAPI) en el backend. Cada mensaje al agente sigue este flujo:

  1. Context builder: construye el contexto del proyecto (integrantes, etapas, tareas, timers, festivos) como prompt.
  2. LLM con function calling: llama al proveedor AI configurado con las tools disponibles como funciones callable.
  3. Tool executor: si el LLM decide ejecutar una tool, el backend valida permisos del usuario y ejecuta la acción real sobre la DB del tenant.
  4. Respuesta al usuario: el resultado de las tools vuelve al LLM para que componga la respuesta final.
  5. Aprendizaje: conversaciones relevantes se indexan en el RAG para referencia futura.

Tools disponibles

El agente tiene acceso a más de 40 tools. Las principales:

  • get_project_summary — resumen de estado del proyecto.
  • get_delayed_tasks — lista tareas retrasadas.
  • get_team_workload — carga de trabajo por integrante.
  • create_task, assign_task, update_task_status — gestión de tareas.
  • create_stage, start_stage, complete_stage — gestión de etapas.
  • send_email — envía correos a integrantes o clientes.
  • request_backlog_via_email — abre un BacklogRequest y notifica a los PMO por correo.
  • search_documents, read_document — RAG sobre documentos subidos.
  • generate_report, audit_project — reportes y auditoría.
  • create_incident, update_incident — gestión de incidencias.
  • create_meeting, get_meeting_summary, list_meetings — reuniones.
  • create_scheduled_task — tareas programadas recurrentes.
Permisos granulares
Cada tool respeta el rol del usuario que le habla al agente. Si un integrante sin permiso de PMO le pide «cierra la etapa», el agente responderá que no puede hacerlo y le indicará pedírselo al PMO.

Proveedores LLM

OnClock soporta múltiples proveedores con fallback automático. El súper-admin configura el proveedor principal en Super Admin → AI:

  • Google Gemini (por defecto: gemini-3.1-flash-lite-preview). Óptimo balance coste/calidad.
  • Anthropic Claude.
  • OpenAI GPT.
  • Groq (Llama) — muy rápido, ideal para intent classification.
  • MiniMax.
  • Ollama (local, self-hosted).

Si el proveedor principal falla (429, 503), el sistema rota automáticamente a keys secundarias del mismo proveedor y luego a proveedores alternativos. Ver patrón de rotación en el repositorio.

Proactividad 24/7

Además de responder a peticiones, el agente corre loops proactivos en Celery Beat:

  • Cada 5 minutos escanea proyectos buscando tareas/etapas próximas a vencer.
  • Cuando detecta riesgo, envía alertas por el canal preferido del responsable.
  • Genera sugerencias diarias y resúmenes semanales que llegan al PMO por correo.
  • Si detecta que una etapa terminó (todas las tareas completadas), envía el reporte al PMO para que apruebe el cierre por correo.

Límites y consumo

El consumo de tokens AI está limitado por plan. En Ajustes → Uso ves el consumo del mes y el límite de tu plan. Cuando se alcanza el límite, el agente responde con un aviso hasta el próximo ciclo o hasta que subas de plan.

Rate limit por usuario
El agente aplica un rate limit de 60 mensajes/minuto por usuario para evitar abuso. Es generoso para uso humano normal.