How harnesses work
Three layers
- The model, such as Claude or GPT. It reads text and writes text, including requests to call tools.
- The host agent, such as Claude Code, Cursor, or Codex. It runs the model in a loop, gives it tools to read files, edit code, and run commands, and asks permission before risky actions. Some people call this layer the harness too.
- The harness, which is what this site catalogs. It is a set of files you install into the host agent that gives it a working process: when to ask questions, when to write a plan, how to test, who reviews the work, and what to write down afterwards.
A host agent without a harness follows whatever process the person prompting it follows. A harness makes that process the default and shares it across a team.
Building blocks
Harnesses are made from the same few parts. The compare page counts them for each harness.
- Skills. Markdown files, usually named
SKILL.md, each with a short description. The host loads a skill when the description matches the task, or when the user asks for it by name. Most of a harness's process lives in its skills. - Commands. Named prompts the user types, such as
/planor/review. They are explicit entry points into the process. - Subagents. Agent definitions with their own instructions and a fresh context. Harnesses use them for work that benefits from a clean slate: reviewing code, researching a codebase, or implementing one task from a plan.
- Hooks. Scripts the host runs on events, such as the start of a session or before a tool call. A harness can use a session-start hook to load its instructions into every session, so the process applies even when nobody invokes it.
- Files on disk. Plans, specs, and notes the harness writes into the repository. They are its memory: the next session, or the next person, reads them instead of starting over.
How a harness steers the agent
Everything above is text the model reads, so a harness cannot force the model to do anything. Harnesses use a few techniques to make their process stick:
- Wording. Skills written as rules ("you must write a failing test first") rather than suggestions.
- Checklists. Copying the steps of a workflow into the agent's task list, so each step is tracked and visible.
- Gates. Reviewer subagents that check the work before it counts as finished.
- Evidence. Requiring the agent to run the code and show the output before it claims success.
- Hooks. Loading instructions automatically, instead of relying on someone to invoke them.
Each entry describes which of these the harness uses, under "How it steers the agent".
Packaging and install
Most harnesses are distributed as plugins for a specific host, such as a Claude Code plugin marketplace or a Cursor plugin. Supporting another host usually means translating the files into that host's format, because skills, commands, subagents, and hooks work slightly differently in each. Some harnesses do this themselves; others rely on community ports.