This document specifies stability rules, versioning constraints, and layout rules for Protocol-Commons schemas.
This document is NORMATIVE.
Protocol-Commons defines the canonical verb and schema layer for autonomous agents.
This policy covers:
- versioned schema layout
$idrequirements- request and receipt structure
- immutability rules
- validation expectations
This repository currently uses:
- v1.1.0 as the current release and active schema line
- v1.0.0 as the legacy historical schema line
The manifest tracks IPFS publication for v1.1.0 separately from the HTTPS-hosted schema URLs. That publication record does not alter the schema layout defined here.
schemas/v1.1.0/
└── commons/
└── <verb>/
├── <verb>.request.schema.json
└── <verb>.receipt.schema.json
schemas/v1.0.0/
├── _shared/
│ ├── identity.schema.json
│ ├── receipt.base.schema.json
│ ├── trace.schema.json
│ ├── verb.aliases.schema.json
│ └── x402.schema.json
└── commons/
└── <verb>/
├── requests/<verb>.request.schema.json
└── receipts/<verb>.receipt.schema.json
- Paths MUST NOT change once published
- Folder names MUST match the canonical verb exactly
- v1.1.0 MUST use the flat per-verb file layout shown above
- Nested
requests/andreceipts/directories are legacy-only and MUST NOT be described as the v1.1.0 layout
| Verb | Purpose |
|---|---|
| analyze | Extract meaning from input |
| classify | Assign categories deterministically |
| clean | Normalize input |
| convert | Transform between formats |
| describe | State defining properties |
| explain | Provide rationale or clarification |
| fetch | Retrieve external data |
| format | Produce structured or presentable output |
| parse | Extract structured meaning |
| summarize | Condense content while preserving meaning |
Each verb MUST define exactly:
- one request schema
- one receipt schema
https://commandlayer.org/schemas/v1.1.0/commons/<verb>/<verb>.request.schema.json
https://commandlayer.org/schemas/v1.1.0/commons/<verb>/<verb>.receipt.schema.json
Legacy v1.0.0 schemas retain their older nested $id patterns and _shared references. Those patterns are legacy-only.
All $id values MUST be fully qualified HTTPS URLs.
Every v1.1.0 request MUST include:
| Field | Required | Notes |
|---|---|---|
verb |
Yes | Canonical verb constant |
version |
Yes | Must equal 1.1.0 |
input |
Yes | Non-empty string |
mode |
No | Optional verb-specific enum |
Requests MUST reject additional properties.
v1.1.0 requests do not use nested request objects, x402, trace, or actor fields.
Every v1.1.0 receipt MUST include:
| Field | Required |
|---|---|
verb |
Yes |
version |
Yes |
status |
Yes |
timestamp |
Yes |
request_hash |
Yes |
signature |
Yes |
Additional shared fields are schema-supported but optional unless conditionally required:
| Field | Requirement |
|---|---|
agent |
Optional |
result_hash |
Optional |
result_cid |
Optional |
summary |
Required when status = "ok" |
error |
Required when status = "error" |
Receipts MUST reject additional properties.
The receipt contract is limited to the fields defined in the schemas. It MUST NOT be described as providing live execution verification, transport guarantees, or signed release provenance.
v1.0.0 remains in-repo only for compatibility review, historical reference, and legacy auditing.
Its schemas use:
_sharedhelper schemas- nested
requests/andreceipts/folders - older envelope conventions including
x402andtrace
Documentation and tooling MUST distinguish that legacy structure from v1.1.0.
Once published under a version directory such as schemas/v1.1.0/, the following actions are prohibited:
- editing schema content in place
- changing behavior or required fields for that version
- updating
$idvalues for that version - changing the directory layout for that version
Any semantic change requires a new version directory.
Repository validation commands are:
npm run validate:schemas
npm run validate:examples
npm run validateAll shipped valid and invalid examples MUST match the version-specific schema layout they target.
examples/v1.1.0/commons/<verb>/json/
examples/v1.0.0/commons/<verb>/
Current HTTPS schema root:
https://commandlayer.org/schemas/v1.1.0/
Manifest-tracked IPFS publication for v1.1.0 is recorded in manifest.json when a CID is published.
Historical legacy CID record:
v1.0.0 → bafybeigvf6nkzws7dblos74dqqjkguwkrwn4a2c27ieygoxmgofyzdkz6m
Status: v1.1.0 is the current release and active schema line. v1.0.0 is legacy only.