Skip to content
Testing
Skill

/consistency-check

Use to validate DAE artifacts for schema correctness and cross-artifact consistency. Triggers — "/engineer.consistency-check", "check consistency", "validate the artifacts", "are the specs and ACs in sync", "audit this feature".

From plugin
atdd
16328 skills8 agents4 commands2 hooks

Claude Code

$ npx -y skills add swingerman/engineer --skill consistency-check --agent claude-code

SKILL.md

consistency-check.SKILL.md
name: consistency-check
description: Use to validate DAE artifacts for schema correctness and cross-artifact consistency. Triggers — "/engineer.consistency-check", "check consistency", "validate the artifacts", "are the specs and ACs in sync", "audit this feature".

consistency-check

Cross-artifact validation for DAE — the methodology's take on Speckit's `/analyze`. **Read-only**: reports inconsistencies and suggests fixes; never mutates. Any agent may run it (mechanical validation, not judgment-heavy verification). `checkpoint: null`.

When to use

Before major pipeline transitions and as a CI gate.

  • **Feature scope** — `/engineer.consistency-check <slug>` — one feature's artifacts
  • **Project scope** — `/engineer.consistency-check --project` — project-wide invariants

**Not for:** fixing inconsistencies (run the suggested fix skill); within-one-artifact ambiguity (`clarify`); code risk (`crap-analyzer`).

Workflow

1. **Resolve + load** — resolve the methodology root + manifest via `${CLAUDE_PLUGIN_ROOT}/scripts/dae_resolve.py` (see `references/resolving.md`). Feature scope: load every artifact in `features/NNN-<slug>/` + `CHARTER.md`. Project scope: load `CHARTER.md` + every `feature.md` frontmatter. For identifier lookups (does symbol X actually exist in the code?), prefer LSP find-definitions / workspace-symbols when an LSP MCP capability is available; fall back to grep + Read otherwise. See `${CLAUDE_PLUGIN_ROOT}/references/code-lookup.md`. 1.5. **Run the mechanical checks first** — `${CLAUDE_PLUGIN_ROOT}/scripts/dae_ontology.py <feature-dir>` (or `--project`). It executes every constraint that is a set operation over structured data — enumerations, functional properties, parent/child inverses, cycle detection, AC↔scenario coverage closure, Principle 7 disjointness — deterministically. Take its findings as given; do **not** re-derive them by reading the artifacts. They are tagged in the tables below as *(ontology)*. See `${CLAUDE_PLUGIN_ROOT}/references/ontology.md`. 2. **Run the judgment checks** (below) — the rows the script cannot decide. 3. **Report** — errors first, then warnings; each with location + a suggested fix (which skill to run). Do not apply fixes. 4. **Handoff** — emit a summary.

Feature-scope checks

| Check | Severity | |-------|----------| | `feature.md` slug matches folder name *(ontology)* | error | | `feature.md` mandatory frontmatter present; `status: ready` ⇒ `autonomy_level` set *(ontology)* | error | | `acs.md` AC IDs unique + sequential; `ac_count` matches actual *(ontology)* | error | | Every AC has a covering `@AC-N` spec scenario; no scenario tags an AC that doesn't exist *(ontology)* | error | | `acs.md` ACs in domain language (implementation-leakage heuristic) | warning | | `acs.md` ACs cover the `feature.md` outcome | warning | | `relevant_adrs` reference ADRs that exist | error | | `spec.md` and `.build/spec.json` agree | error | | `plan.md` Charter Check: every ⚠️ deviation has a matching amendment | error | | **Validation method honored?** — if `feature.md` declares a non-default `validation_method`, `plan.md`'s Test strategy section must reference it (canary phase, dashboard names, rollback trigger, etc. as relevant) | warning | | Verification handoffs: `agent_id` ≠ implementer's (Principle 7) *(ontology)* | error | | `tracker_ref` resolves on the configured tracker | warning | | Handoff completeness: no checkpoint marked done in `progress.md` lacks a complete handoff | error | | `parent_feature` set ⇒ parent resolves and lists this in `child_features` *(ontology)* | error / warning |

The handoff-completeness check is the after-the-fact sweep for handoff-as-gate (Foundation Design Section 5): run `${CLAUDE_PLUGIN_ROOT}/scripts/dae_handoff.py <feature-dir>` — it flags any checkpoint marked done with a missing, `interrupted`, or unmet-`exit_criteria` handoff.

