Hey all! I wanted to share a kind of new development process I’ve been using lately — I call it "Moonwalk."
Basically it's:
- Check out a spike branch (
git checkout -b reconciliation/spike/mt940) - Vibe code fast (and with vim and vigour!) until it feels just right
- Generate a spec based on the final version
- Switch back to main (
git checkout main) - Check out only the spec (
git checkout reconciliation/spike/mt940 -- /job-stories) <- This is the moonwalk! - Let the "professional" agents and sub-agents write production-grade code based on the spec
It's so effective because I can leverage Claude Code for both: Quickly build a working vibe-heavy prototype spec AND write production-grade code with agentic/sub-agentic quality.
For the vibe code part, the standard Claude Code top-level agent is more than sufficient. It's great, no need for time-costly delegation to sub-agents here.
For the production-grade part, since we're an XP shop with a pretty solid TDD process, sub agents make total sense. We turned our existing process and skills into a bunch of sub-agents that work smoothly together:
We've got...
- green-minimal-implementer(.)md
- code-quality-reviewer(.)md
- code-refactorer(.)md
- db-migration-specialist(.)md
- dependency-manager(.)md
- frontend-design-specialist(.)md
- locale-translation-specialist(.)md
- red-test-writer(.)md
So, yeah, that's what I wanted to share with you. Try it out and let me know how I can help :)
Cheers!
PS: For better or worse, this post is 100% written by hand
PPS: My friend Alex Fedorov reminded me that this is pretty close to the spike/exploration workflow we used to do at Pivotal Labs. I think he's right.
cc'ing @claudeai and @Lovable because I feel like it's a nice connection between the two of you <3