Agent permission infrastructure

Permission checks
before AI agents act.

AI agents are starting to buy, email, book, edit, browse, and access data. API keys identify the agent. BehalfID verifies what the agent is allowed to do before the tool runs. Denied actions fail closed.

How it works

Verify first.
Execute second.

  1. 01

    Action request

    Before your executor runs, the agent packages the action — who is acting, what action, which vendor, and any parameters like amount or resource path.

  2. 02

    BehalfID verify

    BehalfID evaluates the request against active permissions, blocked actions, allowed actions, resource or vendor constraints, amount limits, approval requirements, and expiry before the executor is called.

  3. 03

    Decision

    A decision packet is returned: allowed, denied, or approval required. The tool executes only when allowed is true.

  4. 04

    Execute and audit

    Allowed actions can continue to your tool. Denied actions stop before execution. Every verified decision is logged with a stable request ID and delivered via signed webhook.

Integration

Three lines between
request and execution.

Install the SDK, call behalf.verify()before your executor, and throw on denial. Works with any agent framework because the fail-closed check lives in your code, not in the model's memory.

enforce.ts
const decision = await behalf.verify({
  agentId: "agent_ollie",
  action:  "purchase",
  vendor:  "coachella.com",
  amount:  742,
});

if (!decision.allowed) {
  throw new Error(decision.reason);
}

// Executor only runs when decision.allowed === true

Interactive demo

See the boundary decide.

Switch scenarios and run a trace. No real actions execute here.

ACTION REQUEST
agentagent_ollie
actionpurchase
vendorcoachella.com
amount$742
DECISIONdeniedNo active purchase permission.
executedfalse

The full sandbox has more scenarios. Open sandbox →

Ready

Add the permission check.

Integrated enforcement fails closed. Manual mode is best-effort for testing with existing agents before you integrate.