Open source · in the workshop · early access open
The model is rented.
The harness is yours.
A harness is everything wrapped around a coding model — the loop it runs, the context it sees, the tools it holds, the tests that judge it, the moment it's allowed to say done. Harnessaur builds yours, watches it work, and keeps handing you the next specific thing to fix.
It learns from the way you work. It teaches you back what it learned. It will be open source, and it is built to be taken apart.
- harness /ˈhɑːnɪs/ · noun
- Everything around the model. You don't get to change the model.
16 lines live · 12% load · 60 fps
Drag the core. Click a line to release it.
C cut · Space nudge · R reset
01 Anatomy
Same model. Different harness. Different engineer.
LangChain wrote it as an equation: Agent = Model + Harness. Everyone rents the
same handful of models. What separates two teams using the same one is the thing they built
around it.
That thing has parts, and every part is a decision somebody made — often by accident. How much context goes in, and in what order. Which tools are on the table. What the agent is told before it starts, and what it's shown after it fails. Where the loop closes. Who gets to decide the work is done.
None of that is model capability. All of it is engineering. It is also, at the moment, the part of the job with the most leverage in it.
- 01ContextWhat the model sees, and in what order. Scarce, and it rots.
- 02ToolsWhat it can actually do. Every definition costs tokens before it is ever called.
- 03LoopPlan, act, check, revise. And how many rounds you are willing to pay for.
- 04TestsThe part of the harness allowed to say no without asking you first.
- 05GuardrailsHooks, linters, type checks, permissions. Deterministic, cheap, boring, load-bearing.
- 06MemoryWhat survives the session — and what should have been dropped three sessions ago.
- 07StopThe hard one. What done means, and who is allowed to declare it.
02 The loop
Guides push forward. Sensors push back.
Birgitta Böckeler splits a harness in two. Guides are feedforward: the instructions, the examples, the map you hand the agent before it starts. Sensors are feedback: the tests, the types, the linters, the reviews that tell it what actually happened.
Her failure modes are the useful part. Keep only the sensors and you get an agent that repeats the same mistake with excellent telemetry. Keep only the guides and you get an agent that follows rules nobody has ever checked. Most real harnesses are lopsided in one of those two directions, and the owner usually can't tell which.
She also splits the checks themselves: computational controls run on a CPU and are cheap and certain — a test suite, a type checker, a linter. Inferential controls run on a GPU and cost real money to be roughly right — an AI reviewer, a model judging a diff. Knowing which kind of control a problem deserves is most of the craft.
The loop worth your attention is the outer one.
Kief Morris draws a line between being in the loop and being on it. When you don't like what came out, the in-the-loop move is to fix the artefact. The on-the-loop move is “to change the harness that produced the artefact.”
Everyone knows this and almost nobody does it, because fixing the artefact takes four minutes and fixing the harness takes an afternoon and can't be justified on any single task. It only pays across the next two hundred. So the work gets deferred, forever, by people who are individually behaving rationally.
That is the specific gap Harnessaur is built for. The word for it in the literature is self-improving, and it isn't ours — Morris describes a harness that “generates recommendations for improving itself,” and the systems that result as “robust, maybe even anti-fragile.” Whether that is possible was never the interesting question. Who gets to approve the recommendation is.
“…an agent harness that generates recommendations for improving itself.”
What Harnessaur adds
Most harnesses are a folder of markdown somebody wrote in March and hasn't opened since. Harnessaur treats yours as a system under observation. It keeps a record of what each guide was meant to prevent and whether it ever prevented anything. It notices when a sensor fires so often that people started ignoring it. It watches where your runs actually die, as opposed to where you assume they do.
Then it tells you. Not a score out of ten — a specific edit, with the evidence that suggested it.
↳ The shape of a suggestion
- “This rule has been in context for every run this month and has never changed an outcome.” Delete it, or find out why it isn't firing. Either way it is currently costing you tokens on every single call.
- “Four of your last eleven failures were the same missing migration check.” A pre-commit hook would have caught all four before the model ever saw them. Here is the hook.
- “Your instructions file is nine hundred lines.” The agent reads all of it every time and demonstrably acts on about sixty. Here are the sixty.
Those are illustrations of the form, not real output. Nothing has run yet, and we are not going to print invented numbers on a page whose entire argument is that you should measure things.
What it will not do is act on any of it by itself. You approve every change to your own harness. A tool that quietly rewrites the thing you are supposed to be learning has defeated its own purpose.
03 Under load
A harness is only judged when something fails.
That rig is a real solver — 141 particles and 170 distance constraints, Verlet-integrated on a fixed 120 Hz timestep, up to 12 substeps a frame, constraints relaxed 6 times per substep. Every line you can see is carrying a number.
Grab the core and pull. Lines taking weight run warm; lines going slack run cold. Release one and the load doesn't vanish — it moves to the neighbours, and the structure holds. Let go and it settles.
Your browser can't run it, so the page is showing a still instead. In the live version you grab the core and pull: lines taking weight run warm, lines going slack run cold, and releasing one moves the load to its neighbours rather than dropping it.
That is the whole argument, in an object. A harness is not a wall that stops failure. It is a distribution of load with enough redundancy that one path dropping out isn't the end of the run, and enough damping that the system comes back to rest instead of ringing forever.
04 The budget
Context is a budget, not a container.
Anthropic's framing is the one that changes how you build: attention is finite, and “every new token introduced depletes this budget.” The design goal is not fit it in. It is to find the smallest set of high-signal tokens that produces the outcome.
This is measurable, not folklore. Chroma evaluated eighteen models while holding task difficulty constant and only growing the input, and found that “model performance consistently degrades with increasing input length.” Their sharper point: what matters more than whether the information is present is how it is presented.
So the mechanisms that matter are unglamorous. Progressive disclosure, where a capability costs on the order of a hundred tokens sitting idle and only loads its detail when it is actually needed. Sub-agents as context isolation — Anthropic describes a subagent burning “tens of thousands of tokens or more” internally and returning “often 1,000–2,000 tokens” to the caller. Pruning what the agent no longer needs to be holding.
And there is a real payoff signal: on the public BrowseComp benchmark, Anthropic reported in June 2025 that token usage alone explained 80% of the performance variance. How you spend the budget is not a rounding error. It is most of the outcome.
| Field | This run | Median, last 40 |
|---|---|---|
| tokens in | — | — |
| tokens out | — | — |
| cache hit rate | — | — |
| tool calls | — | — |
| loop rounds | — | — |
| time to green | — | — |
| human edits after | — | — |
We are not going to make these up. Nothing has run. This is the shape of the receipt Harnessaur prints after every task, and we will publish our own before we ask you to believe anyone else's.
05 The other direction
A tool that makes you worse at your job is a bad trade.
The leverage in this era is going to people who understand why their harness works. That understanding does not arrive by using something that hides its reasoning from you.
So every suggestion arrives with its evidence. When Harnessaur proposes a change it shows you the runs that motivated it, what it expects will change, and how it will know if it was wrong. Disagree and you say no — and it records that, because a rejected suggestion is a signal about your codebase that nobody else has.
There is a reason to care about this beyond taste. In June 2026, GitLab and The Harris Poll surveyed 1,528 developers across six countries; 85% agreed that AI has shifted the bottleneck from writing code to reviewing and validating it. GitLab sells tools for exactly that, so read the number with the appropriate squint — but the direction is corroborated everywhere, from Kent Beck (“coding isn't the bottleneck anymore”) to Google's own DORA report, which observes that friction “doesn't vanish so much as move.”
If review is the constraint, then getting better at review is the skill worth having. Not the tool's skill. Yours.
Guides that survive contact
Writing instructions an agent still follows on run two hundred, and knowing how to tell whether it did.
Sensors that fail cheaply
Choosing what a CPU can settle for free, and reserving the expensive judgement for what genuinely needs it.
Reading a budget
Looking at a context window the way you look at a flame graph — as a place where something is being wasted.
06 The honest part
Things we can't tell you yet.
This page is an argument, not a demo. Here is what it is missing, in the order a sceptic would ask.
Nothing has shipped
No benchmarks and no product screenshots. The only working software on this page is the simulation, and that is a rendering of the idea rather than a demonstration of the product.
There is no perfect harness
Böckeler is explicit that this is “an ongoing engineering practice, not a one-time configuration,” and that harnesses for functional behaviour remain unsolved. Anyone selling you a finished one is selling you a folder of markdown.
The evidence is genuinely mixed
METR's 2025 randomised trial found experienced open-source developers were 19% slower with early-2025 AI tools. METR now marks that result out of date; their February 2026 follow-up estimates a speedup, with confidence intervals crossing zero. Both belong on the table.
And it has changed direction before
DORA's 2024 report associated each 25% increase in AI adoption with a 1.5% drop in delivery throughput and a 7.2% drop in stability. In 2025 the throughput finding reversed — but instability did not. These are correlations with wide intervals, not causes.
The human does not leave
OpenAI's own account of shipping a million lines this way still says “humans always remain in the loop.” Böckeler's version is better: a good harness should “direct it to where our input is most important.” Redirect, not remove.
Verifiers can be gamed
An agent rewriting a test to match broken behaviour is Goodhart's law arriving on schedule. Make a signal the target and it stops being a measurement. It is the best argument we know for a person staying on the loop rather than walking away from it.
07 The invitation
Open source, because a harness that learns from you should belong to you.
Harnessaur will be open source. Not open-core. Not source-available with an asterisk in the licence. Open source.
There's a practical reason alongside the principled one. A system that improves by learning from the people using it gets better roughly in proportion to how many different ways it gets used, and how freely those people can look inside it, disagree with it, and change it. A closed version of this idea would improve more slowly, and you would have to take our word for how much.
Who this is for
People who want to get into harness engineering. Not only use one — build one, argue about one, take one apart to see which half was load-bearing.
It's a young discipline with an unusual property: nearly everything worth knowing was written in the last eighteen months, in public, by people who are visibly still working it out. You can read most of the primary literature in a weekend. The sources at the bottom of this page are a reasonable place to start, and several of them contradict each other, which is the healthiest sign a field can give you.
If that sounds like your kind of thing, get in touch. There is no waiting-list dashboard. There is an inbox, and a person who reads it.