spec-driven-development

Creates structured specifications through a gated four-phase workflow before writing code.

Updated May 5, 2026
One-click install
npx skills add https://github.com/UlaYuga/promo-preflight --skill spec-driven-development-ulayuga
Or copy as Structured Prompt for Agent▼
Please help me install this Agent Skill.
Skill: spec-driven-development
Source: https://github.com/UlaYuga/promo-preflight/tree/main/.agents/skills/spec-driven-development
Command: npx skills add https://github.com/UlaYuga/promo-preflight --skill spec-driven-development-ulayuga

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve? Starting to code with vague or ambiguous requirements leads to rework, misaligned expectations, and architectural mistakes. This Skill enforces writing a reviewed specification before any implementation begins. ## Core Features & Use Cases - Gated Four-Phase Workflow: Progresses through Specify, Plan, Tasks, and Implement phases, each requiring human review before advancing. - Structured Spec Template: Covers objective, commands, project structure, code style, testing strategy, and Always/Ask First/Never boundaries. - Assumption Surfacing: Forces explicit listing of assumptions and reframes vague requirements into testable success criteria. - Use Case: When asked to build a new feature with unclear requirements, use this Skill to draft a spec with concrete acceptance criteria, get human approval, break it into dependency-ordered tasks, then implement incrementally. ## Quick Start Use the spec-driven-development skill to write a specification for the new user notification feature before writing any code.

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 starting a new feature?▼

Follow the four-phase gated workflow: specify requirements with a six-section template, plan the technical approach, break work into tasks with acceptance criteria, then implement. Each phase requires human review before advancing.

What should a software specification document include?▼

A spec should cover six core areas: objective, executable commands, project structure, code style with examples, testing strategy, and boundaries. It also needs specific testable success criteria and a section for open questions.

When should I skip writing a spec?▼

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

How do I handle vague requirements like make it faster?▼

Reframe vague requirements into concrete success criteria, such as LCP under 2.5 seconds or data load under 500ms. List your assumptions explicitly and ask the human to confirm the targets before proceeding.

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

Treat the spec as a living document: update it when decisions or scope change, commit it to version control alongside the code, and reference spec sections in pull requests.