Claude Code

The harness

The model is one part of Claude Code; around it is a harness of tools, permission rules, CLAUDE.md, and event hooks. You configure the harness, not the model.

7 min

The model alone does not make an agent

When people say "Claude Code," they often mean the AI that reads and edits their code. But the model is only one component. What actually determines how Claude Code behaves in your project is the harness around the model: the loop that drives it, the tools it can call, the permission rules that limit what those tools can do, the memory files it reads at startup, and the hooks that fire when specific events occur.

Think of a racing car: the engine is extraordinary, but the suspension, brakes, and transmission determine what the car actually does on a track. Changing any of those changes the outcome, even if the engine stays the same. The harness is the rest of the car.

The practical implication: if you want Claude Code to behave differently in a project, more cautiously, in a specific style, following a particular workflow, you configure the harness, not the model. Most of the configuration is plain text and JSON files that live in your project directory.

MODELTOOLSPERMSCLAUDE.mdHOOKSLOOP

Select a numbered hotspot to see what occupies that part of the diagram.

Tap each card to see its one-line role in the harness.

Question 1 of 4

What is "the harness" in Claude Code?

Answer choices for question 1