spec

Schema

The v0.1.0 schema documents the AOC grammar for both canonical YAML and lossless JSON mirrors.

Public schema identifier:

https://schemas.openagentcontracts.org/aoc/v0.1.0/contract.schema.json

The implementation currently uses a private internal dogfood slug while the schema file lives in the monorepo. That internal value is not a public schema identifier, is not a durable public URL, and does not replace the placeholder above.

Root Requirements

Raw input requires exactly seven root keys:

The normalised shape has eight root keys because anti_claims is optional-with-default.

Required Subfields

Deeply required roots:

Action objects require:

The v0 schema accepts inputs as a free-form object. A stricter input schema is a future-version concern, not a v0.1.0 requirement.

Closed Enums

effect_class must be one of:

gate must be one of:

Unknown enum values are schema errors.

Optional And Experimental Fields

Stable in v0:

Experimental in v0:

Deprecated in v0:

Forbidden Root Keys

The v0 validator rejects a closed list of root keys so that deferred concepts do not quietly become part of the standard.

Readiness-score keys:

Cryptographic-attestation keys:

Public-schema-id keys inside a contract document:

The schema file may have schema metadata. A contract document must not use these fields to claim a public schema identifier.