P Live on Product Hunt

Your agent acts.
A human decides.

Add a human in the loop for every tool call. Native email integration.

primitif
Pending
Delete all user data for org #4821
agent: cleanup-agent
org_id: 4821
records: 12,847
reason: GDPR deletion request
table: users, sessions, logs
expires in 3h 58m
How it works
One line.
That's it.

Your existing tool. One decorator. The agent pauses, a human reviews, then it runs. Or doesn't.

@require_approval // ← just this
def delete_user(user_id):
    # your existing tool. unchanged.
    db.delete(user_id)
01Shareable URL
One link. No login. No app. The reviewer opens it, sees everything, decides.
02Rich context
Attach any JSON. The reviewer sees exactly what the agent sees. No surprises.
03Webhooks
Decision fires instantly. HMAC-signed. Your agent resumes or halts. No polling.
04MCP Tools
Claude Code, Cursor, LangChain. Any MCP client gets approval tools for free.
05Mail integration
The agent writes the email. A human reads it first. One flag: require_approval=True.
06Audit trail
Who approved. When. What they saw. Immutable. You didn't configure anything.
MailLive
send() receive() reply() threads() attachments()
ApprovalLive
@require_approval() → wait() → dispatch()
AnonSoon
strip_pii() redact() mask()
FileSoon
upload() parse()
AuditAlways on
@p.audit log() list() · zero config, every action tracked
The platform
Approval is one primitive.
Each of them compound.

One SDK. Each primitive does one thing completely.
Use one, discover the rest.

Free $0
5 mailboxes · 100 emails · 1 approver
Start free
Scale $49/user/mo
Unlimited mailboxes · 2k emails · custom domain · MCP
Get API key

One decorator.
Your agent
asks first.

Free tier. No credit card. Start building in 30 seconds.

$ pip install primitif

Get your API key