FYI, the software around the model matters.
A harness is the software that coordinates calls to a model and connects them to tools and results. Its scope varies: context handling, checks, logging, and recovery may sit in the harness or in services around it.

A proposed tool call is not an executed action. In this example, the harness checks permissions before running the tool; disallowed calls can be rejected or paused for approval. Responsibilities vary by system.
View diagramSee it happen
Your request“Find a quiet restaurant for two at 7.”
The surrounding software runs the permitted tool.
It checks that the search is allowed, runs it, and passes the result back to the model. A booking would need your approval in this example.
Juniper · quiet dining room · table for two at 7 pm
The harness connects model requests to tools, context, and permission checks.
Scripted illustration, not a live AI result. No real search or booking takes place.
What happens around the model
For the fictional request “Find a quiet restaurant for two at 7,” the model proposes a search. Something still has to check that request, call the search tool, and return its result for the next model response.
That coordinating software is the harness in this example. It validates the requested tool and its inputs, runs the fictional search, and passes back the result. It also routes a booking request through an approval check instead of treating generated text as permission.
No live search or reservation happens in the demonstration. It separates the parts so you can see which component does what.
A common mix-up
The harness is not another language model, and it is not merely a clever prompt. It is software connecting model calls to the rest of an application.
There is no universal harness checklist. One system may handle conversation state inside its harness; another may use a separate service. Naming the boundary matters less than understanding the responsibilities.
Why it matters
Two products using the same model can behave differently because the surrounding software differs. One might retry a failed request, show what happened, and require approval; another might not.
Ask where permissions are enforced and how a failed tool call is handled. An instruction saying “ask before booking” is not equivalent to a booking tool that cannot execute without approval.