Skip to main content
Las tools nativas son herramientas predefinidas e integradas en la plataforma que permiten al modelo de IA realizar acciones específicas durante una conversación. Estas herramientas extienden las capacidades del agente de IA más allá de la generación de texto, permitiéndole interactuar con el sistema, consultar información, manipular datos y ejecutar acciones concretas. Las tools nativas se encuentran y configuran en el nodo AI Agent. Para acceder a ellas:
  1. Selecciona el nodo AI Agent en tu flujo
  2. Abre la sección TOOLS en la configuración del nodo
  3. Haz clic en el botón ”+ Agregar tools”
  4. En el campo “Selecciona un Tool”, verás la lista de todas las tools disponibles, incluyendo las nativas (marcadas con el texto “(Nativa)”)
Configuración de tools nativas en el nodo AI Agent
A continuación se describen todas las herramientas nativas disponibles en el nodo AI Agent:

Búsqueda de productos

Busca productos en el catálogo disponible para recomendar al usuario. Utiliza un motor de búsqueda para encontrar coincidencias basadas en el nombre del producto o términos relacionados. Parámetros: Ejemplo de Prompt:
“Si el usuario pregunta por la disponibilidad de algún artículo o modelo específico, DEBES usar la herramienta search_products para consultar el catálogo antes de responder.”
Ejemplo de Argumentos:
Respuesta: Retorna un listado de productos encontrados o un mensaje indicando que no se encontraron resultados. En caso de error, devuelve un mensaje de sistema descriptivo. Notas:
  • Requiere que el canal tenga un catálogo de productos configurado y accesible.

Transferir a asesor

Transfiere la conversación actual del usuario a un agente humano o a una cola de atención. Permite especificar estrategias de enrutamiento y prioridades. Parámetros: Ejemplo de Prompt:
“Cuando el usuario exprese frustración o solicite hablar explícitamente con una persona real, ejecuta la función transfer_to_agent inmediatamente.”
Ejemplo de Argumentos: Caso: Transferencia directa automática (más común)
Caso: Transferencia directa a un equipo
Caso: Crear ticket en cola general
Respuesta: Retorna un objeto JSON con el resultado de la operación indicando si la transferencia se inició correctamente. Notas:
  • Puede finalizar el flujo de IA inmediatamente.
  • Cuando se usa assignment_type: "queue" con assignment_by: "general", se crea un ticket en la cola general de atención.
  • Importante: No se deben inventar IDs de equipos u operadores; se deben usar los configurados explícitamente.

Mensajes interactivos

Mensajes interactivos agrupa en un solo lugar los mensajes con botones que el agente puede enviar: Botones y lista, Webview y Call to Action. Cada mensaje tiene su propio toggle, así que activas solo los que el agente necesita. El agente decide cuándo enviar cada uno a partir del criterio que le das. La fila Mensajes interactivos aparece en la pestaña Tools del nodo AI Agent y muestra cuántos mensajes tienes activos (por ejemplo, 2/3). Haz clic en ella para abrir el panel de configuración.

Configuración general: Botones y lista

Botones y lista activa la tool nativa Botones y lista. Con ella, el agente elige el formato (botones o lista) y el contenido del mensaje en cada conversación. Se configura una sola vez para el agente. Al activarla, puedes ajustar su Descripción: es el texto que el modelo lee para decidir cuándo usarla.

Mensajes personalizados: Webview y Call to Action

Los mensajes personalizados te permiten definir de antemano qué envía el agente y en qué situación.
1

Activa el mensaje

Enciende el toggle de Webview o Call to Action y haz clic en la flecha de la fila para abrir su configuración.
2

Ponle un nombre

Escribe un Nombre que identifique el mensaje, por ejemplo Agendar cita o Formulario de registro. No puede ser igual ni muy parecido al nombre del otro mensaje personalizado.
3

Define cuándo debe usarlo el agente

En Cuándo debe usarlo el agente, describe la intención del cliente que dispara el mensaje. Tienes hasta 1000 caracteres.
4

Completa los campos del mensaje

