Spec Driven Development

What is Spec Driven Development?

Spec Driven Development means writing a structured spec (user stories, rules, and acceptance criteria) that defines what to build before any code is written, then handing it to an AI coding agent to work out the how. The spec stays the single source of truth as the project evolves, so every change traces back to a decision you made on purpose.

Why it matters with AI coding agents

An AI coding agent is only as good as the intent it is given. With a spec, the agent inherits a clear definition of the feature, its rules, and how you will know it is done. Without one, it guesses from a vague prompt and fills the gaps with assumptions you never made.

A spec is reusable context. A throwaway chat message is gone the moment the session ends, but a structured spec survives across sessions and across agents. The next time you or a different agent picks up the project, the reasoning is still there, written down, ready to build from.

It also moves the cost of a mistake to the cheapest place to fix it. Catching the wrong feature while it is still a paragraph in the spec takes minutes. Catching it after the agent has already built, wired, and tested it takes hours.

The four phases

Every change runs the same loop. You stay in charge of the what; the agent handles the how.

  1. 01

    Specify

    Write down what you are building and why, as user stories, rules, and acceptance criteria that define done.

  2. 02

    Plan

    Turn the spec into a technical approach the agent can follow, naming the pieces and how they fit together.

  3. 03

    Implement

    Hand the plan to the AI coding agent and let it write the code, working from the spec rather than a loose prompt.

  4. 04

    Validate

    Check the result against the acceptance criteria you wrote in the spec, then refine the spec if anything is off.

SpecDrive is the app for it

SpecDrive is a universal app for iPad and Mac that gives you a structured notebook for Spec Driven Development. Write the spec on iPad, sync it via iCloud or GitHub, and hand the finished package to your AI coding agent. The spec stays the source of truth the whole way through.