upvote
What is it with the snide responses? This threads title is "Plan mode is dead", not "You don't need to plan anymore".

Boris is saying that you don't need /plan to get the model to plan, you can just say "Let's plan this out" or similar, which at least matches my experience. Your experience may differ, of course, but it's not even clear we are talking about the same thing.

Maybe some people have not been long enough on this rodeo: This used to be an actual issue. You told the model "DONT START CODING YET" and yet, surely enough, starting to code it did. That is what /plan etc were supposed to fix.

reply
I also use Plan Mode. How does it otherwise work if I am not even quite sure what exactly I want to build myself?
reply
> if I am not even quite sure what exactly I want to build myself

Sounded to me like you need a plan.

My approach is to take the statement of work or problem definition and iterate on that myself until I'm really clear on what is the goal. I therefore have a good some good ideas about what the plan should be.

If extending an existing application, which is usually the case, then make use of the plan documents that I had written before AI arrived on the scene. These sre documents in markdown form that say step-by-step how to, for example, add a new report to the system.

reply
You tell it, "let's brainstorm, don't implement anything yet". Then you talk about what you want to build and hammer out all the corner cases. Then you tell it "now do that".
reply
I have something like this in my default rules which Claude has consistently always loaded before doing any work. Works really well!
reply
> How does it otherwise work if I am not even quite sure what exactly I want to build myself?

It makes some plausible choices and you can retroactively ask it to make different ones later, if you want.

reply
My experience with that is not very good. It gets so hung up in its initial decision. Like, it won't make changes because they're "breaking", for something never even committed. Or it will litter the code base with defensive code and comments about the path not chosen.
reply
This is my experience as well. Changing the initial decision is a hassle so I just start over most of the time.
reply
> My experience with that is not very good. It gets so hung up in its initial decision. Like, it won't make changes because they're "breaking", for something never even committed.

This hasn't been my experience.

> Or it will litter the code base with defensive code and comments about the path not chosen.

I've definitely seen this, though.

reply
deleted
reply
Edit: Deleted.
reply
I love when people on HN think they're special or do more "real" software engineering.

Basically every big tech company maintains "codebases with millions of lines built upon decades." Talk to your friends at a FAANG and ask them how they're using Claude/Codex.

Merging after reading the PR description is just how it's done these days, and if you can't do it reliably, your harness, devloop, or model is simply behind the times.

reply
>when people on HN think they're special or do more "real" software engineering.

But you're doing the same with your "how it's done these days".

These days things are done in many contradicting ways, and it probably will take at least a few years to settle on common normal.

reply