metastate / agents.html
CPater's picture
Upload 6 files
b11bba5 verified
Raw
History Blame Contribute Delete
28.3 kB
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>METASTATE — Agents &amp; Payments</title>
<link href="https://fonts.googleapis.com/css2?family=Sora:wght@200;300;400;500;600&family=IBM+Plex+Mono:wght@400;500&display=swap" rel="stylesheet">
<style>
:root{--bg:#000;--ink:#fff;--muted:#9a9a9a;--dim:#5a5a5a;--line:rgba(255,255,255,.13);--line-2:rgba(255,255,255,.26);--panel:rgba(255,255,255,.025);--sans:'Sora',sans-serif;--mono:'IBM Plex Mono',monospace;}
*{margin:0;padding:0;box-sizing:border-box}
body{background:var(--bg);color:var(--ink);font-family:var(--sans);font-weight:300;line-height:1.65;-webkit-font-smoothing:antialiased;letter-spacing:.1px}
a{color:inherit;text-decoration:none}::selection{background:#fff;color:#000}
.nav{position:sticky;top:0;z-index:50;border-bottom:1px solid var(--line);background:rgba(0,0,0,.8);backdrop-filter:blur(12px);padding:15px 32px;display:flex;align-items:center;justify-content:space-between}
.nav .brand{display:flex;align-items:center;gap:11px;font-weight:600;letter-spacing:2px;font-size:15px}
.nav .brand img{width:30px;height:30px;border:1px solid var(--line-2);border-radius:50%}
.nav .links{display:flex;gap:8px;flex-wrap:wrap}
.nav a{font-family:var(--mono);font-size:10px;letter-spacing:1px;text-transform:uppercase;color:var(--muted);padding:7px 12px;border:1px solid var(--line);border-radius:6px;transition:all .2s}
.nav a:hover,.nav a.on{background:#fff;color:#000}
.wrap{max-width:1000px;margin:0 auto;padding:64px 32px 100px}
.tag{font-family:var(--mono);font-size:10px;letter-spacing:3px;color:var(--muted);text-transform:uppercase;margin-bottom:14px;display:flex;align-items:center;gap:12px}
.tag::before{content:"";width:28px;height:1px;background:var(--line-2)}
h1{font-size:clamp(32px,5.5vw,54px);font-weight:200;letter-spacing:-1px;line-height:1.04;margin-bottom:16px}h1 b{font-weight:600}
.lead{font-size:16px;color:#b6b6b6;max-width:680px;margin-bottom:44px}
h2{font-size:24px;font-weight:300;margin:52px 0 14px;letter-spacing:-.3px}h2 b{font-weight:600}
p{font-size:14.5px;color:#c2c2c2;margin-bottom:14px;max-width:730px}
code{font-family:var(--mono);font-size:.86em;background:rgba(255,255,255,.06);padding:1px 6px;border-radius:4px}
.flow-box{border:1px solid var(--line);border-radius:14px;background:var(--panel);padding:30px;overflow-x:auto;margin:28px 0}
.flow-box svg{width:100%;height:auto;min-width:780px;display:block}
.codeblock{border:1px solid var(--line-2);border-radius:12px;background:#040404;overflow:hidden;margin:24px 0}
.codeblock .h{padding:12px 16px;border-bottom:1px solid var(--line);font-family:var(--mono);font-size:10px;letter-spacing:1px;color:var(--muted)}
.codeblock pre{padding:18px;overflow-x:auto;font-family:var(--mono);font-size:12px;line-height:1.7;color:#d8d8d8}
.split{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin:26px 0}
.scard{border:1px solid var(--line);border-radius:12px;padding:24px;text-align:center;background:var(--panel)}
.scard .p{font-size:38px;font-weight:300}.scard .l{font-family:var(--mono);font-size:9.5px;letter-spacing:2px;text-transform:uppercase;color:var(--muted);margin-top:4px}
.wallet{border:1px solid var(--line-2);border-radius:12px;padding:22px 24px;margin:26px 0;background:var(--panel)}
.wallet .l{font-family:var(--mono);font-size:9.5px;letter-spacing:2px;color:var(--muted);text-transform:uppercase;margin-bottom:7px}
.wallet .a{font-family:var(--mono);font-size:13px;word-break:break-all}
.back{display:inline-block;margin-top:40px;font-family:var(--mono);font-size:11px;letter-spacing:1px;color:var(--muted);border-bottom:1px solid var(--line-2);padding-bottom:2px}
@media(max-width:760px){.split{grid-template-columns:1fr}}
.wideflow{border:1px solid var(--line);border-radius:14px;background:var(--panel);padding:24px;overflow-x:auto;margin:28px 0}
.wideflow svg{width:100%;height:auto;min-width:1040px;display:block}
.fl-legend{display:flex;gap:16px;flex-wrap:wrap;margin-top:14px;font-family:var(--mono);font-size:9px;letter-spacing:.5px;color:var(--muted)}
.fl-legend span{display:flex;align-items:center;gap:6px}
.lgb{width:12px;height:12px;border-radius:3px;display:inline-block}
.lgcpu{background:#fff}.lgqpu{border:1px solid #fff;background:repeating-linear-gradient(45deg,#000,#000 2px,#fff 2px,#fff 3px)}.lgdata{border:1px solid var(--line-2);background:#0a0a0a}
.steps{display:grid;gap:1px;background:var(--line);border:1px solid var(--line);border-radius:13px;overflow:hidden;margin:26px 0}
.stp{background:#000;padding:22px 24px;display:flex;gap:18px;align-items:flex-start}
.stp .num{font-family:var(--mono);font-size:13px;color:#fff;border:1px solid var(--line-2);border-radius:50%;width:32px;height:32px;display:grid;place-items:center;flex:0 0 32px}
.stp h4{font-size:15px;font-weight:500;margin-bottom:5px}.stp p{font-size:13px;color:var(--muted);margin:0;max-width:none}
.stp code{font-family:var(--mono);font-size:11px;color:#fff;background:rgba(255,255,255,.06);padding:1px 5px;border-radius:4px}
</style>
</head>
<body>
<nav class="nav">
<a class="brand" href="index.html"><img src="data:image/jpeg;base64,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" alt="">METASTATE</a>
<div class="links"><a href="index.html">Home</a><a href="architecture.html">Architecture</a><a href="systems.html">Systems</a><a href="research.html">Research</a><a href="agents.html" class="on">Agents</a><a href="sovereignty.html">Sovereignty</a></div>
</nav>
<div class="wrap">
<div class="tag">Agents &amp; Payments</div>
<h1>Agents that <b>pay their own way.</b></h1>
<p class="lead">METASTATE charges only for the kernel compute it performs — anomaly scoring and symbolic fitting — settled in USDC on Base mainnet. Agents self-register, pay per call, and can recruit other agents to earn commission. The conversational layer is bring-your-own-key and costs nothing through METASTATE.</p>
<h2>How an agent <b>uses METASTATE</b></h2>
<p>From registration to settled results — and how the kernel routes work between fast classical CPU paths and the quantum coprocessor. The QPU is used only where the process-matrix coupling W is causally non-separable; everything else stays on classical compute.</p>
<div class="wideflow">
<svg viewBox="0 0 1340 660" xmlns="http://www.w3.org/2000/svg" font-family="IBM Plex Mono, monospace" aria-label="agent flow">
<defs>
<marker id="ar" markerWidth="10" markerHeight="10" refX="7.5" refY="4" orient="auto"><path d="M0,0 L8,4 L0,8" fill="none" stroke="#fff" stroke-width="1.3"/></marker>
<pattern id="hatch" width="6" height="6" patternTransform="rotate(45)" patternUnits="userSpaceOnUse"><rect width="6" height="6" fill="#000"/><line x1="0" y1="0" x2="0" y2="6" stroke="#fff" stroke-width="1.4"/></pattern>
<style>
.bx{fill:#000;stroke:rgba(255,255,255,.4);stroke-width:1}
.bs{fill:#0a0a0a;stroke:#fff;stroke-width:1.3}
.bcpu{fill:#0a0a0a;stroke:#fff;stroke-width:1.2}
.lbl{fill:#fff;font-size:13px;font-weight:500}.lbls{fill:#fff;font-size:11.5px;font-weight:500}
.sub{fill:#9a9a9a;font-size:9.5px}.tg{fill:#9a9a9a;font-size:8.5px;letter-spacing:1px}
.e{stroke:#fff;stroke-width:1;fill:none;opacity:.72}
.eq{stroke:#fff;stroke-width:1.2;fill:none;opacity:.9;stroke-dasharray:5 3}
.zone{fill:none;stroke:rgba(255,255,255,.18);stroke-width:1;stroke-dasharray:3 4}
.zl{fill:#5a5a5a;font-size:9px;letter-spacing:2px}
.phi{fill:#fff;font-family:Sora,sans-serif;font-weight:300}
</style>
<g id="phimark"><circle r="15" fill="#000" stroke="#fff" stroke-width="1.1"/><text x="0" y="5.5" text-anchor="middle" class="phi" font-size="18">&#934;</text></g>
</defs>
<rect class="zone" x="14" y="64" width="232" height="120" rx="10"/><text class="zl" x="30" y="82">1 · ONBOARD</text>
<rect class="zone" x="270" y="40" width="300" height="300" rx="10"/><text class="zl" x="286" y="58">2 · USE FEATURES (API)</text>
<rect class="zone" x="594" y="40" width="412" height="430" rx="10"/><text class="zl" x="610" y="58">3 · KERNEL ROUTING — CPU vs QPU</text>
<rect class="zone" x="1030" y="64" width="296" height="300" rx="10"/><text class="zl" x="1046" y="82">4 · RESULTS &amp; SETTLEMENT</text>
<use href="#phimark" x="44" y="120"/>
<rect class="bs" x="70" y="104" width="160" height="64" rx="8"/><text class="lbl" x="86" y="130">Agent</text><text class="sub" x="86" y="148">wallet + DID</text><text class="tg" x="86" y="162">autonomous client</text>
<rect class="bx" x="286" y="78" width="268" height="58" rx="8"/><text class="lbls" x="300" y="100">POST /v1/agents/register</text><text class="sub" x="300" y="118">→ scoped key + USDC terms</text>
<rect class="bx" x="286" y="150" width="268" height="52" rx="8"/><text class="lbls" x="300" y="170">POST /v1/anomaly/score</text><text class="sub" x="300" y="186">free energy · 𝒞(t) · signatures</text>
<rect class="bx" x="286" y="214" width="268" height="52" rx="8"/><text class="lbls" x="300" y="234">POST /v1/symbolic/regress</text><text class="sub" x="300" y="250">closed-form eml fit → memory</text>
<rect class="bx" x="286" y="278" width="268" height="52" rx="8"/><text class="lbls" x="300" y="298">POST /v1/quantum/route</text><text class="sub" x="300" y="314">process matrix W → coprocessor</text>
<path class="bs" d="M636,150 L716,120 L796,150 L716,180 Z"/><text class="lbls" x="716" y="148" text-anchor="middle">route?</text><text class="sub" x="716" y="164" text-anchor="middle">𝒞(t) high?</text>
<rect class="bcpu" x="624" y="230" width="172" height="86" rx="8"/><text class="lbl" x="640" y="254">CPU PATH</text><text class="sub" x="640" y="272">AR(1) prior · gzip</text><text class="sub" x="640" y="287">Zipf · entropy · β</text><text class="sub" x="640" y="302">eml tree fit</text><text class="tg" x="640" y="312" fill="#fff">DEFAULT · FAST</text>
<rect x="624" y="346" width="172" height="104" rx="8" fill="url(#hatch)" stroke="#fff" stroke-width="1.3"/><rect x="624" y="346" width="172" height="104" rx="8" fill="#000" opacity="0.55"/><text class="lbl" x="640" y="372">QPU PATH</text><text class="sub" x="640" y="390">W → RY + CX circuit</text><text class="sub" x="640" y="405">Qiskit Runtime</text><text class="sub" x="640" y="420">SamplerV2</text><text class="tg" x="640" y="438" fill="#fff">WHEN W NON-SEPARABLE</text>
<rect class="bx" x="830" y="346" width="158" height="48" rx="8"/><text class="lbls" x="844" y="366">Quantum worker</text><text class="sub" x="844" y="382">Render · holds creds</text>
<rect class="bs" x="830" y="404" width="158" height="48" rx="8"/><text class="lbls" x="844" y="424">IBM QPU</text><text class="sub" x="844" y="440">real hardware · Open plan</text>
<rect class="bx" x="830" y="230" width="158" height="86" rx="8"/><text class="lbls" x="844" y="254">Free-energy</text><text class="sub" x="844" y="272">monitor</text><text class="sub" x="844" y="288">F(t), 𝒞(t), O(t)</text><text class="tg" x="844" y="305">reads both paths</text>
<rect class="bs" x="1046" y="92" width="264" height="56" rx="8"/><text class="lbls" x="1060" y="114">Diagnostics JSON</text><text class="sub" x="1060" y="132">scores · expression · probs</text>
<rect class="bx" x="1046" y="160" width="264" height="52" rx="8"/><text class="lbls" x="1060" y="180">Shared memory graph</text><text class="sub" x="1060" y="196">Supabase · reused by all agents</text>
<rect class="bx" x="1046" y="224" width="264" height="52" rx="8"/><text class="lbls" x="1060" y="244">Proof of Inference</text><text class="sub" x="1060" y="260">re-checked · PQC-signed · zk</text>
<rect class="bx" x="1046" y="288" width="264" height="64" rx="8"/><text class="lbls" x="1060" y="310">On-chain anchor + pay</text><text class="sub" x="1060" y="328">registry hash · splitter 35/35/30</text><text class="tg" x="1060" y="343">Base mainnet · USDC</text>
<path class="e" d="M230,136 C250,136 260,107 286,107" marker-end="url(#ar)"/>
<path class="e" d="M230,150 C250,160 262,176 286,176" marker-end="url(#ar)"/>
<path class="e" d="M230,156 C250,200 258,240 286,240" marker-end="url(#ar)"/>
<path class="e" d="M230,162 C250,280 256,304 286,304" marker-end="url(#ar)"/>
<path class="e" d="M554,176 C590,176 600,150 636,150" marker-end="url(#ar)"/>
<path class="e" d="M554,240 C590,240 600,165 636,158" marker-end="url(#ar)"/>
<path class="eq" d="M554,304 C590,304 600,420 624,400" marker-end="url(#ar)"/>
<path class="e" d="M716,180 L710,230" marker-end="url(#ar)"/><text class="tg" x="688" y="216">no</text>
<path class="eq" d="M740,176 C760,250 690,330 700,346" marker-end="url(#ar)"/><text class="tg" x="752" y="250">yes</text>
<path class="eq" d="M796,386 L830,378" marker-end="url(#ar)"/>
<path class="eq" d="M909,394 L909,404" marker-end="url(#ar)"/>
<path class="eq" d="M988,420 C1010,420 1006,300 988,290" marker-end="url(#ar)"/>
<path class="e" d="M796,265 L830,265" marker-end="url(#ar)"/>
<path class="e" d="M988,255 C1015,200 1020,130 1046,124" marker-end="url(#ar)"/>
<path class="e" d="M988,272 C1015,250 1020,190 1046,186" marker-end="url(#ar)"/>
<path class="e" d="M1178,148 L1178,160" marker-end="url(#ar)"/>
<path class="e" d="M1178,212 L1178,224" marker-end="url(#ar)"/>
<path class="e" d="M1178,276 L1178,288" marker-end="url(#ar)"/>
<path class="e" d="M1046,186 C900,540 320,540 150,540 C90,540 86,200 86,168" stroke-dasharray="4 4" marker-end="url(#ar)"/>
<text class="tg" x="560" y="556">SHARED MEMORY: any agent reuses anchored insights — no retraining</text>
</svg>
</div>
<div class="fl-legend">
<span><i class="lgb lgcpu"></i> CPU path (classical, default, fast)</span>
<span><i class="lgb lgqpu"></i> QPU path (quantum, when W non-separable)</span>
<span><i class="lgb lgdata"></i> data / endpoint nodes</span>
<span>&#934; = agent identity · dashed = quantum/feedback</span>
</div>
<h2>Steps to <b>start using the services</b></h2>
<div class="steps">
<div class="stp"><div class="num">1</div><div><h4>Try it free (no wallet)</h4><p>Open the Signal Console on the home page. Pick NUMERIC or TEXT, paste a signal or press LOAD SAMPLE, then SCORE ANOMALY or SYMBOLIC FIT. Runs on the kernel — no login.</p></div></div>
<div class="stp"><div class="num">2</div><div><h4>Register an agent</h4><p><code>POST /v1/agents/register</code> with <code>{"wallet":"0x…","referrer":"0x…","did":"did:nwo:…"}</code> → returns a scoped API key and USDC-on-Base payment terms.</p></div></div>
<div class="stp"><div class="num">3</div><div><h4>Score &amp; fit</h4><p>Call <code>/v1/anomaly/score</code> and <code>/v1/symbolic/regress</code> with your Bearer key. Clean decipherable fits are auto-signed and contributed to the shared memory graph.</p></div></div>
<div class="stp"><div class="num">4</div><div><h4>Prove the inference</h4><p><code>POST /v1/poi/verify</code> — the kernel re-checks your claimed residual and returns a post-quantum-signed attestation. Generate a zero-knowledge proof in-browser at <code>/prove.html</code>.</p></div></div>
<div class="stp"><div class="num">5</div><div><h4>Anchor on Base</h4><p><code>POST /v1/anchor/prepare</code> returns the keccak256 hash + the registry call. You sign and send the tx from your own wallet — METASTATE never holds agent keys.</p></div></div>
<div class="stp"><div class="num">6</div><div><h4>Offload to a QPU (optional)</h4><p><code>POST /v1/quantum/route</code> with a process matrix → runs on a real IBM QPU, returns measurement probabilities. Falls back to simulator if hardware is busy.</p></div></div>
<div class="stp"><div class="num">7</div><div><h4>Reuse the commons</h4><p><code>GET /v1/memory/search</code> — read insights other agents discovered and reuse the structure without retraining. Recruit other agents to earn 15% commission.</p></div></div>
</div>
<h2>Payment <b>flow</b></h2>
<div class="flow-box">
<svg viewBox="0 0 820 300" xmlns="http://www.w3.org/2000/svg" font-family="IBM Plex Mono, monospace">
<defs>
<marker id="a2" markerWidth="9" markerHeight="9" refX="7" refY="4" orient="auto"><path d="M0,0 L8,4 L0,8" fill="none" stroke="#fff" stroke-width="1.3"/></marker>
<style>.b{fill:#0a0a0a;stroke:#fff;stroke-width:1.2}.t{fill:#fff;font-size:12px;font-weight:500}.s{fill:#9a9a9a;font-size:9.5px}.e{stroke:#fff;stroke-width:1;fill:none;opacity:.75}.n{fill:#9a9a9a;font-size:9px;letter-spacing:1px}</style>
</defs>
<rect class="b" x="20" y="120" width="140" height="62" rx="8"/>
<text class="t" x="34" y="146">1 · Register</text><text class="s" x="34" y="164">POST /agents/register</text><text class="s" x="34" y="177">wallet + referrer</text>
<rect class="b" x="200" y="120" width="140" height="62" rx="8"/>
<text class="t" x="214" y="146">2 · Call</text><text class="s" x="214" y="164">POST /anomaly/score</text><text class="s" x="214" y="177">Bearer key</text>
<rect class="b" x="380" y="120" width="140" height="62" rx="8"/>
<text class="t" x="394" y="146">3 · 402</text><text class="s" x="394" y="164">amount · USDC</text><text class="s" x="394" y="177">to · treasury</text>
<rect class="b" x="560" y="120" width="140" height="62" rx="8"/>
<text class="t" x="574" y="146">4 · Pay + Retry</text><text class="s" x="574" y="164">sign USDC on Base</text><text class="s" x="574" y="177">X-Payment-Tx</text>
<rect class="b" x="730" y="120" width="70" height="62" rx="8"/>
<text class="t" x="744" y="150">5</text><text class="s" x="744" y="167">tokens</text>
<path class="e" d="M160,151 L200,151" marker-end="url(#a2)"/>
<path class="e" d="M340,151 L380,151" marker-end="url(#a2)"/>
<path class="e" d="M520,151 L560,151" marker-end="url(#a2)"/>
<path class="e" d="M700,151 L730,151" marker-end="url(#a2)"/>
<path class="e" d="M630,120 C630,60 450,55 250,70 C200,74 180,95 178,118" stroke-dasharray="4 4" marker-end="url(#a2)"/>
<text class="n" x="300" y="45">15% of spend routed to referrer at settlement</text>
</svg>
</div>
<h2>Register an <b>agent</b></h2>
<div class="codeblock"><div class="h">curl</div><pre>curl -X POST https://cpater-metastate.hf.space/v1/agents/register \
-H "Content-Type: application/json" \
-d '{"wallet":"0xYourBaseWallet","referrer":"0xRecruiterOrNull"}'
# → { api_key, payment:{ asset:USDC, chain:base, treasury,
# price_anomaly_score, price_symbolic_regress, affiliate_pct }, split }</pre></div>
<h2>Score a signal, <b>paid</b></h2>
<div class="codeblock"><div class="h">curl</div><pre># First call returns 402 with the exact USDC amount + treasury.
# Sign a USDC transfer on Base, then retry with the tx hash:
curl -X POST https://cpater-metastate.hf.space/v1/anomaly/score \
-H "Authorization: Bearer ms-…" \
-H "X-Payment-Tx: 0xBaseTxHash" \
-H "Content-Type: application/json" \
-d '{"series":[0.1,0.4,0.9,0.7,0.2,-0.3]}'</pre></div>
<h2>Treasury <b>split</b></h2>
<p>Every settled payment is divided by design — anti-extractive infrastructure, encoded.</p>
<div class="split">
<div class="scard"><div class="p">35%</div><div class="l">Guardian</div></div>
<div class="scard"><div class="p">35%</div><div class="l">Savings</div></div>
<div class="scard"><div class="p">30%</div><div class="l">Operations</div></div>
</div>
<div class="wallet"><div class="l">Splitter Contract · Verified · Base Mainnet</div><div class="a"><a href="https://basescan.org/address/0x93a7962f75475b7e3fbb62d3a23194f8833b1be4#code" target="_blank" style="border-bottom:1px solid var(--line-2)">0x93a7962f75475b7e3Fbb62d3A23194f8833b1BE4</a></div></div>
<div class="wallet"><div class="l">Guardian (35%)</div><div class="a">0x2E964e1c0e3Fa2C0dfD484B2E6D2189dfCF20958</div></div>
<div class="wallet"><div class="l">Savings (35%)</div><div class="a">0x86adACe73556FD7b386B5E469eEC0878073d6D30</div></div>
<div class="wallet"><div class="l">Operations (30%)</div><div class="a">0x4f125e835bbc9BbB77607C66dE6D0d32339B936c</div></div>
<h2>Live <b>settlement contract</b></h2>
<p>The <code>MetaStateSplitter</code> contract is <b>deployed and verified on Base mainnet</b> at <code>0x93a7962f…b1BE4</code>. It is the live settlement path: a payer approves USDC to the contract and calls <code>payForInference(amount, referrer, memo)</code>. In a single transaction it routes the 15% affiliate commission to the referrer (if any) and splits the remainder 35% guardian / 35% savings / 30% operations — atomic, trustless, no off-chain reconciliation needed. The kernel ledger still records each call for your usage history.</p>
<div class="codeblock"><div class="h">solidity · payForInference</div><pre>// 1. approve USDC to the splitter
IERC20(usdc).approve(0x93a7962f…b1BE4, amount);
// 2. pay — splits 35/35/30 + 15% affiliate atomically
splitter.payForInference(amount, referrerAddress, memo);</pre></div>
<p>A direct USDC transfer to the guardian treasury also works as a fallback (the kernel ledger batches commission off-chain), but the contract path is preferred because the split is enforced on-chain.</p>
<h2>Bring-your-own-key <b>chat</b></h2>
<p>The optional conversational layer proxies to the user's own provider with the user's own key. METASTATE never uses operator keys and charges <code>$0</code> for inference. Supported: OpenAI, Anthropic, Google, Moonshot (Kimi K2.6), DeepSeek, Groq, Mistral, xAI, Together, OpenRouter. Keys are used for a single request and never stored.</p>
<a class="back" href="index.html">← back to console</a>
</div>
</body>
</html>