From ald-skills
Expert Socratic discovery skill for exploring ideas, architecture decisions, and technical design before writing any code. Use this skill — proactively and always first — when requirements are vague, when the user is debating between technical approaches, when the problem is unclear, or when a design decision could have significant architectural consequences. Triggers on: "should we use X or Y", "help me think through", "I'm not sure how to approach this", "what's the best architecture for", "trade-offs between", "design before I code", "let's think through this", "I have an idea", "how should I structure", "help me design", "I want to build X but not sure how", "what approach would you recommend", "is this the right way to". Produces a validated design doc with 2-3 implementation options, trade-offs, and a recommendation. Always use before planning when the approach is not yet locked.
How this skill is triggered — by the user, by Claude, or both
Slash command
/ald-skills:brainstormingThe summary Claude sees in its skill listing — used to decide when to auto-load this skill
The most expensive code to write is the wrong code. Brainstorming exists to prevent that by forcing clarity on purpose, constraints, and design before any implementation begins. A 20-minute brainstorm saves hours of refactoring.
The most expensive code to write is the wrong code. Brainstorming exists to prevent that by forcing clarity on purpose, constraints, and design before any implementation begins. A 20-minute brainstorm saves hours of refactoring.
The Socratic method works here because users often don't know what they want — they know what they're trying to achieve. Your job is to ask questions that surface the real requirements hiding behind the initial idea.
Read relevant files, recent commits, and existing docs before asking a single question. Users find it frustrating to explain context that's already in the codebase. The goal is to arrive at the first question already informed.
Ask one question at a time. Each question should unlock the next. Good questions:
Prefer multiple-choice questions over open-ended ones. "Do you prefer A or B?" gets faster, more reliable answers than "How should we handle this?"
Once you understand the problem well enough, propose 2-3 distinct approaches with explicit trade-offs. Don't hedge — lead with your recommendation and explain why.
Option A (Recommended): [description]
- Pros: [2-3 concrete benefits]
- Cons: [honest limitations]
- Best when: [specific context where this wins]
Option B: [description]
- Pros: [2-3 concrete benefits]
- Cons: [honest limitations]
- Best when: [specific context where this wins]
Option C: [description]
- [same format]
Present the design in small chunks (200-300 words each). After each chunk, check: "Does this look right so far?" Don't move to the next section until the current one is approved.
Cover in order:
Save the validated design to docs/designs/YYYY-MM-DD-<topic>.md. Once the design is locked, suggest moving to the planning skill for atomic task breakdown.
A completed brainstorm leaves the user with:
references/socratic-questions.md — Question bank organized by problem type (architecture, data model, API design, UI/UX, performance)references/architecture-patterns.md — Common trade-off frameworks (monolith vs microservices, sync vs async, SQL vs NoSQL, client-side vs server-side)Read the relevant reference file when you need deeper question frameworks or trade-off analysis for a specific domain.
npx claudepluginhub alunadev/ald-skillsGuides collaborative design exploration before implementation: explores context, asks clarifying questions, proposes approaches, and writes a design doc for user approval.
Creates structured, bite-sized implementation plans from specs or requirements before writing code. Useful for breaking down multi-step tasks into testable steps with file structure and task boundaries.
Implements work from a spec or tickets using TDD at agreed seams, with regular typechecking and test runs, followed by code review.