Project-scope checks

| Check | Severity | |-------|----------| | `CHARTER.md` section 5 roles == `manifest.team.default_roles` | error | | `manifest.yml` schema valid; enum values legal | error | | Feature folder numbering monotonic; no reuse *(ontology)* | warning | | One feature branch per feature; one feature per roadmap item *(ontology)* | warning | | `parent_feature` chains do not cycle *(ontology)* | error | | ADR not referenced by any feature in N months (N from manifest, default 6) | warning | | Every `features/*/` has a non-empty `feature.md` | warning | | `team.default_roles` includes `verifier` when independence enforced | error |

Handoff

Emit per `${CLAUDE_PLUGIN_ROOT}/references/handoff-summary.md`. `checkpoint: null`; `artifacts: []`. Feature scope → handoff in that feature's `handoffs/`; `--project` scope → handoff in `.engineer/handoffs/`. Any errors → `human_action_needed: yes`. `recommended_next`: resolve via `clarify` / `feature-edit` / `plan`, then re-run.

References

  • `${CLAUDE_PLUGIN_ROOT}/references/ontology.md` — the *(ontology)* rows: what `dae_ontology.py` decides and why the rest stays here
  • [Foundation Design](https://www.notion.so/3585ecdee0e2811bbc67ff4913c03207) — every schema checked here
  • [Tracker Integration](https://www.notion.so/35a5ecdee0e28168b1aee324c267fd13) — `tracker_ref` resolution
Read more
@swingerman
Ships withatdd

A methodology kit for engineering-led AI development — spec-driven, test-driven, charter-bound. ATDD + mutation testing + deterministic guardrails. AI agents do the typing. Engineers stay in charge of architecture, behavior contracts, and verification.

16328 skills8 agents
Get the whole plugin

Stars on GitHub

Momentum

stars in total
163
Star history of swingerman/disciplined-agentic-engineering on GitHub, a chart by star-history.com

Other skills on atdd.

crap-analyzer

crap-analyzer

Use to produce a risk-based refactor + test plan for recently-changed code on a diff/branch/PR by computing CRAP (complexity ×…

@swingerman@swingermanInstall Skill
arch-check

arch-check

Use to check a feature's code against the charter's architecture rules — dependency layering, cycles, forbidden patterns, file…

@swingerman@swingermanInstall Skill
atdd

atdd

Use to drive feature work through the Acceptance Test Driven Development workflow — Given/When/Then specs before code, a…

@swingerman@swingermanInstall Skill
clarify

clarify

Use when a single DAE artifact has ambiguities to resolve. Triggers — "/engineer.clarify", "clarify this spec", "resolve…

@swingerman@swingermanInstall Skill
discover-acs

discover-acs

Use when a Ready feature needs its acceptance criteria discovered before specs are written. Triggers — "/engineer.discover-acs",…

@swingerman@swingermanInstall Skill
discuss

discuss

Use when exploring a feature idea before committing, or revisiting a parked one. Triggers — "/engineer.discuss",…

@swingerman@swingermanInstall Skill

More skills from other plugins.

api-review

api-review

Produce the "Playwright 1.xx API Review" artifact for a range of commits - the public API additions and the breaking or behavior…

playwrighttoday100k
@microsoft@microsoftInstall Skill
add-e2e-selectors

add-e2e-selectors

Add reliable @grafana/e2e-selectors to interactive elements and key containers in the Grafana frontend. Use when adding e2e…

grafanatoday78k
@grafana@grafanaInstall Skill
promptfoo-evals

promptfoo-evals

Write, refine, run, and QA promptfoo evaluation suites: promptfooconfig.yaml, prompts, providers, vars, tests, assertions,…

@promptfoo@promptfooInstall Skill
deepeval

deepeval

DeepEval evaluation workflow for AI agents and LLM applications. TRIGGER when the user wants to evaluate or improve an AI agent,…

@confident-ai@confident-aiInstall Skill

Questions about consistency-check.

Which coding agents can use consistency-check?
consistency-check installs in Claude Code, Codex, Cursor, Gemini CLI, GitHub Copilot, OpenCode and Windsurf with the skills CLI, using each agent's flag shown on this page. Flowy's auto-invocation, which fires a skill when your prompt matches, runs in Claude Code only.