What exists
Data, files, tools, workflows, UI components, models, agents, identities, and derived outputs.
Software can expose resources, data, tools, and workflows through explicit capabilities. Agents compose the interface around the user’s goal, identity, context, and authorized actions.
A permission table alone is too coarse. The standard needs distinct primitives that describe who is acting, what exists, what can happen, and how the result is presented.
Data, files, tools, workflows, UI components, models, agents, identities, and derived outputs.
A person, agent, service, group, or organization requesting access or execution.
Discover, read, create, update, delete, execute, share, or delegate.
The rule connecting a principal, capability, resource, scope, and conditions.
The runtime interface projected from the authorized capability set and current state.
An inspectable record of the decision, confirmation, action, result, and reversibility.
Represent each rule as a statement rather than a wide matrix. This supports expiration, purpose limits, approval, delegation, and input-level restrictions.
A person can know that a capability exists without being allowed to inspect its contents or invoke it.
| State | Discoverable | Readable | Executable | Meaning |
|---|---|---|---|---|
| Hidden | No | No | No | The resource is invisible. |
| Listed | Yes | No | No | The resource exists, but its contents and actions are unavailable. |
| Inspectable | Yes | Schema only | No | The user can understand the interface without receiving data. |
| Usable | Yes | Optional | Yes | The capability can be invoked within its declared limits. |
A tool should be self-describing. The agent receives a catalog of possible actions, while policy determines which actions it may actually use.
The interface should expose the smallest useful surface for the current goal. It should never invent an access rule.
Read and write do not describe consequence. A policy should account for sensitivity, external impact, reversibility, financial impact, and social impact.
Examples include reading a public document or converting a file locally.
Show the affected records, recipients, or commitments before execution.
Examples include sending an email, publishing content, or changing shared data.
Require confirmation plus step-up authentication or human review for financial transfers, destructive operations, or physical access.
“Approved” should not become unlimited access. An approval should identify its scope, purpose, expiration, and revocation path.
Every consequential action should produce a durable receipt that explains the authorization decision and the resulting state.
Users and agents can understand what data or tools exist, subject to discovery rules.
Every action has a named operation, schema, side-effect declaration, and risk level.
Authorization is evaluated at the execution boundary, independent of the generated UI.
The UI adapts to goal, state, identity, and authorized capabilities.
The interface previews side effects and requests stronger confirmation as impact rises.
People can inspect what happened, why it was allowed, and whether it can be reversed.