Harness
Harness
The program that runs the loop between the model and the real system
✓ Runtime & SessionWhat is a Harness
The harness is the surrounding program that makes an agent work at all, Claude Code is one example. The model itself only produces text and structured tool-call requests, it has no way to actually read a file, run a command, or reach the internet. The harness is what assembles the context sent to the model, executes whatever tool calls come back, and feeds the results in as the next piece of context.
Everything mechanical about an agent's behavior that isn't the model's own reasoning lives in the harness: which skills are installed and scanned, which hooks fire on which events, how permission prompts are shown, how a worktree gets created for isolated work, when compaction runs. The model decides what it wants to do, the harness decides what is actually allowed to happen and makes it happen.
The harness is not the same thing as the model, and conflating the two causes real confusion, a hook denying an action is the harness enforcing a rule, not the model choosing caution. Different harnesses can wrap the same underlying model with very different tool sets, permission systems, and skill libraries, which is why the same model can behave very differently depending on what it's running inside of.
The model never touches the file system, a shell, or the network directly. Every real action passes through the harness, which is also where hooks, permissions, and session state live.
Build your own agent skills, not just prompts.
We design, build, and ship the Claude Code skill libraries production teams actually run on.
Talk to AY Automate ↗