.claude/skills/interactive-requirements-gathering/SKILL.md
Structured interactive questionnaire framework for gathering requirements from users. Uses A/B/C/D/E multiple choice patterns with additive vs exclusive question classification.
npx skillsauth add oimiragieo/agent-studio interactive-requirements-gatheringInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
Structured framework for gathering requirements through interactive questionnaires. Based on the Conductor methodology's proven human-in-the-loop patterns.
Before asking ANY question, classify its type:
| Type | Purpose | Phrasing | Example | | ------------- | ------------------------------------- | ----------------------- | -------------------------------- | | Additive | Brainstorming, multiple answers valid | "Select all that apply" | "Which features do you need?" | | Exclusive | Single choice required | No multi-select phrase | "Which framework should we use?" |
All questions MUST follow this structure:
[Question text]
A) [Option A - often recommended, marked with "(Recommended)"]
B) [Option B]
C) [Option C]
D) Type your own answer
E) Auto-generate and continue
CRITICAL: Ask ONE question at a time. Wait for response before next question.
CORRECT:
1. Ask Question 1
2. Wait for response
3. Confirm understanding
4. Ask Question 2
INCORRECT:
1. Ask Questions 1, 2, and 3 together
Announce the section you're working on:
"I'll now help you define [section name]. I'll ask a few questions to understand your needs."
For each question:
Option D (Type your own):
Option E (Auto-generate):
CRITICAL: Use ONLY the user's selected answers as source of truth.
CORRECT:
- User selected "OAuth 2.0" -> Generate OAuth implementation details
INCORRECT:
- Include Option A, B, C text that wasn't selected
- Include question text in generated content
After generating content:
"I've drafted [document name]. Please review:"
[Content preview]
What would you like to do?
A) Approve - proceed to next step
B) Suggest Changes - tell me what to modify
Please respond with A or B.
Loop until approved or user provides alternative direction.
What are the primary goals of this product? (Select all that apply)
A) Improve user productivity
B) Reduce operational costs
C) Enhance customer experience
D) Type your own answer
E) Auto-generate and continue
Which database should we use?
A) PostgreSQL (Recommended) - Best for relational data with complex queries
B) MongoDB - Document store for flexible schemas
C) SQLite - Lightweight for small applications
D) Type your own answer
E) Auto-generate and continue
Which authentication methods should be supported? (Select all that apply)
A) Email/Password
B) OAuth (Google, GitHub)
C) Magic Links
D) Type your own answer
E) Auto-generate and continue
When using the AskUserQuestion tool, map to this framework:
AskUserQuestion({
questions: [
{
header: 'Database',
question: 'Which database should we use?',
multiSelect: false, // Exclusive question
options: [
{ label: 'PostgreSQL (Recommended)', description: 'Best for relational data' },
{ label: 'MongoDB', description: 'Document store for flexible schemas' },
{ label: 'SQLite', description: 'Lightweight for small apps' },
],
},
],
});
For multi-step questionnaires, save progress:
{
"last_successful_step": "2.1_product_guide",
"answers": {
"product_type": "SaaS",
"target_users": ["developers", "teams"]
}
}
This enables resuming interrupted workflows.
AGENT: "I'll help you define the product vision. First question:"
"Who are the primary users of this product?"
A) Developers
B) Business users
C) End consumers
D) Type your own answer
E) Auto-generate and continue
USER: A, B
AGENT: "Got it - targeting developers and business users. Next question:"
"What problem does this product solve?"
A) Streamlines workflows
B) Reduces manual work
C) Improves collaboration
D) Type your own answer
E) Auto-generate and continue
USER: D - "Automates code review feedback"
AGENT: "Understood - the product automates code review feedback for developers and business users. Let me generate the product vision..."
| Anti-Pattern | Why It Fails | Correct Approach |
| -------------------------------------------------------- | ---------------------------------------------------------------------------------------- | ------------------------------------------------------------------------ |
| Presenting multiple questions at once | Ambiguous responses; breaks sequential state; users answer partially | Ask one question; wait for answer; then ask the next |
| Using option text verbatim in generated docs | Docs include options the user didn't choose; inaccurate requirements | Use only the selected answer values, not the full option list |
| Skipping question classification (Additive vs Exclusive) | Multi-select question treated as single choice or vice versa; contradictory requirements | Classify first; use multiSelect: true for Additive questions |
| Proceeding without confirmation | Generated content doesn't match user intent; rework required | Always present output for review; provide Approve / Suggest Changes loop |
| No custom input option | User's context doesn't fit any option; session stalls or forces wrong choice | Always include "D) Type your own" in every question |
project-onboarding - Use this framework during project setupcontext-driven-development - Generate context artifacts from answersbrainstorming - Alternative for open-ended explorationBefore starting:
Read .claude/context/memory/learnings.md
After completing:
.claude/context/memory/learnings.md.claude/context/memory/issues.md.claude/context/memory/decisions.mdASSUME INTERRUPTION: If it's not in memory, it didn't happen.
tools
Comprehensive biosignal processing toolkit for analyzing physiological data including ECG, EEG, EDA, RSP, PPG, EMG, and EOG signals. Use this skill when processing cardiovascular signals, brain activity, electrodermal responses, respiratory patterns, muscle activity, or eye movements. Applicable for heart rate variability analysis, event-related potentials, complexity measures, autonomic nervous system assessment, psychophysiology research, and multi-modal physiological signal integration.
tools
Comprehensive toolkit for creating, analyzing, and visualizing complex networks and graphs in Python. Use when working with network/graph data structures, analyzing relationships between entities, computing graph algorithms (shortest paths, centrality, clustering), detecting communities, generating synthetic networks, or visualizing network topologies. Applicable to social networks, biological networks, transportation systems, citation networks, and any domain involving pairwise relationships.
data-ai
Molecular featurization for ML (100+ featurizers). ECFP, MACCS, descriptors, pretrained models (ChemBERTa), convert SMILES to features, for QSAR and molecular ML.
development
Run Python code in the cloud with serverless containers, GPUs, and autoscaling. Use when deploying ML models, running batch processing jobs, scheduling compute-intensive tasks, or serving APIs that require GPU acceleration or dynamic scaling.