The cost of a vague prompt is paid at the end, not the start. You learn what the model assumed only after it has finished building on the assumption.
That is the problem worth solving. You write down your intent, the agent acts on what you wrote, and whatever you left out gets inferred. The gaps never announce themselves. The model reaches for the reading its training makes likeliest, which is a decent guess about the average requester and a worse guess about you.
So I built a skill called clarify. It is a set of standing instructions the agent reads first, and it can also be called as a /clarify command. Before work starts, it audits the prompt for every assumption it would otherwise fill silently, surfaces them, and does not proceed until I answer.
Auditing every gap would be unbearable. A prompt has dozens and most of them do not matter. So the skill sorts each assumption into three bands:
Only the open ones become questions. That is the difference between a clarifying step you keep and one you switch off after a day.
From the skill file: The enemy is not ambiguity, it is silent inference. An expert's prompt is compressed: what they don't say is not absence of intent, it is unstated intent. Recover it from them; do not reconstruct it from your priors.
A compressed prompt is not a bad prompt. Treating compression as absence is what produces confidently wrong work.
Public, free, no signup: https://github.com/bryanthood-wph/clarify
Drop it in and call it. It works as a skill file, and the /clarify command is the same instructions on demand.
The longer argument, on why a prompt is the cleanest record of your own blind spots, is over here: https://medium.com/@brnthood/account-for-what-your-prompt-doesnt-say-b443fa3af231?sk=504afa509c9d9df58dbff3290df992a3