Harness Engineering — Martin Fowler / OpenAI
URLs:
- https://martinfowler.com/articles/exploring-gen-ai/harness-engineering.html (Birgitta Böckeler analysis)
- https://openai.com/index/harness-engineering/ (OpenAI original)
Author: Birgitta Böckeler (analysis), OpenAI (original)
Published: 2025-2026
Summary
OpenAI built a large software system using AI agents (Codex) without manual coding, by creating a “harness” — a structured environment of tools, rules, and automated checks that guide and maintain agent-written code. Humans design environments and give feedback; agents write all the code.
Key Claims
- Harness = environment for agents: Rather than writing code directly, humans design the rules, tooling, and feedback systems that agents use. The harness is what makes agent code reliable.
- Three components of a harness: (1) Automated checks (tests, linters, static analysis), (2) Context updates (keeping agents informed of system state), (3) Human feedback loops (reviewing outputs, correcting course).
- Code quality enforced via harness: Rather than hoping agents write good code, the harness enforces quality constraints — agents can’t ship code that fails automated checks.
- Role shift: Engineers become “harness engineers” — designing the environment rather than writing the implementation. Programming skill shifts from implementation to orchestration.
- Mixed automated checks and human review: Neither fully automated nor fully manual — the harness handles the mechanical, humans handle the judgment.
- Scale claims: OpenAI shipped a large system this way, suggesting harness engineering is viable at production scale, not just toy projects.
Connection to Simon Willison’s Critique
Willison’s “slowing the fuck down” concern (Simon Willison) and harness engineering are the same problem approached from opposite angles. Harness engineering says: encode discipline into the environment. Willison says: don’t remove the human cognitive bottleneck without replacing it with something equivalent.