# Programmatic Tool Calling: cuando el agente escribe el flujo de control de sus herramientas

> Programmatic Tool Calling permite coordinar herramientas con código, pero sólo mejora el sistema cuando el flujo es acotado, predecible y verificable.

- Author: Viktor Berthelius (BRTHLS)
- Published: 2026-07-20
- Category: automation aiops
- Tags: programmatic-tool-calling, gpt-5-6, tool-use, automation-aiops
- Language: es
- Canonical: https://www.brthls.com/magazine/programmatic-tool-calling-codigo-orquesta-herramientas-es
- Source: BRTHLS Magazine — https://www.brthls.com

---

## Problema

Los agentes suelen coordinar herramientas como una conversación lenta: el modelo llama una función, recibe una respuesta extensa, vuelve a razonar, llama otra herramienta y añade otro bloque al contexto. Repite el ciclo hasta producir una respuesta.

Ese patrón es útil cuando cada resultado cambia el criterio. Es ineficiente cuando el trabajo consiste en consultar cien registros, filtrar, unir, deduplicar y devolver cinco filas.

En ese segundo caso, obligar al modelo a interpretar cada paso convierte una transformación predecible en una cadena cara de turnos. También llena el contexto con resultados intermedios que no deberían llegar a la respuesta final.

GPT-5.6 introduce otra ruta: que el modelo escriba un pequeño programa para coordinar herramientas y reducir sus resultados antes de continuar.

## Tesis

Programmatic Tool Calling no convierte al código en sustituto del razonamiento. Lo convierte en una capa de control para las partes del workflow que ya deberían ser deterministas.

El modelo decide qué programa necesita. El programa ejecuta paralelismo, bucles, condiciones y agregaciones. La aplicación conserva la autorización sobre las herramientas y ejecuta las funciones que le pertenecen.

La frontera sana es clara: código para procesar; modelo para juzgar; aplicación para autorizar.

## Framework

Divide el workflow por forma de tarea:

- **Directa:** una llamada, juicio semántico, búsqueda adaptativa, preservación de citas, artefactos nativos o acciones que requieren aprobación.
- **Programática:** varias llamadas con flujo predecible que pueden filtrarse, unirse, ordenarse, agregarse o validarse mediante código.
- **Híbrida:** una etapa programática reduce datos y una llamada directa interpreta el resultado o solicita aprobación.

La guía oficial describe un runtime V8 fresco y aislado. El JavaScript generado admite `await`, pero no tiene Node.js, instalación de paquetes, red directa, filesystem general ni estado persistente entre ejecuciones. Sólo puede tocar sistemas externos mediante las herramientas habilitadas en la petición.

Eso no es una limitación accidental. Es el perímetro de seguridad.

## Por que importa ahora

Programmatic Tool Calling llega con GPT-5.6 en Responses API. La aplicación añade la herramienta alojada y define, mediante `allowed_callers`, qué funciones pueden invocarse directamente, desde un programa o por ambas rutas. Cuando la salida es estructurada, `output_schema` documenta los campos que el código puede usar.

La ganancia potencial es concreta: ejecutar llamadas independientes en paralelo, procesar outputs grandes dentro del runtime y devolver un resultado mucho menor al modelo. Pero OpenAI insiste en que varias llamadas no justifican por sí solas la ruta programática.

Si cada resultado debe alterar la siguiente decisión, la llamada directa conserva mejor el juicio adaptativo. Si hay writes, pagos, borrados o aprobaciones, la ruta directa mantiene una frontera de autorización más visible. En MCP, una herramienta puede además pausar el programa según su política de aprobación.

El cambio importante no es “el agente sabe JavaScript”. Es que la orquestación deja de estar enterrada por completo en una secuencia opaca de turnos y puede expresarse como un programa acotado, con input, output, límites y evidencia.

## Anti-ejemplo

“Activa Programmatic Tool Calling para todas las herramientas; así usará menos tokens.”

El agente recibe acceso programático a consultar inventario, cambiar precios, emitir reembolsos y publicar. Un retry repite una acción no idempotente. El programa devuelve un total correcto, pero pierde las citas que dirección necesitaba revisar. El ahorro de contexto compra una superficie de side effects más difícil de auditar.

La eficiencia no compensa una frontera de aprobación rota.

## Protocolo (3 pasos)

1. **Aísla una etapa acotada.** Elige un bloque con inputs conocidos, transformación predecible y condición de parada explícita.
2. **Diseña el contrato.** Define herramientas permitidas, schemas de entrada y salida, evidencia, idempotencia, retries y fallo estructurado.
3. **Compara las dos rutas.** Ejecuta casos representativos con llamadas directas y programáticas; acepta el cambio sólo si mantiene calidad y seguridad.

| Decisión | Programática | Directa |
| --- | --- | --- |
| filtrar y agregar 100 resultados | sí | innecesaria |
| decidir qué buscar después | no | sí |
| preparar propuesta de write | posible | revisión final |
| ejecutar acción sensible | no por defecto | aprobación explícita |
| conservar citas nativas | sólo si se valida | preferida |

## Relacionado

- [Tool Registry: el nuevo mapa de riesgos de los agentes enterprise](/magazine/tool-registry-mapa-riesgos-agentes-enterprise-es)
- [Human as Tool: diseñar supervisión invocable para agentes](/magazine/human-as-tool-supervision-invocable-agentes-es)
- [Output Verification Layer: el seguro invisible de los agentes en producción](/magazine/output-verification-layer-seguro-invisible-agentes-produccion-es)

## Fuentes consultadas

- [OpenAI API: Programmatic Tool Calling](https://developers.openai.com/api/docs/guides/tools-programmatic-tool-calling)
- [OpenAI API: model guidance for Programmatic Tool Calling](https://developers.openai.com/api/docs/guides/latest-model#programmatic-tool-calling)

## Proximo paso

Busca un agente que hoy haga tres o más llamadas para filtrar o combinar datos. Dibuja qué parte es cálculo predecible y qué parte exige juicio. Programa sólo la primera y conserva la segunda como decisión visible.

---

_Cite as: Berthelius, V. (2026). "Programmatic Tool Calling: cuando el agente escribe el flujo de control de sus herramientas". BRTHLS Magazine. https://www.brthls.com/magazine/programmatic-tool-calling-codigo-orquesta-herramientas-es_
