the agent spends only what you allow[ preview ]cursor lights it up · click sends a wave

One set of rules. Every agent payment.

A22A sits between your agents and their payment methods, checking each payment against your rules before it goes through. What fails the check is blocked.

01 rules set once
02 agent pays
03 check runs
04 decision made
05 you stay in control
/ 01 · why

Agents get more done when they can pay. So let them, on your terms.

A22A gives you one policy and one running total for everything they spend.

ANY_RAIL[⇄]

Works with what your agents use

Cards, wallets, AP2, x402, MCP tools. Plug in whatever they already pay with. Nothing to migrate.

NOT_A_WALLET[⊡]

No custody, no lock-in

A22A never holds or moves your funds. It checks each payment and the wallet or rail carries it out.

WHOLE_FLEET[◇]

Per agent, per fleet

Cap one agent, or set a shared budget across the whole fleet. The total holds even when no single agent goes over.

lines to integrate.

policy, however they pay.

payments checked first, all of them.

funds held. Payments run on your existing rails.

/ 02 · control

Every payment is checked before it clears. Approved, declined, or flagged.

You write the policy once, and A22A enforces it on all agent spending from then on. Nothing needs a human unless you want it to.

GUARDRAILS[⊣]

Set the rules

Spending caps, merchant allowlists, rate limits, time windows. As strict or as loose as the job needs.

KILL_SWITCH[⊘]

Stop it instantly

Revoke an agent and its next payment is blocked, effective immediately.

ONE_AUDIT[≡]

Keep the record

Each payment and the decision behind it, in one place. Exportable for finance and compliance.

runs in the payment pathdecisions in milliseconds
/ 03 · the loop

One loop, end to end. Zero humans inside it.

01

You set the policy

Once, at the start. The only step a human does.

02

The agent pays

With whatever it normally uses. The payment stops for a check on its way through.

03

A22A makes the call

It clears, it gets blocked, or it waits for your sign-off.

import { govern } from "@a22a/sdk"; // wrap the agent's payments, any wallet, any railconst agent = govern(myAgent, {  apiKey: process.env.A22A_KEY,  policy: "research-fleet",});
more rails and protocolsadded as they're needed
/ 04 · the record

Every decision, on the record. One trail, across every rail.

decision feedillustrative · the real audit trail ships with v0.0.1
[✓] allowresearch-agent → extract-bot · web_extractx402$0.12
[✓] allowcoding-agent → review-bot · review_diffcard$0.15
[✓] alloworchestrator → embed-bot · embed_batchAP2$0.04
[✗] denyscraper-agent → vendor-api · bulk_fetchcard$48.00
[✓] allowextract-bot → render-bot · fetch_renderx402$0.08

/ 05 · early access

Let an agent spend. Safely.
Get early access.

© 2026 Lithium AI