Skip to main content
Un monitor comprueba continuamente el comportamiento de los agentes. Defines qué observar y las llamadas nuevas se evalúan con esos criterios. El resultado es una tasa de llamadas afectadas que puedes seguir, filtrar y usar para activar alertas. Abre Monitores en la barra lateral. Cada monitor pertenece a la organización. En Se aplica a, elige Agentes (la opción predeterminada) o Empresas cuando la función Empresas esté habilitada.

Monitorear empresas seleccionadas

Elige Empresas, busca las que necesitas y selecciona al menos una. La selección usa la empresa atribuida a cada llamada. Incluye automáticamente las llamadas de todos los agentes para esas empresas, también las de futuros agentes. Se excluyen las llamadas sin empresa o atribuidas a una empresa no seleccionada. Cambiar las empresas asignadas a un agente no modifica la cobertura histórica. Puedes guardar un monitor para empresas que todavía no tengan agentes ni llamadas. Mostrará Todavía no hay llamadas coincidentes hasta que lleguen resultados coincidentes. Esto se aplica a todos los tipos de monitor, incluidos los de audio. Cambia la selección en la configuración del monitor. El historial, las tasas, las exportaciones y las alertas usan la selección actual; los resultados guardados se conservan. Los filtros de empresa de la barra lateral y los filtros de metadatos reducen aún más esa selección. Las llamadas históricas solo se evalúan si activas expresamente el análisis histórico. Un análisis en cola no puede añadir empresas fuera de la selección que autorizaste. Eliminar la última empresa seleccionada deja un monitor que no coincide con ninguna llamada. Deshabilitar la función Empresas no elimina ni amplía los alcances guardados. Las comparaciones de modelos de un alcance anterior se marcan como desactualizadas; ejecuta una nueva comparación para evaluar la selección actual.

Componentes de un monitor

Un monitor es un pipeline de etapas que se ejecutan en orden: Los filtros se ejecutan primero y detienen el pipeline cuando no se cumplen, antes de incurrir en el costo de etapas posteriores. Coloca filtros gratuitos antes de evaluaciones con modelos cuando puedan resolver la selección. Cada ai_analyze devuelve un booleano, número, opción de una lista, texto, lista de textos o JSON. Designa una etapa booleana, numérica, de flujo, herramienta o código como principal para calcular la tasa de afectación. Sin etapa principal, el monitor solo extrae valores y muestra volumen, no tasa. En cada paso de IA, configura Incluir prompt del agente e Incluir contexto de la llamada (CRM) por separado. Ambos empiezan desactivados en pasos nuevos; los existentes conservan sus ajustes (los antiguos sin ajustes explícitos incluyen el prompt y excluyen el CRM). Los pasos con los mismos ajustes comparten una petición; los demás usan peticiones separadas, reflejadas en el costo estimado. Las comprobaciones de flujo siempre incluyen el prompt y excluyen el CRM. Un paso no recibe resultados de IA de otros grupos de contexto. Las pruebas con llamadas reales incluyen los datos CRM disponibles solo en los pasos que los habilitan. Un monitor compuesto únicamente por filtros es gratuito: superar los filtros es la señal. También es gratuito uno compuesto solo por tool_check y code: utiliza los eventos de herramientas y tu código, sin pedir una evaluación al modelo.

Comprobaciones de herramientas

Usa una comprobación de herramientas para saber si el agente hizo algo, como ejecutar submit_order, reservar o buscar un cliente, en vez de si dijo que lo hizo. La etapa busca nombres en turnos tool sin distinguir mayúsculas ni puntuación: submit_order, submitOrder y submit-order son equivalentes.
  • La confirmación verbal no demuestra éxito. Una expresión regular opcional detecta afirmaciones en los turnos del agente. «Tu pedido está confirmado» sin un evento correcto de submit_order se marca como afirmación sin ejecución.
  • La ausencia de metadatos no es un aprobado. Llamadas antiguas o proveedores sin esos eventos reciben evidencia insuficiente, sin puntuación principal; tampoco se consideran fallos demostrados.
La evidencia incluye nombre, ID, argumentos, resultado y estado de las herramientas, junto con los turnos donde se detectó una afirmación.

Etapas de código

