From workflow
Use this skill whenever you need to gather information, clarification, preferences, or feedback from the user during any task. Triggers include: ambiguous requirements, missing technical details, multiple valid approaches to choose from, confirming assumptions before proceeding, design/architecture decisions, tech stack choices, scope clarification, or any moment you would otherwise write clarifying questions as prose. Instead of asking questions inline in chat, always use the AskUserQuestion tool so the user gets interactive, tappable options. Do NOT use this skill for venting/emotional conversations, factual questions you should answer directly, or when the user has already provided sufficient detail to proceed.
How this skill is triggered — by the user, by Claude, or both
Slash command
/workflow:ask-user-questionsThe summary Claude sees in its skill listing — used to decide when to auto-load this skill
Whenever you need input from the user — clarification, a decision, a preference, feedback on a plan, confirmation of an assumption — use the **AskUserQuestion** tool instead of writing questions as prose in chat. Interactive questions with tappable options are faster for the user to answer, easier to scan, and produce cleaner, more structured responses than free-form prose.
Whenever you need input from the user — clarification, a decision, a preference, feedback on a plan, confirmation of an assumption — use the AskUserQuestion tool instead of writing questions as prose in chat. Interactive questions with tappable options are faster for the user to answer, easier to scan, and produce cleaner, more structured responses than free-form prose.
Each question should resolve exactly one decision. Bundled questions force the user into a compromise answer that doesn't actually resolve either decision cleanly — and the next reply has to disambiguate, which defeats the point of using interactive choices in the first place. If a question is bundling multiple decisions, split it.
Bad (bundled topics):
What tech stack do you want to use?
This bundles frontend, backend, database, and probably more. The user can't answer cleanly with a single option.
Good (one topic per question):
Each question is one decision. Each has its own clean set of options.
How to tell if a question is atomic: ask yourself, "Could a reasonable user's answer to this require two different selections?" If yes, split it.
Every question should present a recommendation. Mark it (Recommended) in the label and explain why it's recommended in the description — the safer default, the industry-standard choice, the more reversible path, whatever the actual reason is. Don't present neutral menus that hide which option is the sensible default.
The user can still pick something else; the recommendation exists so they pick knowingly. If you don't surface one, you've offloaded the work of figuring out which option is the default to the user — and they're using AskUserQuestion in the first place because they want a structured, opinionated prompt.
When there's genuinely no recommendation (the answer is purely a matter of taste, or the tradeoffs are equal), say so explicitly — but most of the time there is a sensible default, and naming it is the helpful thing.
Put the recommended option first in the list.
Batching is encouraged when multiple atomic decisions are needed to move forward. Asking 2–4 related-but-distinct questions in a single AskUserQuestion call is much better than a back-and-forth over several turns.
When starting a new project or major feature, it's normal to batch 3–4 questions covering different facets (frontend, backend, database, auth) in one call — just make sure each one is atomic. If you genuinely need 5+ decisions to proceed, do them in two consecutive AskUserQuestion calls rather than trying to cram.
The tool's hard cap is 4 questions per call.
Use it whenever you would otherwise:
Question text: short, specific, names the one topic. "What database do you want to use?" not "How should we handle data?"
Options: 2–4 short, mutually exclusive choices. Use real names (PostgreSQL, MySQL, SQLite), not vague labels (relational DB, simple DB).
Don't add an "Other" / "Let me specify" option yourself — the tool always provides a free-text fallback automatically. Adding one manually wastes a slot and duplicates a built-in capability.
Each option's description explains what it means or what happens if chosen. The user reads label + description together; both should be specific. "Recommended" lives in the label (per rule 2), the why lives in the description.
The tool exposes more than just question text and options. Use them deliberately:
header (required, ≤12 characters) — a short chip label shown alongside the question in the UI. A noun phrase, not a sentence: "Frontend", "Auth method", "Approach". Helps the user scan a batch of questions at a glance.
multiSelect (default false) — set true only when the choices are not mutually exclusive. Single-select fits "What database do you want?" Multi-select fits "Which features should the dashboard include?" Default to single-select; bundling features into one multi-select question is fine, but bundling unrelated decisions still violates rule 1.
preview (optional, single-select only) — a concrete artifact rendered in monospace alongside each option. Use for ASCII mockups of UI layouts, code-snippet variants, configuration examples — anywhere the choice is visual and labels alone don't carry the difference. Don't use previews for plain preference questions where short labels and descriptions suffice.
Four atomic questions in one call, each with a recommended option:
Single focused question:
(Pure clarification — no recommendation makes sense; the user knows where the bug is, you don't.)
Single focused question with an explicit safer default:
/old/. Proceed? → [No, show me the list first (Recommended — verify before destruction), Yes delete them, Cancel]Guides creation, editing, and verification of skills for AI coding agents using test-driven development with subagent scenarios. Use when authoring or debugging skills.
npx claudepluginhub pgatzka/pgatzka-skills