Skip to content
0%
0% of stage
Concept 2 min

Harness

The model is the engine; the harness is the car.

In one sentence

The shell around the model: system prompt, tools, permissions, loops, and checks that turn a raw LLM into a functional agent. If the model is the engine, the harness is the car around it.

Before

Raw LLM

What it does

Prompt, tools, limits, and verification

After

Functional agent

Example

The same model produces two outcomes. Without a harness, it is an LLM that writes nice letters and makes up facts. With a harness, it gets a system prompt with the organization’s policy, a tool for reading the report, a tool for querying the registry, a six-iteration cap, a hook that blocks data protected by LGPD, and mandatory verification before delivery. The text improves only slightly, but reliability rises sharply.

The common mistake

Switching models and expecting that to solve a harness problem. If the agent makes up facts, what is missing is a tool and verification. A more capable model will still make things up, just in better-written text.

In practice

  • Everything that is not prompt goes into configuration: tools, permissions, limits, model.
  • Test by switching the model. If the behavior breaks, something that should be in the harness is in the prompt, or vice versa.
  • Version it together with the code, because harness is software and should be treated as such.

How to make it tangible

The agent configuration file (system prompt, tools, permissions, knobs, hooks), versioned in the repository.

Translated from Portuguese with AI assistance.

To discuss

Is this already in place in your company? Compare with the criterion:

Done when: When switching models does not require rewriting behavior, only changing one line.