04 — The two paths
Summary
Two paths, both specified, because the agent is a primary consumer and every requirement it adds is invisible in a screen review. Both run the same three verbs — discover, declare, diff — in the ordering-rule order. The user path renders screens and never shows an allow-list. The agent path reads no page: it fetches the library in one request, produces a structured self-report (schema first, never prose, or the blind-spot delta is a judgement), computes both deltas, and hands back references rather than descriptions. The skill discovers, declares and diffs, and refuses to enforce — because a skill runs inside the agent's loop, so a skill that polices the mandate is the agent marking its own homework. The mandate's allow-list compiles to a hook or to Cedar, both of which evaluate outside the loop; that division — the skill compiles, the hook enforces — is the entire architecture.
Key concepts
- The agent path — one fetch, a document not a rendering, structured before compared
- The skill that must not enforce — inside the loop is homework-marking; the hook runs outside it
- The compilation target — hook or Cedar — outside the loop is what makes it a control
Key ideas
- If the interface is where the data lives, the agent path does not exist.
- The acceptance test ends: attempt the prohibited action and be refused by something that is not the agent.
- No page is read by a human anywhere in the agent path.