Specification-Driven Development
https://github.com/github/spec-kit
Github has proposed a new paradigm for software creation. And the tool for its implementation, which works on Linux/macOS (or WSL2 under Windows) with Claude Code, GitHub Copilot, Gemini CLI agents.
Before the AI era, we usually wrote code first, and that was the "real work," and then "on the side" we finished specifications and documentation. Spec-Driven Development (SDD) says that specifications become primary, directly generating working implementations. Specifications define "what" before "how."
Kiro from Amazon has a similar approach (Spec mode), which first writes project requirements and only then generates code. Qoder also has a Quest mode with similar logic.
https://www.youtube.com/watch?v=LA_HqmiGvsE
Detailed document
https://github.com/github/spec-kit/blob/main/spec-driven.md
The main idea of SDD is to bridge the gap between intent (specification) and execution (code). This is achieved by making specifications (such as Product Requirement Documents – PRDs – and implementation plans) so precise, complete, and unambiguous that they can be used to automatically generate working code. SDD ensures systematic alignment of all components of a complex system.
The quality of specifications is ensured by structured templates that prevent premature implementation details, require explicit markers for uncertainties, include checklists, and ensure compliance with the project's "constitution." The "constitution" contains immutable architectural principles (e.g., "Library-first," "CLI-interface mandatory," "Test-First Development," "Simplicity," "No excessive abstraction") that guarantee consistency, simplicity, and quality of the generated code.
#claudecode #githubcopilot #gemini #sdd