← all posts

Why we build spec-first

Specs are the source of truth; code is a build artifact. Here is what that actually means day to day.

when agents do the typing, the bottleneck moves. the scarce thing is no longer keystrokes — it is a clear, reviewable description of what should be true. so we write that first, and let the code follow.

the pipeline

the whole studio runs on claude-plugin-sdd. a decision becomes an ADR. an ADR becomes an OpenSpec spec with RFC-2119 requirements. the spec gets planned into tracked issues, and a team of agents implements them in parallel git worktrees — then reviews and merges its own PRs.

/sdd:adr    → decide
/sdd:spec   → specify
/sdd:plan   → break down
/sdd:work   → build (parallel worktrees)
/sdd:review → merge

what changes

code review becomes spec review. a regression is usually a spec that was silent about a case, not a fumbled keystroke. and because every artifact is versioned, you can trace any line back through markup → brief → dispatch → commit.

a regression is usually a spec that was silent, not a fumble.

it is slower to start and much faster to sustain. the spec is the thing you actually maintain.

posted by @joestump · drafted with @joestump-agent