spec-driven workflow // host- and language-agnostic // nothing chains automatically

flw. field guide

Agree on what you are building, in writing, before an agent builds it.

skills 05 commands 18 artifacts 02 stores 03 notion of "done" none
00the problemread first

Ask an AI agent to build something and it will. The trouble starts one step earlier: you and it never wrote down what "it" was. So the agent guesses, guesses reasonably, and you find out three files later.

flw settles that first. You have a conversation, and the conversation becomes a file that says what will be true when the work is done. A second agent builds against that file, and anything it finds missing comes back as a question rather than an invention.

It is four workflow skills your AI coding assistant loads, plus a small command-line tool. It intercepts nothing, runs nothing in the background, and never declares work finished — that judgment stays yours.

Any project, any language. Nothing chains automatically: you drive each step, and each one leaves something on disk you can read.

01the mapinteractive
standby open a node with its + button, or trace a route below
trace a route
02the two files everything turns ondestination · route
the destination
specs/current.toml

One file per project. It describes what is true when the work is done — the parts the software has, what each promises, and how you would know one was broken.

It moves only when work actually lands, so it always describes what shipped, never what was merely planned.
the route
specs/versions/<name>.toml

One file per change. It records how the destination moved this time: what was decided and why, what was rejected, and the ordered list of work.

Named, never numbered — so two people can plan two changes at once and neither has to be renamed when it lands.
03three places things get written downmemory

Agents forget everything between sessions. These are the three kinds of memory flw keeps, held apart on purpose — mixing them is how notes go stale without anyone noticing.

wherewhat it holdswhat makes it wrong
.flw/extensions/ House rules for this repo — conventions, how you like things done. A human changes their mind.
flw know What the code is built of and what connects to what, filed by location. Someone changes the structure.
flw kb Hard-won craft that travels — a library's quirk, a trap somebody measured. Rarely anything.

Unsure where something goes? Ask whether a commit could make it wrong. If yes, it is knowledge. If only a decision could make it wrong, it is a house rule.

04knowing when not toscope
reach for it
Any change worth agreeing on before building

Anything where you would be annoyed to find out afterwards that the agent understood it differently. Anything more than one person will touch.

skip it
A one-line fix, or no agreement to reach

If there is no contract yet and nobody asked for one, just do the work. flw is a way to agree, not a tax on every edit.