Models, harnesses and tools
An agent is easier to understand when its reasoning, execution loop and machine are separate concepts.
Four pieces, four responsibilities
| Piece | Responsibility |
|---|---|
| Model | Generate the next response or action request |
| Harness | Coordinate the execution loop |
| Tool | Perform a defined action |
| Machine | Provide the execution environment |
Give actions a useful boundary
A tool should expose a clear input and result. The harness should preserve failures and operation identifiers so later steps do not invent success from an incomplete response.
Keep context grounded
Give an agent the resource identifiers, files and observations relevant to the task. Separate an instruction from a document that is merely being read.
Learn the vocabulary
Open the Agents glossary category, or read MCP for a standard way to expose tools to a client.

