ANCP conformance is profile-based.
An adapter must never claim more than it implements.
An adapter is ANCP 1.0 core conformant when:
ancp manifest --jsonemits a validmanifest.adapter.ancp capabilities --jsonemits a validmanifest.capabilities.ancp check --jsonemits a validresult.check.- Every emitted JSON document validates against
schemas/ancp-1.0.schema.json. - Native tool identity is reported when available.
- Native diagnostic codes are preserved when available.
- Diagnostics include primary locations when source locations exist.
- Tool failures still emit valid ANCP JSON when possible.
- Unknown fields are placed under
extensionsordata.
Requires:
ancp explain <code> --json- valid
result.explain - support for canonical codes used by the adapter
- support for native codes where the adapter maps native codes
Requires:
ancp repair --plan --json- valid
plan.repair - no mutation in plan mode
- safety levels on every action
- verification steps on every available plan
- required preconditions for source edits
Requires:
ancp repair --apply <plan> --json- valid
result.apply - precondition checks before mutation
- refusal of failed preconditions with
status: "precondition_failed"and no mutation - refusal of dangerous actions without explicit approval
- accurate
statusreporting:applied,partial,rolled_back,precondition_failed, ornot_applied failedActionIdspopulated when actions fail during mutationrollbackobject populated when partial failure occurs- rollback strategy documented in
manifest.adapter
Requires:
ancp verify --json- valid
result.verify - actual command execution or clearly documented manual verification
- diagnostic delta where before/after diagnostics are available
- diagnostic fingerprints SHOULD be included when the adapter emits
result.checkdiagnostics used by verification, so thatdiagnosticDeltacan reliably correlate diagnostics across runs
Requires:
ancp graph --json- valid
graph.code - stable node IDs within the graph document
- explicit partial-data marking when the graph is incomplete
Requires:
- operation effects in
manifest.capabilitiesor equivalent effect output - evidence labels:
static,dynamic,manifest,inferred,user-declared, orunknown - safety levels on effectful commands
Requires:
ancp skills --json- valid
result.skills - guidance tied to adapter/toolchain versions
- concise sections that agents can load selectively
Requires:
- at least one export target
- valid output for the target format
- documented lossy fields when exporting to formats that cannot represent all ANCP data
This spec repository is considered internally consistent when:
- all JSON files parse,
- all examples validate against the main schema,
- all taxonomy files have unique IDs,
- all local Markdown links resolve,
- the source corpus fetch report exists,
- schema validation runs without warnings,
- the final verification report records three independent passes.