Saltar al contenido principal
Avanzado9 min1463 palabras

AI agent harness: cómo diseñar un runtime fiable

Guía práctica sobre AI agent harnesses: execution loop, tools, sandbox, estado duradero, context assembly, permisos, checkpoints, evals, observabilidad y recovery.

Contenido del artículo
  1. 01Respuesta corta: un harness es el runtime gestionado alrededor del modelo
  2. 02Arquitectura mínima: session, loop, tools, sandbox y state
  3. 03Las tareas largas necesitan checkpoints, no una falsa memoria ilimitada
  4. 04La autoridad y los side effects se verifican fuera del modelo
  5. 05Evaluation: pruebe el harness como sistema, no solo la respuesta final
  6. 06Cómo elegir, simplificar y desplegar un harness

Respuesta corta: un harness es el runtime gestionado alrededor del modelo

Un AI agent harness es el bucle de control de software que llama repetidamente al modelo, compone el contexto, enruta tool calls, conserva el estado y decide cuándo un run debe continuar, detenerse, recuperarse o pasar a una persona. El modelo propone el siguiente paso, pero el harness controla el execution loop y el entorno. Aquí viven deadlines, límites de pasos, permisos, sandbox, retries, checkpoints, tracing y la verificación del resultado terminal.

No use el término como etiqueta de moda para un único system prompt o wrapper de SDK. Prompt engineering ajusta instrucciones; context engineering selecciona información para una llamada concreta; un planner propone una ruta; un framework aporta abstracciones; el harness conecta esas piezas con un runtime contract real. Un producto puede ofrecer un harness gestionado y otro primitives para construir uno propio, pero la marca del modelo no determina la fiabilidad del sistema completo.

  • Modelo → propone una respuesta o tool call dentro del contexto visible.
  • Harness → gestiona loop, estado, tools, budgets, aislamiento y recovery.
  • Application policy → define autoridad, approvals y resultados permitidos.
  • Entorno → ejecuta comandos y almacena artefactos autoritativos.

Arquitectura mínima: session, loop, tools, sandbox y state

Un baseline de producción necesita cinco contratos separados. La session es un registro append-only de eventos con correlation ID. El loop construye el input, llama al modelo, valida la respuesta y aplica la stop policy. El tool gateway publica una allowlist estrecha y vuelve a validar argumentos y permisos. El sandbox aísla filesystem, procesos y destinos de red. El state store guarda task status, referencias a artefactos, approvals y postconditions independientemente del transcript de chat.

Esta separación permite sustituir componentes. El modelo o prompt puede actualizarse sin migrar el task state autoritativo; el sandbox puede endurecerse sin reescribir el planner; una implementación de tool puede revertirse conservando el trace. Anthropic describe session, harness y sandbox como partes distintas de sistemas de managed agents, mientras OpenAI describe un model-native harness junto con sandbox execution. Son descripciones arquitectónicas de primera parte, no una prueba de superioridad universal de un proveedor.

  • Session log: model calls, tool requests, resultados, approvals y motivo terminal.
  • Task state: planned, running, blocked, awaiting-approval, completed o failed.
  • Artifact store: outputs versionados, checksums, provenance y owner.
  • Sandbox policy: mounts, secrets, network egress, límites de recursos y cleanup.
  • Control plane: budgets, kill switch, concurrency, resume y reconciliation.

Las tareas largas necesitan checkpoints, no una falsa memoria ilimitada

Un agente de larga duración atraviesa context windows, reinicios y esperas de approval. La compaction ayuda a encajar el historial, pero no sustituye un estado duradero. Un checkpoint debe contener la versión de la tarea, acceptance criteria completados, artefactos verificados, riesgos abiertos, approvals pendientes, las últimas postconditions autoritativas y un siguiente paso concreto. Una nueva session empieza verificando entorno y estado, no confiando en un resumen optimista del modelo anterior.

En su investigación sobre harnesses de larga duración, Anthropic utilizó una feature list, un progress artifact, control de versiones y una comprobación end-to-end básica antes del siguiente cambio. El principio transferible no es el nombre del archivo, sino el handoff protocol: el trabajo se divide en slices terminables, el estado se confirma con una prueba y el siguiente worker recibe un paquete corto y verificable. En soporte o research, ese paquete puede ser case state, evidence ledger y una acción pendiente en lugar de un commit de git.

La autoridad y los side effects se verifican fuera del modelo

Un harness no debe entregar al modelo un catálogo universal de tools y esperar que un prompt preserve los límites. En cada paso, el tool gateway verifica actor, tenant, resource, action, parameters, risk tier, versión del approval y expiración. Las operaciones read, draft y write usan credenciales distintas. Una acción relevante recibe idempotency key, preflight preview y postcondition esperada; un timeout tras la llamada conduce a reconciliation en vez de a un retry ciego.

