Este documento describe como se puede agregar acciones al Agente de IA, como por ejemplo:Documentation Index
Fetch the complete documentation index at: https://docs.plazbot.com/llms.txt
Use this file to discover all available pages before exploring further.
- Apagar un agente de IA.
- Asignar una etapa al contacto.
- Asignar una etiqueta al contacto.
- Asignar una segmentacion al contacto.
- Asignar un agente humano al contacto.
- Marcar como resuelto.
- Gestionar eventos (citas, reuniones, etc.).

| Campo | Descripcion |
|---|---|
| intent | Identificador unico de la intencion de la accion. Se usa para detectar que esta solicitando el usuario (por ejemplo, "asignar_soporte"). |
| reference | Descripcion detallada del contenido de la intencion. Se utiliza para poder darle informacion al agente y sepa la intencion del usuario, como por ejemplo: “Quiero hablar con un agente humano”. |
| tags | Son referencias para poder entender mas la informacion dentro de la accion. Complementa la reference con contexto adicional. |
| enabled | Booleano que indica si la accion esta activada (true) o no (false). |
| requiredFields | Campos que el agente debe recopilar del usuario antes de ejecutar la accion. Funciona igual que en los servicios. |
| responseMessage | Mensaje que el agente debe de responder al usuario. Soporta variables con formato {{variable}}, {variable} o @variable. |
| responseJson | Booleano que indica si el agente debe de responder con un JSON estructurado (true) o un mensaje de texto plano (false). Solo aplica en el orquestador clasico. |
| responseExact | Booleano que indica si el responseMessage debe enviarse exactamente al usuario sin reformulacion del LLM (true). Solo aplica en modo Tool Calling. Por defecto false. |
| action | Listado de acciones que se ejecutaran. Cada accion tiene un type y un value. |
Tipos de Accion
Cada accion dentro del arregloaction tiene un type que define que operacion se ejecutara:
| Tipo | Descripcion |
|---|---|
action.asign | Asigna un agente humano al contacto. El value es el email del agente. |
action.stage | Asigna una etapa al contacto. El value es el nombre de la etapa. |
action.agentShutDown | Apaga el agente de IA para el contacto. El value debe ser "true". |
action.segmentation | Asigna una segmentacion al contacto. El value es el nombre de la segmentacion. |
action.tag | Asigna una etiqueta al contacto. El value es el nombre de la etiqueta. |
action.solved | Marca la conversacion como resuelta. El value debe ser "true". |
action.event.add | Crea un nuevo evento/cita en el calendario. |
action.event.update | Actualiza un evento existente. |
action.event.delete | Elimina un evento. |
action.event.list | Lista los eventos disponibles. |
action.event.confirm | Confirma un evento pendiente. |
action.event.cancel | Cancela un evento existente. |
Las acciones de tipo
action.event.* requieren que el agente tenga configurado un calendario. Cuando se configuran acciones de eventos, el sistema inyecta automaticamente una herramienta de consulta de disponibilidad (check_availability) para que el agente pueda verificar horarios libres antes de agendar.Campos Requeridos en Acciones
Las acciones tambien soportanrequiredFields, que funcionan de la misma forma que en los servicios. Esto es util cuando la accion necesita datos del usuario antes de ejecutarse (por ejemplo, una fecha para agendar un evento).
requiredFields se pueden usar en el responseMessage con los formatos {{variable}}, {variable} o @variable.
Tipos de Respuesta
Las acciones del agente tienen configuraciones que determinan como responde despues de ejecutar las acciones:responseExact (Tool Calling)
Cuando el agente esta en modo Tool Calling (useToolCalling: true), el resultado de una accion normalmente pasa al LLM, que reformula el mensaje antes de enviarlo al usuario. Con responseExact: true, el responseMessage se envia directamente al usuario sin pasar por el LLM.
| Valor | Comportamiento |
|---|---|
true | Ejecuta las acciones + envia el responseMessage exacto al usuario (con variables sustituidas) |
false | Ejecuta las acciones + el LLM genera una respuesta basada en el resultado (comportamiento por defecto) |
responseJson (Orquestador Clasico)
Controla el formato de la respuesta cuando se consume via API/SDK. Solo aplica en el orquestador clasico (sin Tool Calling).| Valor | Formato de Respuesta |
|---|---|
false | Texto plano |
true | JSON estructurado |
En modo Tool Calling, la respuesta siempre incluye
actionsExecuted en el resultado del tool, independientemente del valor de responseJson.
