Skip to content
interactive-requirements-gathering logo

Interactive Requirements Gathering

interactive-requirements-gathering

Structured interactive questionnaire framework for gathering requirements from users. Uses A/B/C/D/E multiple choice patterns with additive vs exclusive question classification.

oimiragieo/agent-studio0installs43stars

SKILL.md

Full skill instructions

Interactive Requirements Gathering

Structured framework for gathering requirements through interactive questionnaires. Based on the Conductor methodology's proven human-in-the-loop patterns.

When to Use

  • Setting up new projects
  • Defining product requirements
  • Gathering feature specifications
  • Onboarding users to new workflows
  • Any task requiring structured user input

Core Principles

1. Question Classification

Before asking ANY question, classify its type:

TypePurposePhrasingExample
AdditiveBrainstorming, multiple answers valid"Select all that apply""Which features do you need?"
ExclusiveSingle choice requiredNo multi-select phrase"Which framework should we use?"

2. Question Structure

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

3. Sequential Questioning

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

Questionnaire Workflow

Step 1: Introduction

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."

Step 2: Sequential Questions

For each question:

  1. Classify: Is this Additive or Exclusive?
  2. Formulate: Create clear question with options
  3. Present: Show options in A/​B/​C/​D/​E format
  4. Wait: Do NOT proceed without response
  5. Confirm: Summarize understanding before continuing

Step 3: Handle Special Options

Option D (Type your own):

  • Accept user's custom input
  • Confirm the custom response
  • Continue to next question

Option E (Auto-generate):

  • Stop asking questions for this section
  • Use best judgment based on previous answers
  • Generate content and present for review

Step 4: Generate Content

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

Step 5: User Confirmation Loop

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.

Question Patterns

Product Vision Questions (Additive)

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

Technology Selection Questions (Exclusive)

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

Feature Scoping Questions (Additive)

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

Integration with AskUserQuestion Tool

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' },
      ],
    },
  ],
});

State Persistence

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.

Example Session

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-Patterns

Do NOT

  • Ask multiple questions at once
  • Include unselected options in generated content
  • Skip confirmation steps
  • Assume answers without asking
  • Use technical jargon in options without explanation

Do

  • One question at a time
  • Clear, concise option descriptions
  • Summarize understanding frequently
  • Include escape hatches (D, E options)
  • Respect user's custom inputs

Iron Laws

  1. ALWAYS ask exactly one question at a time and wait for a response before asking the next — presenting multiple questions simultaneously overwhelms users, produces ambiguous answers, and breaks the sequential state machine.
  2. NEVER use unselected option text in generated content — generated output must be built from the user's actual selected answers, not from the full list of options presented.
  3. ALWAYS classify each question as Additive (multi-select) or Exclusive (single choice) before asking — misclassification produces contradictory answers (user selects "B and D" when only one was valid).
  4. NEVER skip the confirmation step after generating content — presenting content without approval ignores refinements the user needed; always loop until the user explicitly approves.
  5. ALWAYS include a "Type your own" escape hatch option in every question — constrained option sets fail when the user's context doesn't fit any presented option; custom input prevents stalled workflows.

Anti-Patterns

Anti-PatternWhy It FailsCorrect Approach
Presenting multiple questions at onceAmbiguous responses; breaks sequential state; users answer partiallyAsk one question; wait for answer; then ask the next
Using option text verbatim in generated docsDocs include options the user didn't choose; inaccurate requirementsUse 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 requirementsClassify first; use multiSelect: true for Additive questions
Proceeding without confirmationGenerated content doesn't match user intent; rework requiredAlways present output for review; provide Approve / Suggest Changes loop
No custom input optionUser's context doesn't fit any option; session stalls or forces wrong choiceAlways include "D) Type your own" in every question

Related Skills

  • project-onboarding - Use this framework during project setup
  • context-driven-development - Generate context artifacts from answers
  • brainstorming - Alternative for open-ended exploration

Memory Protocol (MANDATORY)

Before starting: Read .claude/​context/​memory/​learnings.md

After completing:

  • New pattern discovered -> .claude/​context/​memory/​learnings.md
  • Issue encountered -> .claude/​context/​memory/​issues.md
  • Decision made -> .claude/​context/​memory/​decisions.md

