Ask User Question
Overview
Run a discovery-driven interview that asks high-value, non-obvious questions and waits for answers before moving forward.
Interview Workflow
- Explore before asking.
- Inspect the artifact and surrounding context first (codebase, spec, constraints, prior decisions).
- Derive likely decision points from real context; do not ask blind questions.
- Identify critical decisions.
- Prioritize choices that impact architecture, scope, compliance, or rework risk.
- Delay low-impact implementation details until direction is clear.
- Design structured questions.
- Ask one question at a time by default.
- Provide 2-4 mutually exclusive options with tradeoffs.
- Put the recommended option first and label it
(Recommended).
- Ask and wait.
- Use the ask-user tool when available.
- Do not continue implementation/planning until the user answers, defers, or declines.
- Iterate until complete.
- Convert each answer into explicit decisions/assumptions.
- Ask the next highest-risk question until completion criteria pass.
Question Design Rules
- Keep headers short (12 characters or fewer).
- Ground every question in discovered context and unresolved risk.
- Make options concrete and decision-ready, not vague.
- Include one sentence per option explaining impact/tradeoff.
- Prefer single-question turns; batch only when latency matters and questions are independent.
- Challenge ambiguous terms with measurable prompts (for example: p95 latency, max steps, error budget).
Ask-User Tool Contract
When a dedicated question tool is available, use this shape:
question: direct question with minimal context
header: short tag (max 12 chars)
options: 2-4 exclusive choices
- Each option has:
label: short choice name
description: one-sentence impact/tradeoff
multiSelect: false unless multiple answers can legitimately apply
If the tool is unavailable, present the same structure in markdown and ask the user to reply with one option label or Other plus details.
Coverage Areas
Ensure each area is either decided or explicitly deferred with reason:
- Product intent and measurable success
- Primary users and critical journeys
- Scope boundaries and phased delivery
- Architecture and dependency strategy
- Data model, privacy, security, and compliance
- Reliability, failure behavior, and rollback
- Performance, scale assumptions, and limits
- UX states, accessibility, and edge-case behavior
- Testing strategy and acceptance criteria
- Ownership, operations, and maintenance model
- Tradeoffs, rejected alternatives, and rationale
Interview State Tracking
After each answer, maintain:
Decided: decisions the user committed to
Assumed: temporary assumptions pending confirmation
Open: unresolved questions ordered by risk
Next: next question candidate with reason
Completion Criteria
Stop interviewing only when all are true:
- No high-risk open decisions remain.
- All coverage areas are decided or deferred with rationale.
- Remaining unknowns are low risk and time-bounded.
- A builder can proceed without guessing core behavior.
Output Contract
Return:
- Interview summary
- Decisions captured
- Assumptions still active
- Open questions (if any)
- Recommended next question (if not complete)
1---2name: ask-user-question3description: Run a structured requirements interview to gather missing decisions, constraints, risks, and tradeoffs one question at a time using an ask-user tool pattern. Use when the user asks to be interviewed, when requirements/specs/plans are ambiguous, or when Codex needs guided, option-based questioning before planning or implementation.4---56# Ask User Question78## Overview910Run a discovery-driven interview that asks high-value, non-obvious questions and waits for answers before moving forward.1112## Interview Workflow13141. Explore before asking.15- Inspect the artifact and surrounding context first (codebase, spec, constraints, prior decisions).16- Derive likely decision points from real context; do not ask blind questions.172. Identify critical decisions.18- Prioritize choices that impact architecture, scope, compliance, or rework risk.19- Delay low-impact implementation details until direction is clear.203. Design structured questions.21- Ask one question at a time by default.22- Provide 2-4 mutually exclusive options with tradeoffs.23- Put the recommended option first and label it `(Recommended)`.244. Ask and wait.25- Use the ask-user tool when available.26- Do not continue implementation/planning until the user answers, defers, or declines.275. Iterate until complete.28- Convert each answer into explicit decisions/assumptions.29- Ask the next highest-risk question until completion criteria pass.3031## Question Design Rules3233- Keep headers short (12 characters or fewer).34- Ground every question in discovered context and unresolved risk.35- Make options concrete and decision-ready, not vague.36- Include one sentence per option explaining impact/tradeoff.37- Prefer single-question turns; batch only when latency matters and questions are independent.38- Challenge ambiguous terms with measurable prompts (for example: p95 latency, max steps, error budget).3940## Ask-User Tool Contract4142When a dedicated question tool is available, use this shape:4344- `question`: direct question with minimal context45- `header`: short tag (max 12 chars)46- `options`: 2-4 exclusive choices47- Each option has:48- `label`: short choice name49- `description`: one-sentence impact/tradeoff50- `multiSelect`: `false` unless multiple answers can legitimately apply5152If the tool is unavailable, present the same structure in markdown and ask the user to reply with one option label or `Other` plus details.5354## Coverage Areas5556Ensure each area is either decided or explicitly deferred with reason:5758- Product intent and measurable success59- Primary users and critical journeys60- Scope boundaries and phased delivery61- Architecture and dependency strategy62- Data model, privacy, security, and compliance63- Reliability, failure behavior, and rollback64- Performance, scale assumptions, and limits65- UX states, accessibility, and edge-case behavior66- Testing strategy and acceptance criteria67- Ownership, operations, and maintenance model68- Tradeoffs, rejected alternatives, and rationale6970## Interview State Tracking7172After each answer, maintain:7374- `Decided`: decisions the user committed to75- `Assumed`: temporary assumptions pending confirmation76- `Open`: unresolved questions ordered by risk77- `Next`: next question candidate with reason7879## Completion Criteria8081Stop interviewing only when all are true:8283- No high-risk open decisions remain.84- All coverage areas are decided or deferred with rationale.85- Remaining unknowns are low risk and time-bounded.86- A builder can proceed without guessing core behavior.8788## Output Contract8990Return:9192- Interview summary93- Decisions captured94- Assumptions still active95- Open questions (if any)96- Recommended next question (if not complete)