Spec-Driven Development

Workflows where human-authored specifications are the primary artifact and AI implements against them — with live debate over whether specs replace or complement reading the code.

Also known as: spec-driven development, specs-to-code, specs-to-code (the movement he opposes), PRD (product requirements document), PRD, AI PRD, destination document / journey document, sedimentary spec, grill-me (skill), Grill Me, spec-anchored, amnesiac AI, change brief, change briefs

How authors use it

Oldest first (extraction date when no publication date is known).

AuthorTheir termTheir meaning
Presentation: AI-First Software Delivery: Balancing Innovation with Proven Practices
Wes Reisz · 2025-01-01
spec-driven developmentUsing Markdown specifications as the contract between developer and LLM, with three variants: spec-first (generate then discard), spec-anchored (keep and reference), spec-as-source (code is byproduct).
No Vibes Allowed: Solving Hard Problems in Complex Codebases – Dex Horthy, HumanLayer
AI Engineer · 2025-12-02
spec-driven developmentA term the author argues is now broken by semantic diffusion (citing Fowler's 2006 coinage of that pattern, and the earlier fate of the word 'agent'): originally meaning something like 'treat the markdown spec as the source of truth and the code as assembly,' it now means anything from 'a more detailed prompt' to 'a product requirements document' to 'documentation for an open-source library,' making the label useless even though parts of the underlying practice (compressed intent, verifiable feedback loops) remain valuable under other names.
10 Things Developers Want from their Agentic IDEs in 2025
Kate Holterhoff (RedMonk) · 2025-12-22
Spec-driven developmentAn approach (exemplified by Kiro, Tessl, GitHub Spec Kit) using requirements.md, design.md, and tasks.md files as a durable, shared contract that both humans and AI agents reference, surviving context-window limits and session boundaries, and serving as a checkpoint for verifying that implementation hasn't diverged from design.
No, AI Did Not Kill Agile
Andrea Laforgia · 2026-04-00
sedimentary specA specification document that accumulates layers of decisions over time, burying wrong assumptions under refinements so they are never re-examined
Ashutosh Singh's Post
Ashutosh Singh · 2026-04-10
AI PRDA product requirements document specifically for AI/ML-powered features, which must include model behavior specs, evals, failure modes, and cost constraints
Sam Hatoum's Post
Sam Hatoum · 2026-04-20
spec-driven developmentA workflow where human-authored specifications are the primary artifact, and AI handles implementation and test verification against those specs in a rapid feedback loop
Sam Hatoum's Post
Sam Hatoum · 2026-04-20
amnesiac AIAn AI system that does not retain decisions, context, or rationale across sessions — so without specs, accumulated design intent is lost
It Ain't Broke: Why Software Fundamentals Matter More Than Ever
Matt Pocock (AI Hero conference talk, AI Engineer) · 2026-04-23
specs-to-codeA workflow where you write a specification, use AI to generate code from it, and when problems arise you modify the spec rather than the code — treating the AI as a compiler from English to code
It Ain't Broke: Why Software Fundamentals Matter More Than Ever
Matt Pocock (AI Hero conference talk, AI Engineer) · 2026-04-23
Grill MeA skill/prompt that instructs the AI to interview the user relentlessly about every aspect of a plan until reaching shared understanding, walking down each branch of the design tree
[FULL WORKSHOP] AI Coding For Real Engineers - Matt Pocock, AI Hero
AI Engineer (channel); speaker: Matt Pocock (AI Hero) · 2026-04-24
specs-to-code (the movement he opposes)The view that you author specs, pass them to AI, and only edit the specs when output is wrong — never reading the code. Pocock equates this with 'vibe coding by another name' and rejects it: 'the code is your battleground.'
[FULL WORKSHOP] AI Coding For Real Engineers - Matt Pocock, AI Hero
AI Engineer (channel); speaker: Matt Pocock (AI Hero) · 2026-04-24
grill-me (skill)A short skill that instructs the agent to interview the developer relentlessly, one question at a time, walking down each branch of the design tree, providing its own recommended answer with each question, until shared understanding is reached. Operationalises Brooks's 'design concept'.
[FULL WORKSHOP] AI Coding For Real Engineers - Matt Pocock, AI Hero
AI Engineer (channel); speaker: Matt Pocock (AI Hero) · 2026-04-24
destination document / journey documentTwo complementary planning artifacts. The destination document (the PRD) defines where you're going (problem, solution, user stories, definition of done, out-of-scope). The journey document (the vertical-slice Kanban) defines how to get there.
[FULL WORKSHOP] AI Coding For Real Engineers - Matt Pocock, AI Hero
AI Engineer (channel); speaker: Matt Pocock (AI Hero) · 2026-04-24
PRD (product requirements document)A summary of the design concept written by the agent after grilling; contains problem, solution, user stories, implementation decisions, testing decisions, out-of-scope. Pocock explicitly does NOT read it — he trusts LLMs at summarization once alignment has been established.
When AI Writes the Code, Specifications Need an Exit Strategy
Markus Eisele · 2026-08-17
change briefThe author's preferred replacement term for 'specification': a short-lived document that names outcome, non-goals, differing constraints, known unknowns, and acceptance criteria for one specific change — never a full description of the system.
Kent Beck's Post
Kent Beck · 2026-10-08
Spec-Driven DevelopmentAs Beck characterizes it here: a workflow where the complete specification is written before any implementation begins, on the assumption that implementation will not generate information that should feed back into the spec.

Documents (33)

Propositions touching this concept (20)

By publication month, oldest first (extraction month when no publication date is known).

2025-10

2025-11

2025-12

2026-04

2026-07

2026-08

2026-09

2026-10

Tensions

Is code a durable artifact humans must keep reading, or an ephemeral byproduct regenerated from a spec?
from: What did the participants of the Thoughtworks 'Future of Software Engineering' Europe retreat (mid-2026) conclude about how agentic AI is reshaping software engineering?
Assessment: The retreat's own 'largest divide' (Ördög). It is unresolved inside the room and inside the individual essays: Herlein concedes the deterministic 'code is the better spec' counter is 'hard to wave off', and Ördög reports being ironically pulled toward the dark-factory camp by her own good-code practices. The crux is whether a fuzzy prose spec can ever be the durable source of truth when the stated quality bar is verifiability — a tension none of them resolves.
How much of the build pipeline should run with no human reading the code (the 'dark factory')?
from: What did the participants of the Thoughtworks 'Future of Software Engineering' Europe retreat (mid-2026) conclude about how agentic AI is reshaping software engineering?
Assessment: Not simple optimism vs pessimism but a disagreement about preconditions and hidden costs. Ocytko's is a projection of where tooling is heading; Bangser and Verraes both supply reasons the projection is unsafe by default — learning-loss and missing prerequisites. Bangser has the stronger argument that the loss is structural (you cannot buy back organisational learning), which even an improving platform does not address.
How far can day-2 operations be handed to self-healing / autonomous remediation?
from: What did the participants of the Thoughtworks 'Future of Software Engineering' Europe retreat (mid-2026) conclude about how agentic AI is reshaping software engineering?
Assessment: Ruby's report is descriptive (where practice actually stands) and Ocytko's is aspirational (where platforms could go); the gap between 'remediation is withheld' and 'failure modes disappear' is precisely the distance the optimists are projecting across. Bangser supplies the reason the gap may not close on efficiency grounds alone — the withheld human step is also the learning step.
Reversibility as a hedge vs a one-way commitment to deeper autonomy.
from: What did the participants of the Thoughtworks 'Future of Software Engineering' Europe retreat (mid-2026) conclude about how agentic AI is reshaping software engineering?
Assessment: Incompatible risk models. Verraes treats deep AI-dependence as the danger to insure against; Herlein treats not-committing as the existential danger. They cannot both be the rational strategy: reversibility trades some upside for exit options, while flywheel-commitment trades exit options for compounding lead. The tie-breaker is empirical (will access/economics deteriorate?) and neither has evidence — Fowler's 'tokenpocalypse' data leans slightly toward Verraes.
Is the value question genuinely settled by evidence, or does uncertainty and sampling bias still dominate?
from: What did the participants of the Thoughtworks 'Future of Software Engineering' Europe retreat (mid-2026) conclude about how agentic AI is reshaping software engineering?
Assessment: The single sharpest divergence, and it sits directly under the headline whether-to-how convergence: they narrate the same shift but disagree on what it establishes. Edwards-Alexander and Herlein read the room's confidence as evidence; Vella and Ruby read the same room as a self-selected in-group. Ruby has the better of it methodologically — he is the only one to interrogate the sample and to notice the evidence is asymmetric (upside anecdotal, downside studied), which is uncomfortable precisely because the cohort's confidence is built on the weaker side.
If code is no longer the bottleneck, what is the new binding constraint?
from: What did the participants of the Thoughtworks 'Future of Software Engineering' Europe retreat (mid-2026) conclude about how agentic AI is reshaping software engineering?
Assessment: They agree code/delivery has ceased to be the constraint but name three different successors, with different investment implications — expand decision-making capacity (Vella), optimise for learning (Edwards-Alexander), or capture tacit knowledge (Herlein). These are complementary in principle but rivalrous for attention and budget; the disagreement matters because each implies a different 'first thing to fix.'
Where is the locus of safety for non-engineers / citizen developers building software?
from: What did the participants of the Thoughtworks 'Future of Software Engineering' Europe retreat (mid-2026) conclude about how agentic AI is reshaping software engineering?
Assessment: Four different answers to the same governance question: the platform (Ocytko), the director's discipline (Ruby), the tooling interface (Bangser), or nobody-knows-yet (Ördög). Ruby and Ocytko are the true opposites — Ruby puts the burden on a human management skill, Ocytko designs the human out by making failure modes disappear in the platform. That both are held by attendees of one retreat is a measure of how unsettled the citizen-developer problem is.
Does low-level code quality matter intrinsically, or only instrumentally (via token economics)?
from: What did the participants of the Thoughtworks 'Future of Software Engineering' Europe retreat (mid-2026) conclude about how agentic AI is reshaping software engineering?
Assessment: The disagreement is about the grounds of the fundamentals-revival, not just its truth. If quality matters only via token cost (Verraes, and Fowler's proxy), the case for it is contingent on token economics and evaporates if tokens get cheap; if it is intrinsic (Ördög), it survives cheaper tokens. This makes the popular slogan 'quality still matters' quietly unstable — the same conclusion rests on incompatible foundations.
Will the classic fundamentals (especially DDD / domain modelling) actually deliver this time — is the revival evidenced or merely asserted?
from: What did the participants of the Thoughtworks 'Future of Software Engineering' Europe retreat (mid-2026) conclude about how agentic AI is reshaping software engineering?
Assessment: The single slogan 'fundamentals matter more' spans concrete evidence (Verraes), unargued assertion with admitted bias (Nilsson), and active skepticism (Edwards-Alexander) — from attendees of one retreat. This directly exposes the 'the fundamentals are agreed' assumption below: the cohort's flagship convergence is doing a lot of work with very uneven support underneath it.
Context size: should you shrink the problem to fit a small usable window (decompose / reset), or grow and trust a large window?
from: When working with AI coding agents, how should you select the model, its reasoning/effort level, and its context size for a given task?
Assessment: The apparent 'grow / trust the big window' position for CODING largely dissolves once retrieval is separated from coding — which is exactly Pocock's move ('good for retrieval, less good for coding') and musistudio's (longContext is a routed escalation, not the coding default). No text argues you should code inside a full 1M window. The only genuine pressure toward trusting a bigger window is the vendor-forward Fable 5 / Opus 4.6 claim that coherence loss is being engineered away — but that is a moving target (convergence 5), not a stable dial, and even the harness paper only relaxed context resets AFTER measuring that the new model no longer needed them. A secondary, live sub-dispute survives: reset vs compact. Pocock, the harness paper and best-practices favor clearing/resetting to a fresh agent; Hills and Osmani lean on compaction. The reset camp has the better argument on today's models — compaction preserves the same anxious agent — but the disagreement is real and unresolved. Verdict: shrink-and-decompose is the default for coding; grow only as an explicit retrieval escalation; prefer reset over compact unless the model version has demonstrably killed context anxiety.
Is code a durable artifact to be maintained, or an ephemeral byproduct regenerated from a more durable source (spec/objective)?
from: What is the future of software development in the agentic/AI age?
Assessment: The most-cited open question of the corpus, and genuinely unresolved (Herlein: 'no consensus here. None.'). The 'code is the better spec' counter is strong — code is unambiguous, executable, deterministic, whereas a prose spec is reinterpreted each run, which sits in tension with verifiability being the quality bar. Ruby's move is the most defensible: it dissolves the code-vs-spec fight by locating durability in the evaluation rather than any representation. Verraes and Ördög expose the load-bearing empirical unknown — nobody has data on regenerate-vs-patch cost or on long-term evolvability of agent-maintained code.
Where does the non-delegable human asset now live — the harness/platform, the oracle, the fundamentals, or the developer's understanding?
from: What is the future of software development in the agentic/AI age?
Assessment: This is the deepest structural disagreement — every author agrees a human residue remains but nominates a different residue, and the choice determines what to invest in and what to teach. The harness-centric (Edwards-Alexander), oracle-centric (Ruby), fundamentals-centric (Nilsson/Bangser), and understanding-centric (Fowler) camps are not merely emphases: they imply different career ladders, different hiring, and different failure modes. Ruby's oracle and Bangser's operational-learning are the most operationally concrete; Nilsson's is the least argued. The absence in the corpus of anyone who holds 'nothing is non-delegable' is itself telling (see unexamined assumptions).
Should the harness/platform and its safety be centralized or left distributed across teams?
from: What is the future of software development in the agentic/AI age?
Assessment: A real operating-model split. Edwards-Alexander's distributed stance rests almost entirely on the DevOps-team analogy (his own extraction flags it as asserted-on-intuition, not argued), whereas the platform camp has the stronger concrete case for the citizen-developer safety problem — you cannot distribute production-data guardrails to non-engineers. The tension is partly reconcilable: Ocytko himself concedes a platform tight enough for non-engineers may be too constraining for expert engineers' identity and innovation, which is exactly the freedom Edwards-Alexander is protecting. The unresolved question is whether one platform can be both.
How far should software be automated — toward the fully-autonomous dark/software factory, or held back to bounded autonomy with humans in the loop?
from: What is the future of software development in the agentic/AI age?
Assessment: The spectrum runs from Ördög/Ocytko (full automation is arriving and desirable) to Bangser/Ruby/Verraes (deliberately withhold the last step). The decelerationists have the better of the safety argument today — Ruby's 'nobody will cede the blast radius' and Bangser's 'removing humans removes learning' identify concrete, unmet prerequisites — but Ördög's context-dependence (backends, COBOL) shows the boundary is domain-specific, not absolute. The real disagreement is less about capability than about who absorbs the blast radius when an autonomous fix goes wrong.
Does the current evidence favor optimism or doubt about agentic engineering's payoff?
from: What is the future of software development in the agentic/AI age?
Assessment: The sharpest divergence in the corpus, because it is about the epistemic ground of every other claim. Nilsson's optimism is explicitly consensus-of-the-in-group and self-flagged as biased; Ruby and the Thoughtworks report both bring the only genuinely external evidence (DORA reversal, HBR intensification, outside surveys) — and it points the other way. On the current record, the skeptics have the stronger footing precisely because the optimistic case is methodologically weakest (a 'sample of one,' as Ruby says of his own best data). The whole cohort's cautious optimism may be an artifact of who was in the room.
Strategically, is the right move to accelerate adoption to build a permanent lead, or to decelerate and hedge against AI's risks?
from: What is the future of software development in the agentic/AI age?
Assessment: Nearly opposite bets: Herlein optimizes for a world where AI keeps getting cheaper and better and first-movers win permanently; Verraes and Fowler optimize for a world where AI gets costlier, curtailed, or unreliable. Herlein's 'permanent moat' rests on flywheel logic plus a single secondhand anecdote and ignores technology-diffusion catch-up dynamics; Verraes and Fowler's hedge is cheap insurance but under-examines whether reversion is actually achievable once specs, agents, and toolchains are deeply embedded and human familiarity has eroded. The disagreement is ultimately a bet on the trajectory of token economics, which nobody in the corpus can price.
Does AI adoption improve output and developer experience together, or do they decouple — with more output bought at the cost of the developers?
from: What is the future of software development in the agentic/AI age?
Assessment: This is the specific, evidence-bearing form of the optimism/pessimism split, and it cuts directly against any simple reading of 'DevEx = AgentEx' as good news. The harmony camp (Nilsson, Ördög) speaks from felt experience and in-group mood; the decoupling camp (Thoughtworks, Vella) and Fowler's own cited HBR study bring the harder data, and it shows output and wellbeing pulling apart. Notably Fowler holds both 'same-size teams do much more' and the burnout finding without resolving them — the single clearest internal contradiction in the corpus, and a sign the harmony framing is doing more reassuring than the evidence supports.
Is preserving human understanding of the system a first-order value, or is comprehension safely offloadable so long as output is verifiable?
from: What is the future of software development in the agentic/AI age?
Assessment: The optimist-practitioner vs. skeptic-humanist axis. Fowler and Nilsson treat comprehension and craft as intrinsic goods whose loss is a harm even when output is fine; Herlein and Ocytko treat comprehension as instrumental — replaceable by verification and platform guardrails. The humanist camp has the stronger long-run argument (Fowler's cognitive-debt case and Ocytko's own 'who-guards-the-guards' problem both show verification and guardrails are themselves fallible artifacts that someone must understand), but the offloadable camp is describing what is actually happening at scale. The crux is whether verifiability can ever be robust enough to make understanding optional — which Ruby's own Goodhart gap (a passable oracle diverging from true intent) suggests it cannot fully be.
If code was never the bottleneck, what is the binding constraint now?
from: What is the future of software development in the agentic/AI age?
Assessment: A productive three-way split downstream of the shared 'code was never the bottleneck' finding. They are not incompatible so much as differently located — decision capacity (Vella) is organisational, learning (Edwards-Alexander) is about the team's rate of understanding the problem, and knowledge (Herlein) is about capturing rationale. But they imply different investments: expand downstream absorption, restructure around learning, or build knowledge-capture pipelines. The corpus has not reconciled which is the true binding constraint, and each author generalizes from a different vantage (a retreat-floor convergence, an org-design frame, a knowledge-engineering frame).

Open gaps (52)