Para cada campo, elige cómo se obtiene su valor y completa los campos obligatorios. Los campos de cada tipo se describen más abajo.
Cada campo del mensaje tiene tres modos:
Si activas un mensaje pero le falta información, la fila muestra Activo pendiente y el agente no puede enviarlo todavía. Pasa el cursor sobre la marca para ver qué falta: el Nombre, Cuándo debe usarlo el agente o un campo obligatorio vacío en modo Estático o Variable. Los campos en modo IA nunca quedan pendientes, porque el agente los completa al enviar el mensaje.

Campos de Webview

Campos de Call to Action

Canales compatibles

Los mensajes personalizados están disponibles en estos canales: Si el canal de la conversación no admite un mensaje personalizado, el agente no lo recibe como opción.
En Facebook Messenger e Instagram, el Webview llega como un mensaje con botón de Meta: se muestran el texto y el botón, sin título ni pie. En Instagram, ese botón solo se ve en la app móvil; la versión web de Instagram no lo muestra.
Escribe el criterio de Cuándo debe usarlo el agente como la intención del cliente, no como una instrucción técnica. Por ejemplo: “El cliente quiere agendar una cita o pregunta por horarios disponibles”.
Mientras tengas mensajes personalizados activos, la tool nativa Enviar Call to Action deja de ofrecerse al agente. Configura el Webview y el Call to Action desde Mensajes interactivos.

Botones y lista

Sin el catálogo de Mensajes interactivos, esta tool aparece en el panel como Enviar mensajes interactivos. Envía un mensaje estructurado o interactivo al usuario. El formato exacto depende del canal (WhatsApp, Web, etc.), pero generalmente incluye botones o listas de opciones. Parámetros: Estructura de options (Array de objetos):
  • title (string, obligatorio): Texto de la opción/botón. Máximo 20 caracteres. No se permiten títulos duplicados.
  • description (string, opcional): Descripción adicional de la opción. Máximo 72 caracteres.
Ejemplo de Prompt:
“Si el usuario pregunta qué servicios ofrecemos DEBES usar send_interactive_message para mostrar un menú con las opciones disponibles.”
Ejemplo de Argumentos (Botones - 3 o menos opciones):
Ejemplo de Argumentos (Lista WhatsApp - 4+ opciones):
En WhatsApp, cuando envías 4 o más opciones, el mensaje se muestra como una lista desplegable. El valor de caption se usa como texto del botón que abre la lista (en el ejemplo anterior, “Ver opciones”).
Respuesta: Retorna "Message sent successfully." si el envío fue exitoso o un mensaje de error en caso contrario. Notas:
  • Envía un mensaje real al usuario.
  • El tipo de mensaje se adapta automáticamente según el canal y la cantidad de opciones.

Enviar Call to Action (CTA) (Legacy)

Reemplazada por Mensajes interactivos. Envía un botón de llamada a la acción que abre una URL externa. Puede configurarse como WebView para formularios o pagos que requieren esperar una respuesta del usuario. Parámetros: Ejemplo de Prompt:
“Cuando el usuario confirme que desea realizar el pago, usa send_call_to_action con is_webview=true para enviar el enlace de pago y esperar la confirmación.”
Ejemplo de Argumentos (CTA simple):
Ejemplo de Argumentos (WebView con espera de respuesta):
Respuesta:
  • CTA normal: "Call-to-action message sent successfully."
  • WebView: "WebView message sent. Waiting for user action."
Notas:
  • Disponible solo para los proveedores de WhatsApp que soportan este tipo de mensajes.
  • Cuando is_webview=true, el flujo se pausa hasta que el WebView devuelve un callback o expira el tiempo.
  • El valor de input se convierte a parámetros de URL query string.
  • La respuesta del callback se guarda en la variable especificada en response_variable.

Fecha y hora actual

Obtiene la fecha y hora actual. Permite especificar una zona horaria para obtener la hora local correcta. Parámetros: Ejemplo de Prompt:
“Antes de procesar cualquier solicitud que dependa de la hora (como ‘buenos días’ o citas para ‘hoy’), llama a get_current_date_time para saber la hora exacta.”
Ejemplo de Argumentos:
Respuesta: Retorna un string con la fecha y hora formateada, por ejemplo: "Monday, December 08, 2025 10:30 AM". Notas:
  • No tiene efectos secundarios visibles para el usuario.
  • Es puramente informativa para el modelo.

