A friend recently sent me a message that perfectly captured a frustration we’ve all been feeling lately in the tech world. They pointed out that the way we code with AI is evolving faster than we can keep up, and we are already doing it wrong.
Right now, the standard developer workflow looks something like this: You open up Claude, Cursor, or Copilot, and you just start throwing prompts at it.
“Build me a web app…””No, change the layout.””Wait, fix this bug.”
Fifty prompts and micro-adjustments later, you have a tangled mess of code.
We call this “Vibe Coding”, coding by feel, crossing your fingers, and hoping the AI eventually guesses your underlying architecture.
It’s a fun party trick for small scripts, but it absolutely does not scale for serious software.
According to the message my friend dropped in my inbox, GitHub is pushing us toward something much more foundational: Spec-Driven Development.
What is Spec Kit?
We used to treat code as the only true metric of progress. Specifications were just fragile scaffolding, abandoned the moment the actual typing began.
Spec-Driven Development enforces a strict, top-down discipline that inverts this process. The blueprint is no longer a passive suggestion or a brittle abstraction. Instead, the specification becomes the executable boundary itself, directly generating the final implementation rather than merely hinting at it.
Flipping the Script on Software Engineering
For decades, code has been king. Specifications were just the scaffolding, boring, dry documents we built, briefly glanced at, and discarded the second the “real work” of typing code began.
With the introduction of GitHub’s open-source spec-kit, that dynamic is flipping completely. The true skill in AI-assisted development is no longer about letting the AI write the code; it’s about how you frame the work in the first place. Specifications are becoming executable. They don’t just guide the code anymore; they generate it.
Instead of jumping straight into a blank editor, spec-kit forces a structured, highly logical workflow. And the best part? It integrates beautifully with over 30 different AI coding agents and tools.
The Spec-Driven Workflow
Here is how a project transforms from a vague idea into a perfectly executed application using this new toolkit:
- Step 1: Establish the Constitution (
/speckit.constitution)Before writing a single line of code, you define the rules of engagement. You establish the project’s governing principles, focusing on code quality, testing standards, performance requirements, and user experience consistency. - Step 2: Specify the “What” and “Why” (
/speckit.specify)This is where you describe the actual application. For example: “Build a photo organization app where albums are grouped by date, support drag-and-drop, and never nest within each other.” You focus purely on the business logic, not the tech stack. - Step 3: Draft the Technical Plan (
/speckit.plan)Now, you define the architecture. “Use Vite, vanilla HTML/CSS/JS, and a local SQLite database for metadata.” - Step 4: Break it into Tasks (
/speckit.tasks)The toolkit analyzes your plan and translates it into a discrete, actionable list of technical tasks. - Step 5: Execute (
/speckit.implement)Finally, you step back and let the Agent do the heavy lifting, executing the tasks strictly according to the boundaries you just built.
Skills, Agents, and Extensibility
What makes this transition so powerful is the interoperability. You don’t have to abandon your favorite workflow. spec-kit acts as a translation layer, exposing these steps as slash commands (like /speckit.specify) in most agents, or as skills in CLI environments ($speckit-*).
You manage it all through the Specify CLI (installed easily via uv tool install specify-cli), which allows you to initialize projects, manage role-based setups, and upgrade environments seamlessly.
The difference here is profound. We are moving away from treating AI like a junior developer we have to micromanage with 50 granular follow-up prompts. Instead, we are treating the AI like a high-level executor of a well-crafted technical spec.
If you want to build high-quality software moving forward, the skill isn’t prompt engineering anymore. It’s defining exactly what to build before you build it. Spec-Driven Coding isn’t just a new toolkit; it’s a completely new engineering discipline.
License
MIT License




