An agent's autonomy should be a dial the user sets, not a property the model assumes. This playbook maps every agent action to a tier — suggest, preview, approve, auto — designs the plan-visibility UI that shows intent before execution, and specs progressive delegation so autonomy is earned through approval history.
Workflow area: Agent UX · Tier: Advanced · Hands-on time: ~45 minutes
The difference between an agent users adopt and one they disable is rarely capability — it's control granularity. Ship everything auto-execute and one bad Tuesday destroys trust permanently; ship everything behind approval and you've built a very slow form. The design move is per-action calibration: reversible-and-cheap earns automation early, irreversible-or-expensive may never earn it. Microsoft's HAX guideline 17 (provide global controls) and Shape of AI's agent-governance patterns frame the vocabulary; this playbook does the mapping for your agent, then designs the two surfaces that make tiers real — the plan preview before execution and the delegation settings users actually understand.
Enumerate actions, not features. List every distinct thing the agent can do as verb-object pairs: "send email," "create calendar event," "apply code change," "delete draft," "purchase upgrade." Then score each on two axes: reversibility (fully undoable / undoable-with-effort / irreversible) and blast radius (private to user / visible to others / affects money, data or systems). This grid is the raw material for tiering.
Assign each action to one of four tiers. Write the mapping as a table:
Red-team the mapping before you commit.
You are reviewing an agent autonomy map for failure modes.
Agent purpose: [DESCRIPTION]
Action tier map: [PASTE TABLE: action → reversibility → blast
radius → tier]
1. For every AUTO action, write the worst plausible outcome of it
running 50 times unattended with a subtly wrong goal.
2. For every APPROVE action, estimate approval fatigue: how many
times per day will a typical user see this prompt? Flag
anything over ~5/day as a fatigue risk that trains blind
clicking.
3. Identify actions whose tier should CHANGE with context (e.g.,
"send email" to a teammate vs. a customer) and propose the
context rule.
Do not soften findings.
The fatigue analysis usually restructures the map — approval prompts users see constantly become rubber stamps, which is worse than honest automation with a good log.
Design the plan-visibility surface. Before a multi-step run, the agent shows its plan as an editable checklist: steps in order, each tagged with its tier badge, tools it will touch, and estimated scope ("3 emails, 1 calendar event"). Users can remove a step, demote a step to approve-first, or run it. During execution the same surface becomes live status — done, in progress, awaiting approval. The plan is the contract; nothing executes that wasn't on it.
Spec progressive delegation as visible mechanics. Autonomy upgrades should be earned and offered, never silent: after N consecutive approvals of the same action with no edits, the product offers "You've approved 10 drafts unchanged — auto-send simple replies like these?" Spec the offer copy, the scoping (this action, this context — not the whole agent), the decline path with no re-nag for a set period, and the demotion trigger: any undo or rejection drops the action back a tier automatically. Trust that only ratchets up is a dark pattern; the dial must turn both ways.
Put the whole map in the product. A settings surface shows every action at its current tier, with plain-language descriptions and per-action controls. The map you built in step 2 is the spec for this screen — if it's too complicated to render as settings, the tiering is too complicated to trust.
Plan previews and approval prompts routinely display customer names, message content and account details — apply your data-minimization rules to these surfaces too, and keep agent action logs inside approved infrastructure rather than pasted into outside tools for debugging.
Autonomy is calibrated per action, not per agent — map reversibility against blast radius, show the plan before anything runs, and let approval history ratchet delegation up while any rejection ratchets it straight back down.