3 Days of Spec-Driven Development

You already use AI every day, as chat: you ask, you read, you paste. This course is the step after that. In three self-paced days of about three hours each you point an agent at a real repository with a spec it can execute, look at its plan before it writes anything, let a runner loop until a test goes green or a gate stops it, have a second agent audit the result against the spec, and finish holding a spec framework you can defend to your team. The tool is Claude Code in the terminal. The sandbox is a small transactions module with the same spec in Swift and Kotlin, and you pick a lane.

Start here

Twenty minutes, once, before Day 1: confirm Claude Code runs, pick your lane, copy the sandbox to a working folder of your own, and get one green test run. Do it at your desk with the terminal you actually work in.

Setup: twenty minutes before Day 1 20 min

Pick your lane

Every exercise ships in two lanes with one shared spec: a Swift package and a Kotlin JVM project on Gradle. They produce the same strings, so a lesson never belongs to one platform. Pick the toolchain already installed on your machine and stay in it for all three days.

The lane buttons at the top of every page remember your choice in this browser. Until you press one — and with JavaScript off — pages show both lanes side by side, each under its own name, and nothing is lost.

The three days

Day 1: From chat to spec

What an agent has that chat does not, prompting in four named parts, and plan mode. Then the prompt becomes a spec: acceptance criteria a command can fail, and context as a budget you can measure and cut.

Six lessons on four pages, four exercises, a wrap-up. 153 min with the opener

Day 2: Loops and your environment

The four places drift gets in, a runner that implements and repairs until a stop condition, a fresh-context subagent that audits its own output, and your locked-down environment written down as part of the spec: permissions, read paths, one write path.

Four lessons, four exercises, a wrap-up. 159 min with the opener

Day 3: Choose your adventure

Why a framework at all, what OpenSpec, LID and BMAD share and where they part. You run one track against a feature brief with two deliberate ambiguities, graded by the same acceptance suite whichever track you pick, and leave with a comparison card for your team.

Five lessons on four pages, three exercises, a wrap-up. 180 min with the opener

Each day stands alone and ships the artifacts the day before produced, so a gap of a week between days costs you nothing.

Three ways to read this site

Same files, no build step, no account:

The syllabus, the prerequisites and the folder layout are in README.md, which is the Markdown version of this page.

Your progress

Every lesson and exercise carries a checkbox. Ticks live in this browser under keys beginning sdd.progress., one per day, never on a server. Your theme, lane and Day 3 track sit beside them under sdd.theme, sdd.lane and sdd.track, so clearing those four names is a clean slate.

Counts need JavaScript. With it off, the pages work and the checkboxes stay unticked.