Addy Osmani (Google) published an article on April 19, 2026 that consolidates into doctrine what Viv Trivedy, HumanLayer, Anthropic, and Birgitta Böckeler have published separately since early 2026: harness engineering. His thesis holds in one equation, credited to Trivedy:
> "Agent = Model + Harness. If you're not the model, you're the harness."
Reformulated by Osmani: a correct model in a great harness beats a great model in a bad harness. The empirical proof comes from Terminal Bench 2.0: Claude Opus 4.6 inside Claude Code scores markedly lower than the same model inside a custom harness, and the Trivedy team took a coding agent from Top 30 to Top 5 by changing only the harness.
Osmani articulates three methodological principles. The skill issue reframe (HumanLayer): most failures are not model limitations but configuration problems. The ratchet principle: every line of an AGENTS.md must be traceable to a concrete past failure — "add only when you've seen a real failure, remove only when a capable model has made them redundant". The working backwards from behaviour approach: don't pre-build infrastructure, derive each component from the expected behavior.
Seven harness primitives follow: filesystem and Git (durable state), bash and code execution ("hand them a kitchen, not a single kitchen gadget"), sandboxes (isolation and defaults), memory and search (reloaded AGENTS.md, MCP, Context7), battling context rot (compaction, tool-call offloading, progressive-disclosure skills, Anthropic's full context resets), long-horizon execution (Ralph Loop, planning, planner/evaluator split — "GANs for prose"), hooks ("success is silent, failures are verbose").
On AGENTS.md, two lessons: under 60 lines (HumanLayer), "pilot's checklist, not style guide". On tools: "ten focused tools outperform fifty overlapping ones" — including MCP security.
Osmani then draws on Fareed Khan's breakdown of the Claude Code architecture into seven layers (input, knowledge, integration, execution, output, observability, multi-agent) to show that every prior concept has a concrete home in production.
Then comes the Anthropic phrase that frames the debate: "Harnesses don't shrink, they move." When a model improves, the scaffolding that encoded its limitations disappears, but the ceiling moves and new scaffolding emerges. Added to this is the model-harness training loop: useful primitives become standard, get post-trained into the next model, creating co-training and overfitting (Opus 4.6 "feels different inside Claude Code").
The article closes on Harness-as-a-Service (Claude Agent SDK, Codex SDK, OpenAI Agents SDK) and three open questions: multi-agent orchestration on a shared codebase, self-analyzing harnesses, JIT tool/context assembly "closer to a compiler than to static config".
A consolidation piece that stabilizes the field's shared vocabulary and shifts harness engineering from an emerging discipline to a shared consensus.