From Vibe Coding to Reconciliation
A twelve-part series. It walks from a vanilla coding-agent workflow — prompting by feel — up the same ladder we climbed: persistent context, knowledge tiers, real-world verification, structural understanding, reusable skills, a written plan, an honest definition of done, and safe parallelism — to a reconciliation workflow. Each post is independently useful, and each ends on the limitation that motivates the next.
Parts marked coming are still being written; published parts link through to the post.
See the loop, the ladder, and the contrast
- The ceiling of “looks good to me”published
Where prompting-by-feel quietly breaks: the agent decides it is finished, and there is no objective gate. The bottleneck is not the model — it is the missing gate and the missing structure.
- Teach your agent to rememberpublished
Persistent context — a project memory file, conventions, checkpoints — so the agent stops re-learning your repo every session.
Give architecture, decisions, operations, and invariants distinct homes — then the hygiene that stops them rotting: linting for contradictions, trimming stale work, fixing tier drift.
Real-world verification: drive a browser, screenshot, exploratory-test — so “green locally” becomes “exercised live” — and carry it through to production and a stuck-deploy triage.
Structural understanding and context economy: a code graph for callers and blast radius, compressing what you feed the agent, and reshaping code safely with ordered, build-green changes.
- From prompts to skillspublished
Codify the good prompt you keep retyping into a reusable skill — the compounding move from one-off cleverness to a repeatable workflow.
- Plan the work, then work the planpublished
Intent as an artifact: a checkable plan, tasks linked to outcomes, declared dependencies — instead of an oral to-do list.
The credibility centerpiece: tests, coverage, wiring, live probes — plus an adversary trying to break it — and why “the agent said done” is the wrong gate.
Parallelism without collisions: pools, claims, worktrees; coordinate on resources, not identities. Plus the resilience discipline — preflight before fan-out, resume a halted run.
The conceptual turn: every rung above is the same loop — declare desired state, drive an agent, check against reality, repeat. The CI / Kubernetes analogy; truth in the controller.
- Meet kazi: “done,” provenpublished
The product as the packaging of the preceding rungs into a controller: declare a goal as predicates, the agent drives kazi, it converges or stops honestly (stuck / over_budget).
- Your on-ramppublished
Recap the ladder — you can start at any rung — wire kazi into Claude Code, harden your harness first, an honest “where it is going,” and a respectful call to try it.