El sandbox reduce el blast radius, pero por sí solo no crea autorización de negocio. Un proceso puede estar aislado y aun así tener un token peligroso o egress permitido hacia una API de producción. La autoridad efectiva es la intersección de sandbox policy, credential scope, tool contract, application rules y un approval vigente. Prompt injection, una dependencia comprometida o un error del modelo no deben poder ampliar esa intersección mediante instrucciones de texto.

  • Permiso desconocido o approval obsoleto → fail closed.
  • Resultado desconocido de un write call → reconcile antes de retry.
  • Nuevo destino o scope → decisión de autorización independiente.
  • Kill switch → bloquea nuevas acciones y conserva forensic evidence y recovery path.

Evaluation: pruebe el harness como sistema, no solo la respuesta final

Las golden tasks deben evaluar outcome y trajectory. Los graders deterministas verifican schema, filesystem diff, API postcondition, budget y eventos prohibidos. Un model grader puede valorar la calidad de un artefacto abierto, pero no sustituye la comprobación de permisos ni del side effect real. Human review sigue siendo necesario para utilidad ambigua y riesgo material. Una violación crítica de policy no debe diluirse por un buen estilo de redacción.

La failure suite debe cubrir agotamiento de contexto, checkpoint corrupto, duplicate delivery, tool response perdida, partial commit, credencial revocada, stale branch, dependencia no disponible, prompt injection en contenido recuperado y un agente que declara completion antes de superar el acceptance test. Compare no solo task success, sino verified progress por run, tool calls innecesarios, recovery success, reviewer minutes, wall-clock time y cost per accepted outcome sobre el mismo corpus. Los experimentos publicados por un vendor no son su baseline.

Cómo elegir, simplificar y desplegar un harness

Empiece con una tarea read-only y acotada que ya tenga un baseline de workflow determinista. Añada un model loop, dos o tres tools diferenciados, estados terminales explícitos, task state fuera del transcript y un trace completo. Después introduzca un restart fixture, un corrupted-state fixture y un canary sobre un segmento pequeño. Añada planner-generator-evaluator multi-agent, loops autónomos largos o write authority solo cuando el harness más simple falle de forma demostrable en task slices registrados.

Un harness codifica supuestos sobre las debilidades del modelo actual, por lo que cada workaround necesita owner, eval y review date. Tras actualizar modelo o tool, haga una ablation: ¿sigue necesitando planner separado, context reset forzado, demasiados critique loops o un prompt grande? El rollback restaura un paquete compatible de loop policy, versiones de tools y checkpoint schema; los writes activos se reconcilian primero. El mejor harness no es el mayor, sino el circuito mínimo que demuestra que completa sus tareas dentro de los límites definidos.

  • Define → outcome, authority, environment y terminal states.
  • Instrument → session events, state transitions, budgets y artifacts.
  • Evaluate → success, policy, recovery, efficiency y human acceptance.
  • Canary → read-only, bounded concurrency, kill switch y on-call owner.
  • Simplify → elimine periódicamente scaffolding que ya no aporta una mejora medible.

Ejemplos prácticos

Harness para migrar un servicio pequeño

El initializer fija acceptance criteria, comandos de arranque y una feature checklist. Cada run toma un slice, trabaja en una branch y sandbox aisladas, ejecuta tests, registra el artifact hash y actualiza el checkpoint solo tras PASS. Merge, secrets y production deploy permanecen en un approval workflow separado; tras un restart, el agente primero reconcilia repository state con el checkpoint.

Harness para un evidence brief sin write authority

Un research agent recibe tools de búsqueda y lectura de documentos en allowlist, conserva un claim ledger fuera del transcript y solo termina tras un coverage gate. Si una fuente no está disponible o es contradictoria, el state pasa a blocked. El harness puede reanudar la investigación desde el checkpoint, pero no tiene credenciales para enviar el informe a un cliente ni modificar un sistema externo.

FAQ

¿En qué se diferencia un AI agent harness de un agent framework?

Un framework aporta abstracciones y bibliotecas. Un harness es el circuito runtime concreto con loop, tools, environment, state, permissions, budgets, evals y recovery para su sistema. Un framework puede formar parte de él.

¿Una tarea larga necesita un harness multi-agent?

No necesariamente. Primero pruebe un single-agent loop con durable state, checkpoints y tests externos. Añada roles especializados solo ante una brecha medida en planning, generation o evaluation.

¿La compaction basta para trabajar a través de muchas context windows?

No. La compaction comprime el model context, pero no es estado autoritativo. Siguen siendo necesarios checkpoints versionados, referencias a artefactos, acceptance status y una comprobación de recovery tras una nueva session.

¿Cuál es el production gate mínimo?

Un eval set representativo, cero violaciones críticas de authority, restart y reconciliation probados, recursos acotados, terminal states observables, kill switch, owner y un rollback path compatible.

Materiales relacionados

Fuentes

  1. Anthropic — Effective harnesses for long-running agentsoficial
  2. Anthropic — Scaling Managed Agents: Decoupling the brain from the handsoficial
  3. Anthropic — Harness design for long-running application developmentoficial
  4. OpenAI — The next evolution of the Agents SDKoficial
  5. OpenAI — Practices for Governing Agentic AI Systemsprimaria