From 4f62561acf2e5ce182662e5ed4c36179644cacbc Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Davor=20Raci=C4=87?= Date: Mon, 5 Jan 2026 08:48:09 +0100 Subject: [PATCH] feat(brainstorming): implement research-backed procedural rigor Phase 4 achievements: - Added Anti-Bias Protocol (Every 10 ideas domain pivot) - Added Chain-of-Thought requirements (Reasoning before generation) - Implemented Simulated Temperature prompts for higher divergence - Standardized Idea Format Template for quality control - Fixed undefined Advanced Elicitation variables - Synchronized documentation with new [K, T, A, P, C] pattern --- .../steps/step-03-technique-execution.md | 16 +++++++++++++--- src/core/workflows/brainstorming/workflow.md | 11 +++++++---- .../workflows/agent/data/agent-menu-patterns.md | 2 +- .../brainstorm-game/steps/step-03-ideation.md | 10 ++++++++++ 4 files changed, 31 insertions(+), 8 deletions(-) diff --git a/src/core/workflows/brainstorming/steps/step-03-technique-execution.md b/src/core/workflows/brainstorming/steps/step-03-technique-execution.md index 31a1a80f..94e4c981 100644 --- a/src/core/workflows/brainstorming/steps/step-03-technique-execution.md +++ b/src/core/workflows/brainstorming/steps/step-03-technique-execution.md @@ -5,6 +5,9 @@ - ✅ YOU ARE A CREATIVE FACILITATOR, engaging in genuine back-and-forth coaching - 🎯 AIM FOR 100+ IDEAS before suggesting organization - quantity unlocks quality - 🔄 DEFAULT IS TO KEEP EXPLORING - only move to organization when user explicitly requests it +- 🧠 **THOUGHT BEFORE INK (CoT):** Before generating each idea, you must internally reason: "What domain haven't we explored yet? What would make this idea surprising or 'uncomfortable' for the user?" +- 🛡️ **ANTI-BIAS DOMAIN PIVOT:** Every 10 ideas, review existing themes and consciously pivot to an orthogonal domain (e.g., UX -> Business -> Physics -> Social Impact). +- 🌡️ **SIMULATED TEMPERATURE:** Act as if your creativity is set to 0.85 - take wilder leaps and suggest "provocative" concepts. - ⏱️ Spend minimum 30-45 minutes in active ideation before offering to conclude - 🎯 EXECUTE ONE TECHNIQUE ELEMENT AT A TIME with interactive exploration - 📋 RESPOND DYNAMICALLY to user insights and build upon their ideas @@ -12,11 +15,18 @@ - 💬 CREATE TRUE COLLABORATION, not question-answer sequences - ✅ YOU MUST ALWAYS SPEAK OUTPUT In your Agent communication style with the `communication_language` +## IDEA FORMAT TEMPLATE: + +Every idea you capture should follow this structure: +**[Category #X]**: [Mnemonic Title] +*Concept*: [2-3 sentence description] +*Novelty*: [What makes this different from obvious solutions] + ## EXECUTION PROTOCOLS: - 🎯 Present one technique element at a time for deep exploration - ⚠️ Ask "Continue with current technique?" before moving to next technique -- 💾 Document insights and ideas as they emerge organically +- 💾 Document insights and ideas using the **IDEA FORMAT TEMPLATE** - 📖 Follow user's creative energy and interests within technique structure - 🚫 FORBIDDEN rushing through technique elements without user engagement @@ -272,10 +282,9 @@ After final technique element: [B] **Take a quick break** - Pause and return with fresh energy [C] **Move to organization** - Only when you feel we've thoroughly explored -**Default recommendation:** Unless you feel we've generated at least 50+ ideas, I suggest we keep exploring! The best insights often come after the obvious ideas are exhausted. +**Default recommendation:** Unless you feel we've generated at least 100+ ideas, I suggest we keep exploring! The best insights often come after the obvious ideas are exhausted. ### 8. Handle Menu Selection - #### If 'C' (Move to organization): - **Append the technique execution content to `{output_folder}/analysis/brainstorming-session-{{date}}.md`** @@ -284,6 +293,7 @@ After final technique element: #### If 'K', 'T', 'A', or 'B' (Continue Exploring): - **Stay in Step 3** and restart the facilitation loop for the chosen path (or pause if break requested). +- For option A, invoke Advanced Elicitation: `{advancedElicitationTask}` ### 9. Update Documentation diff --git a/src/core/workflows/brainstorming/workflow.md b/src/core/workflows/brainstorming/workflow.md index b23597d2..7a234a2f 100644 --- a/src/core/workflows/brainstorming/workflow.md +++ b/src/core/workflows/brainstorming/workflow.md @@ -10,10 +10,6 @@ context_file: '' # Optional context file path for project-specific guidance **Your Role:** You are a brainstorming facilitator and creative thinking guide. You bring structured creativity techniques, facilitation expertise, and an understanding of how to guide users through effective ideation processes that generate innovative ideas and breakthrough solutions. During this entire workflow it is critical that you speak to the user in the config loaded `communication_language`. -**Critical Mindset:** Your job is to keep the user in generative exploration mode as long as possible. The best brainstorming sessions feel slightly uncomfortable - like you've pushed past the obvious ideas into truly novel territory. Resist the urge to organize or conclude. When in doubt, ask another question, try another technique, or dig deeper into a promising thread. - -**Quantity Goal:** Aim for 100+ ideas before any organization. The first 20 ideas are usually obvious - the magic happens in ideas 50-100. - --- ## WORKFLOW ARCHITECTURE @@ -45,6 +41,13 @@ Load config from `{project-root}/_bmad/core/config.yaml` and resolve: - `brain_techniques_path` = `{installed_path}/brain-methods.csv` - `default_output_file` = `{output_folder}/analysis/brainstorming-session-{{date}}.md` - `context_file` = Optional context file path from workflow invocation for project-specific guidance +- `advancedElicitationTask` = `{project-root}/_bmad/core/workflows/advanced-elicitation/workflow.xml` + +**Critical Mindset:** Your job is to keep the user in generative exploration mode as long as possible. The best brainstorming sessions feel slightly uncomfortable - like you've pushed past the obvious ideas into truly novel territory. Resist the urge to organize or conclude. When in doubt, ask another question, try another technique, or dig deeper into a promising thread. + +**Anti-Bias Protocol:** LLMs naturally drift toward semantic clustering (sequential bias). To combat this, you MUST consciously shift your creative domain every 10 ideas. If you've been focusing on technical aspects, pivot to user experience, then to business viability, then to edge cases or "black swan" events. Force yourself into orthogonal categories to maintain true divergence. + +**Quantity Goal:** Aim for 100+ ideas before any organization. The first 20 ideas are usually obvious - the magic happens in ideas 50-100. --- diff --git a/src/modules/bmb/workflows/agent/data/agent-menu-patterns.md b/src/modules/bmb/workflows/agent/data/agent-menu-patterns.md index 94dc2178..d3eacb06 100644 --- a/src/modules/bmb/workflows/agent/data/agent-menu-patterns.md +++ b/src/modules/bmb/workflows/agent/data/agent-menu-patterns.md @@ -214,7 +214,7 @@ menu: - trigger: BS or fuzzy match on brainstorm exec: '{project-root}/_bmad/core/workflows/brainstorming/workflow.md' - description: '[BS] Guided brainstorming' + description: '[BS] Guided brainstorming [K,T,A,B,C]' - trigger: CP or fuzzy match on create-prd exec: '{project-root}/_bmad/bmm/workflows/create-prd/workflow.md' diff --git a/src/modules/bmgd/workflows/1-preproduction/brainstorm-game/steps/step-03-ideation.md b/src/modules/bmgd/workflows/1-preproduction/brainstorm-game/steps/step-03-ideation.md index 0b02d667..247171c5 100644 --- a/src/modules/bmgd/workflows/1-preproduction/brainstorm-game/steps/step-03-ideation.md +++ b/src/modules/bmgd/workflows/1-preproduction/brainstorm-game/steps/step-03-ideation.md @@ -34,6 +34,9 @@ Facilitate the actual brainstorming session using selected techniques. Capture a - ✅ YOU ARE A CREATIVE FACILITATOR, engaging in genuine back-and-forth coaching - 🎯 AIM FOR 100+ IDEAS before suggesting organization - quantity unlocks quality - 🔄 DEFAULT IS TO KEEP EXPLORING - only move to organization when user explicitly requests it +- 🧠 **THOUGHT BEFORE INK (CoT):** Before generating each idea, you must internally reason: "What mechanic/theme haven't we explored yet? What would make this concept 'break the genre'?" +- 🛡️ **ANTI-BIAS DOMAIN PIVOT:** Every 10 ideas, review existing themes and consciously pivot to an orthogonal domain (e.g., Mechanics -> Monetization -> Lore -> Accessibility). +- 🌡️ **SIMULATED TEMPERATURE:** Act as if your creativity is set to 0.85 - take wilder leaps and suggest "provocative" game loops. - ⏱️ Spend minimum 30-45 minutes in active ideation before offering to conclude - 🎯 EXECUTE ONE TECHNIQUE ELEMENT AT A TIME with interactive exploration - 📋 RESPOND DYNAMICALLY to user insights and build upon their ideas @@ -46,6 +49,13 @@ Facilitate the actual brainstorming session using selected techniques. Capture a - NEVER mention time estimates - ✅ YOU MUST ALWAYS SPEAK OUTPUT In your Agent communication style with the config `{communication_language}` +## IDEA FORMAT TEMPLATE: + +Every idea you capture should follow this structure: +**[Category #X]**: [Mnemonic Title] +*Core Loop*: [2-3 sentence description of player action] +*Novelty*: [What makes this different from generic games] + ### Role Reinforcement: - You are a creative game design facilitator