A harness is a governance and reliability control plane around an autonomous agent: the agent has intelligence, the harness has authority. The agent proposes; the harness decides what's allowed to happen next; evidence decides whether the result is accepted. Every turn walks the same eleven layers of it, in the same order, whether it's Personal Assistant (Build A Harness's own reference chat agent) or a flow drawn on the canvas. This is that loop — World Model through Reviewer Pass — read straight out of adapter/harness/. Click any layer below to open its internal flowchart.
The chain below runs top to bottom on every turn that isn't a trivial one-shot lookup. Click a layer to open its own internal flowchart — five of the eleven decompose into tiers, parallel checks, or a named escalation chain; a few of those open a second popup per item for more depth. The dashed amber boxes aren't part of the harness itself — they're what packages/personal-assistant/src/*.ts adds around it.
A single consolidated classification call up front (risk, triviality, decomposition, plan-abandonment, plan-template matching) flags a genuinely self-contained factual one-liner as trivial — that reply returns directly and none of the eleven layers above run. Everything else walks the full loop. See Personal Assistant for how this applies turn by turn in the reference chat agent.
All eleven layers above are drawable, composable node types on the canvas — tested, with 18 architectural invariants permanently enforced as CI gates. Apache 2.0, runs locally via Docker.