🖋️ Co-authored by: Andrés L. Suárez-Cetrulo & Mauricio AI 🐾
Follow-up to our post from two weeks ago on token frugality and confidence guards. Synthesised through Mauricio’s Orchestrator and syndicated to DataStruggling via MCP.
“In 2023, everyone argued about who had the best base model weights. In 2026, foundation models are interchangeable electricity. The real software product, the thing that determines whether your agent solves a complex workflow or burns $500 in a circular terminal panic loop, is the execution harness.”
Two weeks ago, Mauricio and I co-authored a post about our battle with autonomous agent engineering: how we slashed prompt token waste using SoL-Pi harness pruning, built a confidence guard (TCME) to prevent local models from hallucinating, and wired our edge assistant directly to WordPress via MCP.
Everyone can access frontier model APIs like Fable or Astra with a single line of Python, or pull down open-weights like Qwen Coder or Gemma onto a local workstation. Yet, when you actually hand an autonomous agent a multi-file refactor, a distributed data pipeline, or a continuous scraping task, it repeatedly trips over its own feet.
Not because the model lacks intelligence, but because the runtime scaffolding around the model, its execution harness, is static, brittle, and hand-crafted.
As we were wrestling with this, researchers at Northwestern University and Google Cloud AI Research dropped a quite consequential agent paper: Harness²: Recursive Agent Harnessing for an Open World (arXiv:2610.14224), by Xu, Chen, Pfister, et al.
Their paper formalises a formula that every AI engineer needs to tattoo on their forehead:
$$\text{Agent} = \text{Model} + \text{Harness}$$
Over the past few days, we took Harness²’s principles and implemented them directly into Mauricio’s live engine. In this post, we’re going to break down:
- Why the Agent Harness is becoming the real defensible product in AI (and why model weights are a commodity).
- The Open-World Bottleneck: Why traditional self-improvement fails when you don’t have unit tests or ground-truth answer keys.
- How Google’s Harness² Tackles This with Two-Level Recursion (Task-level contrastive Propose–Probe–Compose + Harnessing-level Experience Libraries).
Here is the architectural reality, the benchmarks, and the code.
1. The Commoditisation of the Model (and the Rise of the Harness)
Let’s address the elephant in the server room: Foundation model intelligence is being commoditised at blistering speed.
If you run a software company today, building a business solely around a custom prompt wrapped over a frontier model API has zero moat. The gap between top-tier proprietary models and open-weights shrinks every six months. If your agent fails, switching from Model X to Model Y rarely fixes the underlying issue.
Why? Because when autonomous agents fail in production, they almost never fail because the model doesn’t know Python syntax. They fail because:
- Context Pollution: The agent leaves stale bash outputs and ANSI escape codes in context, blinding its attention window.
- Verification Neglect: The agent may write a deliverable file, mark the task “done”, and never re-open the file from disk to verify whether it actually compiled or got truncated.
- Tool Schema Friction: The agent misinterprets subtle argument formats or rate-limit nuances across external APIs.
- Rigid Recovery: When an environment constraint changes, a static prompt template has no mechanism to mutate its operational rules.
All of these are harness-level failures.
The harness is the totality of the runtime software layer mounted between the user and the frozen model:
+-----------------------------------------------------------------------+
| THE AGENTIC STACK (2026) |
+-----------------------------------------------------------------------+
| 1. System Prompt : Identity, conversational tone, constraints |
| 2. Guardrails : Immutable safety & verification assertions |
| 3. Memory Rules : Semantic retrieval & declarative heuristics |
| 4. Specialized Skills: Domain macros (e.g., GP5 tabs, audio stems) |
| 5. Tool Guidance : Compact TypeScript schemas & API formatting |
| 6. Auxiliary Scripts : Sandboxed verification & linting utilities |
| 7. Fallback Cascade : Escalation ladder for confidence drops |
| 8. Context Hygiene : Active observation truncation & compaction |
+-----------------------------------------------------------------------+In Xu et al. (2026), Google formalises this as a modular configuration of $K=8$ file-mounted components. Each component is a living code or Markdown artefact.
And here is the headline finding from Google’s experiments across LAB (deep learning research automation), SWE-bench Verified, and WorkBuddy-Bench (general office computer workflows):
The Harness Dominance Problem: When evaluating model performance across challenging multi-turn benchmarks, a weaker base model operating inside an evolved, adaptive harness consistently outperforms a state-of-the-art frontier model constrained to a naive baseline harness.
2. The Open-World Dilemma: Self-Improvement Without Ground Truth
If the harness is the product, how do you improve it?
In standard reinforcement learning or SWE-bench agent benchmarks, you have an automated unit-test suite. The agent attempts a patch; the test passes or fails. A ground-truth reward signal $r \in \{0, 1\}$ is instantly available.
When Mauricio executes a task:
– Did the scraper recover cleanly, or did it fail silently?
– Did the generated Guitar Pro tab follow proper fingerings, or is it unplayable?
– Did the WordPress draft render correctly with clean HTML, or did an unescaped tag break the stylesheet?
If you naively ask an LLM: “Inspect your last run and improve your system prompt based on what happened”, it will hallucinate subjective improvements. Worse, it will overfit to the immediate task, adding bloated hyper-specific rules that corrupt its general reasoning. That is context contamination.
To make an autonomous agent self-improve in production, you need an architecture that extracts actionable lessons without external reward labels and without bloating the runtime prompt.
3. How Google’s Harness² Solves It: Two-Level Recursion
Google Cloud AI Research solved this bottleneck by decoupling adaptation into two distinct recursive loops operating on different timescales:
LEVEL 1: TASK RECURSION (In-Task Exploration & Execution)
========================================================================
[User Request]
|
v
+--------------+ +---------------+ +--------------+
| PROPOSE | =====> | PROBE | =====> | COMPOSE |
| Invariant vs | | Light Trial & | | Synthesise & |
| Domain Cands | | Error Signals | | Commit Patch |
+--------------+ +---------------+ +--------------+
|
-------------------------------------------------------------|----------
LEVEL 2: HARNESS RECURSION (Meta-Learning & Experience Archive) |
=============================================================|==========
v
+-------------------+
| META-JUDGE |
| Failure Triang. |
+-------------------+
|
v
+-------------------+
| IMPROVEMENT LIB |
| Diagnostic Memory |
+-------------------+Level 1: The Contrastive Propose–Probe–Compose Loop
Instead of blindly committing to a strategy, the agent divides candidate actions into two orthogonal buckets:
1. Task-Invariant Components: Strategies that apply universally.
2. Task-Domain Components: Context-specific heuristics.
During execution, the agent probes potential failure modes with non-destructive queries before committing changes. If it detects an unexpected error or drift, it composes a targeted patch to its operational harness.
Level 2: The Evolving Experience Archive
This is where the magic happens. Instead of perpetually stuffing every discovered lesson into the system prompt, the Harness² meta-engine files discoveries into an Improvement Library.
The library categorises every discovery under three strict dimensions:
– Trigger Condition: The exact environmental signal or error pattern.
– Root-Cause Diagnosis: Why the failure occurred at an architectural level.
– Executable Resolution: The precise, verified remedial action.
At the start of subsequent tasks, Mauricio queries the Experience Library semantically. If, and only if, the incoming task matches a historical trigger condition, the relevant operational rule is selectively injected into context.
Strategic Takeaways for AI Engineers
- Models are Commodities; Scaffolding is Value: Stop evaluating your AI roadmap based solely on foundation model benchmarks. Benchmark your harness. An agent with an adaptive, self-pruning harness using a 3B model might sometimes outperform a 70B model with a naive system prompt.
- Never Commingle Operational Memory with Base Prompts: Shoving guidelines into a single 15,000-token prompt ruins attention and causes hallucinations. Use an external improvement library with trigger-based retrieval.
- Embrace Two-Level Recursion: Allow your agent to probe failure modes at task time, and let a meta-judge reflect on failures post-turn. Your software system should become more reliable every single day it runs.
📚 References & Verified Literature
- Harness² (Recursive Agent Harnessing): Xu, X., Chen, K., Liu, Z., Pfister, H., & others. (2026). Harness²: Recursive Agent Harnessing for an Open World. arXiv preprint arXiv:2610.14224. Google Cloud AI Research & Northwestern University.
- SoL-Pi (Prompt Harness Optimization): Liu, H., Ye, T., Gao, S., Cao, Q., Li, Y., Zhuge, M., Wang, D., Zhang, R., Luo, P., Bian, J., Zhu, L., Zhu, L., Xie, E., & Han, S. (2026). SoL-Pi: Recursively Scaling Auto-Research Loops for Efficient Agent Harness. arXiv preprint arXiv:2609.20519.
- GroCH (Concept Drift & Stream Learning): Suárez-Cetrulo, A. L., Cervantes, A., & Quintana, D. (2026). A growing concept history of recurring classifiers for high-frequency data streams. Neurocomputing, 684, 133506. DOI: 10.1016/j.neucom.2026.133506.
- CBPE (Confidence-Based Performance Estimation): Kivimäki, J., Białek, J., Nurminen, J. K., & Kuberski, W. (2025). Confidence-based Estimators for Predictive Performance in Model Monitoring. Journal of Artificial Intelligence Research (JAIR), 82, 209–240. DOI: 10.1613/jair.1.16709.
- Model Context Protocol (MCP): Anthropic. (2024). Model Context Protocol Specification. modelcontextprotocol.io.
Why the Agent Harness is the Real AI Product: Google’s Harness², Two-Level Recursion, and How Mauricio Adapts on the Fly
Stay connected