
Reckon402
Agent commerce with memory. x402 settlements write ERC-8004; ENS routes per-agent Escrow
Demo
About
**Reckon402 closes the first loop in agent commerce.** Every confirmed x402 payment writes a facilitator-signed **ERC-8004 reputation attestation** on-chain. Every ENS resolution reads it back through **CCIP-Read**. The trust signal drives a **per-agent on-chain Escrow**: - Each settlement deposits **10%** into the agent's NFT-bound Escrow. - A pluggable `ITierStrategy` releases the held buffer back to the seller as the on-chain attestation count grows. - Buyer-facing price stays constant; what changes is how much of the buffer the seller can *withdraw*. **Same ENS name, different escrow tier as reputation accumulates.**
How it's made
**Contracts** — Solidity 0.8.24 + Foundry. - `Splitter`, `EscrowFactory`, `LinearMonotonicTierStrategy`: minimal immutable contracts, **CREATE2-deterministic** per-agent deploys, BPS-immutable, **no admin, no upgrade path**. - Foundry **fork tests** gate against the live ERC-8004 contracts on Base Sepolia. **Off-chain stack** — Cloudflare Workers + Hono. - `agent` — x402 paywall. - `facilitator` — verify + settle + attestation write. - `gateway` — CCIP-Read + ENSIP-25 + ERC-8004 reads. - `onboard-orchestrator` — 6-step provisioning. - `landing` — reckon402.com + `/ens` + `/keeperhub`. - **D1** (SQLite) for receipts, ENS records, and SellingAgent state. **ENS** via `ezccip.js` with `msg.sender` encoded into `callData` (**CCIP-Read Pattern A**) — vanilla `viem` and `wagmi` clients work **without custom code**. **Signing** — EIP-712 typed-data for x402 `PaymentAuthorization` is offloaded to **AWS Lambda + KMS** at `signing.reckon402.com`, since browser/KH-sandbox typed-data signing is unreliable. **Packaging** — 5 npm packages at `@0.1.0`: `types`, `buyer-sdk`, `middleware-hono`, `facilitator-client`, `erc-8004-client`. The KeeperHub workflow + skill bundle ship as the **autonomous-buyer reference**.