A spending limit your agent can't negotiate.
AgentRail sits between an agent's payment intent and the signature that sends it, evaluating every request against limits its human owner set — before any money moves.
spent today: $0 of $500
Submit a payment to see the decision.
Run it yourself
The library. npm install it, run it in your own process, hold your own keys, fund your own wallets. AgentRail never touches your money on your behalf — this is the honest default, not a fallback.
Reach it over HTTP
The hosted service. Same policy engine, same signer interface, same schema as the library — routes and auth in front of it, run by us instead of you. It doesn't exist yet, and it will stay devnet-only until custody moves off the local keystore described at /custody.
Three actors, one path
A principal — the human or org funding the agent — sets the rules. The agent requests payments but never holds raw keys. A payee — a service, an API, another agent — receives funds only if the request clears every rule first.
Every payment, same five steps
- Agent submits a payment intent
- Policy engine evaluates it
- Signer signs — or refuses
- Transaction submits to Solana
- Receipt recorded in the audit log