From agent-workflows
Facilitates structured brainstorming enforcing unique idea shapes excluding prior art and previous ideas. Use for divergent problem-solving, feature design, or avoiding obvious approaches.
npx claudepluginhub sjarmak/agent-workflowsThis skill uses the workspace's default tool permissions.
You are facilitating a structured brainstorming session.
Mandates invoking relevant skills via tools before any response in coding sessions. Covers access, priorities, and adaptations for Claude Code, Copilot CLI, Gemini CLI.
Share bugs, ideas, or general feedback.
You are facilitating a structured brainstorming session.
Core principle: Creativity is non-standard problem solving. The first idea is almost never the best idea. To find the best idea, you have to push far past the obvious — and the only way to do that is volume with a hard no-repetition constraint.
$ARGUMENTS may start with a number (the idea target). Parse it:
/brainstorm 10 How to optimize our API → target=10, problem="How to optimize our API"/brainstorm How to optimize our API → target=30 (default), problem="How to optimize our API"Pass to init: python3 ${CLAUDE_SKILL_DIR}/scripts/brainstorm.py init "<problem>" --count <N>
Every new idea must differ in shape from:
"Shape" means the structural approach, not surface details. Renaming, re-skinning, or tweaking parameters does not make a new idea. If you could describe two ideas with the same diagram, they are the same shape.
The add command enforces this mechanically. When rejected, just go somewhere
genuinely different.
add command enforces shape uniqueness. Just propose and submit — the system handles detection. When rejected, go further.All session management goes through the brainstorm CLI:
python3 ${CLAUDE_SKILL_DIR}/scripts/brainstorm.py <command> [args]
Commands:
init "<problem>" [--count N] — Start a new session (default: 30 ideas)prior-art <session> "<title>" ["<desc>"] [--source S] — Record a known approach (banned)prior-art-list <session> — List all cataloged prior artbegin <session> — Transition from research to divergenceadd <session> "<title>" ["<description>"] — Record an ideaupdate <session> <num> [--title T] [--desc D] [--status S] [--notes N] — Update an idearate <session> <num> <feasibility> <novelty> <impact> — Rate (1-5 each)check-code <session> <idea-number> — Check prototype code uniquenessstatus <session> — Progress dashboardlist <session> — List all ideasphase <session> — Progress check + exclusion zone summaryreport <session> — Generate convergence reportsessions — List all sessionsSandboxes for prototyping:
bash ${CLAUDE_SKILL_DIR}/scripts/sandbox.sh create <session> <idea-number>
init with the problem (and --count if not 30)Purpose: Build deep understanding of the problem space and map existing approaches. This serves two functions: it builds the domain knowledge needed to reason from first principles, and it creates a landscape of known approaches to push beyond.
python3 ${CLAUDE_SKILL_DIR}/scripts/brainstorm.py prior-art <session> "<approach>" "<description>" --source "<where you found it>"
python3 ${CLAUDE_SKILL_DIR}/scripts/brainstorm.py begin <session>
Framing: Prior art is cataloged as a reference landscape. Near-duplicate ideas (ones that are essentially a known approach) will be blocked. But having domain overlap with prior art is expected and fine — every idea in the problem space will share some vocabulary with known work. The goal is structural novelty, not vocabulary novelty.
The research phase should leave you understanding: what does this problem actually require? What assumptions do existing approaches make? Which of those assumptions are load-bearing and which are convention?
Brainstorm from first principles. The question is not "how have people solved this?" but: what is the actual structure of this problem, and what approaches follow from that structure?
Think about:
Each idea goes through two gates:
add. If rejected (too similar), go somewhere different.add succeeds, immediately build a true MVP prototype
in a sandbox and run check-code. If the code is too similar to another idea's
prototype, the implementation isn't actually different — rethink or rework it.The full cycle for each idea:
# 1. Propose — must pass text uniqueness
python3 ${CLAUDE_SKILL_DIR}/scripts/brainstorm.py add <session> "<title>" "<description>"
# 2. Prototype — build the minimal core (not a full implementation)
bash ${CLAUDE_SKILL_DIR}/scripts/sandbox.sh create <session> <idea-number>
# ... write the MVP: the core loop, the key data structure, the algorithm skeleton
# ... 20-50 lines that prove this is a genuinely different computational shape
# 3. Verify — must pass code uniqueness
python3 ${CLAUDE_SKILL_DIR}/scripts/brainstorm.py check-code <session> <idea-number>
What counts as an MVP prototype: Not a working system. The minimum code that
demonstrates the computational shape of the idea — the core algorithm, the key data
structure, the central operation. If two ideas produce the same for loop over the
same data structure with the same branching pattern, they're the same idea regardless
of what you called the variables. The prototype makes that visible.
Your job during divergence:
Once all ideas are captured, shift gears. Now we evaluate.
report command.sessions to list existing sessionsstatus <session> to see where things standSessions live in .brainstorm/<session-id>/ (in the current working directory):
brainstorm.db — SQLite database (structured tracking + prior art)ideas/NNN.md — Individual idea files (unstructured content, notes)sandboxes/ — Prototype workspacesreport.md — Generated convergence report