Skip to main content
Spec Kit Logo

Build High-Quality Software Faster

Spec Kit is an open source toolkit that allows you to focus on product scenarios and predictable outcomes instead of vibe coding every piece from scratch. It implements Spec-Driven Development (SDD), a methodology that flips the traditional development script.
For decades, code has been king. Specifications were just scaffolding we built and discarded once the “real work” of coding began. Spec-Driven Development changes this: specifications become executable, directly generating working implementations rather than just guiding them.

What is Spec-Driven Development?

Spec-Driven Development inverts the traditional power structure in software development:
  • Specifications don’t serve code—code serves specifications
  • The Product Requirements Document (PRD) isn’t a guide for implementation; it’s the source that generates implementation
  • Technical plans aren’t documents that inform coding; they’re precise definitions that produce code
  • When specifications generate code, there is no gap—only transformation

The Power Inversion

This transformation is now possible because AI can understand and implement complex specifications. But raw AI generation without structure produces chaos. SDD provides that structure through:

Intent-Driven Development

Express your intent in natural language, design assets, and core principles. The lingua franca of development moves to a higher level.

Executable Specifications

Specifications are precise, complete, and unambiguous enough to generate working systems, eliminating the gap between intent and implementation.

Continuous Refinement

AI analyzes specifications for ambiguity, contradictions, and gaps as an ongoing process, not a one-time gate.

Bidirectional Feedback

Production reality informs specification evolution. Metrics and incidents become inputs for specification refinement.

The SDD Workflow

Spec Kit streamlines the development workflow through powerful slash commands available in your AI coding assistant:
1

Establish Project Principles

Use /speckit.constitution to create your project’s governing principles and development guidelines that guide all subsequent development.
2

Create the Specification

Use /speckit.specify to describe what you want to build. Focus on the what and why, not the tech stack.
3

Clarify Requirements

Use /speckit.clarify to identify and resolve ambiguities in your specification through structured questioning.
4

Generate Technical Plan

Use /speckit.plan to provide your tech stack and architecture choices, creating detailed implementation plans.
5

Break Down Tasks

Use /speckit.tasks to create an actionable task list from your implementation plan with proper dependency ordering.
6

Execute Implementation

Use /speckit.implement to execute all tasks and build your feature according to the plan.

Key Features

Multi-Agent Support

Works with Claude Code, GitHub Copilot, Cursor, Gemini CLI, opencode, and many more AI coding assistants.

Template-Based Generation

Structured templates ensure specifications, plans, and tasks follow consistent, proven patterns.

Git Integration

Automatic branch creation, feature numbering, and version control integration for specification management.

Cross-Platform Scripts

Both Bash and PowerShell variants for all automation scripts, supporting Linux, macOS, and Windows.

Why Spec-Driven Development Matters Now

Three trends make SDD not just possible but necessary:
  1. AI Capabilities: AI has reached a threshold where natural language specifications can reliably generate working code, amplifying developer effectiveness.
  2. Growing Complexity: Modern systems integrate dozens of services, frameworks, and dependencies. SDD provides systematic alignment through specification-driven generation.
  3. Accelerating Change: Requirements change rapidly. SDD transforms requirement changes from obstacles into normal workflow through systematic regenerations.
This isn’t about replacing developers—it’s about amplifying their effectiveness by automating the mechanical translation from specification to implementation while focusing human creativity on critical thinking and exploration.

Development Phases

Spec Kit supports multiple development scenarios:
PhaseFocusKey Activities
0-to-1 DevelopmentGenerate from scratchStart with high-level requirements, generate specifications, plan implementation, build production-ready applications
Creative ExplorationParallel implementationsExplore diverse solutions, support multiple technology stacks & architectures, experiment with UX patterns
Iterative EnhancementBrownfield modernizationAdd features iteratively, modernize legacy systems, adapt processes

Get Started

Installation

Install the Specify CLI and set up your first project

Quick Start

Get from installation to your first working specification in minutes

CLI Reference

Complete reference for all Specify CLI commands and options

Methodology

Deep dive into the complete Spec-Driven Development process

Community and Support

Spec Kit is an open source project licensed under the MIT License. For support:
  • Issues & Bugs: Open a GitHub issue
  • Feature Requests: Submit ideas through GitHub issues
  • Documentation: Explore this comprehensive documentation site
  • Source Code: View and contribute on GitHub
This project is heavily influenced by and based on the work and research of John Lam.

Build docs developers (and LLMs) love