Día de la semana

Calcula y retorna el día de la semana correspondiente a una fecha específica proporcionada. Parámetros: Ejemplo de Prompt:
“Si el usuario quiere agendar para una fecha específica, verifica primero qué día de la semana es usando get_weekday_of_a_date para asegurar que sea un día hábil.”
Ejemplo de Argumentos:
Respuesta: Retorna el nombre del día de la semana, por ejemplo: "Wednesday". Notas:
  • Útil para validar citas o agendas.

Gestión de memoria

Las siguientes tools se activan desde la sección Gestión de memoria de la pestaña Contexto del nodo AI Agent. Dan al agente memoria de trabajo, acceso al CRM de la bandeja de entrada, variables del contexto del flujo e información de plataforma. Consulta la sección Gestión de memoria del nodo AI Agent para ver cómo activarlas y configurar sus permisos.

Memoria interna

Permite al agente guardar, recordar y eliminar información de la conversación para reutilizarla más adelante. Es memoria de trabajo por usuario, con vigencia limitada: recuerda datos del mismo usuario entre conversaciones, pero no es un almacén permanente. Operaciones: Notas:
  • Incluye un campo opcional Espacio de memoria para aislar o agrupar los guardados, evitando que distintos contextos se mezclen.
  • Cada operación admite configurar sus parámetros en modo IA, variable o estático, y un comportamiento post-ejecución (Continuar, Terminar o Pausar).

CRM de bandeja de entrada

Lee, define y actualiza datos del contacto del CRM (nombre, teléfono, etiquetas, notas y más) directamente desde la bandeja de entrada. Operaciones: Notas:
  • Los permisos se administran por grupo (datos del contacto / etiquetas) con lectura y escritura separadas. Puedes restringir a qué etiquetas puede acceder el agente.
  • Requiere al menos un canal conectado para que existan contactos sobre los cuales operar.

$context

Lee y escribe variables del contexto del flujo para compartir datos entre nodos. Operaciones: Notas:
  • En la lista de tools aparece como $context para distinguirla de la pestaña Contexto.
  • Las variables escritas quedan disponibles para nodos posteriores del flujo, por ejemplo {{$context.mi_variable}}.

Información de plataforma

Bloques de contexto de solo lectura que inyectan datos de plataforma en el prompt del agente. No consumen una llamada de tool: la información se agrega automáticamente como contexto cuando la fuente está activa. Notas:
  • Las tres fuentes son de solo lectura; el agente no puede modificarlas.
  • Se inyectan como bloques de contexto, por lo que no cuentan como una invocación de herramienta.

Bases de datos

Conexión nativa a Bases de datos (Datum v2) desde la pestaña Tools del nodo AI Agent. Permite que el agente busque, cree, actualice y elimine registros en tus colecciones sin encadenar nodos auxiliares. Operaciones: buscar, crear, actualizar y eliminar registros sobre las colecciones que habilites. Notas:
  • El agente solo puede operar sobre las colecciones de la misma compañía que habilites explícitamente en el popover Configurar.
  • Las operaciones de escritura persisten de inmediato.
  • El comportamiento post-ejecución (Continuar, Terminar o Pausar) se configura por operación.

AI Routing

