Harness engineering es la disciplina que sostiene todo lo que está debajo de un agente de IA moderno: el ciclo de ejecución, el enrutador de herramientas, el control de contexto, la validación de salida, el sistema de retry, la observabilidad y la integración con el mundo real. Es el "esqueleto" sin el cual un LLM, por más inteligente que sea, se convierte en solo una caja de texto que responde mensajes. En 2026, el término dejó de ser jerga de laboratorio y se convirtió en una competencia de plataforma en cualquier empresa seria sobre IA.
Esta guía explica qué es el harness engineering, por qué se convirtió en una prioridad arquitectónica, cuáles son los componentes esenciales y cómo montar un harness lo bastante robusto para correr un producto a escala, sin convertirse en una colcha de retazos de prompts e if-elses.
Por qué existe el harness engineering
Un modelo de lenguaje, por sí solo, hace una sola cosa: dado un prompt, genera tokens. Todo lo que parece "inteligencia" en un agente real (ejecutar acciones, consultar bases, escribir en sistemas, tomar decisiones, recuperarse de errores) vive fuera del modelo, en la capa que orquesta la ejecución. Esa capa es el harness. El LLM es el motor. El harness es el chasis, la suspensión, la dirección, el tablero y los frenos.
El motivo por el que la disciplina ganó nombre propio es simple: quien trata el harness como un detalle entrega prototipos que se rompen en producción. La latencia, el costo, la calidad, la seguridad, la trazabilidad y la capacidad de evolución del producto dependen 90% del harness y 10% del modelo elegido. Las empresas que entienden esto logran cambiar de modelo (Claude, GPT, Gemini, Llama) con pocas líneas de cambio y mejorar la calidad en ciclos cortos.
Componentes esenciales de un harness moderno
1. Loop de ejecución (agent loop). El corazón del harness. Recibe la entrada del usuario, monta el estado, llama al modelo, interpreta la respuesta, ejecuta acciones, observa el resultado e itera hasta alcanzar un criterio de parada. Un buen harness tiene un loop explícito y auditable, no un for escondido dentro de un framework opaco.
2. Enrutador de herramientas (tool router). Define qué tools (funciones, APIs, queries) puede llamar el agente, valida los argumentos, ejecuta e inyecta el resultado de vuelta en el contexto. En arquitecturas modernas, ese enrutador sigue el patrón MCP (Model Context Protocol) o un equivalente, separando descubrimiento, schema y ejecución.
3. Gestión de contexto. Decide qué entra en el prompt y qué queda fuera: historial, memoria de largo plazo, documentos recuperados vía RAG, instrucciones de sistema, ejemplos. Un buen harness hace context engineering de forma determinista, con un presupuesto de tokens claro, prioridad de bloques y truncamiento inteligente cuando alcanza el límite.
4. Validación de salida. Garantiza que el modelo respondió en el formato esperado (JSON válido, schema correcto, dentro de una lista de opciones). Un buen harness rechaza la salida malformada, pide una corrección y tiene un fallback. Sin esto, cualquier respuesta inesperada se convierte en una excepción en producción.
5. Sistema de retry y fallback. La red, el modelo, la herramienta, todo falla. Un harness maduro tiene circuit breakers, backoff exponencial, fallback a un modelo alternativo, replay de ejecución e idempotencia en las acciones con efecto colateral.
6. Observabilidad. Cada ejecución se registra con el prompt completo, la respuesta, las herramientas llamadas, la latencia, los tokens y el costo. Sin esto, depurar un agente es adivinanza. La regla práctica: si no puedes reproducir la ejecución de ayer con un clic, tu observabilidad es insuficiente.
7. Evaluación continua (evals). Un conjunto de escenarios reproducibles que corres antes de publicar un cambio de prompt, modelo o herramienta. Los evals se convirtieron en las "pruebas unitarias" del mundo de la IA, y quien no los tiene regresiona sin darse cuenta.
Patrones arquitectónicos para el harness
Tres patrones dominan hoy. ReAct (Reason + Act): el modelo intercala razonamiento y llamada de herramienta en un loop hasta concluir la tarea. Simple, eficaz para tareas medias. Plan-and-Execute: el agente primero genera un plan de pasos, luego ejecuta cada paso por separado, con la posibilidad de re-planificar. Bueno para tareas largas y ambiguas. Multiagente: múltiples agentes especialistas se coordinan vía mensajes o vía un orquestador. Indicado para dominios complejos con fronteras claras (soporte, finanzas, devops, legal, cada uno con su subagente).
Trade-offs reales: latencia, costo, calidad, seguridad
Toda decisión de harness es un trade-off. Más herramientas en el contexto = más calidad en la mayoría de los casos, pero más latencia, costo y riesgo de que el modelo elija mal. Más retries = más resiliencia, pero más costo y tiempo. Modelos más grandes = mayor calidad promedio, pero más lentos y caros. Un harness maduro permite ajustar cada uno de esos ejes por caso de uso, sin reescribir código.
La seguridad merece una nota aparte. Toda herramienta con efecto en el mundo (borrar, enviar, pagar, cambiar config) debe tener confirmación humana o guardrails de blast radius antes de la ejecución. Sin esto, un único prompt mal formulado se convierte en un incidente de producción.
Cuándo NO hacer tu propio harness
Frameworks como LangChain, LlamaIndex, Vercel AI SDK, Mastra, Claude Agent SDK y otros ya traen un harness listo. Si tu caso de uso es estándar (chatbot de FAQ, resumen, clasificación), probablemente tiene más sentido empezar con un framework y migrar a un harness propio solo cuando llegues al límite. Construir sin necesidad genera código que nadie mantiene.
Cuándo tiene sentido construir: cuando el ciclo de ejecución es específico de tu dominio, cuando necesitas un control fino de latencia y costo, cuando necesitas correr on-prem sin dependencias externas, o cuando el framework se convirtió en un cuello de botella para la evolución.
Harness engineering en Steply
En Steply, el harness engineering es uno de los pilares de nuestros squads de IA. Tratamos el harness como un producto interno: tiene versionado, tiene pruebas, tiene owner, tiene roadmap. Esto permite que cada cliente nuestro reciba agentes que evolucionan en ciclos cortos, con costo predecible y sin regresión silenciosa. Cuando alguien pregunta "cuál es el secreto de un buen agente?", la respuesta honesta es: un buen harness, el modelo correcto, dato limpio, eval continua. En ese orden.