Agent Harness: Arquitectura para agentes de IA listos para producción
El problema no es la red neuronal. Cuando los agentes de LLM fallan en producción, la culpa es de la infraestructura alrededor del modelo. LangChain subió del puesto 30 al 5 en TerminalBench 2.0 sin cambiar el modelo, solo optimizando su entorno. Este entorno se llama agent harness, y convierte un LLM sin estado en un agente autónomo.
¿Qué es un Agent Harness? Arquitectura de Von Neumann para IA
El término se formalizó en 2026, pero el concepto es tan antiguo como la idea de un sistema de cómputo. Un harness es la infraestructura completa que envuelve al LLM: bucle de orquestación, herramientas, memoria, gestión de contexto y manejo de errores. Anthropic llama explícitamente a su SDK un "agent harness" en la documentación de Claude Code. La analogía clave: un LLM desnudo es como una CPU sin RAM ni disco. La ventana de contexto actúa como memoria de trabajo, bases de datos externas como almacenamiento a largo plazo, y las herramientas como controladores de dispositivos. El harness se convierte en el sistema operativo, implementando la arquitectura de Von Neumann para IA.
Muchos confunden "agente" y "harness". Un agente es el comportamiento: una entidad dirigida por objetivos y autocorrectiva. Un harness es el mecanismo que genera este comportamiento. Como lo expresó con precisión Vivek Trivedy de LangChain: "Si no eres el modelo, eres el harness".
Tres niveles de ingeniería alrededor de los LLM
El entorno del modelo se construye en capas concéntricas:
- Ingeniería de prompts — da forma a las instrucciones para el modelo.
- Ingeniería de contexto — gestiona lo que ve el modelo y cuándo.
- *Ingeniería de harness*** — abarca las dos capas anteriores más orquestación de herramientas, persistencia de estado, manejo de errores y seguridad.
Un harness no es solo un envoltorio alrededor de un prompt. Es el sistema que hace posible el comportamiento de un agente autónomo en producción. Sin él, incluso los modelos avanzados se comportan como demos frágiles.
Doce componentes críticos de un harness de producción
El análisis de soluciones de Anthropic, OpenAI y LangChain reveló 12 componentes esenciales:
- Bucle de orquestación — el latido del sistema (Thought-Action-Observation).
- Herramientas — esquemas para interactuar con el mundo exterior.
- Memoria — gestión de datos a diferentes escalas temporales.
- Gestión de contexto — combate la degradación del contexto.
- *Construcción de prompts*** — ensamblaje de la entrada del modelo.
- Análisis de salidas — manejo de respuestas estructuradas.
- Gestión de estado — persistencia y puntos de control.
- Manejo de errores — estrategias de recuperación.
- Limitadores de seguridad — barreras en tres niveles.
- Bucles de verificación — comprobación de la salida del agente.
- Orquestación de subagentes — delegación de tareas.
- Ciclo de vida — despliegue y monitoreo.
La gestión de contexto merece atención especial. Investigaciones de Chroma y Stanford ("Lost in the Middle") mostraron caídas de rendimiento de más del 30 % cuando el contenido clave está en el medio de la ventana. Las estrategias de producción incluyen:
- Compacción: resumir el historial (Claude Code preserva decisiones arquitectónicas, descartando detalles técnicos).
- Enmascaramiento de observaciones: ocultar salidas de herramientas antiguas (como en Junie de JetBrains).
- Recuperación justo a tiempo: cargar datos dinámicamente mediante consultas ligeras (grep, glob).
- Delegación a subagentes: devolver resúmenes comprimidos (1000–2000 tokens) en lugar de datos crudos.
Anthropic define el objetivo: encontrar el conjunto mínimo de tokens de alta señal que maximice la probabilidad de éxito.
Cómo funciona el bucle de orquestación
Desglosemos el bucle TAO en un sistema de producción:
- *Ensamblaje de prompt**: el harness forma la entrada, posicionando el contexto crítico al principio y al final (según los hallazgos de "Lost in the Middle"). Incluye el prompt* del sistema, esquemas de herramientas, memoria y consulta actual.
- Inferencia de LLM: el modelo procesa la solicitud, devolviendo texto o
tool_callsestructurados. - Clasificación de salida: si hay llamadas a herramientas, ejecutarlas; si hay traspaso, cambiar de agente; de lo contrario, finalizar el bucle.
- Ejecución de herramientas: validar argumentos, verificar permisos, ejecutar en aislamiento. Los errores se devuelven como
ToolMessagepara corrección por el modelo. - Verificación: comprobaciones basadas en reglas (linters, pruebas), verificación visual (Playwright) o LLM como juez.
- Actualización de estado: puntos de control mediante commits de git (Claude Code) o diccionarios tipados (LangGraph).
Un detalle crítico: el harness separa el razonamiento de la aplicación. El modelo decide "qué hacer", el sistema de herramientas decide "si está permitido". Claude Code controla más de 40 permisos discretos mediante comprobaciones en tres etapas.
Lecciones clave
- El problema no es el modelo: el 90 % de los fallos de agentes en producción provienen de deficiencias en el harness, no del LLM.
- La degradación del contexto mata: incluso ventanas de 1M de tokens requieren gestión activa de contexto.
- La verificación es obligatoria: los agentes sin bucles de comprobación producen 2–3 veces más errores.
- La seguridad es arquitectónica: la aplicación debe separarse del razonamiento.
- Los errores se acumulan: un proceso de 10 pasos con 99 % de éxito por paso tiene solo un 90,4 % de éxito de extremo a extremo.
— Editorial Team
Aún no hay comentarios.