Skip to content
Back to skills

Brainstorming

ASecurity

Socratic design refinement before implementation — challenges assumptions, surfaces alternatives, identifies risks before code is written

  • 40 stars
  • 0 votes
  • 0 copies
  • 0 views
  • Added September 6, 2026
developmentrustgobashawstestinggitdocumentation

Security analysis

A100/100

Pro scans all 10 files and shows the line behind each finding

Scanned September 6, 2026

npx -y skills add oimiragieo/agent-studio --skill brainstorming --agent claude-code

Installs into .claude/skills of the current project.

Are you the author of Brainstorming?

Add the live security badge to your README. It updates with every re-scan.

Security grade badge for Brainstorming
[![Security: A — Skills Directory](https://www.skillsdirectory.com/api/skills/oimiragieo-brainstorming/badge)](https://www.skillsdirectory.com/skills/oimiragieo-brainstorming)

More formats (shields.io, HTML) on the badges page. Keep it an A: scan every change in CI with Pro.

Download with Pro
SKILL.md
---
name: brainstorming
description: Socratic design refinement before implementation — challenges assumptions, surfaces alternatives, identifies risks before code is written
version: 1.1.0
model: sonnet
invoked_by: both
user_invocable: true
tools: [Read, Write, Bash]
agents: [developer, planner, architect]
category: 'Planning & Architecture'
tags: [brainstorming, design, planning, ideation, socratic]

verified: true
lastVerifiedAt: 2026-02-22T08:50:27.367Z
best_practices:
  - Ask one question at a time
  - Prefer multiple choice over open-ended
  - Enforce YAGNI
  - Explore 2-3 alternative approaches
error_handling: graceful
streaming: supported
source: builtin
trust_score: 100
provenance_sha: 4d97e8ca56ab52b0
---

# 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

## After the Design

**Documentation:**

- Write the validated design to `docs/plans/YYYY-MM-DD-<topic>-design.md`
- Use context-compressor skill if available for efficient documentation
- Commit the design document to git

**Implementation (if continuing):**

- Ask: "Ready to set up for implementation?"
- Use writing-plans skill to create detailed implementation plan

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

## Iron Laws

1. **NEVER propose a single solution** — always surface 2–3 distinct approaches with trade-offs; a single solution forecloses exploration and anchors the user prematurely.
2. **ALWAYS apply YAGNI (You Ain't Gonna Need It)** — challenge every feature or complexity not directly required by the stated problem; unneeded features become permanent maintenance debt.
3. **NEVER ask multiple questions in one response** — one focused question at a time maintains dialogue flow; multiple questions cause partial answers and leave the most important question unanswered.
4. **ALWAYS prefer multiple-choice over open-ended questions** — specific options reduce cognitive load; open-ended questions require the user to invent answers rather than evaluate them.
5. **NEVER proceed to implementation details until design decisions are confirmed** — premature implementation locks in unvalidated assumptions; confirm the "what" and "why" before the "how".

## Anti-Patterns

| Anti-Pattern                            | Why It Fails                                       | Correct Approach                                        |
| --------------------------------------- | -------------------------------------------------- | ------------------------------------------------------- |
| Proposing only one solution             | Anchors user; forecloses better alternatives       | Always offer 2-3 approaches with explicit trade-offs    |
| Accepting first requirement as complete | First articulation rarely captures all constraints | Ask at least one clarifying question about scope        |
| Asking 3+ questions at once             | User answers the easy ones; skips the hard ones    | One question per response; wait for answer              |
| Jumping to implementation               | Design flaws found late are expensive to fix       | Confirm design decisions before writing code            |
| Skipping YAGNI challenge                | Unneeded features accumulate as tech debt          | Explicitly challenge each feature not strictly required |

## Memory Protocol (MANDATORY)

**Before starting:**
Read `.claude/context/memory/learnings.md`

**After completing:**

- New pattern -> `.claude/context/memory/learnings.md`
- Issue found -> `.claude/context/memory/issues.md`
- Decision made -> `.claude/context/memory/decisions.md`

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

Files in this skill

  • SKILL.md5.2 KB
  • commands/brainstorming.md113 B
  • hooks/post-execute.cjs304 B
  • hooks/pre-execute.cjs421 B
  • references/research-requirements.md416 B
  • rules/brainstorming.md383 B
  • schemas/input.schema.json263 B
  • schemas/output.schema.json624 B
  • scripts/main.cjs557 B
  • templates/implementation-template.md187 B

Attribution

Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.

Comments

Loading comments…