The idea
Agents are getting wallets: to pay for API calls, compute, data and each other. The usual way to keep them in check is a line in the prompt ("never spend more than $50"). A prompt is a suggestion, not a control. Orca moves the limits out of the agent: every payment request is checked against a policy the agent can read but can't change.
Policy model
- perPaymentCap: the largest single payment.
- dailyBudget: total spend in a rolling 24 hours.
- allowlist: merchants or addresses the agent may pay. Everything else is refused.
- confirmAbove: payments above this amount wait for a human.
- locked: when true, any request to change the policy itself is refused.
Order of checks
Each request goes through the same steps; the first one that fails decides.
1. Is it a policy change? locked → refuse 2. Is the merchant allowlisted? no → refuse 3. Above perPaymentCap? yes → refuse 4. Would it pass dailyBudget? yes → refuse 5. Above confirmAbove? yes → wait for a human 6. Otherwise → allow
Example policy
{
"agent": "research-bot",
"perPaymentCap": 25,
"dailyBudget": 100,
"confirmAbove": 10,
"allowlist": ["ModelHub API", "GPU Cloud", "Search API"],
"locked": true
}
This is exactly what the simulator on the home page runs.
Status
Today Orca is a working in-browser simulator of the policy engine. The next steps are on the roadmap. Nothing here holds or moves real funds.