GitHub Spec Kit
Type: full-code · Vendor: GitHub · Language: Python (CLI), Markdown templates · License: MIT · Status: active · Status in practice: emerging
Spec-Driven Development toolkit from GitHub: a CLI plus template suite that forces an explicit Specify / Plan / Tasks authoring phase before any agent implementation step runs.
Description. Spec Kit is GitHub's open-source toolkit for Spec-Driven Development with coding agents. The `specify` CLI scaffolds a project structure (constitution, spec, plan, and tasks templates) and walks the user through four phases — Specify (high-level description), Plan (tech stack and architecture), Tasks (executable task list), Implement (the coding agent tackles tasks one by one). The toolkit is editor- and agent-agnostic: it works with 30+ coding agents including Claude Code, GitHub Copilot, Gemini CLI, Cursor CLI, Codex CLI, Qwen CLI, opencode, and Goose. The spec, plan, and tasks files become the authoritative inputs the implementation loop reads on every turn, anchored by a constitution.md that captures the project's foundational guidelines.
Agent loop shape. CLI-driven phased workflow. `specify init <project_name>` scaffolds the templates; `/speckit.specify`, `/speckit.plan`, and `/speckit.tasks` walk the author through pre-flight authoring inside their coding-agent of choice; only `/speckit.implement` then executes the tasks against the plan. Agent execution itself happens inside the host coding agent (Claude Code, Copilot, Cursor, etc.) reading the spec / plan / tasks markdown produced by Spec Kit.
Primary use cases
- Spec-Driven Development with coding agents
- structured pre-flight authoring before implementation
- agent-agnostic spec / plan / tasks scaffolding
- reducing re-asking in long agent loops by persisting a reviewed spec
- enforcing project-wide architectural principles via constitution.md
Key concepts
- Four-phase workflow → spec-driven-loop (docs) — Specify -> Plan -> Tasks -> Implement, with clear checkpoints between phases.
- specify CLI (docs) — `specify init <project_name>` bootstraps the project with required Spec Kit artefacts and detects which coding agent runners are installed.
- Slash commands → pre-flight-spec-authoring (docs) — /speckit.specify, /speckit.plan, /speckit.tasks, /speckit.implement drive the phased workflow inside the host coding agent.
- constitution.md → spec-first-agent (docs) — Acts as the architectural DNA of the system, capturing foundational project guidelines so every generated implementation maintains consistency, simplicity, and quality.
- Feature artefacts → spec-first-agent (docs) — specs/NNN-<feature>/plan.md and tasks.md are the persistent inputs the coding agent reads on each implementation turn.
- Agent-agnostic runner support (docs) — Spec Kit works with 30+ AI coding agents including Claude Code, GitHub Copilot, Gemini CLI, Cursor CLI, Codex CLI, Qwen CLI, opencode, and Goose.
- Executable specifications (docs) — Specifications become executable, directly generating working implementations rather than just guiding them.
Patterns this full-code implements —
- ★Pre-Flight Spec Authoring
Spec Kit's whole point: enforce an explicit Specify phase that authors and critiques the spec before code generation is allowed to start.
- ★Spec-First Agent
The implementation loop reads spec.md / plan.md / tasks.md as authoritative inputs on every turn — the spec-first agent shape — and is anchored by an immutable constitution.md.
- ★Spec-Driven Loop
The phased workflow (Specify → Plan → Tasks → Implement) is a concrete instance of the spec-driven loop with explicit phase boundaries; specify/plan/tasks files persist between turns.