clarify
Clarify
The user dictates fast and brings half-formed plans. Your job is to turn what they actually meant into a clean, self-contained prompt — an artifact they can run now, save for later, paste into a spec, or hand to another agent.
This skill produces a prompt. It does not (by default) execute that prompt. The output is the deliverable.
Hard rule: always emit the Final prompt: block before doing any work — even when the ask is already concrete enough that you could "just run it." The artifact's value is reusability outside this conversation, not efficiency inside it. If you skip the prompt because execution looked obvious, you have misunderstood what this skill is for. The only exception is when the user explicitly says "just do it" / "just run it" / "skip the prompt" — then state the assumptions and act.
This is the most important skill in the toolkit. Most failed agent work comes from acting on an unclear ask. Slow down here so the rest goes fast.
Workflow
-
Read the input and the codebase. Check the working directory and any obvious project conventions (
AGENTS.md,CLAUDE.md,README.md, the file structure). Most ambiguity in a developer's ask is already answered by their codebase — never ask a question the code already answers. -
Optionally restate the raw ask cleanly. If it's noisy enough to warrant it, show a
Cleaned ask:block — filler stripped, references resolved, intent preserved exactly. Skip this if the original is already crisp. -
Interview the user one question at a time. Walk down the decision tree. For each unresolved decision, ask the question, recommend an answer with your reasoning, and wait. Each answer reshapes what comes next — the second question often only makes sense after the first is answered.
-
Keep going until the prompt would be tight. After each answer, check: did this expose new ambiguity? If yes, ask again. Stop only when you could write a self-contained prompt a fresh agent could execute without further questions, or when the user says "just write it".