Skip to content

Spec-Driven Development (SDD)

Spec-Driven Development (SDD) is the core philosophy behind SuperSpec, transforming how we collaborate with AI coding assistants.

What is SDD?

SDD is a development methodology that emphasizes defining specifications before writing code. Unlike the traditional "code first, document later" approach, SDD requires:

  1. Define specs first: Before writing any code, clearly define what to do, why to do it, and what success looks like
  2. Specs drive implementation: Let specification documents guide code implementation
  3. Implementation validates specs: After completion, verify that the implementation matches the specification

Why Does the AI Era Need SDD?

AI coding assistants (like Cursor, Claude Code) can generate code quickly, but also bring new challenges:

Problem 1: Context Loss

AI context windows are limited; in long conversations, previous discussions are easily "forgotten."

SDD Solution: Record key information in specification documents, recoverable at any time.

Problem 2: Requirement Drift

Without clear specs, AI may implement based on its own interpretation, deviating from original requirements.

SDD Solution: proposal and spec provide a clear requirement baseline.

Problem 3: Inconsistent Code

Multiple conversations may produce code with inconsistent styles.

SDD Solution: Unified artifacts and workflows ensure consistency.

Problem 4: Difficult Reuse

Valuable decisions and discussions are scattered across chat history, making reuse difficult.

SDD Solution: clarify.md records decisions for future reference.

SDD Workflow

Requirements → Proposal → Spec → Tasks → Implementation → Validation → Archive
                ↓          ↓       ↓         ↓                ↓
              proposal    spec   tasks      code           validate

Each stage has a corresponding artifact, forming a complete documentation chain.

SDD and Agile Development

SDD is not a return to the waterfall model—it adds necessary structure within an agile framework:

Agile PrincipleSDD Implementation
Respond to change/ss-clarify records changes
Working softwarePhased tasks, frequent delivery
Customer collaborationproposal gets confirmation
SimplicityFirst principles (inspired by LeanSpec), minimal documentation

Practicing SDD with SuperSpec

SuperSpec provides a complete SDD toolchain:

  1. proposal.md: Records change proposals
  2. spec.md: Defines detailed specifications (Boost mode)
  3. tasks.md: Breaks down into executable tasks
  4. clarify.md: Records clarifications and decisions
  5. context.md: Supports context restoration

With these tools, you can have structured, traceable collaboration with AI assistants.

Released under the MIT License