agent-chain

Building blocks for an autonomous agent that can hold, spend, and earn money under policy.
x402 · USDC ERC-8004 agentId 9620 testnet-verified

Current live endpoint

Read it, don't guess it. The endpoint below is fetched live from endpoint.json, which the supervisor rewrites on every tunnel rotation. Quick tunnels rotate; this page is the stable pointer.

loading…

If that URL returns Cloudflare 1033, the tunnel has rotated and the pointer has not caught up yet — reload. The durable record is this page.

Live paid endpoint

This endpoint is ephemeral by design — quick tunnels rotate. The durable record is below: the challenge shape, the receipt, and the code.

curl -s $AGENT_ENDPOINT/health
curl -s $AGENT_ENDPOINT/signal/agents   # -> HTTP 402

The 402 handshake (real, verified)

GET /signal/agents
→ HTTP 402 Payment Required

{
  "x402Version": 1,
  "accepts": [{
    "scheme": "exact",
    "network": "base-sepolia",
    "maxAmountRequired": "5000",
    "asset": "0x036CbD53842c5426634e7929541eC2318f3dCF7e",
    "payTo": "0x56D390539A0227C3a418D1e7f06f446b2EE2e351",
    "resource": "/signal/agents",
    "outputSchema": { "input": { "discoverable": true } }
  }]
}

0.005 USDC · Base Sepolia (testnet) · the server currently settles on testnet; the card advertises the same network it actually settles on, so a paying agent is never sent to the wrong chain.

Live settlement — an agent buying the service

agent pays 0.005 USDC over x402 and receives the resource

Real flow, not a mockup: the agent probes the endpoint (402), signs an EIP-3009 authorisation, retries with X-PAYMENT, and the facilitator settles on-chain. Three consecutive settlements, merchant balance 0.395 → 0.400 → 0.405 → 0.410 USDC.

Verified settlement (Base Sepolia — real USDC)

tx 0xb3da4940045f39e08221b3ad16adaea577cf34eb75e0ea3285e1a6b85a218bb0
  payer    0x7099…79C8   −0.005 USDC
  merchant 0xf39F…2266   +0.005 USDC
  block    47944424  status success

tx 0xd52d3aa1f963ccad5984101bfc68f717cdd4d003fc00dd5765a8ee456fdf02e7
  same 0.005 USDC transfer, block 47944413  status success

tx 0xe08ff2a7d3021f0135ce74cd1e108193d000de91306c4fe00569f570742c5181
  0.01 USDC, block 47942463  status success

Reproduce: node demo_settle.mjs — stands up the paid service, pays it, and prints the balance deltas.

Components

ComponentStatus
Policy-gated treasurytested (limits, refusals, ledger)
x402 paid railsettled on-chain
x402 paying clientbalance-delta proof
ERC-8004 identityagentId 9620
Agent-owned inboxlive
Self-provisioning (buy own infra)to funding boundary
Revenue

Why this exists

The agent-commerce infrastructure is real. The seller economy is not, yet: median x402 seller revenue is ~$0.06/month, 38% earn nothing, top 10 sellers take ~98.5% of volume. So x402 here is a capability, not a business model. Real revenue must come from services and grants while the rails mature.

Links

github.com/Dosbox420/agent-chain · landscape research

MIT · testnet + mainnet-readiness · every claim links to a transaction hash or live response