I've been using Claude and Cursor for about a year. For the first six months, I was convinced the AI was the problem. The code it generated was often wrong, incomplete, or just not what I actually wanted.
Then I looked at my own prompts.
"Fix this bug" — what bug? What behavior am I expecting instead?
"Refactor this" — refactor how? For readability? Performance? Structure?
"Write tests" — what kind? What framework? Which edge cases?
The AI wasn't failing me. I was giving it almost nothing to work with.
The real problem
Writing a genuinely good prompt takes 5–10 minutes if you do it properly: specify the goal, the constraints, the expected output format, add placeholders for the actual code, tell it to handle edge cases.
Most of us don't do that. We type the lazy version, get mediocre output, and re-prompt. Then re-prompt again. The irony is that the "quick" prompt ends up costing more time than writing a careful one would have.
What I did about it
I got tired of the re-prompting loop, so I built a small tool called PromptSmith.
You paste your rough request, pick a mode tuned for the task — Debug, Refactor, Code Review, Write Tests, or Explain — and it turns your vague input into a precise, structured prompt. Then you copy that and paste it into whatever AI tool you use (Claude, ChatGPT, Cursor, Copilot).
For example, this:
fix my useEffect infinite loop
becomes a full debug prompt that asks the AI to identify the root cause (not just the symptom), explain why it's happening, provide the corrected code, and note how to prevent it — with placeholders for the error and the relevant code.
It's free to use here: https://usepromptsmith.com
What I'm trying to figure out
I built this for myself, but I'm genuinely unsure how universal the problem is. So I'd love honest input from other developers:
- Do you find yourself writing lazy prompts and re-prompting a lot?
- Or have you already built good prompting habits where this wouldn't add much?
- If you tried it — did the output actually beat what you'd have written yourself?
One developer friend's first reaction was "are you removing prompt engineers' jobs?" — which I'll take as a sign the output quality isn't bad. But I'd rather hear the brutal version from people who'll actually use it.
The feedback matters more to me than the traffic. If it's not useful, I want to know why.
Top comments (0)