NORNR
Mandates, approvals and evidence for autonomous agents.
Guide / Human review
9 minutesHow to add human-in-the-loop approval to paid agent workflows
Introduce human-in-the-loop approval only for risky paid agent actions instead of blocking every request.
1. Why this guide matters
Human-in-the-loop is useful when it is targeted. If every request needs approval, the workflow stops being autonomous. If nothing needs approval, the operator loses control.
NORNR lets you define the threshold where human review begins.
2. Install what you need
pip install agentpay
This guide uses the hosted NORNR path at https://nornr.com, so you can validate the decision flow without standing up the full local stack first.
3. Create the governed wallet
from agentpay import Wallet
wallet = Wallet.create(
owner="approval-agent",
daily_limit=60,
require_approval_above=20,
base_url="https://nornr.com",
)
This wallet is the mandate. It sets the budget and review threshold before the framework-specific workflow is allowed to continue.
4. Apply it in the workflow
decision = wallet.pay(
amount=28.00,
to="vendor-api",
purpose="paid workflow step",
)
match decision.get("status"):
case "approved":
run_paid_step()
case "queued":
notify_operator(decision)
case _:
stop_run(decision)
The key pattern stays the same across frameworks: ask NORNR for a decision first, then let the expensive or externally billable step run only if policy says yes.
5. What to expect
- approved means the workflow can continue immediately inside its mandate.
- queued means the request crossed an approval threshold and should wait for review.
- rejected means policy did not allow the action to proceed.
That three-way split is what makes the pattern useful: low-risk work stays fast, higher-risk work becomes reviewable, and clearly out-of-policy work never leaves the workflow.
6. Where to go next
Related guides
Keep going from the same control problem.
These are the closest follow-up guides in the same part of the library.
How to add audit trail before agent spend moves
Add a decision trail, receipt context and operator-readable history before agent spend moves.
Read guide Budget guardrails / 8 minutesHow to stop an agent from overspending on APIs
Use NORNR to stop runaway API spend by forcing each paid call through budget and approval policy.
Read guide Decision model / 7 minutesAgent spend governance: approved vs queued vs rejected
Understand what approved, queued and rejected mean in agent spend governance and how to handle each path cleanly.
Read guide