plugins/flow/skills/brainstorming/SKILL.md
Generate 2-4 distinct approaches with trade-off analysis across simplicity, flexibility, performance, effort, and risk, driving collaborative decision-making before implementation. Use when evaluating alternatives before committing to an implementation strategy. Proactively suggest when the team defaults to the first idea without exploring competitors.
npx skillsauth add synaptiai/synapti-marketplace brainstormingInstall 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.
Domain skill for multi-option exploration and collaborative decision-making before implementation.
EXPLORE BEFORE COMMITTING. The cost of choosing wrong is 10x the cost of exploring options.
Every hour spent exploring saves a day of rework from the wrong approach.
Track the brainstorming lifecycle with tasks:
TaskCreate("Clarify goal", "Confirm what, why, who before generating options")
TaskCreate("Check existing patterns", "Search codebase for how similar problems are solved")
TaskCreate("Generate approaches", "Produce 2-4 distinct approaches with pros, cons, effort, risk")
TaskCreate("Compare and recommend", "Build comparison table, highlight trade-offs, recommend")
TaskCreate("User decision", "Present recommendation, get user choice, log decision")
TaskUpdate("Clarify goal", status: "in_progress")
Before generating options, confirm you understand:
Use AskUserQuestion if the goal is ambiguous. Don't guess.
TaskUpdate("Clarify goal", status: "completed")
TaskUpdate("Check existing patterns", status: "in_progress")
Before proposing new approaches, see what the codebase already does:
# How does the project handle similar problems?
grep -r "relevant_pattern" --include="*.{ts,js,py,rb}" -l
git log --oneline --all --grep="related keyword" | head -10
Existing patterns get priority — consistency has value.
TaskUpdate("Check existing patterns", status: "completed")
TaskUpdate("Generate approaches", status: "in_progress")
For each approach, fill out:
| Field | Content | |-------|---------| | Name | Short, memorable label | | Summary | One-line description | | Pros | Bullet list of advantages | | Cons | Bullet list of disadvantages | | Effort | Small / Medium / Large | | Risk | Low / Medium / High |
Rules:
TaskUpdate("Generate approaches", status: "completed")
TaskUpdate("Compare and recommend", status: "in_progress")
Build a comparison table across key dimensions:
| Dimension | Approach A | Approach B | Approach C | |-----------|-----------|-----------|-----------| | Simplicity | | | | | Flexibility | | | | | Performance | | | | | Consistency | | | | | Effort | | | | | Risk | | | |
TaskUpdate("Compare and recommend", status: "completed")
TaskUpdate("User decision", status: "in_progress")
AskUserQuestion for the final decisionTaskUpdate("User decision", status: "completed") after user selects an approach. Use TaskList to confirm the full brainstorming lifecycle completed.
Common dimensions to evaluate (pick the relevant ones):
| Dimension | Tension | |-----------|---------| | Simplicity vs Flexibility | Simple now vs adaptable later | | Speed vs Correctness | Ship fast vs get it right | | Consistency vs Innovation | Follow patterns vs better approach | | Build vs Buy | Custom solution vs existing library | | Coupling vs Convenience | Decoupled modules vs easy implementation | | Explicit vs Implicit | Verbose but clear vs concise but magical |
| Anti-Pattern | Symptom | Fix | |-------------|---------|-----| | Analysis paralysis | >4 options, endless comparison | Cap at 4. Decide with available info. | | False dichotomy | "We can only do A or B" | Challenge the constraint. Usually there's a C. | | Bikeshedding | 30 min debating variable names | Is this decision reversible? If yes, just pick one. | | Anchoring | First option dominates discussion | Present all options before discussing any. | | Groupthink | Everyone agrees immediately | Play devil's advocate. What could go wrong? |
| Excuse | Response | |--------|----------| | "Let's just go with the obvious approach" | Obvious to whom? Explore first, then decide. | | "We don't have time to brainstorm" | You don't have time to rewrite after choosing wrong. | | "I've done this before, I know the best way" | Great. Then documenting why takes 2 minutes. Do it. | | "All approaches are roughly the same" | Then pick the simplest. If they're truly equivalent, simplicity wins. |
tools
Validate a FlowWorkflow YAML at `plugins/flow/workflows/<id>.workflow.yaml` against `schemas/v1/workflow.schema.json` AND cross-reference the referenced skills/agents exist + every Tier 3 action is confirm-gated + no native /goal or /loop dependency is declared. Use when /flow:workflow validate is invoked, when CI runs the workflow schema gates, or when a new workflow is being authored. This skill MUST be consulted because schema validation alone catches shape errors; cross-reference validation catches the silent-correctness failures (typo'd skill name, Tier 3 escape, /goal dependency) that would otherwise ship to users.
tools
Verify UI-facing changes by running a screenshot-analyze-verify loop across configured viewports, with a browser-tool priority cascade (Playwright MCP → Chrome DevTools MCP → CLI fallback → external skill fallback) and bounded iteration. Use after build/runtime verification passes and the diff includes `.tsx`/`.jsx`/`.vue`/`.html`/`.css`/`.scss`/`.svelte` files OR the acceptance criteria mention UI/page/render/display/visual. This skill MUST be consulted because UI changes that pass build and unit tests can still ship blank pages, render-blocking console errors, or broken responsive layouts that no other verification phase catches.
data-ai
Coordinate agent teams for adversarial review (paired skeptic/verifier per facet, challenge round with disposition vocabulary, consolidated findings with confidence) or parallel implementation (task sizing 5-6 per teammate, non-overlapping files). Enforces independent analysis before shared conclusions. Reference only (`disable-model-invocation: true`); loaded only when `agentTeams: true` in settings.
development
Conduct two-stage code review: Stage 1 verifies spec compliance (criterion-to-code mapping), Stage 2 evaluates security, correctness, performance, and maintainability across 6 parallel facets with P1/P2/P3 synthesis and deduplication by file:line. Use when reviewing code changes or pull requests. This skill MUST be consulted because reviewing quality on broken logic is wasted effort, and unmet acceptance criteria must block merge.