fix: mandate AskUserQuestion for all exploration questions
All questioning workflows now require AskUserQuestion tool for every question, not just decision gates. Inline text questions are prohibited. Updated: questioning.md, new-project.md, discuss-phase.md, discuss-milestone.md, and their workflow files. 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
This commit is contained in:
@@ -27,12 +27,14 @@ Output: Context gathered, then routes to /gsd:new-milestone
|
||||
<process>
|
||||
1. Verify previous milestone complete (or acknowledge active milestone)
|
||||
2. Present context from previous milestone (accomplishments, phase count)
|
||||
3. Follow discuss-milestone.md workflow:
|
||||
- Ask: "What do you want to add, improve, or fix?"
|
||||
- Dig into features they mention
|
||||
- Help them articulate what matters most
|
||||
- Present decision gate (ready / ask more / let me add context)
|
||||
3. Follow discuss-milestone.md workflow with **ALL questions using AskUserQuestion**:
|
||||
- Use AskUserQuestion: "What do you want to add, improve, or fix?" with feature categories
|
||||
- Use AskUserQuestion to dig into features they mention
|
||||
- Use AskUserQuestion to help them articulate what matters most
|
||||
- Use AskUserQuestion for decision gate (ready / ask more / let me add context)
|
||||
4. Hand off to /gsd:new-milestone with gathered context
|
||||
|
||||
**CRITICAL: ALL questions use AskUserQuestion. Never ask inline text questions.**
|
||||
</process>
|
||||
|
||||
<success_criteria>
|
||||
|
||||
@@ -30,17 +30,19 @@ Phase number: $ARGUMENTS (required)
|
||||
1. Validate phase number argument (error if missing or invalid)
|
||||
2. Check if phase exists in roadmap
|
||||
3. Check if CONTEXT.md already exists (offer to update if yes)
|
||||
4. Follow discuss-phase.md workflow:
|
||||
4. Follow discuss-phase.md workflow with **ALL questions using AskUserQuestion**:
|
||||
- Present phase from roadmap
|
||||
- Ask: "How do you imagine this working?"
|
||||
- Follow their thread — dig into what excites them
|
||||
- Sharpen the core — what's essential for THIS phase
|
||||
- Find boundaries — what's explicitly out of scope
|
||||
- Present decision gate (ready / ask more / let me add context)
|
||||
- Use AskUserQuestion: "How do you imagine this working?" with interpretation options
|
||||
- Use AskUserQuestion to follow their thread — probe what excites them
|
||||
- Use AskUserQuestion to sharpen the core — what's essential for THIS phase
|
||||
- Use AskUserQuestion to find boundaries — what's explicitly out of scope
|
||||
- Use AskUserQuestion for decision gate (ready / ask more / let me add context)
|
||||
- Create CONTEXT.md capturing their vision
|
||||
5. Offer next steps (research or plan the phase)
|
||||
|
||||
CRITICAL — User is the visionary, you are the builder:
|
||||
**CRITICAL: ALL questions use AskUserQuestion. Never ask inline text questions.**
|
||||
|
||||
User is the visionary, you are the builder:
|
||||
- Ask about vision, feel, essential outcomes
|
||||
- DON'T ask about technical risks (you figure those out)
|
||||
- DON'T ask about codebase patterns (you read the code)
|
||||
|
||||
@@ -43,18 +43,46 @@ Silent setup - execute before any user output:
|
||||
</step>
|
||||
|
||||
<step name="question">
|
||||
Start: "What do you want to build?"
|
||||
**CRITICAL: ALL questions use AskUserQuestion. Never ask inline text questions.**
|
||||
|
||||
Let them talk. Then follow the conversation arc from `questioning.md`:
|
||||
1. **Follow the thread** — dig into what they said, what excites them
|
||||
2. **Sharpen the core** — essential vs nice-to-have
|
||||
3. **Find boundaries** — what is it NOT
|
||||
4. **Ground in reality** — only constraints that actually exist
|
||||
**1. Open:**
|
||||
|
||||
Be a thinking partner, not an interviewer. Help them discover and articulate their vision.
|
||||
Use AskUserQuestion:
|
||||
- header: "Vision"
|
||||
- question: "What do you want to build?"
|
||||
- options: Contextual options if you have any hints, otherwise ["New app/tool", "Feature for existing project", "Let me describe it"]
|
||||
|
||||
When you feel you understand it, use AskUserQuestion:
|
||||
**2. Follow the thread:**
|
||||
|
||||
Based on their response, use AskUserQuestion with options that probe what they mentioned:
|
||||
- header: "[Topic they mentioned]"
|
||||
- question: "You mentioned [X] — what would that look like?"
|
||||
- options: 2-3 interpretations + "Something else"
|
||||
|
||||
**3. Sharpen the core:**
|
||||
|
||||
Use AskUserQuestion:
|
||||
- header: "Core"
|
||||
- question: "If you could only nail one thing, what would it be?"
|
||||
- options: Key aspects they've mentioned + "All equally important" + "Something else"
|
||||
|
||||
**4. Find boundaries:**
|
||||
|
||||
Use AskUserQuestion:
|
||||
- header: "Scope"
|
||||
- question: "What's explicitly NOT in v1?"
|
||||
- options: Things that might be tempting + "Nothing specific" + "Let me list them"
|
||||
|
||||
**5. Ground in reality:**
|
||||
|
||||
Use AskUserQuestion:
|
||||
- header: "Constraints"
|
||||
- question: "Any hard constraints?"
|
||||
- options: Relevant constraint types + "None" + "Yes, let me explain"
|
||||
|
||||
**6. Decision gate:**
|
||||
|
||||
Use AskUserQuestion:
|
||||
- header: "Ready?"
|
||||
- question: "Ready to create PROJECT.md, or explore more?"
|
||||
- options (ALL THREE REQUIRED):
|
||||
@@ -62,7 +90,8 @@ When you feel you understand it, use AskUserQuestion:
|
||||
- "Ask more questions" - I'll dig deeper
|
||||
- "Let me add context" - You have more to share
|
||||
|
||||
If "Ask more questions" → check coverage gaps from `questioning.md` → ask naturally → return to gate.
|
||||
If "Ask more questions" → check coverage gaps from `questioning.md` → return to step 2.
|
||||
If "Let me add context" → receive input via their response → return to step 2.
|
||||
Loop until "Create PROJECT.md" selected.
|
||||
</step>
|
||||
|
||||
|
||||
Reference in New Issue
Block a user