How it works
Six steps.
The last one is the product.
The first five give you a running app. The sixth keeps it honest, and that's the reason to use this instead of anything else.
Four boxes, three arrows. No prompt.
You draw
Boxes for the parts, arrows for how they connect. That's the whole input.
It reads intent
Shapes and handwriting become typed nodes. Photos of paper are read by offline code, not a model.
It fills the gaps
Auth, sessions, webhooks: inferred and shown dashed, so you can delete what's wrong.
It plans the work
Ordered atomic tasks. Each names the nodes it owns, and therefore the files it may touch.
It builds, one task at a time
Fenced to an allowlist. Then typecheck, build, boot, smoke. Green or reverted.
It keeps checking
The code is re-read and hash-compared to the graph. Drift becomes a decision, not a surprise.
One task, end to end
What happens when you press build
Watch which stages need a model. Most don't.
Sketch → shapes
deterministic
Shapes → typed nodes
model
Infer what wasn't drawn
model
Graph → ordered work
deterministic
One task, then stop
model
Green or reverted
deterministic
Drawing still true?
deterministic
› 6 shapes, 5 arrows, 6 labels recovered from the board
What we can actually promise
Four guarantees, one honest limit
The app always boots
Green or reverted, every task.
Every node has a real file
Created before any agent runs.
Graph and code can't silently diverge
Re-read and hash-compared after every task.
Every failure is attributable
To a task, a node, a commit. And revertable.
The limit
A generated feature can still be wrong in ways a typecheck can't catch. We guarantee it's contained, visible and reversible, not that the AI got it right.
Step 06
The check that makes the rest mean something
Try it. Nothing here is pre-recorded.
Five nodes claim a file in this repo.
Press Check sync to hash every one of them against the code that is actually on disk right now.
Try it on something you already know
Import a repo you understand. Check whether its map matches yours.