Una etapa de código sirve para reglas deterministas que prefieres escribir. El fragmento TypeScript, sin imports, se ejecuta una vez por llamada y devuelve un valor. Es gratuito y funciona igual en pruebas, llamadas nuevas y análisis histórico. Recibe un argumento input:
Devuelve un booleano, número u opción de una lista según el tipo declarado. Un booleano o número puede ser la etapa principal y determinar la tasa o puntuación media:
  • exit(value) detiene el pipeline. return guarda el valor y continúa; exit(value) lo guarda y omite todas las etapas posteriores, incluido su costo de IA. Úsalo cuando una comprobación barata ya determine la respuesta.
  • Los resultados locales anteriores al primer paso de IA llegan a cada grupo. Una etapa de código que devuelve un valor antes del primer paso de IA lo aporta como señal de referencia. Los resultados de código posteriores y los de IA de otros grupos no se añaden a esas señales compartidas.
El código se ejecuta aislado, con límites de memoria y tiempo, sin acceso a la red, archivos ni datos fuera de input. Se detienen bucles infinitos y uso excesivo de memoria. Los imports se rechazan y la sintaxis se comprueba al guardar.

Crear un monitor

En Monitores → Nuevo monitor, busca o explora las plantillas. Todas las organizaciones reciben el mismo catálogo. Cada plantilla muestra sus salidas antes de elegirla; al seleccionarla puedes editar sus instrucciones. Elige Crear monitor personalizado para comenzar con una descripción en lenguaje natural. Indica qué observar y en qué agentes. El espacio de creación muestra un asistente a la izquierda y el monitor a la derecha. El asistente puede buscar llamadas reales, probar filtros y proponer un pipeline completo. Sus propuestas se aplican al editor; también puedes editarlo manualmente y el asistente continuará desde el contenido actual.

Evaluaciones de audio

Las plantillas de Evaluaciones de audio puntúan la grabación, no la transcripción: calidad del audio del usuario, latencia de respuesta y precisión de pronunciación o idioma. Elige una, ajusta el umbral y los agentes y créala como cualquier monitor.

Pruébalo antes de guardar

Probar ejecuta los criterios en hasta 10 llamadas antes de crear el monitor. Selecciona Ejecutar prueba para ver veredicto, valores por etapa y razonamiento. Revisa falsos positivos con el asistente y vuelve a ejecutar; el asistente puede consultar los últimos resultados.
  • El selector solo ofrece llamadas con transcripción.
  • Las pruebas usan modelos integrados. Si usas tu propia clave de OpenRouter, Vercel AI Gateway o TypeSafe, guarda primero para usarla en las llamadas posteriores.
  • Probar y simular requiere ser propietario o administrador, por el gasto puntual de evaluar hasta diez llamadas por clic, con una petición por cada grupo de contexto alcanzado en cada llamada. Todos los miembros pueden crear monitores; los miembros sin esos permisos ven una explicación en el paso Probar.

Simular una llamada

Simular una llamada genera una transcripción sintética a partir de una situación breve y del prompt vigente del agente, por ejemplo un usuario frustrado porque no encuentra su reserva. Se añade a las pruebas junto a las llamadas reales. Sirve para casos raros o comportamientos que aún no ocurrieron. Las simulaciones de prueba no se guardan como conversaciones ni aparecen en el historial. Para escenarios reutilizables, aserciones y comparación entre prompts, consulta Simulaciones.

Evaluar llamadas recientes

Por defecto, el monitor empieza vacío y solo evalúa llamadas posteriores a su creación. Evaluar también llamadas recientes permite analizar hasta 10 días anteriores. El control muestra el número de llamadas y el costo aproximado al ajustar el periodo. Está desactivado hasta que lo habilites y solo lo ven propietarios y administradores. El análisis se ejecuta en segundo plano después de guardar, de las llamadas más nuevas a las más antiguas, con un máximo de 5.000 llamadas. Si el periodo supera el límite, el control lo avisa y calcula el costo sobre el número limitado.

Define tu orden de lectura

Arrastra un monitor por su control en las vistas Gráfico o Lista para establecer tu orden. Se aplica en todos tus listados, incluido el panel Monitores de una conversación. Con el teclado, enfoca el control con Tab, pulsa espacio para tomarlo, usa las flechas y pulsa espacio para soltarlo. Escape cancela.
  • El orden es personal. No cambia el de tus compañeros.
  • Los monitores nuevos se añaden al final. Restablecer orden recupera el orden predeterminado.
  • Con filtros solo se mueven los visibles. Los monitores ocultos mantienen sus posiciones.

