Clarify
Turn a rough request into a prompt another agent can execute.
Choose a mode
- Refine directly when the goal is clear and missing details have safe defaults.
- Interview when one unresolved choice would materially change behaviour, data, security, compatibility, cost, output, or proof.
- Execute the clarified prompt only when the user explicitly asks to run it or says "just do it."
Process
- Read the request and any referenced material.
- For repository work, inspect discoverable context such as
AGENTS.md, CLAUDE.md, README.md, the file tree, and relevant code before asking questions.
- Extract the goal, current state, inputs, outputs, constraints, scope boundaries, failure behaviour, and success checks.
- Resolve unambiguous references and project conventions from the available context.
- Use a sensible assumption when the user can change it later without reworking the task.
- Ask one question when no safe assumption exists. After the answer, check whether another important decision remains.
- Include all context needed to execute the prompt. Do not refer to "our discussion" or information outside the prompt.
Ask useful questions
Ask about decisions such as:
- which input, file, directory, system, or audience is in scope
- what output must exist, where it belongs, and whether it may overwrite anything
- required behaviour for bad input, missing data, network failure, or partial success
- tradeoffs that change product behaviour, security, compatibility, cost, or architecture
- the observable result or check that proves completion
Do not ask about cosmetic choices, conventions the repository answers, details already supplied, or preferences with an obvious low-risk default.
Use this shape:
Question: <one decision>
Recommendation: <answer> because <short reason>.
Write the final prompt
Include only what changes execution:
- goal
- relevant context and current state
- exact inputs and outputs
- in-scope and out-of-scope work
- constraints and safe assumptions
- required failure behaviour
- success criteria and verification
Prefer positive instructions. Resolve contradictions or state which instruction wins. Use numbered steps only when order matters. Add [NEEDS: <detail>] only when the missing value cannot be safely assumed and the user has asked you to stop interviewing.
Return:
Final prompt:
<self-contained prompt>
Assumptions: <only material defaults; omit when empty>
Gaps: <only unresolved [NEEDS: ...] items; omit when empty>
Do not solve the prompt, explain the rewrite, or offer a menu of next actions unless the user asks.
1---2name: clarify3description: Turn a vague request, voice dump, rough plan, or half-written prompt into a self-contained prompt that a fresh agent can execute. Use when asked to clarify, refine, improve, tighten, or stress-test an agent task. Resolve safe defaults directly. Ask one question at a time only when the answer would materially change the work.4---56# Clarify78Turn a rough request into a prompt another agent can execute.910## Choose a mode1112- Refine directly when the goal is clear and missing details have safe defaults.13- Interview when one unresolved choice would materially change behaviour, data, security, compatibility, cost, output, or proof.14- Execute the clarified prompt only when the user explicitly asks to run it or says "just do it."1516## Process17181. Read the request and any referenced material.192. For repository work, inspect discoverable context such as `AGENTS.md`, `CLAUDE.md`, `README.md`, the file tree, and relevant code before asking questions.203. Extract the goal, current state, inputs, outputs, constraints, scope boundaries, failure behaviour, and success checks.214. Resolve unambiguous references and project conventions from the available context.225. Use a sensible assumption when the user can change it later without reworking the task.236. Ask one question when no safe assumption exists. After the answer, check whether another important decision remains.247. Include all context needed to execute the prompt. Do not refer to "our discussion" or information outside the prompt.2526## Ask useful questions2728Ask about decisions such as:2930- which input, file, directory, system, or audience is in scope31- what output must exist, where it belongs, and whether it may overwrite anything32- required behaviour for bad input, missing data, network failure, or partial success33- tradeoffs that change product behaviour, security, compatibility, cost, or architecture34- the observable result or check that proves completion3536Do not ask about cosmetic choices, conventions the repository answers, details already supplied, or preferences with an obvious low-risk default.3738Use this shape:3940```text41Question: <one decision>42Recommendation: <answer> because <short reason>.43```4445## Write the final prompt4647Include only what changes execution:4849- goal50- relevant context and current state51- exact inputs and outputs52- in-scope and out-of-scope work53- constraints and safe assumptions54- required failure behaviour55- success criteria and verification5657Prefer positive instructions. Resolve contradictions or state which instruction wins. Use numbered steps only when order matters. Add `[NEEDS: <detail>]` only when the missing value cannot be safely assumed and the user has asked you to stop interviewing.5859Return:6061```text62Final prompt:6364<self-contained prompt>6566Assumptions: <only material defaults; omit when empty>67Gaps: <only unresolved [NEEDS: ...] items; omit when empty>68```6970Do not solve the prompt, explain the rewrite, or offer a menu of next actions unless the user asks.