What problem does it solve? Behavioral code changes often ship without up-to-date specifications, causing documentation drift, ambiguous requirements, and untraceable acceptance criteria. This Skill mandates that a Markdown SPEC under docs/specs/ is created or updated before any behavioral code is written and reconciled with what actually shipped afterward. ## Core Features & Use Cases - Pre-coding gate: Classifies changes as behavioral or exempt, searches existing SPECs to prevent duplicates, and runs a clarification gate that blocks coding until material ambiguity is resolved. - SPEC lifecycle management: Governs naming (SPEC-NNN-kebab), the _template.md structure, create-vs-update rules, readiness rubric, architect review routing, and Draft-to-Implemented status transitions. - Post-coding reconciliation: Aligns affected areas with the real diff, confirms or corrects assumptions, links every acceptance criterion to a green test, and appends Change Log entries. - Deterministic CI gates: Uses spec-gate.sh, spec-complete-check.sh, and spec-links-check.sh scripts so compliance is enforced by tooling, not just the agent. - Use Case: When asked to add a new form validation behavior, the workflow first checks docs/specs/ for an existing SPEC, asks batched clarifying questions if requirements are underspecified, updates the SPEC via the spec-steward agent, and only then permits implementation. ## Quick Start Ask the assistant to implement a new feature or bug fix and it will first create or update the governing SPEC in docs/specs/ before writing any code.