Agentes en tiempo de ejecución
Los agentes son ayudantes conversacionales acotados que viven dentro del bot. Cada uno se activa de forma conservadora, valida todo lo que devuelve el modelo y pide confirmación antes de escribir nada.
Habilitar agentes
Los cuatro agentes de mensaje directo están desactivados por defecto y se habilitan por nombre. Se prueban en orden de prioridad en cada mensaje directo entrante: primero el de horario en lenguaje natural, luego el de preguntas y respuestas, luego el enrutador de bloqueos y por último el de onboarding. El primer agente que gestiona un mensaje detiene la cadena.
RUNTIME_AGENTS_ENABLED=nl_schedule,onboarding,qa,blocker_router
Permisos en lenguaje natural
Un mensaje corto que mencione estar libre, fuera, enfermo, de permiso o trabajando desde casa se envía al modelo con la fecha de hoy, y el modelo devuelve una solicitud estructurada con una confianza. Por debajo de 0.6 de confianza no ocurre nada. El bot pide después confirmación antes de registrarla.
- La validación en el servidor rechaza cualquier cosa que el modelo devuelva fuera de la política: tipos desconocidos, fechas mal formadas, periodos de más de 60 días o un inicio de más de 7 días en el pasado. La salida no válida se descarta en silencio en lugar de repetirse.
- La confirmación espera diez minutos; una respuesta distinta vuelve a ejecutar la extracción sobre el nuevo texto.
- La solicitud registrada entra en el flujo de aprobación normal, así que todas las salvaguardas de Permisos y ausencias siguen aplicándose.
I'm off Friday Got it — I’ll file PTO for 2026-06-19. Reply YES to confirm, or describe the dates again to fix. yes Filed. Admin will be notified.
Preguntas y respuestas de autoservicio
Las preguntas sobre el propio registro se dirigen a una de ocho plantillas de consulta. El modelo elige la plantilla y los parámetros; el producto ejecuta la consulta con el ID de usuario de quien pregunta y con parámetros vinculados, de modo que el texto del usuario nunca llega a la base de datos.
| hours_this_week | horas totales de lunes a hoy |
|---|---|
| hours_last_week | horas totales de la semana pasada |
| hours_for_day | horas en una fecha |
| signin_for_day | a qué hora se inició la jornada en una fecha |
| signoff_for_day | a qué hora se cerró la jornada en una fecha |
| attendance_this_month | días trabajados y días con retraso este mes |
| pto_remaining | permisos usados este año por tipo |
| recent_blockers | los últimos cinco bloqueos |
Enrutador de bloqueos
Cuando un check-in registra un bloqueo, el enrutador extrae sus palabras clave, recorre los últimos 14 días de secciones Today de los compañeros en busca de quien más mencionó esas palabras, y envía a esa persona un aviso citando el bloqueo y el motivo de la coincidencia. A quien pregunta se le indica a quién se avisó. Como máximo tres derivaciones por persona y hora, y el texto citado se escapa para que no pueda mencionar a toda la sala.
Heads-up from Lina — they’re blocked on something you recently worked on: > invoice export fails on large accounts (matched on “export, invoice” in their standup on 2026-09-08)
Onboarding
La primera vez que el bot ve a una persona nueva le envía un breve tutorial con el formato de check-in y hace dos preguntas: qué días trabaja (días laborables, días concretos, los siete, u omitir) y su zona horaria. Las respuestas escriben el horario de la persona, de modo que la ausencia y la tardanza se juzgan frente a sus propios días desde el primer día.
Otros agentes dentro del bot
- Triaje de tickets: cuando se abre un ticket de soporte, el perfil de soporte recibe contexto de solo lectura (asistencia reciente, faltas, eventos de auditoría recientes) y debe devolver una de dos acciones: resolver con una respuesta breve, o hacer exactamente una pregunta aclaratoria.
- Enrutador de intención: en una sala compartida con varios perfiles, una única llamada elige el bot que mejor encaja con un mensaje y devuelve null por debajo de 0.45 de confianza, de modo que nadie responde a la charla trivial. Las decisiones idénticas se memoizan durante seis horas.
- Juez de motivos de tardanza e intención de respuesta a bloqueos: los veredictos críticos para la exactitud se ejecutan en el modelo más potente del proveedor (AI_REASONING_MODEL) aunque el modelo cotidiano sea pequeño.
- Todas las llamadas de agentes son no esenciales y degradan a rutas por palabras clave una vez agotado el presupuesto diario de IA.