Everything written about the software layer that wraps AI models
A harness is the software that wraps around an AI model and connects it to the world — giving it tools, context, memory, and agency. The model is raw intelligence. The harness is what makes it useful. This page collects the best writing on the concept: where the word came from, what it means, and what nobody else is saying about it.
New: Force and Steering — Claude Code vs Codex essay workspace
A horse is a thousand pounds of speed and power. Humans figured that out ten thousand years ago. But the horse wasn't the breakthrough. The saddle was.
Before the saddle, you could ride — badly, briefly, and at the mercy of the animal beneath you. The saddle gave you a seat. The stirrups gave you leverage. The reins gave you direction. Suddenly the most powerful thing on four legs was yours to direct. Not tamed. Not diminished. Connected.
We're at the same moment with AI. The model is the horse — fast, powerful, astonishing. It can write code, synthesize research, debug distributed systems — and yet, out of the box, it can't read a file. A brain in a jar. Raw capability isn't the bottleneck. The connection is. The software that wraps a model, gives it tools, points it at your work, and lets you steer — that's the saddle. We call it a harness.
01 — The ConceptA harness is the software that wraps around a model and connects it to the world. It transforms raw intelligence into useful agency — giving the model hands, eyes, and memory.
The word carries exactly the right connotations. A harness is structural — engineered for a purpose, not bolted on as an afterthought. Connective — it links the powerful thing to the useful thing. Directional — it channels energy toward a goal. And respectful — it doesn't diminish what it wraps. A harness doesn't make a horse smaller. It makes the horse's power available.
Claude Code is a harness. Cursor is a harness. Codex is a harness. Every system that takes a model and makes it do real work is a harness. The question isn't whether you're using one — you always are. The question is whether it's a good one.
02 — AnatomyWhen you use Claude Code, you're not talking to Opus. You're talking to Opus through a harness — one that provides a specific set of capabilities. Take them apart:
Perception Read files. Glob for patterns. Grep for content.
See the codebase as it actually is right now.
Action Write files. Edit code. Run shell commands.
Make changes that persist in the real world.
Context CLAUDE.md files. Git status. Conversation history.
Know where it is and what matters here.
Memory Project notes. User preferences. Past decisions.
Build on previous work instead of starting fresh.
Judgment Permission systems. Safety rails. Confirmation prompts.
Know when to act and when to ask.
Feedback Test results. Linter output. Build errors.
See the consequences of its own actions.
None of this is the model. The model doesn't "have" tools — it's given tools by the harness. The model doesn't "remember" your project — the harness loads context into the conversation. The model doesn't "decide" to be careful with destructive commands — the harness enforces permission boundaries.
The model provides the reasoning. The harness provides everything else.
03 — The DistinctionThere's an obvious objection: isn't a harness just an app? A wrapper? A thin layer of UI over an API? No. An app presents information and takes input. A harness manages a loop — perception, reasoning, action, feedback — and keeps it running autonomously. The architecture is fundamentally different. A chat interface is a harness, technically. It's just a bad one — it gives the model no eyes, no hands, and no memory. You become the hands, copying files in and pasting diffs back.
This is the default experience most people have with AI today, and it's why so many walk away underwhelmed. The model is powerful. The harness is anemic. A copy-paste workflow forces the human to be the perception layer, the action layer, and the feedback loop — all at once. The model sits in the middle, brilliant and helpless.
And the pattern extends far beyond coding. NotebookLM is a research harness — it ingests your sources, lets the model read across them, and generates synthesis you couldn't get from a chat window. Perplexity is a search harness — it gives the model live access to the web and the ability to reason over results. Devin, Replit Agent, v0 — all harnesses, each connecting the same underlying intelligence to a different domain. The concept isn't specific to code. It's wherever a model needs to touch the world.
04 — The EvidenceIf "harness" names a real architectural pattern, you should be able to find it in the wild — independently reinvented by teams with different goals and different constraints. You can.
Claude Code is Anthropic's proprietary CLI, tightly integrated with Claude models. OpenCode is an open-source terminal agent, model-agnostic, supporting 75+ providers. Codex is OpenAI's cloud-native coding agent, sandboxed and async. Different companies. Different constraints. Different philosophies.
Line them up and the anatomy is identical. Same capabilities, same architectural layers, same separation between harness and engine. This isn't copying — it's convergent design. The problem constrains the solution.
05 — ClosingOnce you have the word, you start seeing the pattern everywhere. Every time a model reads a file, runs a command, or remembers a preference — that's the harness at work. Every time it can't — that's the harness missing.
The concept isn't new. People have been building this layer since the first developer plugged GPT into a script. What's new is the name — and with it, the ability to see the architecture clearly: model here, harness there, and between them, all the decisions that determine whether raw intelligence actually reaches the work.
A horse is fast. A saddle makes it yours. A model is brilliant. A harness makes it useful. That's the whole idea.