brainstorming

viktorvan's avatarfrom viktorvan

You MUST use this before any creative work - creating features, building components, adding functionality, or modifying behavior. Explores user intent, requirements and design before implementation.

⭐0stars🔀0forks📁View on GitHub🕐Updated Jan 2, 2026

When & Why to Use This Skill

This Claude skill facilitates the transition from raw ideas to comprehensive technical designs and specifications. By engaging in a structured, collaborative dialogue, it helps developers and designers explore user intent, evaluate multiple architectural approaches, and refine project requirements before implementation begins. It ensures a lean development process by adhering to YAGNI principles and validating designs incrementally to prevent costly mid-project pivots.

Use Cases

  • New Feature Planning: Defining the architecture, components, and data flow for a new software module before writing any code.
  • Requirement Refinement: Clarifying ambiguous project goals through iterative questioning and multiple-choice options to align stakeholder intent with technical execution.
  • Technical Trade-off Analysis: Proposing and comparing 2-3 different implementation approaches to identify the most efficient and scalable solution for a specific problem.
  • Design Validation: Breaking down complex system designs into manageable sections (200-300 words) for incremental review and feedback to ensure accuracy and consensus.
namebrainstorming
description"You MUST use this before any creative work - creating features, building components, adding functionality, or modifying behavior. Explores user intent, requirements and design before implementation."

Brainstorming Ideas Into Designs

Overview

Help turn ideas into fully formed designs and specs through natural collaborative dialogue.

Start by understanding the current project context, then ask questions one at a time to refine the idea. Once you understand what you're building, present the design in small sections (200-300 words), checking after each section whether it looks right so far.

The Process

Understanding the idea:

  • Check out the current project state first (files, docs, recent commits)
  • Ask questions one at a time to refine the idea
  • Prefer multiple choice questions when possible, but open-ended is fine too
  • Only one question per message - if a topic needs more exploration, break it into multiple questions
  • Focus on understanding: purpose, constraints, success criteria

Exploring approaches:

  • Propose 2-3 different approaches with trade-offs
  • Present options conversationally with your recommendation and reasoning
  • Lead with your recommended option and explain why

Presenting the design:

  • Once you believe you understand what you're building, present the design
  • Break it into sections of 200-300 words
  • Ask after each section whether it looks right so far
  • Cover: architecture, components, data flow, error handling, testing
  • Be ready to go back and clarify if something doesn't make sense

Key Principles

  • One question at a time - Don't overwhelm with multiple questions
  • Multiple choice preferred - Easier to answer than open-ended when possible
  • YAGNI ruthlessly - Remove unnecessary features from all designs
  • Explore alternatives - Always propose 2-3 approaches before settling
  • Incremental validation - Present design in sections, validate each
  • Be flexible - Go back and clarify when something doesn't make sense