There’s a specific kind of habit that doesn’t feel like a habit. It feels like good practice.
You’ve been using AI dev tools long enough that your instincts have been shaped by the failure modes you’ve encountered. The loop that spun out. The context that dropped. The task that needed babysitting every five minutes or it would drift.
The workarounds you built around those failure modes became rituals. They saved you enough times that you stopped questioning them.
The tool got better. The habits didn’t.
The Six
Watching it spiral for a few minutes before hitting Esc — just in case it recovers.
It used to recover sometimes. So you waited. That was rational. Current-generation agentic tools rarely spiral and self-correct in the way the old ones did. When something’s going wrong now, it’s going wrong — and the earlier you stop it, the less cleanup you have. If you catch yourself watching and hoping, hit Esc.
Not running /plan before a big change because “you know what you want.”
You do know what you want. That’s not what /plan is for. It’s for surfacing what the model is about to do with what you want — before it does it across 12 files. The five minutes you skip at the start become forty minutes of review at the end.
Typing /btw mid-task to nudge it back instead of stopping and restarting.
Mid-task corrections made sense when starting over meant losing meaningful progress. Today’s models rebuild context quickly, and a clear restart often outperforms a patched trajectory. The nudge-and-hope pattern optimized for a world where restarts were expensive. They’re not anymore.
Starting a big implementation task in the same context you used to ideate in.
Ideation context is messy by design — you were thinking out loud, changing direction, ruling things out. Carrying all of that into an implementation task means the model is navigating your discarded ideas alongside your actual intent. Fresh context at implementation time isn’t extra overhead. It’s cleaner signal.
Rephrasing the same prompt three times instead of explaining what’s actually wrong.
When the output isn’t right and you try again with different wording, you’re treating the model like a search engine — hoping the right query surfaces the right result. It works sometimes, which is why the habit sticks. But explaining what’s wrong — what the output missed, what constraint wasn’t obvious — gets there faster and more reliably than synonym rotation.
Breaking everything into tiny tasks because you don’t trust it with bigger scope.
This one has a real cost that’s easy to miss: the overhead of the handoffs. Each boundary where you re-inject context, review output, and decide whether to continue is time you’re spending instead of the model. Bigger scope with a well-scoped prompt and a good working context often outperforms the sum of many small tasks managed manually. Trust the scope before you reach for the subdivide instinct.
What This Actually Is
None of these habits are irrational. They were learned responses to real failure modes in real tools. Some version of each one protected you from something at some point.
The problem is that tool improvement is invisible. It doesn’t announce itself. So the failure modes get patched, and the habits built around them stay intact — operating as if the failure modes are still there.
The friction you feel isn’t in the software anymore. It’s the gap between the tool you’re used to and the tool you’re actually using.
AI Minus the Friction #7. Original post on LinkedIn and Twitter.