How one developer builds — and keeps alive — a fleet of focused, high-quality apps with AI agents.
Spec just enough, code for quality, verify and fail fast, iterate, succeed.
Don't automate the creation before you automate the verification.
graph LR
S[Spec just enough] --> C[Code for quality]
C --> V{Verify & fail fast}
V -->|fail| S
V -->|pass| D[Succeed & ship]
make canary
Verifies mdbook, chromium, and a full build → print → PDF round trip.
Preflight mandate: always run
make preflightbefore completing a task.
graph LR
S[Spec] --> C[Canary]
C --> H[Harness]
H --> A[Agent implements]
A --> W{Checks pass?}
W -->|no| A
W -->|yes| P[Commit]
spec/config.yaml — followed all the way.Green and still wrong is exactly where the human belongs.
Add the check, then fix the bug — in that order, or the bug comes back.
Mechanical and verifiable. Delegate it.
Taste, architecture, the irreversible.
The exact command that catches the agent being wrong.
Every 🤖 in the book carries a matching 🛡️. A delegation without a check is not delegation — it is review debt arriving at machine speed.
Stdlib first. No ORMs. No global mutable state. Table-driven tests.
Zero-allocation hot paths. Explicit memory. Compile-time specs.
Header set -euo pipefail. Use test. Continuation alignment.
Sentinel ⚙️ for phony rules. Self-documenting help targets.
?1049l unless you entered the alt-screen.? is load-bearing (?7l vs 7l).
\x1b[?1002l mouse off
\x1b[6n CPR drain
\x1b[2K erase row
\x1b[?25h cursor home
graph LR
D[Diagnose numerically] --> P[Predict golden changes]
P --> E[Edit the code]
E --> R{Diff matches prediction?}
R -->|yes| U[Update goldens deliberately]
R -->|no| D
-update to make tests pass; eliminate downstream hacks.Write issues, errors, and plans to issues/ before compaction.
Define constants in specs, auto-generate derivatives.
Avoid duplicate implementations across languages.
graph TD
MD[Markdown Sources] --> B1[mdBook: Playbook]
MD --> B2[mdBook: Emojig]
MD --> B3[mdBook: Style Codex — theme reference]
MD --> SC[Go Slide Compiler]
B1 --> W[build/ Static Website]
B2 --> W
B3 --> W
SC --> W
W --> PDF[PDFs via Headless Chromium]
make build renders everything. make preflight proves it: unit tests, theme goldens, and a link check that fails on a dead or non-portable link.Teams need trackers, governance, and meetings. Files alone don't page anyone at 3 a.m. — the solo purism does not transfer.
Verification-first gates, in-repo ADRs, agent-ready repos, one-command preflight, platform canaries, spec-driven config.
Full review: The Solo Fleet, Reviewed — in the book, and as its own deck.
The Rule Index — every rule we hold ourselves to, one line each, with what enforces it.
The Golden Path — watch an agent build, fail a check, and recover.
Emojig Chronology — six weeks in Zig, where these rules were paid for in real bugs.
Everything is offline-first and local:
make buildrenders the shelf,make preflightproves it.