Draft v0.1 · open spec · no custody

AI agent spend audit

Audit AI-agent, API and x402 spend: duplicates, price escalation, failed-but-but-billed calls, runaway loops and missing refunds. Free scan, written report.
Written scope and written report — no calls. No wallet access for the first scan.

Eight checks before the invoice

  • Duplicate retries without idempotency
  • Quote vs settled price
  • Failed call that still billed
  • Runaway loop / retry storm
  • Missing refund after over-authorization
  • Wrong asset, network or payee
  • Frontier model on a simple task
  • Budget that lives in the prompt, not the signing path

What you get

A written report: finding, evidence, estimated overpay, fix. We mark estimates as estimates; “recovered” means verified against the provider invoice or transaction.

Request a free scan

Run it yourself, on the sample

No form, no account: the same checks run on your machine, and the sample contains every finding exactly once so you can see the shape of a report before trusting it with real invoices.

python3 -m pip install -e .
nidhipati-spend audit examples/spend-sample.csv --policy examples/spend-policy.example.json

Real output on the synthetic sample (44 rows):

Rows read: 44 · settled $0.661 · spent without a reason $0.14 ·
above the usual price $0.36 · over the limit $0.430 · errors 5, warnings 6

| row | code             | severity | agent        | $     | detail                                                   |
|-----|------------------|----------|--------------|-------|----------------------------------------------------------|
| 0   | budget_exceeded  | error    | agent-writer | 0.430 | spent 0.630 against a limit of 0.20                      |
| 5   | duplicate_charge | error    | agent-writer | 0.02  | same tx_hash as row 2                                    |
| 7   | price_escalation | error    | agent-writer | 0.03  | settled 0.05 above quote 0.02                            |
| 8   | failed_but_billed| error    | agent-writer | 0.03  | status 'failed' with 0.03 charged                        |
| 9   | missing_refund   | error    | agent-writer | 0.06  | charged 0.10 for actual 0.04, refund not recorded        |

Synthetic sample, labelled as such in the repository; no client numbers appear anywhere on this site. The full rule set is public: AGENT-SPEND-AUDIT.md · sample.csv