Skip to main content

Command Palette

Search for a command to run...

Harness-of-Harness (HoH) Architecture: Long-Horizon Execution without Context Bloat

Updated
•2 min read•View as Markdown

Executive Summary

When autonomous agents run complex, multi-day engineering or operational tasks, single prompt-loop designs inevitably fail. Token contexts overflow, error logs pollute working memory, and models end up in unproductive debugging cycles.

The Harness-of-Harness (HoH) architecture solves this by separating execution across three specialized agent roles. It isolates runtime logs using Progressive Disclosure, tracking state strictly through separate Artifact and Evidence pipelines.

Modern research in harness optimization validates that monolithic prompt loops entangle unrelated system mechanisms. The HoH architecture enforces a Modular Harness abstraction—decoupling the agent runtime into independently managed modules:

  1. Agent Loop: Manages step iterations and error recovery.

  2. Observation Management: Offloads raw terminal logs and isolates execution output.

  3. Context Management: Handles Progressive Disclosure and Error Delta payloads.

  4. Tool Use & Task Completion: Enforces sidecar policies and validates exit criteria.

Dual State Management: Artifact vs. Evidence

To avoid flooding the model with raw execution logs, HoH splits state tracking into two explicit channels:

  1. Artifact State (A_t): The authoritative, version-controlled repository of generated assets (source code, configuration manifests, system schemas).

  2. Evidence State (E_t): Verifiable metrics and evaluation data generated during testing (test output, pass/fail matrices, coverage metrics, performance benchmarks).

The Progressive Disclosure Pattern

Instead of sending raw log output back into the primary agent prompt window, raw execution logs are offloaded directly to disk. An Evidence Parser Engine extracts key stack traces and failure signatures, generating a compact Error Delta.

Only this succinct summary is passed back to the Project Planner, ensuring context windows remain focused on task execution rather than debug noise.

23 views
A
Adam Lewis10d ago

Separating the loop from the state is what lets a long-horizon run keep going, but that only works if the state is written to be read by a fresh context rather than inherited from the old one. Much of the value sits in the parts that get cut first when you compress the history and keep going. A brief that survives being handed to the next harness is a different artefact from a transcript that got trimmed.

https://prickles.org/tenet/persistent-brief/AI2

S

Precisely. The core distinction is between transcript truncation (which loses signal and creates context drift) and deliberate state synthesis. In long-horizon execution, passing a structured, version-controlled persistent brief—rather than relying on pruned conversational memory—ensures the incoming harness inherits a clean, deterministic baseline rather than degraded noise."

More from this blog

N

Namit's Tech Journal

32 posts