Skip to main content
Version: MVP

Schema reference

5 min readReferenceUpdated 2026-05-19

What you'll find here

Craik runtime contracts as strict Pydantic models, how to inspect them, the full v0.1.0 contract catalog, the fixture path used by tests, and the versioning/migration rules.

Every persisted contract is versioned.

Every persisted record includes a schema and version field. Unknown fields are rejected so adapters, memory backends, and future plugins don't silently depend on accidental payload shape.

{
"schema": "craik.<contract-name>",
"version": "0.1.0"
}

Inspecting schemas

craik schema list
craik schema show craik.task_request

v0.1.0 contracts

SchemaPurpose
craik.adjudication_outcomeRecords adjudicator decisions over reviewed specialist outputs and unresolved disagreements.
craik.adapter_packageDefines runner adapter package metadata, compatibility, entrypoints, capability surfaces, provenance, and version constraints.
craik.agent_onboardingSummarizes runner-readable project context before an agent starts work.
craik.agent_roleDefines a policy-aware orchestrator or specialist role for multi-agent coordination.
craik.agent_session_eventRecords redacted prompt-loop, run, handoff, receipt, interruption, and exit events for persistent agent sessions.
craik.agent_session_stateRecords persistent agent lifecycle, provider, model, operator, policy, recovery, and redacted process metadata.
craik.assumptionTracks unresolved assumptions that need evidence before promotion to fact.
craik.capability_grantDefines scoped permission for an action family.
craik.capability_receiptRecords an auditable action result under a policy profile.
craik.case_fileCaptures task-specific context assembled before execution.
craik.channel_allowlistDefines deny-by-default channel ingress allowlist rules and audit requirements.
craik.channel_adapter_contractDefines external channel adapter identity, payload shapes, capability surfaces, receipts, and trust boundaries.
craik.channel_identity_pairingRecords external channel account pairing state, policy linkage, revocation state, and audit links.
craik.compiled_promptCaptures a deterministic policy-aware runner prompt.
craik.contradiction_reportCaptures incompatible assertions for review.
craik.context_debt_recordTracks omitted, stale, unresolved, or missing context with owner and next action.
craik.context_requestRequests missing context and links it to handoffs, recovery, or unknowns.
craik.debate_summarySummarizes agreement, unresolved disagreement, or contradiction escalation for a bounded agent debate.
craik.debate_turnCaptures one role-linked debate contribution with evidence, assumptions, and contradiction links.
craik.distilled_instruction_proposalCaptures a reviewable instruction distilled from declared instruction sources.
craik.evidence_coverage_scoreScores whether expected evidence links are present for a handoff or output.
craik.evidence_referencePoints to source material supporting a contract assertion.
craik.exit_discipline_checkVerifies validation, handoff, risks, next steps, and context links before exit.
craik.gateway_configConfigures the always-on gateway process mode, bind, policy, and pid/log paths.
craik.gateway_runtime_stateRecords supervised gateway lifecycle state, process id, receipts, and notes.
craik.gateway_scheduleDefines a cron-like gateway schedule that can create policy-linked tasks.
craik.handoffSummarizes durable run state for future agents.
craik.handoff_quality_scoreScores handoff completeness, validation, evidence links, debt, and risks.
craik.human_delegation_pointRecords an open or resolved human approval, clarification, escalation, or ownership-transfer point.
craik.instruction_registry_receiptRecords the auditable result of registering a declared instruction source.
craik.instruction_provenanceLinks distilled instruction material to source-level or line/range provenance.
craik.instruction_promotion_reviewRecords approved, rejected, or deferred promotion decisions for distilled instructions.
craik.instruction_sourceDeclares one runtime instruction source file or policy doc.
craik.instruction_source_registrationCaptures one source-registration event with owner, actor, trust boundary, and optional content hash.
craik.instruction_source_registryRegisters declared instruction sources for a project.
craik.instruction_source_snapshotRecords source hash state for one observed instruction source.
craik.intent_lockPreserves task intent and scope boundaries.
craik.knowledge_freshness_probeTracks fresh, expiring, expired, or missing knowledge for stale-risk warnings.
craik.known_trapRecords evidence-backed pitfalls and avoidance guidance for agents.
craik.memory_backend_capabilitiesRecords detected memory backend support.
craik.memory_diffExplains run-scoped memory reads, proposals, writes, and failures.
craik.memory_impact_previewPreviews memory additions, invalidations, evidence gaps, and likely contradictions.
craik.memory_proposalDescribes reviewable memory updates.
craik.model_providerDefines model provider identity, modes, capabilities, trust boundary, config references, and secret reference names.
craik.negative_knowledgeRecords evidence-backed negative statements with scope and freshness boundaries.
craik.policy_envelopeDefines runtime authority and obligations.
craik.plugin_capability_grantDefines least-privilege plugin-scoped capability grants with policy, approval, expiry, evidence, and receipt links.
craik.plugin_descriptorDefines governed plugin identity, entrypoints, capability declarations, docs, security metadata, and compatibility without granting authority.
craik.plugin_probationTracks probationary plugin criteria, compatibility checks, evidence, receipts, and promotion, rejection, or expiration decisions.
craik.plugin_receiptRecords redacted plugin actions and outputs with descriptor, grant, evidence, handoff, and trust-boundary links.
craik.project_profileDefines a project Craik can reason about.
craik.promoted_instruction_constraintCaptures an approved distilled instruction as an active runtime constraint.
craik.reference_integrationDescribes safe reproducible sample skill, plugin, or adapter paths with docs, fixtures, checks, receipts, compatibility, and provenance.
craik.red_team_findingCaptures reviewable adversarial findings and blockers for high-risk work.
craik.recovery_sessionSummarizes resume readiness and required recovery actions for an agent.
craik.review_requestRequests bounded cross-agent review of worker results or debate summaries.
craik.review_resultCaptures specialist reviewer decisions, evidence, and preserved reviewer role kind.
craik.run_deltaRecords continuity-relevant changes since the previous usable handoff.
craik.run_outputStores redacted observed output captured from one runner step.
craik.runtime_critic_findingCaptures reviewable non-authoritative quality findings from a critic pass.
craik.scheduled_automationRecords an enabled or disabled gateway automation backed by a persisted schedule and policy envelope.
craik.scratchpad_recordStores expiring temporary working notes that must not become durable context by default.
craik.scope_change_requestRequests a human decision to change accepted task scope.
craik.scope_change_resultRecords accepted or rejected human scope-change decisions.
craik.skill_invocation_contextCaptures policy-linked, redacted inputs, outputs, omissions, evidence, and receipts for one skill run.
craik.skill_packageDefines reusable skill metadata, entrypoints, docs, assets, and schema expectations.
craik.skill_registryRegisters project-local and global skill entries with trust boundaries, precedence, and provenance.
craik.runner_adapter_requestDefines normalized input handed to a runner adapter.
craik.runner_adapter_resultDefines normalized output returned by a runner adapter.
craik.runner_capability_matrixDefines runner capability support, trust boundary, and default grant posture.
craik.runner_metadataDefines stable runner identity, mode, and capability summary.
craik.runner_step_requestDefines one governed loop-step input for a runner.
craik.runner_step_resultCaptures one governed loop-step result, diagnostics, receipts, and proposals.
craik.task_runTracks durable single-agent run status, phase, linked artifacts, receipts, and handoff.
craik.task_requestDefines requested work.
craik.tool_result_attestationRecords observed tool or command output with trust and expiry boundaries.
craik.unknown_recordTracks first-class unknowns, required resolution source, and resolved answers.
craik.work_graph_exportExports connected graph nodes and edges.
craik.work_graph_eventUpdates the work graph.
craik.worker_resultCaptures typed specialist worker output for multi-agent coordination.

Examples

Fixture examples for every v0.1.0 contract live in:

tests/fixtures/contracts/v0_1/contracts.json

Fixtures are loaded by tests, validated against the registered Pydantic models, and round-tripped through JSON.

Versioning and migration

Rule
Applies to
Required action
Compatible field additions
minor
Require tests, docs, and fixture updates.
Breaking changes
major
New schema version + migration notes.
Unknown fields
runtime
Rejected by default.
Memory writes
durable
Preserve source, confidence, scope, and trust metadata.
Policy / receipt contracts
governance
Preserve profile, fail-open, redaction, and approval metadata.
Adapter receipts / handoffs
runner output
Preserve stable runner metadata; keep provider-specific details nested and redacted.

What's next