AI agent harness: що це і як спроєктувати надійний runtime
Практичний гайд про AI agent harness: execution loop, tools, sandbox, durable state, context assembly, permissions, checkpoints, evals, observability і recovery для довготривалих агентних задач.
Зміст статті
- 01Коротка відповідь: harness — це керований runtime навколо моделі
- 02Мінімальна архітектура: session, loop, tools, sandbox і state
- 03Довгі задачі потребують checkpoints, а не удаваної безмежної пам'яті
- 04Authority та side effects перевіряються поза моделлю
- 05Evaluation: тестуйте harness як систему, а не лише фінальну відповідь
- 06Як вибрати, спростити й розгорнути harness
Передумови
Коротка відповідь: harness — це керований runtime навколо моделі
AI agent harness — це програмний контур, який багаторазово викликає модель, формує контекст, маршрутизує tool calls, зберігає стан і вирішує, коли продовжити, зупинити, відновити або передати run людині. Модель пропонує наступний крок, але harness володіє execution loop і середовищем. Саме тут живуть deadlines, ліміти кроків, permissions, sandbox, retries, checkpoints, tracing та перевірка terminal outcome.
Термін не слід використовувати як модну назву для одного system prompt або SDK wrapper. Prompt engineering налаштовує інструкції; context engineering відбирає інформацію для конкретного model call; planner пропонує шлях; framework дає abstractions; harness зв'язує ці частини з реальним runtime contract. Один продукт може постачати готовий harness, інший — primitives для власного, але бренд моделі не визначає надійність усієї системи.
- Model → пропонує відповідь або tool call у межах видимого контексту.
- Harness → керує циклом, станом, tools, budgets, isolation і recovery.
- Application policy → визначає authority, approvals і допустимий outcome.
- Environment → виконує команди та зберігає authoritative artifacts.
architecture
Карта системи: AI agent harness: що це і як спроєктувати надійний runtime
timeline
Контрольні точки для практичного застосування
- Model → пропонує відповідь або tool call у межах видимого контексту.
Контрольна теза з матеріалу статті.
- Harness → керує циклом, станом, tools, budgets, isolation і recovery.
Контрольна теза з матеріалу статті.
- Application policy → визначає authority, approvals і допустимий outcome.
Контрольна теза з матеріалу статті.
- Environment → виконує команди та зберігає authoritative artifacts.
Контрольна теза з матеріалу статті.
- ai-agent-trajectory-evaluation
- agent-evaluation
Мінімальна архітектура: session, loop, tools, sandbox і state
Production baseline має п'ять окремих контрактів. Session є append-only журналом подій із correlation ID. Loop збирає input, викликає модель, валідовує response і застосовує stop policy. Tool gateway публікує вузький allowlist та повторно перевіряє аргументи й права. Sandbox ізолює filesystem, processes і network destinations. State store тримає task status, artifact references, approvals і postconditions незалежно від chat transcript.
Розділення важливе для заміни компонентів. Модель або prompt можна оновити без міграції authoritative task state; sandbox можна посилити без переписування planner; tool implementation можна відкотити, зберігши trace. Anthropic описує session, harness і sandbox як окремі частини managed-agent системи, а OpenAI — model-native harness разом із sandbox execution. Це first-party архітектурні описи, не доказ універсальної переваги конкретного продукту.
- Session log: model calls, tool requests, results, approvals і terminal reason.
- Task state: planned, running, blocked, awaiting-approval, completed або failed.
- Artifact store: versioned outputs, checksums, provenance і owner.
- Sandbox policy: mounts, secrets, network egress, resource limits і cleanup.
- Control plane: budgets, kill switch, concurrency, resume та reconciliation.
Довгі задачі потребують checkpoints, а не удаваної безмежної пам'яті
Long-running agent переходить між context windows, restarts і approval waits. Compaction допомагає вмістити історію, але не замінює durable state. Checkpoint повинен містити task version, виконані acceptance criteria, перевірені artifacts, відкриті ризики, pending approvals, останні authoritative postconditions і один конкретний next step. Новий session починає з перевірки environment та state, а не з довіри до оптимістичного summary попередньої моделі.
Anthropic у дослідженні long-running harness використовувала feature list, progress artifact, version control і базову end-to-end перевірку перед наступною зміною. Переносимий принцип тут не назва файла, а handoff protocol: робота розбита на завершувані slices, статус підтверджується тестом, а наступний worker отримує короткий перевірний пакет. Для support або research таким пакетом можуть бути case state, evidence ledger і незавершена дія, а не git commit.
Evaluation: тестуйте harness як систему, а не лише фінальну відповідь
Golden tasks мають перевіряти outcome і trajectory. Детерміновані graders підтверджують schema, filesystem diff, API postcondition, budget і заборонені events. Model grader може оцінити якість відкритого artifact, але не замінює перевірку permissions або фактичного side effect. Human review потрібен для неоднозначної корисності й material risk. Критичне policy violation не можна усереднювати з хорошим стилем відповіді.
Failure suite охоплює context exhaustion, corrupted checkpoint, duplicate delivery, lost tool response, partial commit, revoked credential, stale branch, unavailable dependency, prompt injection у retrieved content і agent, що оголошує завершення до проходження acceptance test. Порівнюйте не лише task success, а verified progress per run, unnecessary tool calls, recovery success, reviewer minutes, wall-clock time і cost per accepted outcome на однаковому corpus. Vendor-reported experiments не є вашим baseline.
Як вибрати, спростити й розгорнути harness
Почніть із bounded read-only задачі, для якої deterministic workflow уже має baseline. Додайте один model loop, два-три distinct tools, explicit terminal states, task state поза transcript і повний trace. Потім введіть restart fixture, corrupted-state fixture та canary на малому сегменті. Multi-agent planner-generator-evaluator, довгі автономні loops або write authority додавайте лише тоді, коли простіший harness не проходить зафіксовані task slices.
Harness encode-ить припущення про слабкі місця поточної моделі, тому кожен workaround має owner, eval і review date. Після model або tool upgrade проведіть ablation: чи потрібні ще окремий planner, примусовий context reset, надмірна кількість critique loops або великий prompt. Rollback повертає сумісний комплект loop policy, tool versions і checkpoint schema; active writes спершу reconcile-яться. Найкращий harness — не найбільший, а найменший контур, який доказово завершує ваші задачі в заданих межах.
- Define → outcome, authority, environment і terminal states.
- Instrument → session events, state transitions, budgets і artifacts.
- Evaluate → success, policy, recovery, efficiency та human acceptance.
- Canary → read-only, bounded concurrency, kill switch і on-call owner.
- Simplify → регулярно видаляйте scaffolding, що більше не дає вимірного gain.
Практичні приклади
Harness для міграції невеликого сервісу
Initializer фіксує acceptance criteria, команди запуску й feature checklist. Кожен run бере один slice, працює в ізольованій branch і sandbox, запускає тести, записує artifact hash та оновлює checkpoint лише після PASS. Merge, secrets і production deploy залишаються за окремим approval workflow; після restart агент спершу звіряє repository state з checkpoint.
Harness для evidence brief без write authority
Research agent отримує allowlisted search і document-read tools, зберігає claim ledger поза transcript та завершується лише після coverage gate. Якщо джерело недоступне або суперечливе, state переходить у blocked. Harness може відновити пошук із checkpoint, але не має credentials для надсилання звіту клієнту чи зміни зовнішньої системи.
FAQ
Чим AI agent harness відрізняється від agent framework?
Framework надає abstractions і бібліотеки; harness є конкретним runtime-контуром із loop, tools, environment, state, permissions, budgets, evals і recovery для вашої системи. Framework може бути його частиною.
Чи потрібен multi-agent harness для довгої задачі?
Не обов'язково. Спершу перевірте single-agent loop із durable state, checkpoints і зовнішніми tests. Додавайте спеціалізовані ролі лише для виміряної прогалини в planning, generation або evaluation.
Чи достатньо compaction для роботи через багато context windows?
Ні. Compaction стискає model context, але не є authoritative state. Потрібні versioned checkpoints, artifact references, acceptance status і recovery перевірка після нового session.
Що є мінімальним production gate?
Репрезентативний eval set, нуль критичних authority violations, перевірені restart та reconciliation, bounded resources, observable terminal states, kill switch, owner і сумісний rollback path.
Пов’язані матеріали
Як проєктувати контекст AI-агента: від system prompt, tools і retrieval до пам’яті, compaction, permissions, evals та керованого rollout без бездумного заповнення context window.
Планування в AI-агентахПланування в AI-агентах — практичний розбір production-архітектури: перетворення нечіткої мети на перевірну послідовність кроків без передчасного виконання. Матеріал охоплює контракти, межі повноважень, failure modes, оцінювання та контрольований rollout.
State machines для агентівState machines для агентів — практичний розбір production-архітектури: відокремлення ймовірнісного рішення моделі від детермінованого життєвого циклу виконання. Матеріал охоплює контракти, межі повноважень, failure modes, оцінювання та контрольований rollout.
Tool calling і контракти інструментівЯк дозволити LLM викликати функції без передачі їй необмежених повноважень: schema, policy, idempotency, timeouts, verification і audit trail.
Пам’ять AI-агента: робочий стан, історія і знанняЯк розділити короткостроковий контекст, довгострокову пам’ять, журнал подій і канонічні факти, щоб агент не плутав власні припущення з реальністю.
Trajectory evaluation для AI-агентів: як перевіряти шлях, а не лише результатПрактичний guide з оцінювання траєкторій AI-агента: trace contract, tool calls, permissions, retries, side effects, graders, failure taxonomy і release gate.
Оцінювання AI-агентівОцінювання AI-агентів — практичний розбір production-архітектури: вимірювання не лише фінальної відповіді, а всієї траєкторії рішень, дій, витрат і безпечного завершення. Матеріал охоплює контракти, межі повноважень, failure modes, оцінювання та контрольований rollout.
Observability для LLM-системЯкі traces, metrics, logs і evaluation signals потрібні для LLM: prompts, retrieval, tool calls, usage, quality, privacy, cardinality і розслідування інцидентів.
Human-in-the-loop для AIHuman-in-the-loop для AI — практичний розбір production-архітектури: залучення людини в конкретній точці ризику з достатнім контекстом для реального, а не формального контролю. Матеріал охоплює контракти, межі повноважень, failure modes, оцінювання та контрольований rollout.
Безпека AI-агентівБезпека AI-агентів — практичний розбір production-архітектури: зменшення наслідків помилкового або атакованого рішення через системні межі довіри та мінімальні повноваження. Матеріал охоплює контракти, межі повноважень, failure modes, оцінювання та контрольований rollout.
Джерела
- Anthropic — Effective harnesses for long-running agentsофіційне
- Anthropic — Scaling Managed Agents: Decoupling the brain from the handsофіційне
- Anthropic — Harness design for long-running application developmentофіційне
- OpenAI — The next evolution of the Agents SDKофіційне
- OpenAI — Practices for Governing Agentic AI Systemsпервинне