This document specifies stability rules, versioning constraints, and change governance for all Protocol Commons schemas.
This document is NORMATIVE and ENFORCEABLE.
Protocol-Commons defines the canonical verb and schema layer for autonomous agents:
- Standardized verbs
- Strict JSON Schema 2020-12 validation
- Deterministic
$idURLs - x402 envelope embedding
- Trace + status requirements
- Immutable versioning rules
Once published, a version directory is immutable.
schemas/v1.0.0/
_shared/
x402.schema.json
trace.schema.json
receipt.base.schema.json
commons/
<verb>/
requests/<verb>.request.schema.json
receipts/<verb>.receipt.schema.json
- Paths MUST NOT change once published
- Folder names MUST match canonical verb exactly
- No aliases or synonyms permitted
| Verb | Purpose |
|---|---|
| analyze | Extract meaning from input |
| classify | Assign categories deterministically |
| clean | Normalize input |
| convert | Transform between formats |
| describe | State defining properties |
| explain | Provide causal justification |
| fetch | Retrieve external data |
| format | Produce structured output |
| parse | Extract structured meaning |
| summarize | Condense content while preserving meaning |
Each verb MUST define:
- One request schema
- One receipt schema
Schemas MUST include fully-qualified, HTTPS-resolvable $id values:
Requests
https://commandlayer.org/schemas/v1.0.0/commons/<verb>/requests/<verb>.request.schema.json
https://commandlayer.org/schemas/v1.0.0/commons/<verb>/receipts/<verb>.receipt.schema.json
https://commandlayer.org/schemas/v1.0.0/_shared/<name>.schema.json
"x402": {
"verb": "<verb>",
"version": "1.0.0"
}"x402": {
"verb": "<verb>",
"version": "1.0.0",
"status": "ok" | "error"
}
No additional properties allowed in x402.
Validated by _shared/x402.schema.json.
Every request MUST include:
| Field | Source | Required |
|---|---|---|
x402 |
x402 schema | ✓ |
actor |
Free-form identifier | ✓ |
trace |
trace schema | ✓ |
input |
verb-specific | ✓ |
Missing required fields MUST fail validation.
| Field | Conditional |
|---|---|
x402 |
Always required |
trace |
Always required |
status |
"ok" or "error" |
result |
Required if status="ok" |
error |
Required if status="error" |
No result in error receipts.
No error in success receipts.
Validated by _shared/receipt.base.schema.json
Fields MUST include:
requestIdtsReceipts MUST echo:
trace.requestId = request.trace.requestId
Optional fields (if schema supports):
parentId,callbackUri,metrics
Once published under schemas/v1.0.0/:
The following actions are prohibited:
- Editing schema content
- Changing behavior or requirements
- Updating $id values
Any change requires:
- New version directory (e.g., v1.0.1/)
- New CID + updated manifest & checksums
- ENS TXT update
- Governance approval
CI MUST enforce:
strict: true
strictTypes: true
allowUnionTypes: false
strictTuples: true
All valid + invalid examples MUST pass CI.
Examples are REQUIRED for every verb:
examples/v1.0.0/commons/<verb>/
valid/*.json
invalid/*.json
Minimum:
- 3 valid examples
- 3 invalid examples
Pinned schemas CID:
bafybeieoynknzalaojwpzjzjy77kpnfe4kla5io7jbfnmyu7w7vyvuljpq
Integrity tracked by:
checksums.txtmanifest.json
Resolvers MUST reject mismatched artifacts.
email dev@commandlayer.org PGP 5016 D496 9F38 22B2 C5A2 FA40 99A2 6950 197D AB0A
Status: Stable · v1.0.0 locked