Best for

Workflows slowed by constant approvals or exposed by missing ones

Time to try

30-minute permission review

Start here

List every action that changes something outside the dashboard

Approval is for consequences, not discomfort

Requiring approval for every step turns a capable agent into a slow web form: it can look, but it must ask before doing anything at all. Requiring approval for nothing treats every mistake as equally cheap to undo. Neither is a policy—both are just a default nobody chose.

The useful principle sits between them. Place a gate at the last moment before an action becomes hard to reverse, and nowhere else. Reading, sorting, and drafting can run freely, because a bad draft costs a glance to fix. Sending, paying, and deleting deserve a pause, because the result leaves your control the instant it happens.

How to judge it: if a reviewer could undo the action in under a minute with no outside consequence, it probably does not need a gate.

Use the consequence test

When you are unsure whether an action needs approval, ask one question: after this runs, what has changed outside the dashboard, and how hard is it to take back? Require approval before any action that:

  • Moves money—payments, refunds, credits, or changes to what a customer will be charged.
  • Reaches a person—an email, message, or reply sent under your name.
  • Publishes in public—anything customers or search engines can see.
  • Deletes or overwrites—records that are slow or impossible to rebuild.
  • Changes access—permissions, connections, or shared settings.
  • Creates a commitment—a promise, contract term, or legal obligation.

Everything else—reading, searching, summarizing, drafting, tagging—usually runs without a gate. Those actions stay inside the safe space of a draft, where a mistake is visible and cheap to fix.

Use case: Monday invoice follow-up

Maya runs a two-person studio and lets her agent chase overdue invoices each Monday. On the first setup she gated everything: the agent asked permission to open each of 80 invoices, then again to draft each reminder. By invoice twelve she was approving without looking—the gate had trained her to ignore it.

She had two real options: gate the inputs (every read) or gate the output (the thing that leaves the building). Reading an invoice changes nothing outside the dashboard, so those gates were pure friction. The reminder emails, though, reach customers under her name.

So she kept one gate in the right place. The agent reviews all 80 invoices automatically and drafts 26 reminders, then presents the batch once—recipients, amounts, and message—for a single approval. Payments and changes to payment terms stay behind their own separate gate, because their consequences differ from a reminder’s.

The lesson: she did not need more approvals or fewer. She needed one in the single place where saying no still mattered.

The invoice workflow, sorted by control level

Illustrative figures from Maya’s Monday run—an example of matching control to consequence, not a customer result.

80Invoices read

Automatic—reading changes nothing outside the dashboard.

26Reminders drafted

One “approve before” on the whole batch, not 26 hidden steps.

0Payments moved automatically

Money always waits behind its own separate gate.

Compare three control levels

Most work fits one of three control levels. The skill is matching the level to the consequence, instead of applying one setting everywhere.

  • Automatic—reversible, low-impact work the agent does and logs. Example: sorting new support messages by topic. Get one wrong and you re-tag it in seconds.
  • Review after—the agent acts, then shows you what it did so you can correct it. Example: drafting replies into a folder for you to edit before sending. Speed matters and every step is easy to undo.
  • Approve before—the agent prepares the action but waits for a yes. Example: sending those replies, issuing a refund, or deleting a list. The consequence is external or permanent.

The trade-off is real: every “approve before” gate buys safety with your time. Spend it only where an undo button does not exist.

Write an approval people can judge

A gate is only as good as the request it sends. “Approve task?” forces the reviewer to open another system to learn what they are agreeing to—so they either stop to investigate or, more often, approve blind. A good request carries its own context: the exact action, the target, the reason, and the consequence.

“Send this refund confirmation to Asha Patel for ₹2,400? Reason: duplicate charge on order #4821. This emails the customer immediately.”

That version can be answered correctly from a phone in ten seconds. The reviewer sees who is affected, why, and what becomes true the moment they tap yes.

Measure approval quality

A gate that is never rejected is not proof of safety—it is usually proof the gate is in the wrong place. Watch two numbers over a month:

  • Rejection rate near zero: reviewers are rubber-stamping. Move the gate to where a real decision exists, or remove it and switch that work to “review after.”
  • Long waits on safe work: a gate is blocking things that were never risky. Narrow it so approvals are reserved for consequences, not routine steps.

Read the rejections themselves, not just the count. The reasons people give for saying no are the clearest map of where your real boundaries are.

Try this next

  1. List every agent action that changes something outside the dashboard—sent, published, paid, deleted, or access changed.
  2. Assign each action a level: automatic, review-after, or approve-before. Put a gate only before the last one.
  3. Rewrite each approval request to show the action, target, reason, and consequence in one line.
  4. After a month, remove any gate that is approved every time, and narrow any gate that makes safe work wait.

Sources and further reading

Primary references behind the principles in this article. Links open the publisher’s original guidance.

Ready to put one useful workflow to work?

Start with one clear job, a result you can review, and boundaries you understand.

See launch pricing