pliuz

Build

Approvals, grants & routing

The decision surface: what humans can do, and how to keep approval fatigue low without giving up governance.

Decide: approve / edit / reject

Three outcomes, all audited with the deciding user and a hash of the effective args. An edit changes what executes — the SDK runs the edited args, never the originals.

Standing approvals (scope & TTL)

Instead of approving the same boring action 400 times, grant a scoped standing approval: "auto-approve this for 1 hour / this session / until I revoke it." Covered calls auto-approve with provenance standing_grant (distinct in the chain). A policy auto_reject is never overridden by a grant.

grant on approve
# Approve AND grant standing approval in one step (REST decisions body):
{
  "action": "approve",
  "grant": { "scope": "duration", "duration_seconds": 3600 }
}
# scopes: duration (1h) | session | until_revoked
# List / revoke:
GET  /api/v1/standing-grants
POST /api/v1/standing-grants/:id/revoke
This is the governed answer to "I don't want to approve the same thing all day" — attributable (who granted it, until when) and revocable, unlike an accidental idempotency replay.

Delegation & snooze

An approver can delegate authority over a group for a window (vacation cover). The delegate can then decide on that group — enforced inside the decision RPC, so all three paths (REST/inbox/Slack) honor it, and only if the delegator actually holds the group. Snooze excludes you from personal DMs without removing you from the group.

delegate / snooze
# Delegate YOUR authority over a group while you're away:
POST /api/v1/delegations
{ "delegate_user_id": "...", "approver_group": "finance",
  "ends_at": "2026-07-01T00:00:00Z", "reason": "vacation" }

# Snooze personal pings (you stay in the group; channel still gets the card):
POST /api/v1/me/shift   { "off_shift_until": "2026-06-13T08:00:00Z" }

Delivery: long-poll

The agent learns of a decision via server long-poll — the SDK's wait call returns the instant a human decides. No webhooks to wire for the common case; near-zero latency.