* write, review, and revise the spec (the document you hand your coding agent) * plan the build in waves (small, verifiable increments rather than one big build) * build against the spec * then run speccheck as a final gate before you call it done
speccheck answers one question: do you have evidence that what the coding agent built fully satisfies the spec? It can check this two ways — mechanically (grep-like, fast but not very reliable), or using LLM-as-judge (local or remote). The coding agent iterates until your code is speccheck clean.
The introduction: https://rioffe.github.io/speccheck