Back
DevOps

GitHub Spec Kit: Why You Should Stop Vibe Coding and Start Specifying

GitHub's open-source toolkit forces structure on AI-assisted development. Four gated phases — Specify, Plan, Tasks, Implement — that turn chat-driven chaos into repeatable engineering.

JB
Josue Barros
4 min read
GitHub Spec Kit: Why You Should Stop Vibe Coding and Start Specifying

If you've been "vibe coding" with Copilot or Claude — asking the AI to build something, accepting whatever it generates, and praying it works — GitHub just shipped a framework that says you're doing it wrong.

Spec Kit is GitHub's open-source toolkit for Spec-Driven Development (SDD). It forces you through four gated phases before any code gets generated. The result: AI that follows a contract instead of guessing.

What Spec Kit Actually Does

Instead of a freeform conversation with your AI, Spec Kit imposes structure:

Phase 1: /specify  →  spec.md     (what you're building)
Phase 2: /plan     →  plan.md     (how you'll build it)
Phase 3: /tasks    →  tasks/      (small, reviewable units)
Phase 4: /implement →  code       (AI executes the plan)

Each phase produces a versioned artifact. Each artifact feeds the next phase. You can't skip ahead.

Getting Started

uvx --from git+https://github.com/github/spec-kit.git specify init my-project

This scaffolds a .specify/ directory with templates and generates prompt files under .github/ for your AI tool.

Why This Matters

The Vibe Coding Problem

Here's what happens without specs:

  1. You tell Copilot "add a notification system"
  2. It generates 400 lines of code
  3. You accept it because it looks right
  4. Three weeks later you discover it doesn't handle edge cases
  5. You rewrite it manually

Here's what happens with Spec Kit:

  1. You write a spec: notification types, delivery channels, user preferences, retry logic
  2. You write a plan: WebSocket architecture, database schema, rate limiting
  3. You break it into 8 tasks
  4. AI implements each task with full context from the spec and plan

Same feature. Dramatically different outcome.

Specs Become Documentation

Your spec.md and plan.md live in Git. They're versioned, reviewable, and searchable. Six months from now, when someone asks "why does the notification system work this way?" — the spec tells them.

Compare that to scrolling through a chat history that no longer exists.

Agent-Agnostic

Spec Kit works with 30+ AI coding tools:

  • GitHub Copilot
  • Claude Code
  • Gemini CLI
  • Cursor
  • Windsurf
  • And 25+ more

You write the spec once. Any agent can implement it.

The Honest Limitations

Spec Kit isn't perfect, and the community has flagged real issues:

Overhead for small changes. Writing a full spec for a bug fix is overkill. Spec Kit is designed for features and projects, not patches.

Non-deterministic output. LLMs behave differently across runs. A spec reduces variance but doesn't eliminate it. What works perfectly today might produce different results tomorrow.

Scaling gaps. With 10 modules, you have 45 pairwise interfaces to verify. Spec Kit doesn't have a mechanism to check that Module A's output satisfies Module B's input.

Natural language ambiguity. Structured specs are better than freeform prompts, but boundary conditions still depend on you remembering to include them.

When to Use It

Use Spec Kit when:

  • Building a new feature with 3+ components
  • Working on an existing codebase where context is critical
  • Collaborating with a team (specs are shareable contracts)
  • You want AI output that's reviewable before it becomes code

Skip Spec Kit when:

  • Fixing a one-line bug
  • Prototyping something you'll throw away
  • Working on something so small that the spec would be longer than the code

Where Spec Kit Fits in the Ecosystem

Spec Kit solves the pre-code problem. It pairs well with other tools:

  • BMAD Method — multi-agent personas for the full development lifecycle
  • Harness — CI/CD and deployment after the code is written
  • BoilerForge — pre-built SaaS infrastructure so you spec features, not boilerplate

The trend is clear: AI coding tools are becoming more powerful, and the constraint is no longer "can AI write code?" — it's "can AI write the right code?" Spec Kit is GitHub's answer.

Try It

Repository: github.com/github/spec-kit

Start with a small project. Write a spec. Let your AI implement it. Compare the output quality to your last vibe coding session. The difference is measurable.

#github#ai#spec-driven-development#copilot#developer-tools

Join the Newsletter

Subscribe to get my latest content by email.

We won't send you spam. Unsubscribe at any time.