Skip to main content
Returned by initialize. A complete, valid manifest (validated in CI against world-manifest.schema.json; the file is examples/v0.1/world-manifest.json):
awp:world-manifest
Local $refs inside params_schema resolve against the manifest’s own $defs; shared primitives (pose, timestamps) come from the published common.schema.json. safety_policy is always a concrete object, never a reference.
  • Every channel and action_type referenced by an embodiment MUST be defined in the top-level lists. [AWP-MAN-001]
  • params_schema values MUST be valid JSON Schema (2020-12). [AWP-MAN-002]
  • Manifests MUST be stable for the life of the connection; changes require re-initialize. [AWP-MAN-003]
  • capabilities is an open map. v0.1 standard keys: seed, snapshot, replay, command_channels, task. Unknown keys MUST be ignored; vendor keys use x-<vendor>. naming. New standard keys arrive by RFD (RFD process). [AWP-MAN-004]
  • Worlds declaring the command_channels capability additionally list command_channels — agent→world channels, same schema as observation channels — see command channels. [AWP-MAN-005]
  • Worlds offering lockstep MUST declare tick_policy (on_tick) and tick_authority (any_session | barrier); worlds offering streaming MUST declare safety_policy.safe_state and MAY declare safety_policy.max_basis_age_ms (time models, safe state). [AWP-MAN-006]
  • Embodiments that may be bound together by one session share a multi_bind_group; session.open names them in embodiments and submissions then carry embodiment_id (AWP-EMB-005). [AWP-MAN-007]
Canonical schema: world-manifest.