Spec 1.0: This page reflects the current stable portable core release.Spec Led Development gives a repo a small current-truth layer plus a verification loop. It keeps intent, code, tests, docs, and review pointed at the same contract. At the core, the repo keeps authored specs in
.spec/specs/*.spec.md and derived state in .spec/state.json.
If you are new, start with Why for the motivation, Getting Started for the first pass, and Tooling for the package repos and commands.
The problem
Software changes faster than shared understanding. That gap shows up as drift:- code that technically passes but misses the point
- tests that only cover part of the behavior
- docs that go stale
- agent output with weak context
The answer
Spec Led Development keeps four things tied together:- intent
- code
- tests and docs
- verification
The loop
- Write current truth in the repo.
- Build code, tests, and docs against it.
- Verify that the effects match the spec.
- Keep the same check in CI so drift does not stay hidden.
What stays in the repo
At the core, the repo keeps:- authored spec files in
.spec/specs/*.spec.md - derived verification state in
.spec/state.json
Who it is for
- teams using AI coding agents
- teams that want clearer engineering back pressure
- projects that need a language-agnostic method
- engineers who want something simple enough to teach and strong enough to verify
Start Here
Why
Read why this exists and the constraints that shaped it.
How It Works
See the loop from current truth to code to verification.
Getting Started
Take the smallest good first pass into the method.
Core Model
Read the small portable model at the center of the method.