audience-contracts
Design for four user classes — humans, agents, hybrid systems, software — with progressive contracts.
SKILL.mdskills/audience-contracts/SKILL.md
GitHubAudience Contracts
Every artifact has four kinds of users: humans, agents, systems (human+agent+software together), and software. Author once; contract four times — never four products, never one lowest-common-denominator interface.
When to use
- Designing anything meant to be used, invoked, or operated by more than one class.
- Auditing an existing artifact for missing contracts (which user class falls off?).
- Before shipping: confirm all four classes have a working path.
Method
- Name the classes and their needs:
- Human: visual, narrative, progressive disclosure, forgiving input; approves.
- Agent: procedure — when to use, method, gates, red lines; executes within caps.
- System: handoff contracts, approvals, shared state, audit; binds the others.
- Software: schemas, stable IDs, versioned API/CLI/JSON, exit codes; deterministic.
- Single truth, multiple renderings: one canonical artifact (markdown+frontmatter, JSON) rendered per audience. Forking truth per class = drift.
- Progressive formality: human view most forgiving → software least. Same content: card → procedure → gates → schema → signature.
- Fail per class: humans get readable errors + retry; agents get instructive errors + safe fallback; systems get escalation; software gets structured errors + exit codes.
- Authority lattice: dangerous actions need capability (agent) + approval (human) + determinism (software) + audit (system). Miss one → no action.
- Verify by class, never by self-report: agents → verify with software (tests/signatures); humans → evidence; software → spec tests; systems → cross-verification via audit trails.
- Identity per class: humans (passkey/MFA), agents (scoped short-lived tokens), systems (policy engine), software (service creds/mTLS).
Quality gates
- All four classes have a named, working path to the artifact.
- One canonical source; renderings are generated, not maintained separately.
- Failure behavior defined per class.
- Danger paths pass the authority lattice; audit exists.
Red lines
- Never ship for one class and assume others "will cope"; never fork truth per audience; no dangerous path that skips the lattice.
Related
multi-surface-webapp · skill-ops · technical-writing · zero-trust-architecture.