skill-spec-product
PROPOSITO UNICO DE ESTE SKILL: Crear, generar y validar archivos YAML de especificacion de producto.
Este skill NO edita, modifica, compila ni genera codigo fuente. Su unico entregable son archivos .yml.
Product Spec-Driven Delivery is a requirements-first workflow where YAML user stories are the single source of truth for product teams. Every feature request traces back to a spec. Every acceptance criterion is verifiable. Every handoff to engineering is complete.
This skill guides product teams through a 5-phase process from raw intake to a validated handoff package. The output of every phase is a set of structured YAML files.
The 5 Phases
| Phase |
Name |
Tracker / Milestone |
Deliverable |
| 01 |
Discovery & Intake |
Requirements Package Complete |
Spec folders in spec-product/, Stakeholder Map |
| 02 |
Prioritization |
Roadmap Defined |
Prioritized backlog (RICE/WSJF), Quarter roadmap |
| 03 |
Specification |
Specs Ready for Review |
Detailed user stories with acceptance criteria, flows, metrics |
| 04 |
Validation |
Stakeholder Sign-Off |
Approved specs, risk assessment, go/no-go decision |
| 05 |
Handoff Package |
Engineering Ready |
Complete delivery package: specs, context, success criteria |
Rule: Do not begin a phase until the previous phase's Exit Criteria are fully satisfied. The agent executing this skill must verify the checklist before advancing.
Pre-flight Check
Before starting any phase, run the spec validator and inspect the project root:
bash references/validate-specs.sh
- The validator checks if
spec-product/ exists and creates it if missing.
- If it exists:
- Lists all subdirectories:
feat-XXXX-dd-mm-yy-hh-mm/
- Identifies the most recent by directory name timestamp
- Reads the
feat-XXXX.yml inside the most recent folder for context
- Records the highest sequential ID to continue numbering from there
- Validate: no gaps in ID sequence unless explicitly documented.
Spec Folder & File Naming Convention
Folder Format: spec-product/feat-XXXX-dd-mm-yy-hh-mm/
XXXX: Sequential 4-digit number (0001, 0002, ...). No gaps allowed.
dd-mm-yy-hh-mm: Creation timestamp. 2-digit year.
- Example:
spec-product/feat-0001-15-05-26-14-30/
File Format (inside folder): feat-XXXX.yml (archivo principal)
- Archivo principal: solo el ID, sin timestamp ni slug descriptivo.
- Se permite incluir archivos YAML adicionales relacionados con la misma feature (por ejemplo, discovery, especificacion, validacion, handoff).
- Todos los archivos
.yml de una feature deben vivir dentro de su carpeta feat-XXXX-.../.
- Example:
spec-product/feat-0001-15-05-26-14-30/feat-0001.yml
spec-product/feat-0001-15-05-26-14-30/feat-0001-discovery.yml
spec-product/feat-0001-15-05-26-14-30/feat-0001-handoff.yml
Post-phase Verification
After completing any phase, run the spec validator:
bash references/validate-specs.sh
Then verify manually:
- List all
spec-product/feat-*/ directories created in this phase.
- For each directory, verify:
- If any check fails:
- Do NOT proceed to the next phase
- Report the exact failure
- Fix before continuing
Final Verification
After Phase 05 complete:
- Inventory all
spec-product/feat-*/ directories.
- Verify no orphaned IDs (gaps in sequence without documented reason).
- Verify all P0/P1 stories have status
approved or done.
- Verify timestamps in directory names are chronologically ordered by ID.
- Emit summary:
- Total specs created
- P0 count / P1 count / P2+P3 count
- Timestamp range (first → last)
- Coverage % of acceptance criteria
Quick Start
- Run Pre-flight Check above.
- Load
references/phase-01-discovery-and-intake.md and collect requirements.
- When
Exit Criteria pass, run Post-phase Verification, then load references/phase-02-prioritization.md.
- Continue sequentially through all 5 phases, running Post-phase Verification after each.
- After Phase 05, run Final Verification.
Phases
- Phase 01: Discovery & Intake
- Phase 02: Prioritization
- Phase 03: Specification
- Phase 04: Validation
- Phase 05: Handoff Package
References
- Risk Matrix - Risk identification & mitigation
- Tools - Recommended software per phase
- Books - Essential reading for product managers
- Spec Validator - Bash script to validate
spec-product/ structure and YAML contents
- User Story Templates README - YAML schema & examples
- Discovery Template
- Feature Template
- Pain Point Template
Core Principles
- Este skill genera specs en YAML - No implementa features, no escribe codigo, no crea branches ni hace deploys. Su unico output son archivos .yml.
- Specs are the contract - YAML user stories are the agreement between product and engineering.
- Traceability - Every spec has an ID that follows the feature through design, development, and release.
- Acceptance criteria are non-negotiable - If it cannot be verified, it is not a criterion.
- Start with the problem, not the solution - Specs must articulate the user need before proposing features.
- Decisions are documented - Priority changes, scope cuts, and trade-offs are recorded.
- Handoff is a package, not a meeting - Engineering receives complete context, not a bullet list.
Build YAML specs that serve as the unambiguous contract between product and engineering.
1---2name: skill-spec-product3description: Generador de especificaciones de producto en YAML. Unico proposito: crear, estructurar y validar archivos .yml de historias de usuario. No edita codigo fuente.4---56# skill-spec-product78PROPOSITO UNICO DE ESTE SKILL: Crear, generar y validar archivos YAML de especificacion de producto.9Este skill NO edita, modifica, compila ni genera codigo fuente. Su unico entregable son archivos .yml.1011Product Spec-Driven Delivery is a requirements-first workflow where YAML user stories are the single source of truth for product teams. Every feature request traces back to a spec. Every acceptance criterion is verifiable. Every handoff to engineering is complete.1213This skill guides product teams through a 5-phase process from raw intake to a validated handoff package. The output of every phase is a set of structured YAML files.1415---1617## The 5 Phases1819| Phase | Name | Tracker / Milestone | Deliverable |20|---|---|---|---|21| **01** | Discovery & Intake | Requirements Package Complete | Spec folders in `spec-product/`, Stakeholder Map |22| **02** | Prioritization | Roadmap Defined | Prioritized backlog (RICE/WSJF), Quarter roadmap |23| **03** | Specification | Specs Ready for Review | Detailed user stories with acceptance criteria, flows, metrics |24| **04** | Validation | Stakeholder Sign-Off | Approved specs, risk assessment, go/no-go decision |25| **05** | Handoff Package | Engineering Ready | Complete delivery package: specs, context, success criteria |2627**Rule:** Do not begin a phase until the previous phase's `Exit Criteria` are fully satisfied. The agent executing this skill must verify the checklist before advancing.2829---3031## Pre-flight Check3233Before starting any phase, run the spec validator and inspect the project root:3435```bash36bash references/validate-specs.sh37```38391. The validator checks if `spec-product/` exists and creates it if missing.402. If it exists:41 - Lists all subdirectories: `feat-XXXX-dd-mm-yy-hh-mm/`42 - Identifies the most recent by directory name timestamp43 - Reads the `feat-XXXX.yml` inside the most recent folder for context44 - Records the highest sequential ID to continue numbering from there453. Validate: no gaps in ID sequence unless explicitly documented.4647---4849## Spec Folder & File Naming Convention5051**Folder Format:** `spec-product/feat-XXXX-dd-mm-yy-hh-mm/`5253- `XXXX`: Sequential 4-digit number (0001, 0002, ...). No gaps allowed.54- `dd-mm-yy-hh-mm`: Creation timestamp. 2-digit year.55- Example: `spec-product/feat-0001-15-05-26-14-30/`5657**File Format (inside folder):** `feat-XXXX.yml` (archivo principal)5859- Archivo principal: solo el ID, sin timestamp ni slug descriptivo.60- Se permite incluir archivos YAML adicionales relacionados con la misma feature (por ejemplo, discovery, especificacion, validacion, handoff).61- Todos los archivos `.yml` de una feature deben vivir dentro de su carpeta `feat-XXXX-.../`.62- Example:63 - `spec-product/feat-0001-15-05-26-14-30/feat-0001.yml`64 - `spec-product/feat-0001-15-05-26-14-30/feat-0001-discovery.yml`65 - `spec-product/feat-0001-15-05-26-14-30/feat-0001-handoff.yml`6667---6869## Post-phase Verification7071After completing any phase, run the spec validator:7273```bash74bash references/validate-specs.sh75```7677Then verify manually:78791. List all `spec-product/feat-*/` directories created in this phase.802. For each directory, verify:81 - [ ] Directory name follows `feat-XXXX-dd-mm-yy-hh-mm/` format82 - [ ] Directory contains at least the archivo principal: `feat-XXXX.yml`83 - [ ] Todos los archivos `.yml` dentro del directorio son YAML validos y no vacios84 - [ ] El archivo principal (`feat-XXXX.yml`) tiene los campos requeridos: id, type, as_a, i_want, so_that, product, metadata.created_at85 - [ ] `metadata.created_at` en el archivo principal coincide con el timestamp del directorio (dd-mm-yy-hh-mm)86 - [ ] ID en YAML del archivo principal coincide con el ID del directorio873. If any check fails:88 - Do NOT proceed to the next phase89 - Report the exact failure90 - Fix before continuing9192---9394## Final Verification9596After Phase 05 complete:97981. Inventory all `spec-product/feat-*/` directories.992. Verify no orphaned IDs (gaps in sequence without documented reason).1003. Verify all P0/P1 stories have status `approved` or `done`.1014. Verify timestamps in directory names are chronologically ordered by ID.1025. Emit summary:103 - Total specs created104 - P0 count / P1 count / P2+P3 count105 - Timestamp range (first → last)106 - Coverage % of acceptance criteria107108---109110## Quick Start1111121. Run **Pre-flight Check** above.1132. Load `references/phase-01-discovery-and-intake.md` and collect requirements.1143. When `Exit Criteria` pass, run **Post-phase Verification**, then load `references/phase-02-prioritization.md`.1154. Continue sequentially through all 5 phases, running **Post-phase Verification** after each.1165. After Phase 05, run **Final Verification**.117118---119120## Phases121122- [Phase 01: Discovery & Intake](references/phase-01-discovery-and-intake.md)123- [Phase 02: Prioritization](references/phase-02-prioritization.md)124- [Phase 03: Specification](references/phase-03-specification.md)125- [Phase 04: Validation](references/phase-04-validation.md)126- [Phase 05: Handoff Package](references/phase-05-handoff-package.md)127128---129130## References131132- [Risk Matrix](references/risk-matrix.md) - Risk identification & mitigation133- [Tools](references/tools.md) - Recommended software per phase134- [Books](references/books.md) - Essential reading for product managers135- [Spec Validator](references/validate-specs.sh) - Bash script to validate `spec-product/` structure and YAML contents136- [User Story Templates README](references/user-story-templates-README.md) - YAML schema & examples137 - [Discovery Template](references/feat-001-discovery.yml)138 - [Feature Template](references/feat-002-user-registration.yml)139 - [Pain Point Template](references/feat-003-manual-invoicing.yml)140141---142143## Core Principles1441451. **Este skill genera specs en YAML** - No implementa features, no escribe codigo, no crea branches ni hace deploys. Su unico output son archivos .yml.1462. **Specs are the contract** - YAML user stories are the agreement between product and engineering.1473. **Traceability** - Every spec has an ID that follows the feature through design, development, and release.1484. **Acceptance criteria are non-negotiable** - If it cannot be verified, it is not a criterion.1495. **Start with the problem, not the solution** - Specs must articulate the user need before proposing features.1506. **Decisions are documented** - Priority changes, scope cuts, and trade-offs are recorded.1517. **Handoff is a package, not a meeting** - Engineering receives complete context, not a bullet list.152153---154155**Build YAML specs that serve as the unambiguous contract between product and engineering.**