Post

My site's repo has 157 design specs and zero implementation plans. On purpose. Two new articles in my Homecoming series this week, both about how I actually worked with Claude Code for six months to bring 23 years of content home. 🧵

0 reposts9 likes

Forgetting past decisions is exactly what a plan can't fix, because a plan is done once the change ships. A spec stays in the repo as the record of what was decided, so the next request gets checked against it instead of against memory.

First up: process. I started with plan mode. It worked fine until it didn't. Every change was a one-off. After a few weeks of writing content, I'd come back to the code and forget decisions I'd already made. Sometimes I'd contradict them.

After joining AvePoint I copied how a real eng team works. Every change gets an issue written like a PRD, a brainstorm, a spec I review, a plan I don't read, a worktree, and a PR. 415 issues, 320 PRs. Overkill for a personal site? Yep. Did it anyway.

Second: the files that teach Claude Code how my repo works. I got tired of explaining commit messages for the third time. CLAUDE.md = context Rules = policy Skills = know-how for a task Commands = scripts I'd otherwise write Hooks = what can NEVER be skipped

Specs without plans work only while each spec carries a checkable acceptance test. Without one, the agent fills the gap with plausible guesses and you find out in review.

You misunderstood... the plan is created for each spec & executed, but I don't keep plans once the work lands on main. The last step in merging the PR is "delete plan, then squash merge PR" so the plan is only kept until the work is complete. IOW, I don't create tons of specs then one big plan.

Specs don't change... they're used to define the work to do at that time. In the future, if things change, they're used as a historical record.

A spec is for a specific work effort (ie: implement/fix an issue), so there's no "go back & update". That would be like "go back and update last week's meeting agenda" - it already happened, so it's moot. You're thinking docs... those get updated to reflect the current state of site features.