Pattern: Spec-driven development

Drive AI coding agents from explicit, versioned specifications rather than freeform prompting: capture decisions, write a plan/spec, execute against it, verify against it. GSD’s whole five-phase loop is an instance — it pairs spec-driven development with meta-prompting and context engineering. openspec is the wiki’s purest instance: its name is the practice (spec-driven development), and its four principles — fluid, iterative, easy, brownfield-first — are the clearest statement of the ethos. speckit is the wiki’s reference implementation of the idea: GitHub’s toolkit whose entire premise is “specifications don’t serve code — code serves specifications.”

Frameworks differ on how durable the spec is. GSD, Matt Pocock, and Addy write a per-change spec/PRD/plan that is executed then left behind — as does nano-spec, whose per-task 4-file pack is the most ephemeral instance. OpenSpec sits at the opposite pole: a permanent, self-updating spec with each change expressed as a delta against it — the pattern-living-specification specialization.

GSD:

Addy Osmani — Agent Skills:

OpenSpec:

Spec Kit:

  • speckit-specify — defines the spec (WHAT/WHY) before code.
  • speckit-plan — turns the spec into a technical plan validated against the constitution.

BMAD:

  • bmad-prd — authors the durable PRD that drives the build.
  • bmad-architecture — turns the PRD into the architecture spine.
  • bmad-spec — the lightweight SPEC.md kernel on the Quick-Flow path.

gstack:

  • gstack-spec — turns vague intent into a precise, executable five-phase spec with a Codex quality gate.

Builder Methods — BM Skills:

  • bm-prd-creator — a non-technical-builder interview producing the PRD the build runs against.

nano-spec:

Agent OS:

  • agent-os-shape-specshapes (rather than generates) a spec in the harness’s Plan Mode into a persistent, standards-bound pack; v3 delegates spec authoring to the model and keeps only the structuring + durability.

See Also