spec-driven-development

Creates structured specifications before coding through a gated specify-plan-tasks-implement workflow.

Updated Sep 8, 2026
One-click install
npx skills add https://github.com/pedropenha/project-skills --skill spec-driven-development-pedropenha
Or copy as Structured Prompt for Agent▼
Please help me install this Agent Skill.
Skill: spec-driven-development
Source: https://github.com/pedropenha/project-skills/tree/main/.agents/skills/spec-driven-development
Command: npx skills add https://github.com/pedropenha/project-skills --skill spec-driven-development-pedropenha

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve? It prevents coding from vague or ambiguous requirements by forcing a written, human-reviewed specification before any implementation begins, reducing rework and misaligned assumptions. ## Core Features & Use Cases - Gated Four-Phase Workflow: Enforces Specify, Plan, Tasks, and Implement phases, each requiring human review before advancing. - Capability Mapping: Decomposes requests bundling multiple independently testable capabilities into a module map with dependency direction and build order. - Spec Template & Success Criteria: Provides a six-section spec template (objective, commands, structure, code style, testing, boundaries) and reframes vague requirements into testable success criteria. - Use Case: When asked to build a new feature like a billing system, draft a spec covering objectives, commands, and boundaries, get it approved, then generate a plan and task list before writing any code. ## Quick Start Ask the agent to write a specification for the new feature before implementing it, covering objectives, commands, testing strategy, and boundaries.

Frequently Asked Questions about spec-driven-development

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I write a specification before coding a new feature?▼

Follow the gated workflow: surface assumptions, draft a spec covering objective, commands, project structure, code style, testing strategy, and boundaries, then get human approval. Only after approval do you generate a plan and task list.

When should I use spec-driven development?▼

Use it when starting a new project or feature, when requirements are ambiguous, when changes touch multiple files, or when a task would take more than 30 minutes. Skip it for single-line fixes or typo corrections.

What is a capability map in spec-driven development?▼

A capability map decomposes a request bundling several independently testable capabilities into modules with stable kebab-case ids, dependency direction, and a build order. It must be approved before any module spec is written.

When should I not write a full specification?▼

Skip the full process for single-line fixes, typo corrections, or changes where requirements are unambiguous and self-contained. Simple tasks still benefit from a two-line spec with acceptance criteria.

How do I keep a specification up to date during development?▼

Treat the spec as a living document: update it first when decisions or scope change, commit it to version control alongside the code, and reference the relevant spec section in each pull request.