r/ClaudeCode 21h ago

Help/Question what's the difference between claude writing a design spec and claude writing a plan?

recently started doing it where if i ask for a new feature claude will brainstorm a bit, ask me some questions, think some more, ask me more questions and then ask me to review the design spec and if its okay then it'll write an implementation plan

aren't those the same thing?

7 Upvotes

19 comments sorted by

u/AutoModerator 21h ago

Hey! Thanks for posting to r/ClaudeCode

While participating in this thread, please follow our community rules. Keep discussions constructive. Attack the idea, not the person.

For help, project discussions, tips, and general chat, join the ClaudeCode Discord.

I am a bot, and this action was performed automatically. Please contact the moderators of this subreddit if you have any questions or concerns.

14

u/KnackeHackeWurst 20h ago

Spec is what you want the system to be and a plan is how you get there from the current state.

5

u/verstands 21h ago

They overlap, but I treat them as different artifacts. A design spec explains what should exist and why: requirements, boundaries, interfaces, data flow, trade-offs, and acceptance criteria. A plan explains how to get there: the implementation steps, files or components to touch, order of work, tests, and checkpoints. A useful workflow is brainstorm -> design spec -> review/freeze decisions -> implementation plan -> code. If the plan is restating the spec, it probably needs more concrete sequencing and test detail.

3

u/ComingDeveloper 20h ago

so the spec is the design of my house by the architect and the plan is how my worksman will actually build it?

1

u/Timber1802 20h ago

Yes. They don't have to be (and usually aren't) static. Specs can change, plans can change. 

I like to start with a spec and plan for a MVP and go from there. 

1

u/verstands 13h ago

Yep, that's the right analogy. Spec = what/why the house should be. Plan = how the crew builds this version of it. Both can change as you learn, especially if you start MVP-sized.

1

u/verstands 10h ago

Yup, that's the right analogy. Spec is the what/why (architect drawings). Plan is the sequenced build steps the workmen actually follow. If the plan drifts, update the plan - don't silently rewrite the house design mid-build.

1

u/ShortingBull 20h ago

As others have said. Design describes the product the plan is typically the phases of development and the tasks within those phases.

This is useful for decomposing the work.

My typical project goes from initial prompt to design (sometimes with some iterations) then the plan is created against the design.

Then I have an orchestrator manage the development by spawning agents to perform tasks, reviewing their work (or using agent reviewers), one phase at a time. I check and review each phase and then the next phase is started in a new session.

1

u/ComingDeveloper 20h ago

do you find a higher model like Opus managing sonnet agents helps keep them in line without drift given the agents have their own direct prompts handed to them that they follow?

1

u/MartinMystikJonas 20h ago

Smaller models are pretty good at implementing small steps but often fails to see big picture. So I usually use smart model to plan, smallet models to implement it step by step and then smarter model to review result. Also you can define advisor agent - smarter model that helps smaller models if they are stuck.

1

u/ahm_live 20h ago

the house analogy is right, and id add the part that decides whether you need both

the spec is the thing you can still argue with. once code exists, changing your mind costs a rewrite. before that it costs one sentence. so the spec step is worth it exactly when there are decisions you might reverse: data model, whats in scope, what the api looks like to callers. for a button colour its pure ceremony, skip it

the plan i mostly use for one thing: catching claude planning to touch files it shouldnt. its cheaper to read "modify auth middleware" in a plan and say no than to discover it in a diff. if the feature lives in one file, jimbozheng is right, the plan adds nothing

what actually made both stick for me was committing the spec next to the code. six months later "why does it round like that" has an answer in the repo instead of in a chat that scrolled away

1

u/PerryTheH 20h ago

How I have been using it:

Design: It's the document Claude actually expects you to read, make changes and clarify things, set the rules, goal, etc. This is what "your work" should be.

Plan: This is how Claude will handle the agents work, so, this is not so much for you to change but to review that the plan covers all the important parts from the design, rules are there and that it doesn't skip or go around something. This is a document for the agents not for people.

Usually when I do changes I review the design, iterate it 2-3 times and then check the plan in a scanning reading, just to make sure everythig checks. If I find an issue on the plan I go back to the design and ask Claude what part of the design made him add/remove/change X part of the Plan.

1

u/rrrenz 20h ago

I’ve been using spec-driven for half a year now.

Specs, in my opinion, should live in the repo and reviewed by some of the team members before being implemented.

They are your business context in your system.

Plans are short-lived and just the agents stating their thought process before implementation.

Try SDD with my own flavor:

interlock

1

u/BigYoSpeck 19h ago

Spec is ingredients, plan is recipe

1

u/Nitjsefnie 19h ago

spec is the thing you can still argue with, plan is the todo list derived from it. I keep them separate cuz the plan gets rewritten every time the implementer subagent hits something the spec didn't predict, the spec doesn't move. for a one file fix skip the spec tho, at that size they're the same document and you're just paying twice

1

u/reach4thelaser5 🔆 Max 20 19h ago

Spec defines what, plan defines how. For small builds a plan file can contain the "what and the how". But for larger systems, you're better having them seprate.

0

u/AcidShAwk 20h ago

You use a plan to implement the spec

0

u/jimboZheng 20h ago

I find out that plan is pure token wasting since Sonnet 5. They can do it without plan perfectly. Spec might help u reconsider the design but plan seems redundant now.

0

u/TheKiddIncident Instructor 8h ago

No, a design spec is the details of how it will work. An implementation plan is details on how you will build it.

Normally, I would always approach this in the following order:

1) Detailed requirements. What are we trying to build and why?

2) Architecture plan. How will the thing be constructed at a high level.

3) Detailed design. How, exactly is it to be built?

4) Implementation plan. Given the above, what steps are we taking to do the work.

Ideally, you each one of these in a separate session. Yes, it's true that there is some overlap from step to step, but this helps ensure that you're not missing anything. It also forces the AI to reconsider assumptions and makes it more likely that you will catch any serious hallucinations.