"Harness" has become the word of the month in AI agent circles, with about 2,200 posts in our X sample. If it sounds like jargon, it's actually a simple idea, and Google Research's new Harness² paper is a good way to understand it.
What's a harness?
From the Harness² README: a harness is "the system around a model that enables it to act as an agent: prompts, tools, memory, skills, orchestration, and more."
A model on its own just predicts text. The harness is what turns that into an agent that reads files, runs commands, remembers context and splits up tasks. Claude Code, Codex, Cursor and OpenCode are all harnesses, and they can run the same model with very different results.
Harness² breaks a harness into eight editable components:
- System prompt
- Guardrails
- Memory
- Tool guidance
- Subagents
- Skills
- Scripts
- Plugins
If you've written an AGENTS.md, a skill or a hook, you've already been tuning a harness by hand.
What Harness² does
Harness² automates that tuning, without changing the model's weights. It works at two levels:
- Per task: a step called Propose–Probe–Compose. It proposes edits to the harness, probes their effect by running the same task, and composes a refined harness from the differences between runs. The authors stress it does this "without ground-truth feedback". It doesn't need to know the right answer.
- Across tasks: it keeps a persistent "improvement harness" that collects adopted harnesses and evidence-backed lessons, to guide future refinements.
It can explore in parallel (try several candidate harnesses at once) or sequentially (keep refining one).
The results
Per the paper and README, across three professional benchmarks and four model–harness setups, a single Harness² step improved GLM-5 and Gemini 3.5 Flash over their base harnesses:
| Benchmark | What it tests | Best reported gain |
|---|---|---|
| WorkBuddy-Bench | Office, web and code tasks | up to +11.5 points |
| JobBench | Professional work | up to +4.5 points |
| LAB | Legal work | up to +11.8 pp partial pass rate |
The authors also report that giving the per-task loop a bigger budget brings further gains. These are the paper's own results, and the paper is a fresh preprint (submitted Oct 9, 2026).
Why builders should care
The practical lesson isn't "install Harness²". It's that the harness is a lever you control:
- Switching models isn't the only upgrade. Better tool descriptions, tighter guardrails and good skills can move results without changing the model.
- Evaluate your harness like code. Run the same task with two versions of your AGENTS.md and compare. That's a manual version of what Harness² automates.
- Watch the cost. Every probe is another full agent run. Automatic harness tuning trades compute for quality.
Trying it
The repo needs Linux, Python 3.12 and uv:
uv venv --python 3.12 .venv
source .venv/bin/activate
uv pip install -e '.[render]'
harness2-demo --output runs/demo --k 2
The demo uses deterministic editors and real Python executions, and needs no model credentials. Model-backed benchmark runs use Vertex AI. The README warns they "incur API costs" and suggests starting with a small task selection. The release supports OpenCode and Codex as executors.
It's Apache 2.0, and the README notes it's "not an officially supported Google product".
Related
- Running several harnesses side by side? See T3 Code.
- Choosing a harness to begin with: Cursor vs Claude Code vs Codex.
- Making any harness safer: permissions and sandboxes.






