diff --git a/public/docs.html b/public/docs.html index ddcd0e6..4185ae0 100644 --- a/public/docs.html +++ b/public/docs.html @@ -1,297 +1,140 @@ - -CommandLayer — Getting started with CommandLayer - - - - - - - - - - - + + + CommandLayer Docs — Build Verifiable Agent Actions + + + + + + - - -
-
▸ docs
-

Getting started with
CommandLayer

-

Agents don’t make claims — they produce proof. Wrap → sign → verify. VerifyAgent.eth is the public verifier for receipts produced by ENS-named agents.

-

VerifyAgent resolves signer keys from ENS TXT records.
For the hackathon demo, runtime.commandlayer.eth is supported via a labeled fallback resolver that mirrors the ENS record structure.
The verification flow is designed to operate against live ENS records.

- -
- Wrap → sign → verify - If the output changes, the proof breaks. - Tampering returns INVALID. -
- -
- Verify a receipt now → - Jump to summarize flow ↓ - Stack proof demo (local/dev) → -
-

Install the SDK: npm install @commandlayer/agent-sdk

-

If the output changes, the proof breaks.

-

If you need to work on SDK internals locally, use the GitHub repository as a secondary path.

- -
- -
-

One flow you can implement today

-

At minimum, you only need two things to integrate: a verb and its schemas. If you also want others to discover and route to your agent, you publish an Agent Card. Runtime is the proving surface: it executes those contracts and may add optional runtime_metadata without changing semantics.

- -
-
1
Pick a Commons verb (e.g. summarize).
-
2
Take its *.request and *.receipt schemas as your contract.
-
3
Validate payloads with any JSON Schema 2020-12 validator.
-
4
Describe your agent with an Agent Card so it can be discovered and routed to.
-
5
Runtime can change routing, policy, and guarantees — the semantic contract stays stable and Commons remains the public truth.
-
- -
- - Real verbs, real receipts — the same shapes across agents, runtimes, and payment rails. See it live → +
- -
- -
-

Verification in four steps

-

1) Wrap any agent action. 2) Emit a signed receipt. 3) Verify with VerifyAgent.eth. 4) If the output changes, the proof breaks and verification returns INVALID.

+ -
-
-
Commons verbs
-
Universal verbs like summarize, analyze, parse, and fetch. Each has a strict *.request and *.receipt JSON Schema you can plug into any agent.
+
+
+
Docs
+

Build verifiable agent actions.

+

CommandLayer docs cover the protocol model, SDK integration, runtime signing, MCP bridging, verifier checks, schemas, and capability activation.

+ -
-
Commercial verbs
-
Economic flows — authorize, checkout, purchase, ship, verify — that extend Commons with commerce-oriented schemas. Schemas public and portable.
+
+ +
+

Start here

+ -
-
VerifyAgent.eth, Agent Cards, Runtime, SDK
-
VerifyAgent.eth is the public verifier for CommandLayer receipts. Agent Cards bind ENS names to verbs/schema versions/endpoints. Runtime executes verbs and signs receipts. SDK wraps agents and provides programmatic receipt tooling.
+
+ +
+

Architecture docs

+ -
-
- -
- -
-

Example: calling summarize

-

A typical integration: the client builds a summarize.request payload, validates it against the Commons schema, sends it to an agent endpoint, and receives a summarize.receipt. The same pattern applies to every Commons verb.

- -

1. Inspect the schemas

-

Both schemas are public and versioned under the v1.1.0 path: https://commandlayer.org/schemas/v1.1.0/commons/summarize/

-

- summarize.request.schema.json ↗  ·  - summarize.receipt.schema.json ↗ -

- -

2. Validate before sending

-
-
javascriptNode.js · Ajv (any JSON Schema 2020-12 validator works)
-
import Ajv from "ajv";
-const ajv = new Ajv({ strict: true });
-const schema = await fetch(
-  "https://commandlayer.org/schemas/v1.1.0/commons/summarize/summarize.request.schema.json"
-).then(r => r.json());
-const validate = ajv.compile(schema);
-if (!validate(payload)) {
-  console.error("Invalid summarize.request", validate.errors);
-}
-
- -

3. Send & receive a receipt

-
-
javascriptsend request · validate receipt
-
const res = await fetch("https://runtime.commandlayer.org/summarize/v1.1.0", {
-  method: "POST",
-  headers: { "content-type": "application/json" },
-  body: JSON.stringify(payload)
-});
-const receipt = await res.json();
-// validate against summarize.receipt.schema.json
-
-
- -
- -
-

Defining your own Agent Card

-

If you operate an agent and want others to discover and call it, describe it with an Agent Card JSON file and host it at a stable URL. Commons cards live under /agent-cards/agents/v1.1.0/commons/<ens>.json.

- -
-
jsonCommons agent card template · summarizeagent.eth
-
{
-  "$schema": "https://commandlayer.org/agent-cards/schemas/v1.1.0/agent.card.schema.json",
-  "id": "summarizeagent.eth",
-  "owner": "commandlayer.eth",
-  "ens": "summarizeagent.eth",
-  "version": "1.1.0",
-  "status": "protocol_reference",
-  "class": "commons",
-  "implements": ["summarize"],
-  "schemas": {
-    "request": "https://commandlayer.org/schemas/v1.1.0/commons/summarize/summarize.request.schema.json",
-    "receipt": "https://commandlayer.org/schemas/v1.1.0/commons/summarize/summarize.receipt.schema.json"
-  },
-  "entry": "https://runtime.commandlayer.org/execute"
-}
-
- -
- - Commercial agents follow the same pattern under /agent-cards/agents/v1.1.0/commercial/<ens>.json, with verbs such as authorize, checkout, purchase, ship, and verify. -
-
- -
+
    +
  • Runtime signs.
  • Verifier validates.
  • MCP bridges.
  • SDK wraps.
  • Schema-valid alone is not verified.
  • +
+ + +
+

Canonical proof model

+

Runtime production is live, runtime signs canonical Trust Verification receipts, and MCP E2E against production runtime passes: STEP 1 SIGNED · STEP 2 VERIFIED · STEP 3 TAMPERED INVALID.

+
metadata.proof.canonicalization = "json.sorted_keys.v1"
+metadata.proof.hash.alg = "SHA-256"
+metadata.proof.signature.alg = "Ed25519"
+metadata.proof.signature.kid = "vC4WbcNoq2znSCiQ"
+metadata.proof.signer_id = "runtime.commandlayer.eth"
+
+ +
+

Developer paths

+
+

Fast path

Install SDK → wrap action → verify receipt.

+

Protocol path

Read protocol → inspect schemas → implement verifier.

+

Capability path

Choose capability family → define schema → publish metadata.

+
+
- - - - +