{"id":549,"date":"2026-05-05T12:47:11","date_gmt":"2026-05-05T12:47:11","guid":{"rendered":"https:\/\/blog.agentsarchitects.ai\/?p=549"},"modified":"2026-07-14T06:19:46","modified_gmt":"2026-07-14T06:19:46","slug":"a-field-guide-to-agent-harness-engineering-the-architecture-behind-reliable-ai-agents-2","status":"publish","type":"post","link":"https:\/\/blog.agentsarchitects.ai\/index.php\/2026\/05\/05\/a-field-guide-to-agent-harness-engineering-the-architecture-behind-reliable-ai-agents-2\/","title":{"rendered":"A Field Guide to Agent Harness Engineering: The Architecture Behind Reliable AI Agents"},"content":{"rendered":"\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"470\" src=\"https:\/\/blog.agentsarchitects.ai\/wp-content\/uploads\/2026\/07\/article13-1024x470.png\" alt=\"\" class=\"wp-image-550\" srcset=\"https:\/\/blog.agentsarchitects.ai\/wp-content\/uploads\/2026\/07\/article13-1024x470.png 1024w, https:\/\/blog.agentsarchitects.ai\/wp-content\/uploads\/2026\/07\/article13-300x138.png 300w, https:\/\/blog.agentsarchitects.ai\/wp-content\/uploads\/2026\/07\/article13-768x353.png 768w, https:\/\/blog.agentsarchitects.ai\/wp-content\/uploads\/2026\/07\/article13-1536x705.png 1536w, https:\/\/blog.agentsarchitects.ai\/wp-content\/uploads\/2026\/07\/article13-2048x940.png 2048w, https:\/\/blog.agentsarchitects.ai\/wp-content\/uploads\/2026\/07\/article13-980x450.png 980w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<h3 class=\"wp-block-heading\">Why I am writing this<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">For most of the last three years, the implicit thesis of agentic AI has been simple:&nbsp;<em>a better model produces a better agent.<\/em>&nbsp;Buy the frontier model, write a good prompt, wire up some tools, and reliability follows.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Between March and June 2026, a cluster of papers landed that, read together, argue something close to the opposite. The binding constraint on real-world agent reliability is increasingly\u00a0not\u00a0the model. It is the\u00a0<em>harness<\/em>\u00a0 the runtime system that wraps the model and governs how it observes, acts, remembers, recovers, and is verified.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">This is not a vocabulary game. It changes how you staff a team, where you spend compute budget, what you put in a benchmark, and what you can honestly promise a board. Below I work through seven papers, group them into a coherent picture, and end with what I think it means in practice. References are listed in full at the end so the claims here are traceable to their sources rather than to me.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">A note on framing for my PhD students: I have deliberately kept the formal objects (the labeled-transition-system semantics, the component algebra) close to how the authors state them, because the precision is the point. For my consulting readers, each section closes with a &#8220;so what&#8221; that you can act on without the math.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">1. The shift in one sentence<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">Across all seven papers, one claim recurs in different vocabularies:<\/p>\n\n\n\n<blockquote class=\"wp-block-quote is-layout-flow wp-block-quote-is-layout-flow\">\n<p class=\"wp-block-paragraph\">Agent capability is increasingly\u00a0<em>externalized<\/em>\u00a0out of model weights and into the surrounding runtime  and the engineering of that runtime, the harness, is now a first-class determinant of system behavior.<\/p>\n<\/blockquote>\n\n\n\n<p class=\"wp-block-paragraph\">The Externalization review (Zhou et al., 2604.08224) gives the cleanest theoretical framing. Drawing on Donald Norman&#8217;s idea of\u00a0<em>cognitive artifacts<\/em>, it argues that agent infrastructure matters not because it bolts on extra parts, but because it\u00a0transforms a hard cognitive burden into an easier one the way a shopping list turns &#8220;recall the items&#8221; into &#8220;recognize the items,&#8221; or a map turns hidden spatial relationships into visible structure. In their taxonomy: memory externalizes state across time, skills externalize procedural expertise, protocols externalize interaction structure, and the harness is the\u00a0<em>unification layer<\/em>\u00a0that coordinates all of them into governed execution.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">That single reframing\u00a0<em>capability lives in the runtime, not only in the weights<\/em> is the thread connecting everything that follows.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">2. What exactly is a &#8220;harness&#8221;? Two attempts at a definition<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">The field has used &#8220;harness,&#8221; &#8220;scaffold,&#8221; &#8220;runtime,&#8221; and &#8220;agent OS&#8221; interchangeably for a while. Two of these papers try to fix that.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>2.1 The six-component formalism: H = (E, T, C, S, L, V)<\/strong><br>The most rigorous treatment is the survey by Meng, Wang et al. (202604.0428),\u00a0<em>Agent Harness for Large Language Model Agents<\/em>. It defines an agent harness as a software system implementing\u00a0six runtime governance functions:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>E \u2014 Execution loop.<\/strong>&nbsp;Manages the observe\u2013think\u2013act cycle: turn sequencing, termination conditions, error recovery.<\/li>\n\n\n\n<li><strong>T \u2014 Tool registry.<\/strong>&nbsp;A typed, validated catalog of tool interfaces; routes and monitors invocations.<\/li>\n\n\n\n<li><strong>C \u2014 Context manager.<\/strong>&nbsp;Governs what enters the model&#8217;s context window each turn \u2014 compaction, retrieval, prioritization.<\/li>\n\n\n\n<li><strong>S \u2014 State store.<\/strong>&nbsp;Persists task state across turns and sessions; enables recovery from partial failure.<\/li>\n\n\n\n<li><strong>L \u2014 Lifecycle hooks.<\/strong>&nbsp;Pre\/post-invocation interception for authentication, logging, policy enforcement, instrumentation.<\/li>\n\n\n\n<li><strong>V \u2014 Evaluation interface.<\/strong>&nbsp;Structured trajectory capture in standardized schemas that external benchmark frameworks can consume.<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\">The discipline of this definition is that it draws\u00a0<em>boundaries<\/em>. The authors map each component to a corresponding production failure mode \u2014 execution runaway (E), tool misuse (T), context blowout (C), state loss on failure (S), unmonitored side effects (L), and unobservable behavior (V). They then argue\u00a0E and T are necessary\u00a0(without E there is no multi-step execution to govern; without T the agent cannot act), while a full-stack harness implements all six with production-grade reliability.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">What makes the formalism more than a checklist is the\u00a0labeled-transition-system (LTS) treatment of the execution loop. The authors model E as a transition system over states like\u00a0<em>idle, observing, invoking-model, dispatching-tool, awaiting-tool-result, committing-state, terminated<\/em>, and surface three correctness properties that informal descriptions cannot express:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>Safety<\/strong>&nbsp;\u2014 the system never enters a state from which termination is unreachable (no runaway).<\/li>\n\n\n\n<li><strong>Liveness<\/strong>&nbsp;\u2014 from every reachable non-terminal state, a terminal state is reachable.<\/li>\n\n\n\n<li><strong>Determinism<\/strong>&nbsp;\u2014 for reproducibility, environment non-determinism must be isolated at tool-call boundaries.<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\">This is where the definition earns its keep. Using the LTS lens, they classify systems cleanly:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>ReAct<\/strong>&nbsp;is&nbsp;<em>not<\/em>&nbsp;a harness \u2014 a bare while-loop with no error-recovery arc, so its transition function is partial and safety fails. It is a framework primitive.<\/li>\n\n\n\n<li><strong>AutoGPT<\/strong>&nbsp;<em>is<\/em>&nbsp;a (monolithic) harness \u2014 its transition function is total over the documented events, including error recovery; its reliability problems come from weak implementation guarantees (non-idempotent writes, non-atomic commits), not a missing structure.<\/li>\n\n\n\n<li><strong>LangGraph<\/strong>&nbsp;is a&nbsp;<em>topology-encoded<\/em>&nbsp;harness \u2014 a DAG whose acyclicity guarantees liveness by construction, but whose context management (C) is implicit in graph topology rather than an active runtime policy.<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\">The same paper assembles a\u00a0completeness matrix over 22 representative systems\u00a0and reports an uncomfortable empirical regularity: the\u00a0V (evaluation) and L (lifecycle) columns are the most systematically under-implemented\u00a0across the ecosystem \u2014 V is partial or absent in 14 of 22 systems. In other words, the two components that give you accountability and the ability to\u00a0<em>measure<\/em>\u00a0are exactly the ones teams skip.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">2.2 The Control\u2013Agency\u2013Runtime decomposition<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">He, Zhou et al. (202603.1756),\u00a0<em>Harness Engineering for Language Agents<\/em>, approach the definition from a complementary angle, decomposing the harness layer into\u00a0Control, Agency, and Runtime (CAR): what instructions remain authoritative, what actions are available, and how state is carried forward and how failures are handled over time.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Two of their contributions are directly useful to practitioners and worth dwelling on:<\/p>\n\n\n\n<ol class=\"wp-block-list\">\n<li>They audit 63 harness-relevant works and find a\u00a0visibility gap between academic papers and public engineering notes\u00a0\u2014 much of the real knowledge lives in vendor blogs, not citable literature.<\/li>\n\n\n\n<li>They argue that\u00a0many reported &#8220;model&#8221; gains may be partly harness-sensitive rather than purely model-driven, and propose\u00a0HarnessCard\u00a0\u2014 a lightweight disclosure artifact for reporting the harness configuration alongside any agent result.<\/li>\n<\/ol>\n\n\n\n<p class=\"wp-block-paragraph\">That second point should make every researcher slightly uncomfortable. If a paper reports that Model B beats Model A on an agentic benchmark but does not disclose the harness, the comparison may be confounded. CAR and HarnessCard are an attempt to make the harness a&nbsp;<em>reported variable<\/em>&nbsp;rather than an invisible one.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">They also pre-empt the obvious objection \u2014 &#8220;isn&#8217;t this just software engineering?&#8221; \u2014 by noting that harness control artifacts are often&nbsp;<em>linguistic<\/em>&nbsp;objects: instructions, repository maps, tool descriptions, summaries, approval prompts, grader criteria, progress files. Governance here is mediated through language, not only through low-level system calls. That is what makes it a distinct object of study.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>So what (for leaders):<\/strong>&nbsp;Before you compare two agent vendors or two internal builds, demand a harness disclosure. &#8220;Which model&#8221; is the wrong first question. &#8220;Which harness, and how complete is it across E\/T\/C\/S\/L\/V&#8221; is the right one.<\/p>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h3 class=\"wp-block-heading\">3. The evidence that the harness is the binding constraint<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">The strongest part of the Meng\/Hu survey is that it does not merely assert the thesis \u2014 it marshals convergent evidence that harness-level changes,&nbsp;<em>with the model held fixed<\/em>, move the numbers as much as or more than model upgrades. The pattern, drawn from the survey&#8217;s account of independent studies and deployments:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>A change to\u00a0only the edit-tool format\u00a0\u2014 no model change \u2014 reportedly produced an order-of-magnitude jump on a coding benchmark for certain models (on the order of 6.7% \u2192 68.3% for one model). Treat the exact figure as a practitioner report, but the\u00a0<em>direction and magnitude<\/em>\u00a0are the signal.<\/li>\n\n\n\n<li><strong>LangChain&#8217;s DeepAgents<\/strong>&nbsp;improved on TerminalBench 2.0 from 52.8% to 66.5% (+26%) through harness-layer changes alone \u2014 self-verification prompts, middleware-based context injection, lifecycle hooks \u2014 with zero model changes, moving from outside the top 30 to the top 5.<\/li>\n\n\n\n<li><strong>Meta-Harness<\/strong>&nbsp;(an automated harness-optimization framework) reached 76.4% on TerminalBench-2, surpassing hand-engineered approaches (74.7%), and delivered gains on held-out mathematics and text classification&nbsp;<em>without model changes<\/em>.<\/li>\n\n\n\n<li><strong>HAL (Holistic Agent Leaderboard)<\/strong>, a standardized evaluation harness running ~21,730 rollouts across nine models and nine benchmarks, cut evaluation time from weeks to hours and eliminated common implementation bugs \u2014 implying a non-trivial fraction of what prior literature logged as&nbsp;<em>agent<\/em>&nbsp;failures were actually&nbsp;<em>harness<\/em>&nbsp;failures.<\/li>\n\n\n\n<li><strong>AgencyBench<\/strong>\u00a0found that proprietary models perform best\u00a0<em>within their native execution ecosystems<\/em>\u00a0\u2014 direct evidence of\u00a0harness\u2013model coupling, a phenomenon a capability-only study cannot even see because it holds the environment constant or ignores it.<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\">The survey is careful \u2014 and so am I \u2014 to separate peer-reviewed evidence (HAL, SWE-bench, OSWorld) from preprint and practitioner reports (AgencyBench, SkillsBench, SandboxEscapeBench, vendor accounts). The honest summary:&nbsp;<em>no single number is load-bearing, but the convergence across independent sources is hard to dismiss.<\/em><\/p>\n\n\n\n<p class=\"wp-block-paragraph\">There is also an economic edge to this that lands directly in a CAIO&#8217;s lap. The survey ties harness design to\u00a0cost, not just accuracy. When a benchmark task consumes ~1 million tokens per execution, that load is driven by the harness&#8217;s context-management policy \u2014 what gets injected each turn, how memory is retrieved, how long the loop runs \u2014 not by model verbosity. The emerging operating metric is\u00a0Cost Per Task (CPT)\u00a0rather than tokens-per-second. As they put it: the design of the harness is the design of the cost curve.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>So what (for leaders):<\/strong>&nbsp;If your agent program&#8217;s unit economics are bad, the fix is unlikely to be a bigger model. It is almost certainly a context-management and loop-termination problem in the harness. Instrument CPT per task type before you renegotiate your model contract.<\/p>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h3 class=\"wp-block-heading\">4. The three engineering eras<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">The Meng\/Hu survey frames a clean historical arc that I find pedagogically useful, and which I now use with clients to locate where their org actually is:<\/p>\n\n\n\n<ol class=\"wp-block-list\">\n<li><strong>Prompt engineering (2022\u20132024):<\/strong>&nbsp;optimize the input text. &#8220;What text gets better outputs?&#8221; Chain-of-thought, few-shot, instruction tuning.<\/li>\n\n\n\n<li><strong>Context engineering (2025):<\/strong>&nbsp;optimize what the model&nbsp;<em>sees<\/em>. &#8220;What structured information do we assemble each turn?&#8221; Memory retrieval, tool-result formatting, context-window management.<\/li>\n\n\n\n<li><strong>Harness engineering (2026):<\/strong>&nbsp;optimize the full governance infrastructure. &#8220;What controls, feedback loops, and execution constraints make the system reliable?&#8221; All six components as an integrated whole.<\/li>\n<\/ol>\n\n\n\n<p class=\"wp-block-paragraph\">Each era is a strict&nbsp;<em>expansion of scope<\/em>, not a replacement. Most enterprises I advise are operating at era one or two while their problems are squarely era three. That mismatch is the single most common root cause of stalled agent pilots I see.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">The survey also traces the deeper lineage \u2014 the harness synthesizes three older traditions: the\u00a0governance-wrapper pattern\u00a0from software test harnesses (JUnit\/xUnit), the\u00a0interface-standard pattern\u00a0from RL environments (OpenAI Gym&#8217;s reset()\/step()\/observe()), and the\u00a0failure-mode catalog\u00a0from early LLM agents (AutoGPT, BabyAGI). None alone is sufficient; the harness is what you get when you combine the wrapper, the contract, and the hard-won list of what goes wrong.<\/p>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h3 class=\"wp-block-heading\">5. How to represent a harness: code vs. natural language<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">If the harness is now a first-class object, the next question is how to express it. Two papers give opposite-but-complementary answers.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">5.1 Code as the substrate (Ning, Tieu et al., 2605.18747)<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\"><em>Code as Agent Harness<\/em>\u00a0argues that code is no longer just the agent&#8217;s\u00a0<em>output<\/em>\u00a0\u2014 it is the\u00a0operational substrate\u00a0for reasoning, acting, environment modeling, and execution-based verification. The survey organizes this across three layers: the\u00a0harness interface\u00a0(code connecting agents to reasoning\/action\/environment),\u00a0harness mechanisms\u00a0(planning, memory, tool use, plus feedback-driven control), and\u00a0scaling from single- to multi-agent\u00a0settings where shared code artifacts enable coordination, review, and verification.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">5.2 Natural language as the substrate (Pan et al., 2603.25723)<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\"><em>Natural-Language Agent Harnesses<\/em>\u00a0takes the inverse position. It observes that harness logic is usually\u00a0buried in tightly coupled controller code, which makes it hard to inspect, compare, transfer, and ablate. So they externalize the high-level control logic into\u00a0NLAHs \u2014 editable natural-language documents\u00a0describing run-level harness policy \u2014 executed by a shared\u00a0Intelligent Harness Runtime (IHR)\u00a0that interprets them into agent calls, handoffs, state updates, validation gates, and artifact contracts.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">The empirical result matters: across coding, terminal-use, and computer-use benchmarks,\u00a0IHR-executed NLAHs achieve outcomes comparable to code and prompted realizations, while exposing a much shorter, inspectable surface \u2014 and module ablations show the explicit harness modules are individually analyzable. Their primitives (roles, contracts, durable artifacts, verification gates, delegation boundaries) are essentially the CAR\/six-component ideas rendered as a\u00a0<em>readable spec<\/em>\u00a0a compliance officer or domain expert could edit.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">They also answer the obvious worry \u2014\u00a0<em>won&#8217;t stronger models make the harness unnecessary?<\/em>\u00a0\u2014 by arguing that natural-language control is\u00a0durable: as tasks span many context windows, robust progress depends less on one-shot phrasing and more on durable state surfaces, validation gates, and clear responsibility boundaries.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>The synthesis:<\/strong>&nbsp;code gives you executability and verification; natural language gives you inspectability and portability. The mature stack will use both \u2014 natural-language policy documents (think AGENTS.md, skill bundles, CLAUDE.md) compiled or interpreted onto a code-grounded runtime. This is, not coincidentally, exactly how the leading coding-agent harnesses are already built.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">6. How to improve a harness: the optimization frontier<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">The newest papers stop treating the harness as something humans hand-tune and start treating it as something you can\u00a0search and co-evolve.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">6.1 HarnessForge \u2014 joint harness\u2013policy evolution (Chen et al., 2606.01779)<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\"><em>HarnessForge<\/em>\u00a0makes the sharpest conceptual move of the set. It formulates an agent system as a\u00a0harness\u2013policy pair\u00a0and argues that prior work optimized one\u00a0<em>or<\/em>\u00a0the other but rarely the\u00a0<em>compatibility between them<\/em>. It defines an explicit adaptation space separating harness-level execution structure from policy-level reasoning behavior, then\u00a0co-evolves\u00a0the two via\u00a0<em>fault-guided harness tailoring<\/em>\u00a0(let observed failures drive harness edits) and\u00a0<em>harness-conditioned policy alignment<\/em>\u00a0(align the reasoner to the harness it will actually run in).<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">This is the natural endgame of the harness\u2013model coupling result from \u00a73: if model and harness are coupled, you should optimize them&nbsp;<em>jointly<\/em>, not pretend they are independent.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">6.2 Observability-driven automatic evolution (AHE, 2604.25850)<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">A concurrent line \u2014\u00a0<em>Agentic Harness Engineering<\/em>\u00a0\u2014 automates the manual &#8220;inspect-trajectories-and-revise&#8221; loop through three observability pillars:\u00a0component observability\u00a0(every editable harness component gets a file-level, git-tracked, revertible representation),\u00a0experience observability\u00a0(millions of raw trajectory tokens distilled into a layered, drill-down evidence corpus), and\u00a0decision observability\u00a0(every edit paired with a self-declared prediction, falsified against the next round&#8217;s outcomes \u2014 &#8220;every edit becomes a falsifiable contract&#8221;). The reported result: ten iterations lifting pass@1 on Terminal-Bench 2 from 69.7% to 77.0% with the\u00a0base model frozen, and the evolved harness\u00a0<em>transferring<\/em>\u00a0to SWE-bench-Verified \u2014 evidence the gains encode general engineering experience, not benchmark-specific tuning. (I include this as a closely related work; it is not in your original list but it is the empirical companion to HarnessForge and worth your students&#8217; time.)<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">6.3 A-Harness \u2014 verification-gated skill orchestration (Huang et al., 2605.00663)<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\"><em>Affordance Agent Harness<\/em>\u00a0applies the harness idea to\u00a0embodied \/ robotics affordance grounding, where an agent must decide\u00a0<em>where and how<\/em>\u00a0to interact in messy open-world scenes. Prior systems chained skills (detection, segmentation, zoom-in, web search, interaction-imagination) along a\u00a0fixed pipeline\u00a0poorly matched to per-instance difficulty. A-Harness replaces the fixed script with a\u00a0closed-loop, budgeted runtime: a shared interface over heterogeneous skills, an\u00a0evidence store with cost control,\u00a0episodic memory\u00a0providing priors for recurring object categories, and a\u00a0Router\u00a0that adaptively selects and parameterizes skills with\u00a0verification-driven retries.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Two things to notice. First, it recasts the task as\u00a0&#8220;budgeted evidence seeking&#8221; rather than single-pass prediction\u00a0\u2014 a profoundly harness-shaped reframing. Second, the components map almost one-to-one onto the six-component formalism (router \u2248 E, skill interface \u2248 T, evidence store\/memory \u2248 C+S, verification gates \u2248 V, cost control \u2248 L). The same architecture that governs a coding agent governs a robot&#8217;s perception loop. That convergence is the strongest sign that &#8220;harness&#8221; is a real, domain-independent abstraction and not a coding-agent fad.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">7. Putting it together: one picture<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">Here is the synthesis I now draw on a whiteboard for clients.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>Layer 0 \u2014 Model (weights).<\/strong>&nbsp;Necessary, not sufficient. Capability ceiling.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>Layer 1 \u2014 Externalized capability (Zhou et al.).<\/strong>&nbsp;Memory (state across time), skills (procedural expertise), protocols like MCP\/A2A (interaction structure). These pull cognitive burden out of the weights.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>Layer 2 \u2014 The harness (Meng\/Hu; He\/Zhou).<\/strong>&nbsp;The unification layer that coordinates Layer 1 into&nbsp;<em>governed<\/em>&nbsp;execution. Formally H = (E, T, C, S, L, V), or CAR if you prefer the coarser cut. This is where reliability, cost, and safety are actually determined.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>Layer 3 \u2014 Representation (Pan et al.; Ning et al.).<\/strong>&nbsp;How the harness is&nbsp;<em>expressed<\/em>&nbsp;\u2014 code for executability\/verification, natural language for inspectability\/portability. Best practice uses both.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>Layer 4 \u2014 Optimization (Chen et al.; AHE).<\/strong>&nbsp;The harness is no longer hand-tuned; it is searched, co-evolved with the policy, and continuously improved under observability.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>Cross-cutting \u2014 domain generality (Huang et al.).<\/strong>&nbsp;The same architecture governs coding, computer-use,&nbsp;<em>and<\/em>&nbsp;embodied agents.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">The intellectual move that unlocks all of this is the one from the survey:\u00a0stop studying the agent&#8217;s components in isolation, and start studying the runtime that integrates them as a unified object.\u00a0The field understood the engine well and the chassis barely at all. These papers are the chassis getting its due.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">This five-layer picture is not a slide for me, it is the working checklist my team at&nbsp;<a href=\"https:\/\/www.linkedin.com\/redir\/redirect?url=https%3A%2F%2Fagentsarchitects%2Eai%2F&amp;urlhash=UJPx&amp;trk=article-ssr-frontend-pulse_little-text-block\" target=\"_blank\" rel=\"noreferrer noopener\">AgentsArchitects<\/a>&nbsp;runs client systems against: which layers exist, which are implicit, and where the next failure is most likely to originate. Most of the stalled agent programs we are brought in to fix turn out to be missing Layer 2 entirely.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">8. What this means in practice<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">For<strong>&nbsp;Students<\/strong>:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>The open problems are unusually tractable and unusually impactful right now. Pick one: a\u00a0formal harness specification language\u00a0with verifiable safety\/liveness over the LTS; a\u00a0cross-harness benchmark\u00a0that controls for harness when comparing models; a\u00a0security taxonomy\u00a0for harness attack surfaces (container escape, instruction-authority confusion); or\u00a0regression-free harness improvement\u00a0(how do you edit a harness without silently breaking a passing case?).<\/li>\n\n\n\n<li>Whatever you build,\u00a0report your harness. Adopt HarnessCard-style disclosure now. Your results will age better and your reviewers will trust them more.<\/li>\n\n\n\n<li>The V-component is the field&#8217;s blind spot (under-implemented in 14 of 22 surveyed systems). Evaluation infrastructure is undervalued and therefore high-leverage. Build there.<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\">For&nbsp;<strong>Fellow Researchers<\/strong>:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>The harness\u2013model coupling result (AgencyBench) means many published model comparisons are confounded. There is a genuine replication-and-reanalysis agenda here: re-run prior agentic comparisons controlling for harness and see what survives.<\/li>\n\n\n\n<li>Code-as-substrate and natural-language-as-substrate are not competitors; the interesting work is the&nbsp;<em>compiler<\/em>&nbsp;between them \u2014 turning an inspectable NL policy into a verifiable code runtime without losing either property.<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\">For&nbsp;<strong>CAIOs and Engineering Leaders<\/strong>&nbsp;\u2014 the part I am asked about most:<\/p>\n\n\n\n<ol class=\"wp-block-list\">\n<li><strong>Reallocate.<\/strong>&nbsp;If your agent budget is ~90% &#8220;which model \/ how much fine-tuning&#8221; and ~10% harness, you are inverted relative to where reliability is actually decided. The harness is where I would put the marginal engineer.<\/li>\n\n\n\n<li><strong>Hire for harness skills.<\/strong>&nbsp;The role is distinct: someone fluent in execution-loop semantics, context management, state persistence, observability, and sandboxing \u2014 not (only) a prompt specialist and not (only) an ML researcher.<\/li>\n\n\n\n<li><strong>Measure Cost Per Task, not tokens\/sec.<\/strong>&nbsp;Your context-management policy is your cost curve. Most agent ROI problems are harness-economics problems in disguise.<\/li>\n\n\n\n<li><strong>Demand harness disclosure from vendors.<\/strong>&nbsp;Before any bake-off, get each vendor&#8217;s E\/T\/C\/S\/L\/V completeness. A model demo without harness disclosure is a magic trick, not a procurement input.<\/li>\n\n\n\n<li><strong>Treat security as a harness property.<\/strong>&nbsp;Container escape and instruction-authority confusion are&nbsp;<em>isolation<\/em>&nbsp;and&nbsp;<em>lifecycle<\/em>&nbsp;failures (L), not model-alignment failures. They will not be fixed by a better model.<\/li>\n\n\n\n<li><strong>Plan for evolving harnesses.<\/strong>&nbsp;The frontier (HarnessForge, AHE) is automated harness improvement under observability. The competitive moat over the next 18 months will be&nbsp;<em>the rate at which your harness improves<\/em>, not the model you license.<\/li>\n<\/ol>\n\n\n\n<p class=\"wp-block-paragraph\">A practical starting point that costs nothing: take the six-component model in \u00a72 and score your own production agents \u2014 full, partial, or absent on each of E, T, C, S, L, V. The gaps usually map directly onto the incidents your on-call team is already firefighting. That self-audit&nbsp;<em>is<\/em>&nbsp;the first engagement we run at&nbsp;<a href=\"https:\/\/www.linkedin.com\/redir\/redirect?url=https%3A%2F%2Fagentsarchitects%2Eai%2F&amp;urlhash=UJPx&amp;trk=article-ssr-frontend-pulse_little-text-block\" target=\"_blank\" rel=\"noreferrer noopener\">AgentsArchitects<\/a>, we start with your architecture, not a sales deck, and if the honest answer is &#8220;your harness is already complete,&#8221; that is a perfectly good outcome too.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">The one-line takeaway I leave clients with:\u00a02025 was the year of agents; 2026 is the year of agent harnesses.\u00a0The model is the engine, but you are buying \u2014 and your customers are experiencing \u2014 the whole vehicle. Build the chassis.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">References<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">The following are the primary sources synthesized in this post. Where I have cited specific quantitative figures, they originate in these works (and, in several cases, in practitioner reports those works themselves cite and explicitly flag as non-peer-reviewed); readers should consult the originals and weight peer-reviewed versus preprint\/practitioner evidence accordingly.<\/p>\n\n\n\n<ol class=\"wp-block-list\">\n<li>X. Ning, K. Tieu, D. Fu, T. Wei, \u2026 J. He.\u00a0&#8220;Code as Agent Harness.&#8221;\u00a0arXiv:2605.18747 [cs.CL], 18 May 2026. https:\/\/arxiv.org\/abs\/2605.18747<\/li>\n\n\n\n<li>L. Pan, L. Zou, S. Guo, J. Ni, H.-T. Zheng.\u00a0&#8220;Natural-Language Agent Harnesses.&#8221;\u00a0arXiv:2603.25723 [cs.CL], 26 Mar 2026 (v2, 18 May 2026). https:\/\/arxiv.org\/abs\/2603.25723<\/li>\n\n\n\n<li>C. He, X. Zhou, D. Wang, H. Xu, W. Liu, C. Miao.\u00a0&#8220;Harness Engineering for Language Agents: The Harness Layer as Control, Agency, and Runtime.&#8221;\u00a0Preprints.org, DOI:10.20944\/preprints202603.1756 (v1, 23 Mar 2026; v2, 23 Apr 2026). https:\/\/www.preprints.org\/manuscript\/202603.1756<\/li>\n\n\n\n<li>Q. Meng, Y. Wang, L. Chen, Q. Wang, C. Lu, W. Wu, Y. Gao, Y. Wu, Y. Hu.\u00a0&#8220;Agent Harness for Large Language Model Agents: A Survey.&#8221;\u00a0Preprints.org, DOI:10.20944\/preprints202604.0428 (v1, 07 Apr 2026). https:\/\/www.preprints.org\/manuscript\/202604.0428\/v1<\/li>\n\n\n\n<li>C. Zhou, H. Chai, W. Chen, Z. Guo, \u2026 W. Zhang (21 authors; SJTU, SYSU, Shanghai Innovation Institute, CMU, OPPO).\u00a0&#8220;Externalization in LLM Agents: A Unified Review of Memory, Skills, Protocols and Harness Engineering.&#8221;\u00a0arXiv:2604.08224 [cs.SE], 9 Apr 2026. https:\/\/arxiv.org\/abs\/2604.08224<\/li>\n\n\n\n<li>M. Chen, C. Lv, G. Zhang, H. Chang, S. Zhou (Beihang University; Tsinghua University).\u00a0&#8220;HarnessForge: Joint Harness and Policy Evolution for Adaptive Agent Systems.&#8221;\u00a0arXiv:2606.01779 [cs.CL], 1 Jun 2026. https:\/\/arxiv.org\/abs\/2606.01779<\/li>\n\n\n\n<li>H. Huang, J. Shi, Y. Li, Y. Chen (HKUST(GZ); Knowin AI; Harbin Engineering University).\u00a0&#8220;Affordance Agent Harness: Verification-Gated Skill Orchestration.&#8221;\u00a0arXiv:2605.00663 [cs.RO], 1 May 2026. https:\/\/arxiv.org\/abs\/2605.00663<\/li>\n<\/ol>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>Closely related works referenced in passing (not in the original reading list, included for completeness):<\/strong><\/p>\n\n\n\n<ol class=\"wp-block-list\">\n<li>Agentic Harness Engineering (AHE).\u00a0&#8220;Agentic Harness Engineering: Observability-Driven Automatic Evolution of Coding-Agent Harnesses.&#8221;\u00a0arXiv:2604.25850, 28 Apr 2026. https:\/\/arxiv.org\/abs\/2604.25850<\/li>\n\n\n\n<li>A. Kapoor et al.\u00a0&#8220;Holistic Agent Leaderboard (HAL): The Missing Infrastructure for AI Agent Evaluation.&#8221;\u00a0arXiv:2510.11977 (accepted ICLR 2026).<\/li>\n\n\n\n<li>C. Jimenez et al.\u00a0&#8220;SWE-bench: Can Language Models Resolve Real-World GitHub Issues?&#8221;\u00a0ICLR 2024.<\/li>\n<\/ol>\n\n\n\n<p class=\"wp-block-paragraph\"><\/p>\n","protected":false},"excerpt":{"rendered":"<p>Discover why agent harnesses\u2014not just AI models\u2014are becoming the primary determinant of reliability, cost, governance, \u2026<\/p>\n","protected":false},"author":1,"featured_media":855,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[4],"tags":[],"class_list":["post-549","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-artificial-intelligence"],"_links":{"self":[{"href":"https:\/\/blog.agentsarchitects.ai\/index.php\/wp-json\/wp\/v2\/posts\/549","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/blog.agentsarchitects.ai\/index.php\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/blog.agentsarchitects.ai\/index.php\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/blog.agentsarchitects.ai\/index.php\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/blog.agentsarchitects.ai\/index.php\/wp-json\/wp\/v2\/comments?post=549"}],"version-history":[{"count":4,"href":"https:\/\/blog.agentsarchitects.ai\/index.php\/wp-json\/wp\/v2\/posts\/549\/revisions"}],"predecessor-version":[{"id":756,"href":"https:\/\/blog.agentsarchitects.ai\/index.php\/wp-json\/wp\/v2\/posts\/549\/revisions\/756"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/blog.agentsarchitects.ai\/index.php\/wp-json\/wp\/v2\/media\/855"}],"wp:attachment":[{"href":"https:\/\/blog.agentsarchitects.ai\/index.php\/wp-json\/wp\/v2\/media?parent=549"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/blog.agentsarchitects.ai\/index.php\/wp-json\/wp\/v2\/categories?post=549"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/blog.agentsarchitects.ai\/index.php\/wp-json\/wp\/v2\/tags?post=549"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}