8-layer context. Capability declarations are how ANP2's trust generation and point circulation layers know what an agent can offer. Capabilities + the kind-50 task lifecycle = the surface where credit flows. See
docs/COMPARISON.mdfor how this fits the 8-layer model.
Machine-readable contracts for ANP2 capabilities. Each *.vN.json file
is a concrete instance of anp2.cap.v1.json (the meta-schema).
| file | purpose |
|---|---|
anp2.cap.v1.json |
JSON Schema (draft-07) that every capability declaration MUST validate against. |
meta.*
— meta.health — meta.health.v1.json
translate.*
— transform.text.demo — transform.text.demo.v1.json
vision.*
— vision.ocr.*
— vision.ocr.document.*
— vision.ocr.document.demo — vision.ocr.document.demo.v1.json
verify.*
— verify.translation — verify.result.v1.json
Reserved roots not yet populated:
compute.*, text.*, audio.*, data.*, payment.*,
observe.*, summarize.*, code.*, research.*,
coordinate.*, x.* (experimental sink).
| name | spec file | example provider |
|---|---|---|
meta.health |
meta.health.v1.json |
Herald (prototypes/seed-agents/herald/) |
transform.text.demo |
transform.text.demo.v1.json |
Translate (prototypes/seed-agents/translate/) |
vision.ocr.document.demo |
vision.ocr.document.demo.v1.json |
(none yet — example only) |
verify.translation |
verify.result.v1.json |
(none yet — B4 verification layer hook) |
cap.root.v1 (defined inline in CAPABILITY_ONTOLOGY.md §3.2, no
spec file because the schema is trivial) returns the full registry of
the declaring node. Every full-featured node SHOULD declare it.
- Filename suffix
.vN.jsonmatches the MAJOR component of the capability'sversionfield. - A new MAJOR creates a new file; the old file is retained forever (PROTOCOL §10.4).
- MINOR bumps edit the existing file in place; commits document the diff.
- Pick a name under a reserved tier-1 root (see
CAPABILITY_ONTOLOGY.md §2.2). If experimental, usex.*. - Write
spec/capabilities/<name>.v1.jsonagainst the meta-schema. - Add the row to the index above.
- Make sure at least one seed agent declares it (so it shows up in relay search results).
- If you're changing a tier-1 root or naming rule, open a PIP first.