Skip to content

Quality control for agent payments

VIGIL watches the endpoints so they don't have to. Every call tested. Every dollar held until it's earned.

Built natively on Base · x402 · ERC-8004

The problem

Today an agent pays first and hopes.

x402 made paying for an API a single HTTP round trip. It did not make the API accountable. Three failures show up constantly, and every one of them costs the agent the full price.

200 OK0 BYTES
Empty response

The call succeeds. The body is empty.

A 200 with nothing in it still settles the payment. The agent has paid for air and has no one to ask for it back.

EXPECTEDRECEIVEDpricesymboltssourcesymbolvaluetimemetaSCHEMA_MISMATCH4/4 FIELDS
Wrong schema

The fields do not match the contract.

The endpoint returns something, but not the shape the agent was promised. Downstream steps fail long after the money has moved.

402 QUOTESETTLED1.001.40USDCPRICE_ABOVE_QUOTE+40%
Price mismatch

Quoted 1.00. Charged 1.40.

The 402 said one price. The settlement took another. Without a neutral record, the overcharge is invisible and repeatable.

How it works

Three steps between a 402 and a fair settlement.

VIGIL sits beside the payment, not inside the API. Watchers measure, the chain remembers, escrow enforces.

Step 01 · Watchers probe

Independent Watchers call every endpoint, and pay for it.

Anyone who stakes $VIGIL can run Probes. Probes hit paid x402 endpoints around the clock, exactly like an agent would, and measure four things: uptime, latency, schema validity, and quoted price against charged price. Each result is signed and published onchain as an Attestation.

Watcherus-eastWatchereu-westWatcherap-southx402 endpointprice-oracle.examplePAID PROBE · USDCUPTIMELATENCYSCHEMAPRICEATTESTATION · BLOCK 24,118,204
Step 02 · Scores go onchain

Attestations become one public number per endpoint.

Attestations are aggregated into an Endpoint Score from 0 to 100, weighted by stake and decayed over time, and written to the ERC-8004 reputation registry on Base. Any agent or developer can read it for free before spending a cent.

ATTESTATIONSus-easteu-westap-southus-west0ENDPOINT SCOREERC-8004Reputation RegistryBASE · READ FREEDECAY · STAKE-WEIGHTEDMIN 25 ATTESTATIONS · 5 WATCHERS
Step 03 · Escrow releases or refunds

The money waits until the response passes.

An agent routes its x402 payment through the VIGIL Facilitator instead of paying the endpoint directly. USDC sits in escrow while the response is checked for schema, size and deadline. Pass, and the provider is paid. Fail, and the agent is refunded automatically.

Agentpays USDCVIGIL EscrowBase · lockedProviderx402REQUESTRESPONSESCHEMASIZEDEADLINEPRICERELEASED
Simulator

Run a paid call through escrow.

Six fictional x402 endpoints, live scores, real timing. Pick one, run the call, and watch USDC lock, the response get checked, and the money release or come back. Nothing touches a chain.

VIGIL Facilitator · simulation
Agent 0xA9e1…D4c2(simulated)USDC 100.00
EndpointsScore · Uptime · p50
Call

GET price-oracle.example/v1/price

quote 0.02 USDC · score 96 · Reliable

StateIdle
Agent
Escrow
Provider
schemasizedeadlineprice
  1. Agent requests quote
  2. USDC locked in escrow
  3. Provider responds
  4. Check · schema
  5. Check · size
  6. Check · deadline
  7. Check · price
  8. Release or refund
Escrow

0.00

Released

0.00

Refunded

0.00

Log is empty. Run a call to begin.

Simulation. No transaction is sent.

Watchers

Neutral eyes, with stake behind them.

Watchers are the people and operators who keep the scores honest. They pay for probes with real USDC, sign what they see, and lose stake if they lie.

Stake
Bond $VIGIL to register a Watcher key. Stake is what makes an attestation costly to fake.
Probe
Run the reference probe against paid x402 endpoints from at least one region, every minute.
Attest
Sign each result and publish it onchain. Accepted attestations earn a share of protocol fees.
Vote
When a result is contested, staked Watchers settle it by vote, weighted by stake.
Slashing
Attestations contradicted by the majority cost the Watcher a fraction of stake.
Read the Watcher guide
What a probe measures
MeasureHowWeight
UptimeDid the endpoint answer with a valid 402 and then a response30
LatencyTime to first byte and to complete body, per region15
Schema validityBody matches the schema or content type declared in the 40230
Price integrityAmount charged at settlement equals the quoted amount25
attestation.jsonjson
{
  "endpoint": "price-oracle.example/v1/price",
  "method": "GET",
  "quotedPrice": "0.020000",
  "chargedPrice": "0.020000",
  "checks": {
    "schema":   { "pass": true },
    "size":     { "pass": true, "bytes": 1284 },
    "deadline": { "pass": true, "ms": 142 },
    "price":    { "pass": true }
  },
  "result": "PASS",
  "watcher": "0x51c2…9aE4",
  "region": "eu-west",
  "block": 24118204,
  "timestamp": 1790419200,
  "signature": "0x…"
}
Token

$VIGIL

A bond, not a payment method. Payments are USDC. $VIGIL is what a Watcher puts at risk to be believed.

Not launched. No contract address yet.

Stake to watch

Required to run probes and earn attestation rewards. No stake, no voice in the score.

Vote on disputes

Contested results are settled by staked Watchers. Voting weight follows stake.

Fee share

50% of protocol fees go to active Watchers, in proportion to accepted attestations.

Buyback & burn

The other 50% of fees buy $VIGIL on the open market and burn it.

Why a token at all

Scores are only worth reading if lying about them is expensive. Watchers must have skin in the game so that slashing means something. A signed attestation backed by stake that can be taken away is a claim with a cost attached. Without that bond, a probe result is just a log line, and a colluding Watcher and provider could manufacture reliability out of nothing.

Launch details will be announced only on x.com/VigilOnBase. Any other address is a scam.

Built on Base

Why this chain.

x402, native
Base is where agents already pay for APIs with HTTP 402 and USDC. VIGIL slots in as a facilitator, not a new rail.
Sub-cent fees
Gas on Base is low enough to write one attestation per paid call, so scores are built from real traffic, not samples.
ERC-8004 registry
Scores land in a shared reputation registry any agent framework can read for free, without asking VIGIL.