Skip to main content
An epic can record the design document its work was drawn from (--spec <path> on add-epic or update-epic, or specPath in an add-many batch), and one document may back many epics. verify-specs is the set difference: for every .md file under a root, how many epics claim it and which — then the epics whose specPath names a document that is not on disk. New as a slash command in 0.50.0. The verb existed before, but had no command doc, so it was reachable only by calling the engine directly.
If ${CLAUDE_PLUGIN_ROOT} is empty:

Flags

  • --root <path> — the directory to inventory (recursively, minus README/INDEX/CONTRIBUTING). Point it at a plans directory to ask the same question about plans.
  • --headers — for every UNCOVERED document, read its leading metadata block (**Epic:** <id> and the like) and print the epic ids it names with the update-epic <id> --spec <path> line that would attach each. It proposes and never applies; a header id that names no epic is reported.

An inventory, not an audit

Coverage is status-blind (an archived epic is coverage), it always exits 0, and a document with no epic is often fine — a note, a reference, a sketch. An absent root says no spec root rather than reporting zero uncovered. Deciding what a design implies stays with you; add-many registers several chunks naming one specPath in one write. The rationale and the measured --headers parse are on /pm:status, under Design-document coverage.