ASSUME INTERRUPTION: If it's not in memory, it didn't happen.

More skills from oimiragieo

cloud-devops-expert logo
oimiragieo/agent-studio

cloud-devops-expert

Cloud and DevOps expert including AWS, GCP, Azure, and Terraform

43 0
View
xlsx logo
oimiragieo/agent-studio

xlsx

Spreadsheet toolkit (.xlsx/.csv). Create/edit with formulas/formatting, analyze data, visualization, recalculate formulas, for spreadsheet processing and analysis.

43 0
View
project-analyzer logo
oimiragieo/agent-studio

project-analyzer

Automated brownfield codebase analysis with weighted keyword scoring, three-stream analysis, and design pattern recognition. Detects project type, frameworks, dependencies, architecture patterns, and generates comprehensive project profile.

43 0
View
readme logo
oimiragieo/agent-studio

readme

Use when creating, updating, or generating README and documentation files for projects and libraries

43 0
View
scientific-writing logo
oimiragieo/agent-studio

scientific-writing

Core skill for the deep research and writing tool. Write scientific manuscripts in full paragraphs (never bullet points). Use two-stage process with (1) section outlines with key points using research-lookup then (2) convert to flowing prose. IMRAD structure, citations (APA/AMA/Vancouver), figure...

43 0
View
android-expert logo
oimiragieo/agent-studio

android-expert

Comprehensive Android development expert covering Jetpack Compose, Kotlin coroutines/Flow, Architecture Components, Hilt DI, Navigation, testing, performance, Material Design 3, and modern Android patterns (MVI, Clean Architecture).

43 0
View
biorxiv-database logo
oimiragieo/agent-studio

biorxiv-database

Efficient database search tool for bioRxiv preprint server. Use this skill when searching for life sciences preprints by keywords, authors, date ranges, or categories, retrieving paper metadata, downloading PDFs, or conducting literature reviews.

43 0
View
omega-gemini-cli logo
oimiragieo/agent-studio

omega-gemini-cli

Use when the user wants to use Google Gemini for analysis, large files or codebases, sandbox execution, or brainstorming. Uses headless Gemini CLI scripts (no MCP). Triggers on "use Gemini", "analyze with Gemini", "large file", "sandbox", "brainstorm with Gemini".

43 0
View
gtars logo
oimiragieo/agent-studio

gtars

High-performance toolkit for genomic interval analysis in Rust with Python bindings. Use when working with genomic regions, BED files, coverage tracks, overlap detection, tokenization for ML models, or fragment analysis in computational genomics and machine learning applications.

43 0
View
service-class-conventions logo
oimiragieo/agent-studio

service-class-conventions

Defines the structure and implementation of service classes, enforcing the use of interfaces, ServiceImpl classes, DTOs for data transfer, and transactional management.

43 0
View
diffdock logo
oimiragieo/agent-studio

diffdock

Diffusion-based molecular docking. Predict protein-ligand binding poses from PDB/SMILES, confidence scores, virtual screening, for structure-based drug design. Not for affinity prediction.

43 0
View
skill-discovery logo
oimiragieo/agent-studio

skill-discovery

How agents discover and use skills. Use to understand skill invocation protocol.

43 0
View

Popular AI tools

Kaiber logo
Video

Kaiber

Generate, edit, and beat-sync AI video with leading models in one workspace.

Paid
View
Vimcal logo
Productivity

Vimcal

The world's fastest calendar for remote work

Free
View

Transform Your Design with AI Designer by ImgCreator.ai

Freemium
View
Akool AI logo
Content & writing

Akool AI

Revolutionizing Video Production with AI-Powered Creativity

Paid
View

Extend an image past the frame and let AI fill the new aspect ratio.

Freemium
View
StarByFace logo
Security

StarByFace

Discover your celebrity doppelgänger with StarByFace!

Free
View
C

ChainClarity explains 700+ crypto whitepapers in plain English, with layered summaries, comparisons, research tools, alerts, and a $4.99 Pro plan.

Freemium
View
Opus Clip logo
Coding & apps

Opus Clip

Opus.ai: Revolutionize Your Web Experience

Free
View