Interpretar un monitor

Usa 1d, 7d, 15d o 30d para un periodo móvil hasta hoy, o Personalizado para un día UTC o fechas exactas; no se permiten fechas futuras. El periodo filtra valores principales, Gráfico, Lista y Comparar y se guarda en la URL. Las tarjetas y filas muestran el estado Activo/Pausado y la cobertura evaluada de la versión actual. Las tendencias históricas usan todas las versiones y el denominador indicado de llamadas con transcripción. Abre Monitores → Reportes para consultar reportes guardados y descargar PDF. Propietarios y administradores pueden seleccionar monitores y Crear reporte, o usar Agregar al reporte desde un monitor. Los borradores conservan empresa, metadatos y fechas; los filtros de agente/grupo no se guardan y se avisa antes de guardar. Cada reporte admite hasta 20 monitores y 31 días calendario. Abre uno, elige la semana anterior, la actual o fechas explícitas y usa Descargar PDF en el encabezado. CSV/JSON, detalles de evaluación e historial se despliegan al abrirlos. El envío semanal se habilita de forma explícita.

Filtrar por metadatos de la llamada

La barra Metadatos filtra las llamadas utilizadas para calcular las cifras, no los monitores que aparecen. Añade una clave como campaign o model.provider, un operador y un valor. Se sugieren claves recientes. Los operadores son igual, distinto, contiene, no contiene, mayor/menor que y sus formas inclusivas, está definido, no está definido, verdadero y falso. Hasta ocho filas se combinan con AND, igual que en Conversaciones. El filtro afecta tasas, recuentos y gráficos de la lista, columnas de Comparar, tendencias y gráficos por etapa del Resumen, el embudo y las filas de Resultados. Se guarda como ?meta=key:op:value, se conserva al cambiar de vista, periodo o pestaña y pasa de la lista al detalle y a Comparar. En Comparar, la barra aparece al elegir dos o más columnas. Al abrir un monitor desde el resumen o un reporte, la vista de lectura conserva fechas y filtros y muestra cobertura y llamadas de la versión actual. Desde un reporte también conserva su zona horaria. El enlace de regreso vuelve al mismo periodo; Abrir configuración del monitor sale de ese alcance y abre el detalle:
  • Resumen: tasa de afectación y gráficos de etapas compatibles.
  • Resultados: llamadas evaluadas con veredictos y valores por etapa.
  • Benchmark: compara los niveles Rápido, Equilibrado y Avanzado con una muestra automática de llamadas ya evaluadas.
  • Configuración: pipeline, agentes y modelo. Editar aumenta la versión; los resultados históricos conservan la versión original y no se recalculan.
  • Alertas: umbrales y destinatarios.
Propietarios y administradores pueden comparar hasta 1.000 llamadas con transcripción evaluadas por la versión actual. Zelto equilibra casos afectados y no afectados cuando el volumen lo permite y ejecuta lotes en segundo plano. Cada nivel muestra precisión, contención, precio observado y proyección por 1.000 llamadas. La recomendación ordena por precisión, contención y costo. El veredicto guardado es una etiqueta provisional. Al terminar, Benchmark muestra solo desacuerdos entre ese veredicto y los modelos. Abre la transcripción y marca el resultado correcto: la precisión se actualiza con esa corrección humana. Las llamadas descartadas por filtros deterministas se excluyen de la contención porque no llegaron a la IA. El benchmark no modifica el monitor ni sus resultados de producción. Los gráficos por etapa cubren 30 días. Booleanos y categorías muestran su distribución; números, su media diaria; herramientas, la mezcla de resultados; y flujos, su embudo y abandonos. Texto, listas y JSON permanecen en los resultados individuales para conservar su significado. N/A indica que el monitor asignado no evaluó esa llamada, normalmente porque es anterior al monitor y no se analizó históricamente, o porque un filtro la descartó. En Resultados, selecciona Inspeccionar evaluación para abrir el gráfico que sigue la transcripción por cada etapa hasta el resultado. Selecciona un nodo para ver evidencia: texto, coincidencia y turno en filtros regex; instrucciones, entrada original, salida guardada, razonamiento y modelo en IA. Si el monitor se editó después, se avisa de que el gráfico usa el pipeline actual mientras que el veredicto mostrado es el resultado histórico guardado.

