Specs
The OpenSpec specs define dont’s capabilities precisely and are the authoritative source for implementation decisions. They live in openspec/specs/ in the repository.
Core specs
| Spec | Description |
|---|---|
| dont-core | Core claim lifecycle: conclude, flag, trust, lock |
| dont-data-model | Store schema and entity relationships |
| dont-status-lifecycle | Status transitions, gate conditions, and mode enforcement |
| dont-lifecycle-verbs | Command-by-command verb semantics |
| dont-errors | Structured error types and remediation messages |
Interface specs
| Spec | Description |
|---|---|
| dont-cli-surface | CLI flags, subcommands, exit codes, output routing |
| dont-cli-core | Core CLI wiring and dispatch |
| dont-envelope | JSON Envelope and Error protocol (--json output) |
| dont-payload-types | Envelope payload schemas |
| dont-agent-help | Help text and agent-readable command descriptions |
Evidence and grounding specs
| Spec | Description |
|---|---|
| dont-evidence-locators | Repository-relative file/lines/anchor syntax |
| dont-ground-command | dont ground fast-path semantics |
| dont-trace-query | Blocker-path tracing for dont trace |
Rule engine specs
| Spec | Description |
|---|---|
| dont-rule-engine | Shipped rules, severities, and project config |
| dont-rule-cli | dont rules subcommand surface |
| dont-rule-claim-schema | Claim schema validation rule |
| dont-derived-queries | Datalog-based derived query layer |
Infrastructure specs
| Spec | Description |
|---|---|
| dont-build | Build, CI, and release pipeline |
| dont-project-layout | Repository layout conventions |
| dont-project-config | Per-project .dont/ configuration |
| dont-init-modes | Strict vs permissive initialisation modes |
| dont-glossary | Canonical terminology |
Future / in-progress specs
| Spec | Description |
|---|---|
| dont-harness-cli | Agent harness integration |
| dont-spawn-protocol | Clean-context spawn for independent verification |
| dont-mcp-interface | MCP server interface |
| dont-import-surface | External data import surface |
| dont-linkml-import | LinkML schema import |