Skip to main content
Usa herramientas cuando un agente necesite leer datos de la aplicación, llamar a un servicio interno o realizar una acción. Agent SDK valida los límites de cada herramienta y ejecuta su código dentro de tu aplicación.

Define una herramienta local

defineTool() acepta una descripción, parámetros JSON opcionales, validadores de ejecución, un tiempo de espera y una función execute().
Si se agota el tiempo de espera, el entorno de ejecución aborta context.signal, marca la ejecución como fallida y vuelve a lanzar el error de tiempo de espera. Los esquemas pueden ser funciones u objetos que expongan parse() o safeParse(). Los argumentos no válidos del modelo y los resultados no válidos de las herramientas generan un error antes de cruzar el límite de la herramienta.

Ejecuta el trabajo en tu aplicación

Establece execute: false cuando el trabajo lo realice tu aplicación en lugar del proceso del SDK. Reanuda la ejecución en pausa con el resultado en toolOutputs. Para una herramienta interactiva, devuelve null desde onToolCalled. Después de continuar, onResponseReceived puede validar o transformar la respuesta proporcionada.

Publica el progreso

Un generador asíncrono puede devolver resultados preliminares antes de devolver el resultado final:
El progreso está disponible mediante los eventos tool.preliminary_result y preliminaryResults del paso.

Ejecuta herramientas independientes en paralelo

Si un turno del modelo puede llamar de forma segura a varias herramientas independientes, configura un límite de concurrencia:
El entorno de ejecución conserva el orden de los mensajes de resultados de herramientas aunque las ejecuciones locales se solapen.

Guías relacionadas

Última modificación el 2 de octubre de 2026