Purpose
This skill helps you:- Translate requirements into technical specifications
- Create Software Requirements Specification (SRS) documents
- Analyze requirements for gaps and ambiguities before specification
- Build specification folder structures and documents
- Propose modifications to deficient requirements
Modes of operation
The skill operates in five modes based on your intent:Analyze requirements for specification readiness
Use this mode when you have requirements and want to move toward specifications. The skill evaluates each requirement for:- Ambiguity: Is it unambiguous enough to specify?
- Testability: Can acceptance criteria be derived?
- Atomicity: Can it map to a single spec?
- Scope clarity: Are boundaries defined?
Create specifications
Use this mode when requirements are ready for transformation into specs. The skill:- Asks which specification format to use (SRS, use cases, user stories + BDD, actor-action, model-based)
- Asks about project structure preferences (monolithic vs. modular documents)
- Creates the canonical
spec/folder structure - Transforms each requirement into corresponding specifications
- Creates a traceability matrix linking requirements to specifications
spec/RESEARCH-QUESTIONS.md for the plan-architect to investigate.
Propose requirements modifications
This mode activates automatically when the analysis reveals significant deficiencies:- More than 30% of requirements have critical issues
- Missing requirements exceed 20% of existing count
- Fundamental conflicts exist between requirements
- Core functionality is underspecified
Validate specifications
Use this mode when you have existing specification documents to review. The skill verifies each specification has:- Clear acceptance criteria
- Traceability to a requirement
- Consistent terminology
- Implementation-ready detail
- No ambiguity
Brownfield specification
Use this mode when you have an existing codebase and want to add specifications incrementally rather than specifying everything from scratch. The skill:- Analyzes the existing codebase to build a component map
- Identifies and prioritizes modules based on business criticality, change frequency, dependency count, and risk level
- Generates specs incrementally for each prioritized module
- Creates
spec/COVERAGE.mdto track specification progress
Specification folder structure
The skill generates the canonical folder structure that all downstream skills expect:Workflow
Load requirements
Read
requirements/REQUIREMENTS.md (output from requirements-engineer) as the primary input.Analyze for readiness
Evaluate each requirement for specification readiness, identifying gaps, ambiguities, and conflicts.
Resolve issues interactively
For every issue found, present clear options to the user and record decisions in the traceability log.
Choose specification format
Ask which format(s) to use: SRS, use cases, user stories + BDD scenarios, actor-action, or model-based.
Create folder structure
Generate the canonical
spec/ folder structure with all required subdirectories.Transform requirements to specs
For each requirement, create the corresponding specification with acceptance criteria and traceability.
Generate traceability matrix
Create a matrix linking each requirement to its specification section(s).
What this stage produces
The specifications engineer generates:- Complete
spec/directory with all subdirectories populated - Domain model: Glossary, entities, value objects, state machines, and invariants
- Use cases: One file per use case with triggering events, flows, preconditions, postconditions
- Workflows: Multi-step processes spanning multiple use cases
- Contracts: API contracts, event schemas, and permissions matrix
- Architecture decisions: ADRs documenting key technical decisions
- Test specifications: BDD scenarios and property test specs
- NFR specifications: Performance targets, limits, security requirements, observability specs
- Traceability matrix: Links between requirements and specifications
- Clarifications log: Business rules (RN-NNN) from user decisions during specification
Key principles
Ask before assuming
Never make assumptions silently. Every decision point must be presented to the user with options.Traceability is non-negotiable
Every specification must trace back to one or more requirements. Every requirement must have at least one specification.Iterative, not waterfall
If issues are found, stop and address them. Do not produce specifications over broken requirements.Implementation-ready
Each specification must be detailed enough that a developer unfamiliar with the project could implement it correctly without additional clarification.Real example
From REQ-F-001 (user authentication requirement):Pipeline integration
This skill is Step 2 of the SDD pipeline:requirements/REQUIREMENTS.md
Output: Complete spec/ directory
Next step: Run spec-auditor to validate the generated specifications