Problem it solves
Users don't know what an agent will do before it runs. Undisclosed scope creates accountability gaps and erodes trust.
When to use
Before any autonomous agent run that will access data, call external systems, or take actions on behalf of the user.
When not to use
For lightweight suggestions or read-only actions where no consequential autonomy is exercised.
Governing principle
Consent is per-run, not per-session. Each new agent execution requires its own disclosure unless the user has explicitly pre-authorized recurring access.
Required Components
Interaction Flow
Agent requests execution
The system determines what the agent will access, what tools it will use, and what data it will touch.
Disclosure surface appears
A Disclosure Alert shows the agent's intended scope, data sources, and authority boundary before any action is taken.
Scope check
If the requested scope exceeds what the user has previously authorized, a Consent & Scope Gate interrupts and requires explicit approval.
User approves or declines
The user confirms the scope or narrows it. Declined execution does not proceed.
Execution begins
Only after disclosure is acknowledged does the agent begin its run.
Governance requirements
Every consent event must be logged with timestamp, user identity, and scope granted. Consent records are immutable and must be available in the post-run audit trail.
Accessibility notes
The disclosure surface must be announced via role="dialog" with a descriptive aria-label. Consent actions must be keyboard-navigable. Do not auto-dismiss consent gates on timeout.