|
| 1 | +<!DOCTYPE html> |
| 2 | +<html lang="en"> |
| 3 | +<head> |
| 4 | +<meta charset="UTF-8" /> |
| 5 | +<meta name="viewport" content="width=device-width, initial-scale=1.0" /> |
| 6 | +<title>Protocol | CommandLayer</title> |
| 7 | +<meta name="description" content="CommandLayer is a protocol stack for turning agent actions into signed, independently verifiable receipts." /> |
| 8 | +<link rel="icon" href="/icon2.png" /> |
| 9 | +<link rel="preconnect" href="https://fonts.googleapis.com" /> |
| 10 | +<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin /> |
| 11 | +<link href="https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700;800&display=swap" rel="stylesheet" /> |
| 12 | +<link rel="stylesheet" href="/css/site.css" /> |
| 13 | +<style> |
| 14 | + .brand{gap:0}.brand img{height:68px;width:auto;object-fit:contain}.brand span{display:none}.nav-links a.active{color:var(--text);background:var(--surface)} |
| 15 | + .hero{padding:84px 0 64px;background:radial-gradient(1200px 360px at 50% -10%,rgba(82,152,255,.15),transparent 70%),#fff;text-align:center} |
| 16 | + .hero h1{font-size:clamp(2.3rem,5vw,4rem);line-height:1.06;letter-spacing:-.04em;margin:0 0 14px} |
| 17 | + .hero p{max-width:860px;margin:0 auto;color:var(--text-2);font-size:1.08rem;line-height:1.7} |
| 18 | + .hero-actions{margin-top:24px;display:flex;gap:10px;justify-content:center;flex-wrap:wrap} |
| 19 | + .section{padding:56px 0} |
| 20 | + .stack-grid,.boundaries-grid,.family-grid{display:grid;gap:14px} |
| 21 | + .stack-grid{grid-template-columns:repeat(3,minmax(0,1fr))} |
| 22 | + .boundaries-grid{grid-template-columns:repeat(3,minmax(0,1fr))} |
| 23 | + .family-grid{grid-template-columns:repeat(3,minmax(0,1fr))} |
| 24 | + .card{background:#fff;border:1px solid var(--border);border-radius:16px;padding:18px;box-shadow:0 1px 2px rgba(15,23,42,.04),0 8px 22px rgba(99,91,255,.07)} |
| 25 | + .card h3{margin:0 0 8px;font-size:1.04rem} |
| 26 | + .card p{margin:0;color:var(--text-2);line-height:1.6} |
| 27 | + .dark-block{background:#0E1322;color:#E2E8F0;border:1px solid rgba(30,41,59,.45);border-radius:14px;padding:16px;overflow:auto;font:12px/1.6 ui-monospace,SFMono-Regular,Menlo,Consolas,monospace} |
| 28 | + .list{margin:0;padding-left:18px;color:var(--text-2);line-height:1.7} |
| 29 | + .flow{display:flex;flex-wrap:wrap;gap:8px;align-items:center} |
| 30 | + .node{padding:8px 10px;border-radius:999px;background:#eef4ff;border:1px solid #c8dafe;font-weight:700;color:#1e3a8a;font-size:13px} |
| 31 | + .arrow{color:#64748b;font-weight:800} |
| 32 | + .proof-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px} |
| 33 | + .cta-panel{background:linear-gradient(135deg,#5298FF 0%,#635BFF 100%);border-radius:18px;padding:26px;color:#fff;text-align:center} |
| 34 | + .cta-panel p{margin:0 0 14px;color:#eaf3ff} |
| 35 | + footer{padding:24px 0 34px;border-top:1px solid var(--border);background:#fff} |
| 36 | + .foot-links{display:flex;align-items:center;justify-content:center;gap:28px;font-size:13px;flex-wrap:wrap} |
| 37 | + .foot-links a{color:var(--muted);text-decoration:none}.foot-links a:hover{color:var(--purple)} |
| 38 | + @media(max-width:900px){.stack-grid,.boundaries-grid,.family-grid,.proof-grid{grid-template-columns:1fr}.flow{align-items:flex-start}.hero{padding:62px 0 42px}} |
| 39 | +</style> |
| 40 | +</head> |
| 41 | +<body> |
| 42 | +<nav> |
| 43 | + <div class="container nav-inner"> |
| 44 | + <a href="/" class="brand"><img src="/commandlayer-logo.png" alt="CommandLayer" /><span>CommandLayer</span></a> |
| 45 | + <div class="nav-links"> |
| 46 | + <a href="/">Home</a> |
| 47 | + <a href="/protocol.html" class="active">Protocol</a> |
| 48 | + <a href="/capabilities.html">Capabilities</a> |
| 49 | + <a href="/verify.html">Verifier</a> |
| 50 | + <a href="/sdk-records.html">SDK</a> |
| 51 | + <a href="/docs/wrap-your-agent.html">Docs</a> |
| 52 | + <a href="/claim.html">Claim</a> |
| 53 | + <a href="https://github.com/commandlayer" target="_blank" rel="noopener">GitHub</a> |
| 54 | + </div> |
| 55 | + </div> |
| 56 | +</nav> |
| 57 | + |
| 58 | +<main> |
| 59 | + <section class="hero"> |
| 60 | + <div class="container"> |
| 61 | + <p class="section-eyebrow">Protocol</p> |
| 62 | + <h1>The receipt layer for verifiable agent actions.</h1> |
| 63 | + <p>CommandLayer defines how agent actions are described, signed, transported, and verified — without making MCP, SDKs, or apps the trust root.</p> |
| 64 | + <div class="hero-actions"> |
| 65 | + <a class="btn btn-primary btn-lg" href="/stack-proof-demo.html">View production proof</a> |
| 66 | + <a class="btn btn-secondary btn-lg" href="/capabilities.html">Explore capabilities</a> |
| 67 | + </div> |
| 68 | + </div> |
| 69 | + </section> |
| 70 | + |
| 71 | + <section class="section"><div class="container"> |
| 72 | + <p class="section-eyebrow">Architecture stack</p> |
| 73 | + <h2 class="section-h2">Protocol layers and trust ownership.</h2> |
| 74 | + <div class="stack-grid"> |
| 75 | + <article class="card"><h3>CLAS</h3><p>Defines action and receipt contracts.</p></article> |
| 76 | + <article class="card"><h3>runtime-core</h3><p>Canonicalization, hashing, signing, verification. Canonical crypto truth for receipts.</p></article> |
| 77 | + <article class="card"><h3>runtime</h3><p>Executes actions and signs canonical receipts in production.</p></article> |
| 78 | + <article class="card"><h3>MCP</h3><p>Bridge for MCP clients. Does not sign. Does not hold keys.</p></article> |
| 79 | + <article class="card"><h3>VerifyAgent</h3><p>Verifier that checks hash/signature/proof validity and returns VALID or INVALID.</p></article> |
| 80 | + <article class="card"><h3>agent-sdk</h3><p>Developer wrapper for emitting receipts from agent actions.</p></article> |
| 81 | + </div> |
| 82 | + <p class="section-p" style="margin-top:16px">commandlayer.org documents, demonstrates, and exposes verifier surfaces for this stack.</p> |
| 83 | + </div></section> |
| 84 | + |
| 85 | + <section class="section" style="background:#f8faff;border-top:1px solid var(--border);border-bottom:1px solid var(--border)"><div class="container"> |
| 86 | + <p class="section-eyebrow">Canonical receipt model</p> |
| 87 | + <div class="dark-block"><pre>{ |
| 88 | + "verb": "sign", |
| 89 | + "class": "trust-verification", |
| 90 | + "result": { |
| 91 | + "payload": { |
| 92 | + "message": "hello from MCP" |
| 93 | + } |
| 94 | + }, |
| 95 | + "metadata": { |
| 96 | + "proof": { |
| 97 | + "canonicalization": "json.sorted_keys.v1", |
| 98 | + "hash": { |
| 99 | + "alg": "SHA-256", |
| 100 | + "value": "..." |
| 101 | + }, |
| 102 | + "signature": { |
| 103 | + "alg": "Ed25519", |
| 104 | + "kid": "vC4WbcNoq2znSCiQ", |
| 105 | + "value": "..." |
| 106 | + }, |
| 107 | + "signer_id": "runtime.commandlayer.eth" |
| 108 | + } |
| 109 | + } |
| 110 | +}</pre></div> |
| 111 | + </div></section> |
| 112 | + |
| 113 | + <section class="section"><div class="container"> |
| 114 | + <p class="section-eyebrow">Trust boundaries</p> |
| 115 | + <div class="boundaries-grid"> |
| 116 | + <article class="card"><h3>Runtime signs.</h3><p>Signing authority is runtime, not transport surfaces.</p></article> |
| 117 | + <article class="card"><h3>Verifier verifies.</h3><p>Verification requires recomputed hash plus signature check.</p></article> |
| 118 | + <article class="card"><h3>MCP bridges.</h3><p>MCP is integration plumbing and never the signer.</p></article> |
| 119 | + <article class="card"><h3>SDK wraps.</h3><p>SDK helps developers emit receipts; it is not trust root.</p></article> |
| 120 | + <article class="card"><h3>Schemas describe.</h3><p>Schema-valid does not mean verified.</p></article> |
| 121 | + <article class="card"><h3>Apps consume.</h3><p>Apps consume verified results after proof checks pass.</p></article> |
| 122 | + </div> |
| 123 | + <ul class="list" style="margin-top:14px"> |
| 124 | + <li>MCP is not the signer.</li> |
| 125 | + <li>Schema-valid does not mean verified.</li> |
| 126 | + <li>A receipt is only verified when hash and signature checks pass.</li> |
| 127 | + <li>Tampering must produce INVALID.</li> |
| 128 | + </ul> |
| 129 | + </div></section> |
| 130 | + |
| 131 | + <section class="section" style="background:#f8faff"><div class="container"> |
| 132 | + <p class="section-eyebrow">Verification lifecycle</p> |
| 133 | + <div class="flow"> |
| 134 | + <span class="node">Action requested</span><span class="arrow">→</span> |
| 135 | + <span class="node">Runtime executes/signs</span><span class="arrow">→</span> |
| 136 | + <span class="node">Receipt emitted</span><span class="arrow">→</span> |
| 137 | + <span class="node">Verifier recomputes hash</span><span class="arrow">→</span> |
| 138 | + <span class="node">Verifier checks Ed25519 signature</span><span class="arrow">→</span> |
| 139 | + <span class="node">VALID or INVALID</span> |
| 140 | + </div> |
| 141 | + </div></section> |
| 142 | + |
| 143 | + <section class="section"><div class="container"> |
| 144 | + <p class="section-eyebrow">Production proof summary</p> |
| 145 | + <div class="proof-grid"> |
| 146 | + <article class="card"><h3>STEP 1 SIGNED</h3><p>Runtime production is live and signs canonical Trust Verification receipts.</p></article> |
| 147 | + <article class="card"><h3>STEP 2 VERIFIED</h3><p>hash_matches=true<br/>signature_valid=true</p></article> |
| 148 | + <article class="card"><h3>STEP 3 TAMPERED INVALID</h3><p>tampered hash_matches=false<br/>tampered signature_error=hash_mismatch</p></article> |
| 149 | + </div> |
| 150 | + <p class="section-p" style="margin-top:14px">MCP E2E against production runtime passes: STEP 1 SIGNED, STEP 2 VERIFIED, STEP 3 TAMPERED INVALID.</p> |
| 151 | + </div></section> |
| 152 | + |
| 153 | + <section class="section" style="background:#f8faff"><div class="container"> |
| 154 | + <p class="section-eyebrow">Capability families</p> |
| 155 | + <h2 class="section-h2">Expandable groups on top of protocol receipts.</h2> |
| 156 | + <div class="family-grid"> |
| 157 | + <article class="card"><h3>Trust Verification v1</h3><p>verify, sign, attest, authorize, approve, reject, permit, grant, authenticate, endorse</p></article> |
| 158 | + <article class="card"><h3>AI / Utility Actions</h3><p>summarize, classify, clean, parse, explain, analyze, format, convert, describe, fetch</p></article> |
| 159 | + <article class="card"><h3>Future families</h3><p>commerce, identity, governance, data, messaging, payments, policy, compliance</p></article> |
| 160 | + </div> |
| 161 | + </div></section> |
| 162 | + |
| 163 | + <section class="section"><div class="container"> |
| 164 | + <div class="cta-panel"> |
| 165 | + <h2 style="margin:0 0 8px">Build on the protocol.</h2> |
| 166 | + <p>Use canonical metadata.proof receipts with json.sorted_keys.v1 + SHA-256 + Ed25519 under signer runtime.commandlayer.eth.</p> |
| 167 | + <div class="hero-actions"> |
| 168 | + <a class="btn btn-ghost-white btn-lg" href="/stack-proof-demo.html">View proof</a> |
| 169 | + <a class="btn btn-ghost-white btn-lg" href="/capabilities.html">Explore capabilities</a> |
| 170 | + <a class="btn btn-ghost-white btn-lg" href="https://github.com/commandlayer/agent-sdk" target="_blank" rel="noopener">Install SDK</a> |
| 171 | + </div> |
| 172 | + </div> |
| 173 | + </div></section> |
| 174 | +</main> |
| 175 | + |
| 176 | +<footer> |
| 177 | + <div class="container foot-links"> |
| 178 | + <a href="/protocol.html">Protocol</a> |
| 179 | + <a href="/capabilities.html">Capabilities</a> |
| 180 | + <a href="/verify.html">Verifier</a> |
| 181 | + <a href="/sdk-records.html">SDK</a> |
| 182 | + <a href="/docs/wrap-your-agent.html">Docs</a> |
| 183 | + <a href="/claim.html">Claim</a> |
| 184 | + </div> |
| 185 | +</footer> |
| 186 | +</body> |
| 187 | +</html> |
0 commit comments