GitHub Spec Kit is GitHub’s open-source toolkit for spec-driven development (SDD). Released September 2025, it structures how AI coding agents understand and execute your requirements.
Core Philosophy
Treat coding agents like literal-minded pair programmers, not search engines. Specifications become the source of truth; code is the generated output that serves the specification.
Installation
uv tool install specify-cli --from git+https://github.com/github/spec-kit.gitWorkflow Commands
| Command | Purpose |
|---|---|
/speckit.constitution | Project principles, guardrails, immutable rules |
/speckit.specify | What you’re building, user stories, acceptance criteria |
/speckit.plan | Tech stack, architecture, how to build it |
/speckit.tasks | Breakdown into implementable chunks |
/speckit.implement | Execute tasks according to plan |
Optional: /speckit.clarify (resolve ambiguity), /speckit.analyze (consistency check), /speckit.checklist (validate requirements)
Supported Agents
17+ agents including: Claude Code, GitHub Copilot, Cursor, Gemini CLI, Windsurf, Qwen, and others.
Alternatives
- Kiro (AWS): Simpler three-document structure (product.md, structure.md, tech.md). More IDE-integrated.
- Tessl: Spec-as-source approach where specs are the maintained artifact. Still in private beta.
See Martin Fowler’s comparison for deeper analysis.
Criticism
- Creates “a sea of markdown documents” that can be tedious to review
- Feels like waterfall with extra steps for small tasks
- Agents still miss context, ignore instructions, or over-interpret
- Not great for brownfield codebases or exploratory work
When to Use
Best for greenfield projects with clear requirements and testable outputs. Not ideal for vibe coding, UI work, or ambiguous requirements.
Related
- The methodology behind Spec Kit
- My workflow combining Spec Kit with Ralph Wiggum loop
- AI limitations for creative work