> ## Documentation Index
> Fetch the complete documentation index at: https://docs.zelto.ai/llms.txt
> Use this file to discover all available pages before exploring further.

# Agentes

> Cómo representa Zelto los bots de voz y chat que impulsan tus conversaciones.

Un **agente** en Zelto es el bot (o humano) al otro lado de una
[conversación](/es/docs/conversations). Cada agente pertenece a una organización
y puede trabajar para una o varias [empresas](/es/docs/companies) dentro de
ella. El agente está vinculado al proveedor del que proceden sus llamadas —Vapi,
Retell o LiveKit— o a ninguno cuando [cargas llamadas](/es/docs/integrations/api-call-upload)
directamente.

## Anatomía de un agente

| Campo | Qué contiene |
| - | - |
| Nombre | Nombre visible, editable en Zelto e independiente del proveedor. |
| Descripción | Nota opcional de texto libre. |
| Prompt del sistema | El prompt del agente, mostrado junto a las transcripciones cuando lo revisas y auditas. |
| Proveedor | La plataforma de origen de las llamadas (`vapi`, `retell`, `livekit`) o vacío para cargas directas. |
| ID externo | El identificador del proveedor para el agente, que Zelto usa para asociar llamadas entrantes con un agente existente. |
| Tipo | `ai` para un bot, `human` para una persona en la llamada. |
| Empresas | Los clientes o marcas para los que trabaja el agente. Una puede ser la predeterminada cuando una llamada no lleva un identificador de empresa. |

La pertenencia de un agente a una empresa y la atribución de una llamada son
distintas. La pertenencia indica para qué empresas puede trabajar el agente;
cada llamada sigue perteneciendo como máximo a una. Consulta
[Empresas](/es/docs/companies#cómo-obtiene-una-llamada-su-empresa).

Los agentes se crean la primera vez que una llamada los menciona: la ingestión
busca el identificador externo del proveedor y reutiliza el agente coincidente,
o crea uno si es nuevo. Si un proveedor cambia los identificadores externos en
cada llamada, Zelto puede agruparlos en un solo agente mediante un patrón de la
organización para evitar duplicados.

## Versiones de agentes y experimentos

Mantén una identidad de agente entre despliegues e indica qué versión atendió
cada llamada. Una versión puede cambiar el prompt o pipeline; los experimentos
comparan dos versiones del mismo agente. En LiveKit e integraciones propias,
envía `version` en el nivel superior de cada carga.

Lee [Versiones de agentes](/es/docs/agent-versions) antes de integrar: explica
los identificadores, capturas, alternativa automática y verificación previa.
Los candidatos en borrador de Zelto son distintos de las versiones desplegadas.

## Actividad del agente

Abre un agente para ver un gráfico de tendencia del volumen de llamadas, un mapa
de calor por hora y día y sus [conversaciones](/es/docs/conversations) más
recientes, junto con el prompt del sistema y los [hallazgos](/es/docs/findings)
detectados en sus llamadas.

Cuando un agente tiene un árbol de decisiones y llamadas asignadas, la pestaña
Árbol de decisiones también muestra cómo avanzaron las llamadas entre sus
pasos. Solo incluye los pasos que las llamadas recorrieron.

Cada agente también puede publicar un [mensaje de estado diario en
Slack](/es/docs/integrations/slack#mensaje-de-estado-diario), con el número de
conversaciones del día anterior a la hora que elijas, una vez conectado Slack.

## Cómo llegan las llamadas a un agente

Cada carga que recibe Zelto llega primero a la tabla **webhooks**, de solo
adición, y después se convierte en una [conversación](/es/docs/conversations)
con una [transcripción](/es/docs/conversations) turno por turno. Cada proveedor
entrega las llamadas así:

| Proveedor | Cómo llegan las llamadas |
| - | - |
| [Vapi](/es/docs/integrations/vapi) | Sincronización periódica por API y un webhook opcional `end-of-call-report`. |
| [Retell](/es/docs/integrations/retell) | Sincronización periódica por API y webhooks opcionales `call_ended` y `call_analyzed`. |
| [ElevenLabs](/es/docs/integrations/elevenlabs) | Sincronización periódica por API y un webhook firmado opcional después de la llamada. |
| [LiveKit](/es/docs/integrations/livekit) | Tu worker envía cada sesión terminada a `/webhooks/calls`. |
| [Personalizados y otros](/es/docs/integrations/api-call-upload) | Envía la carga canónica de la llamada a `/webhooks/calls`. |

Guardar primero la carga original permite repetir la ingestión, por lo que una
entrega no se pierde aunque haya que procesarla de nuevo.

## Estado de la conexión

La página de cada agente incluye una tarjeta **Conexiones**, que indica de un
vistazo si las llamadas llegan a Zelto. Muestra el proveedor de ingestión y el
estado de la última llamada recibida:

* **«Última llamada recibida hace 2 horas»**: las llamadas están fluyendo.
* **«No hay llamadas recientes»** o **«la integración puede estar inactiva»**:
  está conectado, pero no ha llegado nada recientemente.
* **«El último webhook produjo un error»**: la entrega llegó a Zelto, pero no
  pudo convertirse en una [conversación](/es/docs/conversations).
* **«Todavía no se han recibido llamadas»**: el agente tiene un proveedor, pero
  nunca recibió una llamada.

Si una llamada no aparece, comienza aquí. Consulta la señal de cada proveedor en
[Conectar un proveedor de voz](/es/docs/guides/connect-a-voice-provider#diagnosticar-una-llamada-ausente).

## Prueba un cambio de prompt antes de publicarlo

Cuando Simulaciones está habilitado para tu organización, puedes redactar un
**prompt candidato** en un agente y reproducirlo con interlocutores sintéticos
para comprobar si el cambio es seguro, sin realizar una llamada real. Ejecuta
los mismos escenarios con el prompt activo y el candidato y compara sus tasas
de éxito. Consulta [Simulaciones](/es/docs/simulations).

Los propietarios y administradores pueden crear un candidato desde la pestaña
**Versiones** o **Prompt**. En Prompt, escribe un nombre de versión y selecciona
**Crear versión** para guardar como borrador el prompt que está en el editor.
Esto no cambia el agente activo, incluso si acabas de obtener el prompt desde
Retell.

## Almacenamiento de grabaciones

La mayoría de los proveedores entregan una URL permanente de la grabación que
Zelto guarda tal cual. Algunos usan una URL prefirmada de corta duración. En
esos casos, un trabajo en segundo plano descarga el audio y lo vuelve a alojar
en Zelto para que el reproductor de la página de
[conversación](/es/docs/conversations) siga funcionando después de que caduque
la URL original.