Envía la solicitud del usuario al workflow que puede atenderla, cuando pide algo que este agente no puede hacer. Usa el AI Routing del proyecto para elegir el destino, por lo que el proyecto debe tener AI Routing habilitado. Parámetros: Ejemplo de Prompt: A diferencia de otras tools, ai_router no necesita que le indiques cuándo usarla: al activarla se agregan automáticamente las reglas de derivación a las instrucciones del agente. Lo único que tienes que definir es el alcance del agente, porque todo lo que quede fuera de ahí es lo que se deriva.
“Atiendes únicamente consultas de facturación: estados de cuenta, fechas de pago y detalle de cargos.”
Ejemplo de Argumentos: Caso: el usuario pregunta algo fuera del alcance del agente (más común)
Caso: el usuario nombra explícitamente el destino
Caso: consultar los destinos disponibles antes de decidir
Respuesta: Retorna un objeto JSON con el destino elegido, si la derivación se ejecutó y una guía para el modelo sobre qué hacer a continuación. En search y en direct sin coincidencia, retorna los destinos disponibles y no deriva nada. Notas:
  • Una derivación exitosa termina el turno del agente: la respuesta al usuario llega desde el workflow de destino. El agente no debe responder también.
  • Si no hay coincidencia o la derivación falla, el agente sigue a cargo de la conversación y debe continuar atendiendo al usuario.
  • Requiere que el proyecto tenga AI Routing habilitado y workflows con nombre y descripción configurados. El comportamiento posterior a la ejecución es fijo: la derivación siempre termina el turno del agente.
  • El agente solo puede derivar a workflows del mismo proyecto.
Las reglas de derivación se agregan solas al activar la tool: el agente ya sabe que debe resolver por su cuenta lo que sus instrucciones cubren, que no debe derivar porque otra tool falló o porque no está seguro, y que no debe responder además de derivar. No necesitas escribir nada de esto en el prompt.

Documentos de conocimiento: búsqueda por archivo

Cuando cargas archivos en la pestaña Contexto del nodo AI Agent, el agente recibe automáticamente la función search para consultarlos. Con la búsqueda por archivo activada, esa misma función busca mejor. No aparecen funciones ni parámetros nuevos:
  • Detecta cuándo la pregunta se refiere a un documento y busca solo en ese documento.
  • Busca en todos los documentos del agente, no solo en los del primer proyecto.
  • Responde anclada a los documentos: si no encuentra nada relevante, lo dice.
La búsqueda por archivo se activa por agente, en la configuración del nodo AI Agent (knowledgeSettings.fileSearch). Viene desactivada: sin esa configuración, el agente funciona exactamente como antes. Para activarla, abre la pestaña Contexto del nodo AI Agent y activa Buscar por nombre de documento. El interruptor aparece cuando el nodo tiene archivos de conocimiento.

Cómo detecta el documento

El agente compara la pregunta con los nombres de los documentos cargados en el nodo:
  • Se ignoran mayúsculas, tildes, guiones y la extensión, y se toleran errores de escritura pequeños: “tarifario 2026”, “TARIFARIO” y “Tarifario_2026.pdf” encuentran el mismo archivo.
  • Un documento se detecta cuando la pregunta incluye su nombre completo (“¿cuánto cuesta el plan básico del tarifario 2026?”) o lo menciona después de una palabra como “en”, “según”, “busca”, “revisa”, “consulta”, “dice”, “documento” o “archivo” (“según las políticas de envío…”).
  • Palabras genéricas como “manual”, “guía”, “política” o “documento” no bastan por sí solas para elegir un archivo.
Ejemplos de frases del usuario: Si ningún documento coincide, se busca en todos, como siempre. Si el documento mencionado no tiene nada relevante, la búsqueda se repite en todos los documentos antes de responder. Solo se consideran los documentos cargados en ese nodo AI Agent. Nunca se consultan archivos de otros agentes ni de otras empresas. Si un archivo se renombró o se eliminó después de guardar el agente, se usa su estado actual.

Respuestas ancladas a los documentos

Con la búsqueda por archivo activada, el resultado de search le indica al agente que responda solo con lo que devolvieron los documentos. Cuando no encuentra nada relevante, el agente no recibe una lista vacía: recibe un aviso explícito de que no hay resultados relevantes y de que no debe responder con conocimiento general. En nuestras pruebas con preguntas que los documentos no pueden responder, este cambio redujo las respuestas inventadas de 11 de cada 15 a 1 de cada 15, sin modificar las instrucciones del agente.
Pon nombres claros y distintos a tus archivos, por ejemplo “Tarifario 2026.pdf” en lugar de “documento final.pdf”. Así el agente reconoce cuándo el usuario habla de uno en particular.