Alertas

En Alertas, define si el valor debe estar por encima o por debajo de un porcentaje, el periodo móvil y, opcionalmente, cuántos días consecutivos debe mantenerse la infracción. Las notificaciones se envían a Slack, a una lista de correos o a ambos. Se evalúan diariamente: espera la primera notificación dentro de un día desde el inicio del incumplimiento, más los días consecutivos que hayas exigido.

De un hallazgo a un monitor

Un hallazgo reúne evidencia de un problema; un monitor lo comprueba continuamente. En las acciones del hallazgo, Promover a monitor crea uno con sus llamadas existentes para comenzar la tendencia con ese historial.

Mediante MCP y el agente

MCP expone create_monitor con criterios o un starterKey de list_starter_monitors, create_pipeline_monitor, list_monitors, get_monitor_results, update_monitor, set_monitor_enabled, delete_monitor, promote_finding_to_monitor y save_monitor_alert. update_monitor cambia nombre, pausa o etiquetas, sustituye los agentes (agentIds; [] significa todos los agentes de la organización, incluidos monitores de audio) o sustituye la selección de empresas (companyIds, al menos una). agentIds y companyIds son mutuamente excluyentes; omitir ambos conserva el alcance guardado. Las herramientas de creación también aceptan companyIds, y list_monitors devuelve el alcance y las empresas seleccionadas. Editar el alcance por empresas actualiza el historial visible sin eliminar resultados guardados ni evaluar automáticamente llamadas antiguas. La herramienta también modifica sampleRate entre 1 y 100. Para cambiar los criterios, edita el monitor en la aplicación o elimínalo y crea otro. Para cambiar el contexto de un paso de IA existente, consulta su ID con get_monitor y pasa stageContext: [{ stageId: "step-id", useAgentPrompt: false, useCallContext: true }] a update_monitor. Las opciones omitidas se conservan; todos los cambios enviados se aplican de forma atómica. Cambiar el contexto aumenta la versión para evaluaciones futuras, sin modificar resultados históricos.

Relacionado

Modelos TypeSafe con tu propia clave

Selecciona TypeSafe (BYOK) en la configuración del modelo del monitor, elige jev-latest (o introduce un ID de modelo de TypeSafe) y proporciona tu clave API de TypeSafe. Zelto cifra la clave por monitor. Dejar el campo vacío al editar conserva la clave guardada solo si el proveedor no cambia. Al cambiar de proveedor debes introducir una nueva clave. TypeSafe admite estos resultados de verificaciones con IA:
  • Sí / no: una probabilidad Noul de al menos el 50 % se convierte en true.
  • Categoría: Choice devuelve una de tus opciones de categoría únicas.
  • Número: introduce entre 2 y 10 niveles descriptivos, uno por línea, de menor a mayor. La puntuación fraccionaria se distribuye uniformemente entre el mínimo y el máximo (por defecto, 0–100). Una puntuación de 1,5 en tres niveles equivale a 7,5 en un rango de 0–10. Usa estas puntuaciones para evaluaciones, no para extraer números.
TypeSafe devuelve decisiones sin explicaciones escritas. No admite verificaciones de flujo ni verificaciones con IA que devuelvan texto, listas o JSON. Cambia esas verificaciones o elige otro proveedor antes de guardar. Los filtros locales y las verificaciones de código y herramientas siguen funcionando. Los resultados anteriores, los campos de referencia seleccionados y el contexto de llamada habilitado siguen disponibles para la IA. Las verificaciones con IA con los mismos ajustes de contexto comparten una solicitud a la API nativa System One de TypeSafe. Los resultados conservan la versión real del modelo y el uso de tokens informado. La estimación de costo BYOK es aproximada, no una cotización de TypeSafe. Las pruebas de borradores y las comparaciones de modelos usan los modelos integrados; guarda el monitor para usar tu clave de TypeSafe en las llamadas entrantes. Las solicitudes tienen un tiempo límite de 30 segundos y un reintento por errores de red, límites de solicitudes o errores del servidor cuando el intervalo de reintento es corto. Como con otros proveedores BYOK, un monitor que falla se omite para esa llamada sin bloquear los demás monitores. Las respuestas inválidas o incompletas se rechazan en lugar de convertirse en un resultado negativo. Consulta la documentación de la API de TypeSafe para conocer los modelos y las primitivas.