Per-Action Autonomy

Per-action autonomy is an AI agent UX pattern that sets independence per capability, not one global autopilot. Users might auto-draft email but require approval to send, or auto-commit to feature branches but never to main.

Share

When to use

Essential for AI coding agents, workflow automation, and productivity assistants where different actions carry different risk profiles and users need calibrated autonomy per capability, not per app.

When not to use

  • Single-capability agents where per-action settings duplicate a global toggle.
  • Audiences who will never open advanced settings; offer sensible defaults first.
  • When the platform cannot enforce different policies per tool call.

Anti-patterns

  • One “Autopilot” switch that silently enables irreversible actions.
  • Per-action settings buried with no summary of current policy.
  • Defaults that auto-approve send/delete on first connect.
  • Policies that drift after model or connector updates without notice.

How products use it

ProductImplementation
Email agentsAuto-draft known threads; approve send to new recipients.
Cursor / coding agentsFreer edits in working trees; gated pushes to protected branches.
ChatGPT agent modeDifferentiated confirms for browsing vs messaging vs purchases.
Enterprise IT botsAuto-read; approve write to production systems.

Use this pattern in your project

Copy this prompt to generate a production-ready implementation in Cursor, Claude Code, Lovable, or any AI coding agent.

Generate a production-ready implementation of the "Per-Action Autonomy" AI interface design pattern.

Pattern Definition:
Interactive Demo
Restart demo

Settings → Action defaults

Default behavior

New runs use these settings for each action type.

Send customer email

Waits for approval

Push to remote

Shows a proposal only

Post to #general

Runs without stopping

Frequently asked questions

What is per-action autonomy in AI agents?

Per-action autonomy sets how independently each capability may run, so read, draft, and send can have different approval rules inside the same agent.

Why not a single autonomy slider?

Risk is not uniform. A global slider either blocks useful automation or over-authorizes dangerous actions. Per-action policies match real trust gradients.

How should defaults be set?

Default to ask-to-approve for irreversible or external actions, and allow freer autonomy for reversible local drafts. Make the policy matrix visible and editable.

Get new patterns by email

Weekly AI interface UX notes and resources on Substack, no spam, unsubscribe anytime.

Subscribe on Substack