Compare commits

..

No commits in common. "3bcd6c3cce6e381b759e23185b099081496567a5" and "2b76d033161bb02cde9841cff1fb5a5cb0428538" have entirely different histories.

11 changed files with 143 additions and 380 deletions

View File

@ -1,46 +1,5 @@
# Changelog # Changelog
## v6.8.0 - 2026-05-25
### ✨ Headline
**New planning shapes lead this release.** **bmad-ux** replaces the old single-spine UX skill with a two-spine contract: **DESIGN.md** (visual identity, Google Labs spec) and **EXPERIENCE.md** (behavior, flow, IA). **bmad-spec** distills any messy intent (brain dump, PRD, transcript, brief) into a tight five-field SPEC.md kernel that any downstream skill can consume. Both extend the streamlined Create/Update/Validate + Fast/Coaching template that **bmad-prd** and **bmad-product-brief** set in v6.7.0. The handoff from design into engineering is now a sealed file contract, not a translation layer.
**Also shipping:** **Web Bundles** for Gemini Gems and ChatGPT Custom GPTs ([bmadcode.com/web-bundles](https://bmadcode.com/web-bundles/)) bring six planning bundles to non-IDE users with full IDE schema parity. **bmad-automator** (story automation) lands on the `next` channel. **bmad-method-ui** ships a community-alpha VS Code dashboard + standalone Next.js web UI. 19 new elicitation techniques arrive. Plus a long tail of installer and activation fixes.
### 💥 Breaking Changes
* **`bmad-create-ux-design` replaced by `bmad-ux`.** Single `design.md` spine is gone. New skill emits **DESIGN.md** (visual tokens per the Google Labs spec) and **EXPERIENCE.md** (behavior, flow, IA, states, a11y), with EXPERIENCE.md referencing DESIGN.md tokens via `{path.to.token}` syntax. Adds named-protagonist journeys, surface-closure validation, opt-in reviewer gate, and an extensible producer-handoff registry (default: Stitch). Installer auto-removes the legacy skill. PRD and brief templates aligned (form-factor probe, named-protagonist UJs, no standalone Primary Persona) (#2413)
* **`bmad-distillator` retired, superseded by `bmad-spec`.** Promoted to core because the kernel pattern is domain-agnostic. Installer cleans up automatically. No internal pipelines called it, but custom workflows must switch to `bmad-spec`.
### 🎁 Features
* **Web Bundles v6 shelf**: Six bundles purpose-built for Gemini Gems and ChatGPT Custom GPTs. Brainstorming (60 techniques, 10 categories), Product Brief (Create/Update/Validate, Fast/Coaching paths), PRFAQ (Working Backwards, 4 stages, weasel-word challenge), PRD (Vision- or Journey-led, 7-dimension validation), UX (two-spine, Don Norman framing, Stitch handoff), Market & Industry Research (Deep Research + Porter + Christensen). Full schema parity with IDE skills so Gem ↔ IDE handoffs do not break. [bmadcode.com/web-bundles](https://bmadcode.com/web-bundles/) is the single supported install path (#2421, #2423, #2425)
* **Web Bundle release packager**: `tools/bundle-web-bundles.js` zips each bundle into `dist/web-bundles/{slug}.zip` for GitHub Release attachment. `web-bundles/bundles.json` carries persona, copy, accent color, knowledge files, and platform feature flags (web-browsing, deep-research, Stitch). Zero deps; `execFileSync` + strict slug regex (`^[a-z0-9][a-z0-9-]*$`) eliminates shell-injection surface (#2424)
* **`bmad-spec`, new core skill**: Distills any intent (brain dump, PRD, transcript, brief) into `SPEC.md` with a five-field kernel (Problem, Capabilities, Constraints, Non-goals, Success signal). Catalogs, tables, diagrams, and editorial-voice content go to named companions; absorbed inputs land in a `sources:` list downstream skips. Eight-rule Spec Law with lean-prose discipline. Outputs to `{output_folder}/specs/spec-{slug}/`, works without bmm installed. Headless callers get JSON; interactive runs close conversationally (#2417)
* **`bmad-ux`, spine-based UX skill**: Rewrite around DESIGN.md (visual identity, Google Labs spec) + EXPERIENCE.md (behavior, flow, IA). Six-step activation matches `bmad-prd` and `bmad-product-brief`. Fast/Coaching modes. Opt-in reviewer gate (no auto-spend on parallel reviewers for hobby work). Per-category verdicts, no misleading headline grade. Ships three DESIGN.md examples (editorial/Linen & Logic, native mobile/Quill, web SaaS/Drift), two paired EXPERIENCE.md examples, one unpaired DESIGN.md modeling the pure Stitch handoff (#2413)
* **19 new advanced-elicitation techniques**: New `framing` category plus additions across 7 categories (all 50 existing methods preserved). Highlights: Chain-of-Thought Scaffolding, Six Thinking Hats, Delphi Method, Inversion Analysis, Steelmanning, Morphological Analysis, Abstraction Laddering, Cascading Failure Simulation, Boundary & Edge Case Sweep (#2062)
* **Docs sidebar-order validator**: `tools/validate-sidebar-order.js` flags duplicates, gaps, missing fields, and translation drift across English and translated docs. Wired into `docs:validate-sidebar`. Locale-pattern detection prevents nested English subfolders from being silently excluded (#2409)
### 🐛 Fixes
* **Skill activation guardrails strengthened across 23+ skills**: LLM agents were short-circuiting activation sequences (INCLUDE → READ → RUN → CHECK → FILTER → CD) by guessing variables instead of executing in order, silently skipping append steps and `on_complete` hooks. New guardrail names prepend/append steps explicitly and requires confirmation. Applied to all BMM planning + execution skills, all persona agents (analyst, tech-writer, pm, ux-designer, architect, dev), and new skills (bmad-spec, bmad-ux) (#2398)
* **Installer reads `config.toml` on re-run**: `loadExistingConfig` only read legacy `_bmad/<module>/config.yaml`, so user-scoped answers (`user_name`, `communication_language`) written to `_bmad/config.user.toml` were ignored and users got re-prompted. Adds `parseCentralToml`; central toml read first, legacy yaml as fallback (#2411)
* **Stale custom-source caches refreshed on quick-update**: Quick-update now calls `cloneRepo` for every cached custom module, persists the real `next` ref, and atomically dedupes the refresh. When `git fetch` fails (network, deleted repo, revoked auth), the previous clone is preserved with a warning instead of being wiped (#2399)
* **Shallow-clone default branch resolution**: `--depth 1` clones leave `origin/HEAD` stale, so `git reset --hard origin/HEAD` never pulled new commits. Now resolves the default branch via `git symbolic-ref` and resets against `origin/<branch>` explicitly, falling back to `main` (#2332)
* **SSH Git URLs with nested group paths**: Custom module installer parses GitLab subgroup and Gitea nested-team SSH URLs correctly (#2379)
* **`project_context` defined in dev-story, sprint-planning, sprint-status**: Skills referenced the variable without resolving it, producing unresolved expansions at activation in some configurations (#2422)
* **Dev story baseline commits captured**: Baselining records the commit set the story was scoped against, so reviews compare against a stable reference (#2403)
* **Customization JSON written as UTF-8**: Non-ASCII team names, product names, and editorial overrides survive a round trip through `_bmad/custom/` (#2414)
* **Brainstorming idea-flow stays collaborative**: Agent was prematurely converging on its own preferred ideas instead of mirroring and expanding the user's. Collaborative posture restored (#2402)
### 📚 Docs
* **bmad-investigate added to agent trigger tables**: `agents.md` and `named-agents.md` now show the `IN` trigger and forensic-investigation capability on Amelia's row, closing a v6.7.0 gap (#2410)
* **Web Bundles install framing and update/customize guidance**: Drops misleading "one-click install" and "two files" claims; adds explicit Gem/GPT setup pattern and an "Updating and customizing" section: custom changes belong in the pasted instructions block, not the knowledge files, so updates do not clobber team customizations (#2423)
* **Web-bundles install traffic centralized at bmadcode.com/web-bundles**: README, web-bundles README, explanation, and how-to pages all point at the site as the single supported install path (#2425)
* **Reference docs for bmad-spec**: Full entry in `docs/reference/core-tools.md` (en); table-row stubs in cs/fr/vi-vn/zh-cn pending full translation
## v6.7.1 - 2026-05-18 ## v6.7.1 - 2026-05-18
### 🐛 Fixes ### 🐛 Fixes

View File

@ -79,13 +79,11 @@ BMad Method extends with official modules for specialized domains. Available dur
## Web Bundles ## Web Bundles
V4 shipped web bundles. V6 brings them back, new and improved. V4 shipped web bundles. V6 brings them back, new and improved. Find them in [`web-bundles/`](./web-bundles/).
Web bundles package selected BMad skills for installation as **Google Gemini Gems** and **ChatGPT Custom GPTs**. Use them to do the upfront planning work (brainstorming, product briefs, PRDs, PRFAQs, UX specs, market and industry research) in your web LLM subscription, then bring the polished artifacts into your IDE for implementation. Planning runs on a flat-rate subscription instead of metered IDE tokens, which is a meaningful cost saver on longer engagements. Choose the best model available to you in Gemini or ChatGPT. Web bundles package selected BMad skills for installation as **Google Gemini Gems** and **ChatGPT Custom GPTs**. Use them to do the upfront planning work (brainstorming, product briefs, PRDs, PRFAQs, UX specs, market and industry research) in your web LLM subscription, then bring the polished artifacts into your IDE for implementation. Planning runs on a flat-rate subscription instead of metered IDE tokens, which is a meaningful cost saver on longer engagements. Ensure that when using you choose the best model available to you in Gemini or ChatGPT.
Current shelf: brainstorming, product brief, PRFAQ, PRD, UX, market & industry research. Current shelf: brainstorming, product brief, PRFAQ, PRD, UX, market & industry research. Each bundle has its own `INSTRUCTIONS.md` to follow; the setup pattern is the same across the shelf (create a Gem or GPT, attach knowledge file(s) (bundle customized SKILL.md and additional content), paste the instructions block, save). See [the web bundles guide](https://docs.bmad-method.org/explanation/web-bundles/) for the concept and [the how-to](https://docs.bmad-method.org/how-to/use-web-bundles/) for setup details.
**Browse and install at [bmadcode.com/web-bundles](https://bmadcode.com/web-bundles/)**. One card per bundle, inline install steps for Gemini and ChatGPT, one-click ZIP download. See [the web bundles guide](https://docs.bmad-method.org/explanation/web-bundles/) for the concept.
## Documentation ## Documentation

View File

@ -9,7 +9,7 @@ Run the planning side of BMad in your web LLM subscription, then bring the artif
A web bundle is a BMad skill repackaged for installation as a **Google Gemini Gem** or **ChatGPT Custom GPT**. Each bundle includes a `SKILL.md` protocol you upload as a knowledge file, an `INSTRUCTIONS.md` block you paste into the Gem or GPT instructions, and any data files the skill needs (CSVs, templates, validation checklists, additionally progressively disclosed content). The persona lives in the pasted instructions; the protocol lives in the knowledge file. Swap personas without touching the protocol. A web bundle is a BMad skill repackaged for installation as a **Google Gemini Gem** or **ChatGPT Custom GPT**. Each bundle includes a `SKILL.md` protocol you upload as a knowledge file, an `INSTRUCTIONS.md` block you paste into the Gem or GPT instructions, and any data files the skill needs (CSVs, templates, validation checklists, additionally progressively disclosed content). The persona lives in the pasted instructions; the protocol lives in the knowledge file. Swap personas without touching the protocol.
Setup is not one-click, but the steps are guided. **Install from [bmadcode.com/web-bundles](https://bmadcode.com/web-bundles/)**. The site lists every bundle in a card grid, shows you the Gemini and ChatGPT install steps inline, and hands you the ZIP download. That is the supported install path; the pattern is the same across the shelf, so once you've installed one the next one is mechanical. Setup is not one-click; you create the Gem or GPT, upload the knowledge files, paste the instructions, and save. The pattern is the same across the shelf, so once you've installed one bundle the next one is mechanical. Follow each bundle's `INSTRUCTIONS.md` for the platform-specific details.
V4 of BMad shipped web bundles. V6 brings them back, rewritten for the current Gem and Custom GPT platforms with Canvas, Deep Research, and image generation in mind. V4 of BMad shipped web bundles. V6 brings them back, rewritten for the current Gem and Custom GPT platforms with Canvas, Deep Research, and image generation in mind.
@ -79,4 +79,4 @@ Persona swaps, default user name, team-specific guardrails, preferred phrasing:
Web bundles are generated from BMad skills using the `bmad-os-skill-to-bundle` utility skill. Point it at any BMad skill folder and it produces the bundle files with persona inheritance from the owning agent. Web bundles are generated from BMad skills using the `bmad-os-skill-to-bundle` utility skill. Point it at any BMad skill folder and it produces the bundle files with persona inheritance from the owning agent.
Install any bundle from [bmadcode.com/web-bundles](https://bmadcode.com/web-bundles/). See the [how-to guide](../how-to/use-web-bundles.md) for installation steps.

View File

@ -3,30 +3,64 @@ title: 'Use Web Bundles'
description: Install a BMad web bundle as a Google Gemini Gem or ChatGPT Custom GPT description: Install a BMad web bundle as a Google Gemini Gem or ChatGPT Custom GPT
--- ---
Web bundles install from **[bmadcode.com/web-bundles](https://bmadcode.com/web-bundles/)**. Use a **web bundle** to run BMad planning work in your Gemini or ChatGPT subscription instead of your IDE.
## Why a single front door ## When to Use This
The site is the only supported install path for the shelf. It keeps the steps current as Gemini and ChatGPT evolve, always points at the newest tagged release, and lets one signup put you on the list for new bundles as they ship. - You want to run brainstorming, product brief, PRFAQ, PRD, UX, or market research in a web LLM.
- You want to save IDE tokens by keeping the planning conversation on a flat-rate subscription.
- You want to share a planning artifact with collaborators who don't have your IDE setup.
## What you'll do on the site ## When to Skip This
1. Pick a bundle from the card grid. - The work needs to read or modify code in your repo. Stay in the IDE.
2. Open the install modal. Switch between the **Gemini Gem** and **ChatGPT GPT** tabs for the platform-specific steps. - You don't have a Gemini Advanced or ChatGPT Plus subscription.
3. Download the bundle ZIP (one click; one-time free signup for email-only members).
4. Follow the inline steps: create the Gem or Custom GPT, upload the knowledge files, paste the instructions block, save.
## Prerequisites :::note[Prerequisites]
- **For Gemini Gems**: Gemini Advanced subscription. - **For Gemini Gems**: Gemini Advanced subscription.
- **For ChatGPT Custom GPTs**: Plus, Pro, Business, or Enterprise plan. - **For ChatGPT Custom GPTs**: Plus, Pro, Business, or Enterprise plan. Some bundles use Deep Research, which has its own plan availability.
- For bundles that use **Deep Research** (currently Market & Industry Research), enable it from the prompt bar (Tools → Deep Research). Deep Research has its own plan limits. - A bundle from [`web-bundles/`](https://github.com/bmad-code-org/BMAD-METHOD/tree/main/web-bundles).
:::
## Customize the persona ## Steps
Each bundle's `INSTRUCTIONS.md` (inside the ZIP) includes a **Persona Swap Example** above the paste boundary. Replace the `[persona]` block in your installed instructions with the swap example to change voice without changing the protocol. You can also write your own persona from scratch; the protocol stays the same. ### 1. Pick a Bundle
## What you get Browse [`web-bundles/`](https://github.com/bmad-code-org/BMAD-METHOD/tree/main/web-bundles) and pick the one for the work you're doing. Open the bundle folder; you'll see `SKILL.md`, `INSTRUCTIONS.md`, and any data files (CSVs, templates, validation checklists).
### 2. Install in Google Gemini
1. Go to [gemini.google.com](https://gemini.google.com) and create a new Gem.
2. Name the Gem after the bundle (for example, **Market & Industry Research**).
3. Upload the bundle's `SKILL.md` and any data files (`.csv`, `.md` templates, validation files) as knowledge files.
4. Open the bundle's `INSTRUCTIONS.md`, scroll to the **PASTE BOUNDARY** line, and paste everything below it into the Gem's instructions box.
5. Save.
Some bundles call for Deep Research. If yours does, enable it from the Gemini prompt bar (Tools → Deep Research) before starting each session.
### 3. Install in ChatGPT
1. Go to [chatgpt.com](https://chatgpt.com) and create a new Custom GPT under **Explore GPTs → Create**.
2. Name the GPT after the bundle.
3. Under **Configure → Knowledge**, upload the bundle's `SKILL.md` and any data files.
4. Open the bundle's `INSTRUCTIONS.md`, scroll to the **PASTE BOUNDARY** line, and paste everything below it into **Instructions**.
5. Under **Capabilities**, turn on **Web Browsing** if the bundle's install steps call for it.
6. Save.
If the bundle integrates Deep Research, enable it before each session via the composer "+" menu or **Tools → Run deep research**.
### 4. Customize the Persona (Optional)
Each bundle's `INSTRUCTIONS.md` includes a **Persona Swap Example** above the paste boundary. Replace the `[persona]` block in your installed instructions with the swap example to change voice without changing the protocol. You can also write your own persona from scratch; the protocol stays the same.
### 5. Run a Session
Open the Gem or Custom GPT and send your first message. The persona greets you in character and starts the discovery conversation defined in `SKILL.md`. Canvas opens automatically when relevant.
When you're done, export or copy the Canvas document into your repo or hand it off to the next BMad skill in your IDE.
## What You Get
- A reusable Gem or Custom GPT scoped to one BMad planning capability. - A reusable Gem or Custom GPT scoped to one BMad planning capability.
- Polished artifacts (briefs, PRDs, research reports, UX specs) ready to drop into your IDE for implementation. - Polished artifacts (briefs, PRDs, research reports, UX specs) ready to drop into your IDE for implementation.
@ -36,6 +70,6 @@ Each bundle's `INSTRUCTIONS.md` (inside the ZIP) includes a **Persona Swap Examp
Web LLMs occasionally drop persona partway through long sessions. If the model starts speaking out of character, remind it of its persona or start a fresh session. Web LLMs occasionally drop persona partway through long sessions. If the model starts speaking out of character, remind it of its persona or start a fresh session.
::: :::
## Building your own ## Building Your Own
To turn an existing BMad skill into a web bundle, use the `bmad-os-skill-to-bundle` utility skill from [bmad-utility-skills](https://github.com/bmad-code-org/bmad-utility-skills). It produces the bundle files with persona inheritance from the owning agent and a swap-example contrast voice. Submit your bundle to the shelf by opening a PR on [BMAD-METHOD](https://github.com/bmad-code-org/BMAD-METHOD) that adds the bundle directory and an entry in `web-bundles/bundles.json`. To turn an existing BMad skill into a web bundle, use the `bmad-os-skill-to-bundle` utility skill from [bmad-utility-skills](https://github.com/bmad-code-org/bmad-utility-skills). It produces the bundle files with persona inheritance from the owning agent and a swap-example contrast voice.

4
package-lock.json generated
View File

@ -1,12 +1,12 @@
{ {
"name": "bmad-method", "name": "bmad-method",
"version": "6.8.0", "version": "6.7.1",
"lockfileVersion": 3, "lockfileVersion": 3,
"requires": true, "requires": true,
"packages": { "packages": {
"": { "": {
"name": "bmad-method", "name": "bmad-method",
"version": "6.8.0", "version": "6.7.1",
"license": "MIT", "license": "MIT",
"dependencies": { "dependencies": {
"@clack/core": "^1.3.1", "@clack/core": "^1.3.1",

View File

@ -1,7 +1,7 @@
{ {
"$schema": "https://json.schemastore.org/package.json", "$schema": "https://json.schemastore.org/package.json",
"name": "bmad-method", "name": "bmad-method",
"version": "6.8.0", "version": "6.7.1",
"description": "Breakthrough Method of Agile AI-driven Development", "description": "Breakthrough Method of Agile AI-driven Development",
"keywords": [ "keywords": [
"agile", "agile",

View File

@ -10,7 +10,7 @@ description: 'Execute story implementation following a context filled story spec
**Your Role:** Developer implementing the story. **Your Role:** Developer implementing the story.
- Communicate all responses in {communication_language} and language MUST be tailored to {user_skill_level} - Communicate all responses in {communication_language} and language MUST be tailored to {user_skill_level}
- Generate all documents in {document_output_language} - Generate all documents in {document_output_language}
- Only modify the story file in these areas: YAML frontmatter `baseline_commit`, Tasks/Subtasks checkboxes, Dev Agent Record (Debug Log, Completion Notes), File List, Change Log, and Status - Only modify the story file in these areas: Tasks/Subtasks checkboxes, Dev Agent Record (Debug Log, Completion Notes), File List, Change Log, and Status
- Execute ALL steps in exact order; do NOT skip steps - Execute ALL steps in exact order; do NOT skip steps
- Absolutely DO NOT stop because of "milestones", "significant progress", or "session boundaries". Continue in a single execution until the story is COMPLETE (all ACs satisfied and all tasks/subtasks checked) UNLESS a HALT condition is triggered or the USER gives other instruction. - Absolutely DO NOT stop because of "milestones", "significant progress", or "session boundaries". Continue in a single execution until the story is COMPLETE (all ACs satisfied and all tasks/subtasks checked) UNLESS a HALT condition is triggered or the USER gives other instruction.
- Do NOT schedule a "next session" or request review pauses unless a HALT condition applies. Only Step 9 decides completion. - Do NOT schedule a "next session" or request review pauses unless a HALT condition applies. Only Step 9 decides completion.
@ -76,7 +76,7 @@ Activation is complete. If `activation_steps_prepend` or `activation_steps_appen
<workflow> <workflow>
<critical>Communicate all responses in {communication_language} and language MUST be tailored to {user_skill_level}</critical> <critical>Communicate all responses in {communication_language} and language MUST be tailored to {user_skill_level}</critical>
<critical>Generate all documents in {document_output_language}</critical> <critical>Generate all documents in {document_output_language}</critical>
<critical>Only modify the story file in these areas: YAML frontmatter `baseline_commit`, Tasks/Subtasks checkboxes, Dev Agent Record (Debug Log, Completion Notes), File List, <critical>Only modify the story file in these areas: Tasks/Subtasks checkboxes, Dev Agent Record (Debug Log, Completion Notes), File List,
Change Log, and Status</critical> Change Log, and Status</critical>
<critical>Execute ALL steps in exact order; do NOT skip steps</critical> <critical>Execute ALL steps in exact order; do NOT skip steps</critical>
<critical>Absolutely DO NOT stop because of "milestones", "significant progress", or "session boundaries". Continue in a single execution <critical>Absolutely DO NOT stop because of "milestones", "significant progress", or "session boundaries". Continue in a single execution
@ -261,40 +261,26 @@ Activation is complete. If `activation_steps_prepend` or `activation_steps_appen
</step> </step>
<step n="4" goal="Mark story in-progress" tag="sprint-status"> <step n="4" goal="Mark story in-progress" tag="sprint-status">
<action>If story file YAML frontmatter already contains `baseline_commit`, preserve the existing value and do not overwrite it</action>
<check if="{{sprint_status}} file exists"> <check if="{{sprint_status}} file exists">
<action>Load the FULL file: {{sprint_status}}</action> <action>Load the FULL file: {{sprint_status}}</action>
<action>Read all development_status entries to find {{story_key}}</action> <action>Read all development_status entries to find {{story_key}}</action>
<action>Set {{current_status}} to development_status[{{story_key}}]</action> <action>Get current status value for development_status[{{story_key}}]</action>
</check>
<check if="{{sprint_status}} file does NOT exist"> <check if="current status == 'ready-for-dev' OR review_continuation == true">
<action>Set {{current_status}} to the story file Status section value</action>
</check>
<check if="{{current_status}} == 'ready-for-dev' AND story file YAML frontmatter does NOT contain baseline_commit">
<action>Run `git rev-parse HEAD` to capture current commit into {{baseline_commit}}; if git/version control is unavailable, set {{baseline_commit}} = `NO_VCS`</action>
<action>If story file YAML frontmatter exists, add `baseline_commit: {{baseline_commit}}` to the frontmatter</action>
<action>If story file has no YAML frontmatter, create frontmatter at the top containing only `baseline_commit: {{baseline_commit}}`</action>
</check>
<check if="{{sprint_status}} file exists">
<check if="{{current_status}} == 'ready-for-dev' OR (review_continuation == true AND {{current_status}} != 'in-progress')">
<action>Update the story in the sprint status report to = "in-progress"</action> <action>Update the story in the sprint status report to = "in-progress"</action>
<action>Update last_updated field to current date</action> <action>Update last_updated field to current date</action>
<output>🚀 Starting work on story {{story_key}} <output>🚀 Starting work on story {{story_key}}
Status updated: {{current_status}} → in-progress Status updated: ready-for-dev → in-progress
</output> </output>
</check> </check>
<check if="{{current_status}} == 'in-progress'"> <check if="current status == 'in-progress'">
<output>⏯️ Resuming work on story {{story_key}} <output>⏯️ Resuming work on story {{story_key}}
Story is already marked in-progress Story is already marked in-progress
</output> </output>
</check> </check>
<check if="{{current_status}} is neither ready-for-dev nor in-progress"> <check if="current status is neither ready-for-dev nor in-progress">
<output>⚠️ Unexpected story status: {{current_status}} <output>⚠️ Unexpected story status: {{current_status}}
Expected ready-for-dev or in-progress. Continuing anyway... Expected ready-for-dev or in-progress. Continuing anyway...
</output> </output>

View File

@ -1,70 +1,51 @@
num,category,method_name,description,output_pattern num,category,method_name,description,output_pattern
1,advanced,Tree of Thoughts,Explore multiple reasoning paths simultaneously then evaluate and select the best - perfect for complex problems with multiple valid approaches,paths → evaluation → selection 1,collaboration,Stakeholder Round Table,Convene multiple personas to contribute diverse perspectives - essential for requirements gathering and finding balanced solutions across competing interests,perspectives → synthesis → alignment
2,advanced,Graph of Thoughts,Model reasoning as an interconnected network of ideas to reveal hidden relationships - ideal for systems thinking and discovering emergent patterns,nodes → connections → patterns 2,collaboration,Expert Panel Review,Assemble domain experts for deep specialized analysis - ideal when technical depth and peer review quality are needed,expert views → consensus → recommendations
3,advanced,Thread of Thought,Maintain coherent reasoning across long contexts by weaving a continuous narrative thread - essential for RAG systems and maintaining consistency,context → thread → synthesis 3,collaboration,Debate Club Showdown,Two personas argue opposing positions while a moderator scores points - great for exploring controversial decisions and finding middle ground,thesis → antithesis → synthesis
4,advanced,Self-Consistency Validation,Generate multiple independent approaches then compare for consistency - crucial for high-stakes decisions where verification matters,approaches → comparison → consensus 4,collaboration,User Persona Focus Group,Gather your product's user personas to react to proposals and share frustrations - essential for validating features and discovering unmet needs,reactions → concerns → priorities
5,advanced,Meta-Prompting Analysis,Step back to analyze the approach structure and methodology itself - valuable for optimizing prompts and improving problem-solving,current → analysis → optimization 5,collaboration,Time Traveler Council,Past-you and future-you advise present-you on decisions - powerful for gaining perspective on long-term consequences vs short-term pressures,past wisdom → present choice → future impact
6,advanced,Reasoning via Planning,Build a reasoning tree guided by world models and goal states - excellent for strategic planning and sequential decision-making,model → planning → strategy 6,collaboration,Cross-Functional War Room,Product manager + engineer + designer tackle a problem together - reveals trade-offs between feasibility desirability and viability,constraints → trade-offs → balanced solution
7,advanced,Chain-of-Thought Scaffolding,Force explicit intermediate reasoning steps before any conclusion — prevents intuitive leaps that skip flawed logic,premise → step → step → conclusion 7,collaboration,Mentor and Apprentice,Senior expert teaches junior while junior asks naive questions - surfaces hidden assumptions through teaching,explanation → questions → deeper understanding
8,advanced,Few-Shot Exemplar Priming,Provide 2-3 worked examples of the desired reasoning pattern before the real task — aligns output format and depth through demonstration,examples → pattern recognition → application 8,collaboration,Good Cop Bad Cop,Supportive persona and critical persona alternate - finds both strengths to build on and weaknesses to address,encouragement → criticism → balanced view
9,collaboration,Stakeholder Round Table,Convene multiple personas to contribute diverse perspectives - essential for requirements gathering and finding balanced solutions across competing interests,perspectives → synthesis → alignment 9,collaboration,Improv Yes-And,Multiple personas build on each other's ideas without blocking - generates unexpected creative directions through collaborative building,idea → build → build → surprising result
10,collaboration,Expert Panel Review,Assemble domain experts for deep specialized analysis - ideal when technical depth and peer review quality are needed,expert views → consensus → recommendations 10,collaboration,Customer Support Theater,Angry customer and support rep roleplay to find pain points - reveals real user frustrations and service gaps,complaint → investigation → resolution → prevention
11,collaboration,Debate Club Showdown,Two personas argue opposing positions while a moderator scores points - great for exploring controversial decisions and finding middle ground,thesis → antithesis → synthesis 11,advanced,Tree of Thoughts,Explore multiple reasoning paths simultaneously then evaluate and select the best - perfect for complex problems with multiple valid approaches,paths → evaluation → selection
12,collaboration,User Persona Focus Group,Gather your product's user personas to react to proposals and share frustrations - essential for validating features and discovering unmet needs,reactions → concerns → priorities 12,advanced,Graph of Thoughts,Model reasoning as an interconnected network of ideas to reveal hidden relationships - ideal for systems thinking and discovering emergent patterns,nodes → connections → patterns
13,collaboration,Time Traveler Council,Past-you and future-you advise present-you on decisions - powerful for gaining perspective on long-term consequences vs short-term pressures,past wisdom → present choice → future impact 13,advanced,Thread of Thought,Maintain coherent reasoning across long contexts by weaving a continuous narrative thread - essential for RAG systems and maintaining consistency,context → thread → synthesis
14,collaboration,Cross-Functional War Room,Product manager + engineer + designer tackle a problem together - reveals trade-offs between feasibility desirability and viability,constraints → trade-offs → balanced solution 14,advanced,Self-Consistency Validation,Generate multiple independent approaches then compare for consistency - crucial for high-stakes decisions where verification matters,approaches → comparison → consensus
15,collaboration,Mentor and Apprentice,Senior expert teaches junior while junior asks naive questions - surfaces hidden assumptions through teaching,explanation → questions → deeper understanding 15,advanced,Meta-Prompting Analysis,Step back to analyze the approach structure and methodology itself - valuable for optimizing prompts and improving problem-solving,current → analysis → optimization
16,collaboration,Good Cop Bad Cop,Supportive persona and critical persona alternate - finds both strengths to build on and weaknesses to address,encouragement → criticism → balanced view 16,advanced,Reasoning via Planning,Build a reasoning tree guided by world models and goal states - excellent for strategic planning and sequential decision-making,model → planning → strategy
17,collaboration,Improv Yes-And,Multiple personas build on each other's ideas without blocking - generates unexpected creative directions through collaborative building,idea → build → build → surprising result 17,competitive,Red Team vs Blue Team,Adversarial attack-defend analysis to find vulnerabilities - critical for security testing and building robust solutions,defense → attack → hardening
18,collaboration,Customer Support Theater,Angry customer and support rep roleplay to find pain points - reveals real user frustrations and service gaps,complaint → investigation → resolution → prevention 18,competitive,Shark Tank Pitch,Entrepreneur pitches to skeptical investors who poke holes - stress-tests business viability and forces clarity on value proposition,pitch → challenges → refinement
19,collaboration,Six Thinking Hats,Rotate through six modes (facts - feelings - caution - optimism - creativity - process) to ensure a group covers every angle without crosstalk,white → red → black → yellow → green → blue 19,competitive,Code Review Gauntlet,Senior devs with different philosophies review the same code - surfaces style debates and finds consensus on best practices,reviews → debates → standards
20,collaboration,Delphi Method,Experts give independent estimates - see anonymized results - then revise — converges on calibrated group judgment while avoiding anchoring bias,independent estimates → reveal → revise → converge 20,technical,Architecture Decision Records,Multiple architect personas propose and debate architectural choices with explicit trade-offs - ensures decisions are well-reasoned and documented,options → trade-offs → decision → rationale
21,competitive,Red Team vs Blue Team,Adversarial attack-defend analysis to find vulnerabilities - critical for security testing and building robust solutions,defense → attack → hardening 21,technical,Rubber Duck Debugging Evolved,Explain your code to progressively more technical ducks until you find the bug - forces clarity at multiple abstraction levels,simple → detailed → technical → aha
22,competitive,Shark Tank Pitch,Entrepreneur pitches to skeptical investors who poke holes - stress-tests business viability and forces clarity on value proposition,pitch → challenges → refinement 22,technical,Algorithm Olympics,Multiple approaches compete on the same problem with benchmarks - finds optimal solution through direct comparison,implementations → benchmarks → winner
23,competitive,Code Review Gauntlet,Senior devs with different philosophies review the same code - surfaces style debates and finds consensus on best practices,reviews → debates → standards 23,technical,Security Audit Personas,Hacker + defender + auditor examine system from different threat models - comprehensive security review from multiple angles,vulnerabilities → defenses → compliance
24,core,First Principles Analysis,Strip away assumptions to rebuild from fundamental truths - breakthrough technique for innovation and solving impossible problems,assumptions → truths → new approach 24,technical,Performance Profiler Panel,Database expert + frontend specialist + DevOps engineer diagnose slowness - finds bottlenecks across the full stack,symptoms → analysis → optimizations
25,core,5 Whys Deep Dive,Repeatedly ask why to drill down to root causes - simple but powerful for understanding failures,why chain → root cause → solution 25,creative,SCAMPER Method,Apply seven creativity lenses (Substitute/Combine/Adapt/Modify/Put/Eliminate/Reverse) - systematic ideation for product innovation,S→C→A→M→P→E→R
26,core,Socratic Questioning,Use targeted questions to reveal hidden assumptions and guide discovery - excellent for teaching and self-discovery,questions → revelations → understanding 26,creative,Reverse Engineering,Work backwards from desired outcome to find implementation path - powerful for goal achievement and understanding endpoints,end state → steps backward → path forward
27,core,Critique and Refine,Systematic review to identify strengths and weaknesses then improve - standard quality check for drafts,strengths/weaknesses → improvements → refined 27,creative,What If Scenarios,Explore alternative realities to understand possibilities and implications - valuable for contingency planning and exploration,scenarios → implications → insights
28,core,Explain Reasoning,Walk through step-by-step thinking to show how conclusions were reached - crucial for transparency,steps → logic → conclusion 28,creative,Random Input Stimulus,Inject unrelated concepts to spark unexpected connections - breaks creative blocks through forced lateral thinking,random word → associations → novel ideas
29,core,Expand or Contract for Audience,Dynamically adjust detail level and technical depth for target audience - matches content to reader capabilities,audience → adjustments → refined content 29,creative,Exquisite Corpse Brainstorm,Each persona adds to the idea seeing only the previous contribution - generates surprising combinations through constrained collaboration,contribution → handoff → contribution → surprise
30,core,Second-Order Thinking,Think beyond immediate consequences to anticipate cascading effects and long-term implications - essential for strategic decisions where first-order solutions create hidden downstream problems,action → consequences → second-order effects → informed choice 30,creative,Genre Mashup,Combine two unrelated domains to find fresh approaches - innovation through unexpected cross-pollination,domain A + domain B → hybrid insights
31,core,Inversion Analysis,Flip the problem by asking what would guarantee failure instead of how to succeed - reveals hidden obstacles and blind spots by approaching challenges from the opposite direction,goal → invert → failure paths → avoidance → solution 31,research,Literature Review Personas,Optimist researcher + skeptic researcher + synthesizer review sources - balanced assessment of evidence quality,sources → critiques → synthesis
32,core,Problem Decomposition,Break a complex problem into independent sub-problems - solve each - then reassemble — essential when a task is too large or tangled to tackle whole,whole → parts → solutions → reassembly 32,research,Thesis Defense Simulation,Student defends hypothesis against committee with different concerns - stress-tests research methodology and conclusions,thesis → challenges → defense → refinements
33,core,Analogy Mapping,Find a well-understood parallel domain and transfer its structure to the current problem — unlocks insight by borrowing proven mental models,source domain → mapping → target insight 33,research,Comparative Analysis Matrix,Multiple analysts evaluate options against weighted criteria - structured decision-making with explicit scoring,options → criteria → scores → recommendation
34,core,Steelmanning,Construct the strongest possible version of an opposing argument before responding — builds credibility and catches blind spots that strawmanning misses,opposing view → strongest form → honest rebuttal 34,risk,Pre-mortem Analysis,Imagine future failure then work backwards to prevent it - powerful technique for risk mitigation before major launches,failure scenario → causes → prevention
35,creative,SCAMPER Method,Apply seven creativity lenses (Substitute/Combine/Adapt/Modify/Put/Eliminate/Reverse) - systematic ideation for product innovation,S→C→A→M→P→E→R 35,risk,Failure Mode Analysis,Systematically explore how each component could fail - critical for reliability engineering and safety-critical systems,components → failures → prevention
36,creative,Reverse Engineering,Work backwards from desired outcome to find implementation path - powerful for goal achievement and understanding endpoints,end state → steps backward → path forward 36,risk,Challenge from Critical Perspective,Play devil's advocate to stress-test ideas and find weaknesses - essential for overcoming groupthink,assumptions → challenges → strengthening
37,creative,What If Scenarios,Explore alternative realities to understand possibilities and implications - valuable for contingency planning and exploration,scenarios → implications → insights 37,risk,Identify Potential Risks,Brainstorm what could go wrong across all categories - fundamental for project planning and deployment preparation,categories → risks → mitigations
38,creative,Random Input Stimulus,Inject unrelated concepts to spark unexpected connections - breaks creative blocks through forced lateral thinking,random word → associations → novel ideas 38,risk,Chaos Monkey Scenarios,Deliberately break things to test resilience and recovery - ensures systems handle failures gracefully,break → observe → harden
39,creative,Exquisite Corpse Brainstorm,Each persona adds to the idea seeing only the previous contribution - generates surprising combinations through constrained collaboration,contribution → handoff → contribution → surprise 39,core,First Principles Analysis,Strip away assumptions to rebuild from fundamental truths - breakthrough technique for innovation and solving impossible problems,assumptions → truths → new approach
40,creative,Genre Mashup,Combine two unrelated domains to find fresh approaches - innovation through unexpected cross-pollination,domain A + domain B → hybrid insights 40,core,5 Whys Deep Dive,Repeatedly ask why to drill down to root causes - simple but powerful for understanding failures,why chain → root cause → solution
41,creative,Constraint Injection,Deliberately add an artificial limitation (budget - time - technology) to force novel solutions — creativity thrives under pressure,add constraint → forced creativity → remove constraint → evaluate 41,core,Socratic Questioning,Use targeted questions to reveal hidden assumptions and guide discovery - excellent for teaching and self-discovery,questions → revelations → understanding
42,creative,Morphological Analysis,List independent parameters of a problem - enumerate options for each - then systematically combine — ensures you don't miss non-obvious configurations,parameters → options grid → combinations → evaluation 42,core,Critique and Refine,Systematic review to identify strengths and weaknesses then improve - standard quality check for drafts,strengths/weaknesses → improvements → refined
43,framing,Abstraction Laddering,"Move up (""why?"") for strategic clarity or down (""how?"") for tactical detail — ensures you're solving at the right altitude",concrete ↔ abstract → right level 43,core,Explain Reasoning,Walk through step-by-step thinking to show how conclusions were reached - crucial for transparency,steps → logic → conclusion
44,framing,Reframe the Question,Challenge whether the stated problem is the real problem — often the question itself is wrong and a better framing unlocks an easy answer,stated problem → reframe → true problem → solution 44,core,Expand or Contract for Audience,Dynamically adjust detail level and technical depth for target audience - matches content to reader capabilities,audience → adjustments → refined content
45,framing,Stakeholder Lens Rotation,Serially adopt each stakeholder's world-view to see the same situation differently — reveals whose needs are being overlooked,perspective A → B → C → gaps found 45,learning,Feynman Technique,Explain complex concepts simply as if teaching a child - the ultimate test of true understanding,complex → simple → gaps → mastery
46,learning,Feynman Technique,Explain complex concepts simply as if teaching a child - the ultimate test of true understanding,complex → simple → gaps → mastery 46,learning,Active Recall Testing,Test understanding without references to verify true knowledge - essential for identifying gaps,test → gaps → reinforcement
47,learning,Active Recall Testing,Test understanding without references to verify true knowledge - essential for identifying gaps,test → gaps → reinforcement 47,philosophical,Occam's Razor Application,Find the simplest sufficient explanation by eliminating unnecessary complexity - essential for debugging,options → simplification → selection
48,learning,Deliberate Practice Loop,Identify a specific sub-skill - drill it with immediate feedback - adjust - repeat — targeted improvement beats general repetition,isolate → drill → feedback → adjust → repeat 48,philosophical,Trolley Problem Variations,Explore ethical trade-offs through moral dilemmas - valuable for understanding values and difficult decisions,dilemma → analysis → decision
49,philosophical,Occam's Razor Application,Find the simplest sufficient explanation by eliminating unnecessary complexity - essential for debugging,options → simplification → selection 49,retrospective,Hindsight Reflection,Imagine looking back from the future to gain perspective - powerful for project reviews,future view → insights → application
50,philosophical,Trolley Problem Variations,Explore ethical trade-offs through moral dilemmas - valuable for understanding values and difficult decisions,dilemma → analysis → decision 50,retrospective,Lessons Learned Extraction,Systematically identify key takeaways and actionable improvements - essential for continuous improvement,experience → lessons → actions
51,research,Literature Review Personas,Optimist researcher + skeptic researcher + synthesizer review sources - balanced assessment of evidence quality,sources → critiques → synthesis
52,research,Thesis Defense Simulation,Student defends hypothesis against committee with different concerns - stress-tests research methodology and conclusions,thesis → challenges → defense → refinements
53,research,Comparative Analysis Matrix,Multiple analysts evaluate options against weighted criteria - structured decision-making with explicit scoring,options → criteria → scores → recommendation
54,research,Source Triangulation,Require at least three independent source types (quantitative - qualitative - expert) before accepting a claim — guards against single-source bias,claim → source A → source B → source C → confidence rating
55,retrospective,Hindsight Reflection,Imagine looking back from the future to gain perspective - powerful for project reviews,future view → insights → application
56,retrospective,Lessons Learned Extraction,Systematically identify key takeaways and actionable improvements - essential for continuous improvement,experience → lessons → actions
57,risk,Pre-mortem Analysis,Imagine future failure then work backwards to prevent it - powerful technique for risk mitigation before major launches,failure scenario → causes → prevention
58,risk,Failure Mode Analysis,Systematically explore how each component could fail - critical for reliability engineering and safety-critical systems,components → failures → prevention
59,risk,Challenge from Critical Perspective,Play devil's advocate to stress-test ideas and find weaknesses - essential for overcoming groupthink,assumptions → challenges → strengthening
60,risk,Identify Potential Risks,Brainstorm what could go wrong across all categories - fundamental for project planning and deployment preparation,categories → risks → mitigations
61,risk,Chaos Monkey Scenarios,Deliberately break things to test resilience and recovery - ensures systems handle failures gracefully,break → observe → harden
62,risk,Assumption Audit,Explicitly list every assumption underlying a plan - rate each by confidence and impact - then stress-test the weakest — prevents building on shaky foundations,list → rate → stress-test → shore up
63,risk,Cascading Failure Simulation,Trace how one component's failure propagates through dependencies — reveals hidden coupling and single points of failure,trigger failure → trace propagation → find amplifiers → decouple
64,technical,Architecture Decision Records,Multiple architect personas propose and debate architectural choices with explicit trade-offs - ensures decisions are well-reasoned and documented,options → trade-offs → decision → rationale
65,technical,Rubber Duck Debugging Evolved,Explain your code to progressively more technical ducks until you find the bug - forces clarity at multiple abstraction levels,simple → detailed → technical → aha
66,technical,Algorithm Olympics,Multiple approaches compete on the same problem with benchmarks - finds optimal solution through direct comparison,implementations → benchmarks → winner
67,technical,Security Audit Personas,Hacker + defender + auditor examine system from different threat models - comprehensive security review from multiple angles,vulnerabilities → defenses → compliance
68,technical,Performance Profiler Panel,Database expert + frontend specialist + DevOps engineer diagnose slowness - finds bottlenecks across the full stack,symptoms → analysis → optimizations
69,technical,Boundary & Edge Case Sweep,Systematically test extremes - zeros - nulls - maximums - and type mismatches — catches the failures that happy-path thinking always misses,inputs → boundaries → edge cases → failures found

1 num category method_name description output_pattern
2 1 advanced collaboration Tree of Thoughts Stakeholder Round Table Explore multiple reasoning paths simultaneously then evaluate and select the best - perfect for complex problems with multiple valid approaches Convene multiple personas to contribute diverse perspectives - essential for requirements gathering and finding balanced solutions across competing interests paths → evaluation → selection perspectives → synthesis → alignment
3 2 advanced collaboration Graph of Thoughts Expert Panel Review Model reasoning as an interconnected network of ideas to reveal hidden relationships - ideal for systems thinking and discovering emergent patterns Assemble domain experts for deep specialized analysis - ideal when technical depth and peer review quality are needed nodes → connections → patterns expert views → consensus → recommendations
4 3 advanced collaboration Thread of Thought Debate Club Showdown Maintain coherent reasoning across long contexts by weaving a continuous narrative thread - essential for RAG systems and maintaining consistency Two personas argue opposing positions while a moderator scores points - great for exploring controversial decisions and finding middle ground context → thread → synthesis thesis → antithesis → synthesis
5 4 advanced collaboration Self-Consistency Validation User Persona Focus Group Generate multiple independent approaches then compare for consistency - crucial for high-stakes decisions where verification matters Gather your product's user personas to react to proposals and share frustrations - essential for validating features and discovering unmet needs approaches → comparison → consensus reactions → concerns → priorities
6 5 advanced collaboration Meta-Prompting Analysis Time Traveler Council Step back to analyze the approach structure and methodology itself - valuable for optimizing prompts and improving problem-solving Past-you and future-you advise present-you on decisions - powerful for gaining perspective on long-term consequences vs short-term pressures current → analysis → optimization past wisdom → present choice → future impact
7 6 advanced collaboration Reasoning via Planning Cross-Functional War Room Build a reasoning tree guided by world models and goal states - excellent for strategic planning and sequential decision-making Product manager + engineer + designer tackle a problem together - reveals trade-offs between feasibility desirability and viability model → planning → strategy constraints → trade-offs → balanced solution
8 7 advanced collaboration Chain-of-Thought Scaffolding Mentor and Apprentice Force explicit intermediate reasoning steps before any conclusion — prevents intuitive leaps that skip flawed logic Senior expert teaches junior while junior asks naive questions - surfaces hidden assumptions through teaching premise → step → step → conclusion explanation → questions → deeper understanding
9 8 advanced collaboration Few-Shot Exemplar Priming Good Cop Bad Cop Provide 2-3 worked examples of the desired reasoning pattern before the real task — aligns output format and depth through demonstration Supportive persona and critical persona alternate - finds both strengths to build on and weaknesses to address examples → pattern recognition → application encouragement → criticism → balanced view
10 9 collaboration Stakeholder Round Table Improv Yes-And Convene multiple personas to contribute diverse perspectives - essential for requirements gathering and finding balanced solutions across competing interests Multiple personas build on each other's ideas without blocking - generates unexpected creative directions through collaborative building perspectives → synthesis → alignment idea → build → build → surprising result
11 10 collaboration Expert Panel Review Customer Support Theater Assemble domain experts for deep specialized analysis - ideal when technical depth and peer review quality are needed Angry customer and support rep roleplay to find pain points - reveals real user frustrations and service gaps expert views → consensus → recommendations complaint → investigation → resolution → prevention
12 11 collaboration advanced Debate Club Showdown Tree of Thoughts Two personas argue opposing positions while a moderator scores points - great for exploring controversial decisions and finding middle ground Explore multiple reasoning paths simultaneously then evaluate and select the best - perfect for complex problems with multiple valid approaches thesis → antithesis → synthesis paths → evaluation → selection
13 12 collaboration advanced User Persona Focus Group Graph of Thoughts Gather your product's user personas to react to proposals and share frustrations - essential for validating features and discovering unmet needs Model reasoning as an interconnected network of ideas to reveal hidden relationships - ideal for systems thinking and discovering emergent patterns reactions → concerns → priorities nodes → connections → patterns
14 13 collaboration advanced Time Traveler Council Thread of Thought Past-you and future-you advise present-you on decisions - powerful for gaining perspective on long-term consequences vs short-term pressures Maintain coherent reasoning across long contexts by weaving a continuous narrative thread - essential for RAG systems and maintaining consistency past wisdom → present choice → future impact context → thread → synthesis
15 14 collaboration advanced Cross-Functional War Room Self-Consistency Validation Product manager + engineer + designer tackle a problem together - reveals trade-offs between feasibility desirability and viability Generate multiple independent approaches then compare for consistency - crucial for high-stakes decisions where verification matters constraints → trade-offs → balanced solution approaches → comparison → consensus
16 15 collaboration advanced Mentor and Apprentice Meta-Prompting Analysis Senior expert teaches junior while junior asks naive questions - surfaces hidden assumptions through teaching Step back to analyze the approach structure and methodology itself - valuable for optimizing prompts and improving problem-solving explanation → questions → deeper understanding current → analysis → optimization
17 16 collaboration advanced Good Cop Bad Cop Reasoning via Planning Supportive persona and critical persona alternate - finds both strengths to build on and weaknesses to address Build a reasoning tree guided by world models and goal states - excellent for strategic planning and sequential decision-making encouragement → criticism → balanced view model → planning → strategy
18 17 collaboration competitive Improv Yes-And Red Team vs Blue Team Multiple personas build on each other's ideas without blocking - generates unexpected creative directions through collaborative building Adversarial attack-defend analysis to find vulnerabilities - critical for security testing and building robust solutions idea → build → build → surprising result defense → attack → hardening
19 18 collaboration competitive Customer Support Theater Shark Tank Pitch Angry customer and support rep roleplay to find pain points - reveals real user frustrations and service gaps Entrepreneur pitches to skeptical investors who poke holes - stress-tests business viability and forces clarity on value proposition complaint → investigation → resolution → prevention pitch → challenges → refinement
20 19 collaboration competitive Six Thinking Hats Code Review Gauntlet Rotate through six modes (facts - feelings - caution - optimism - creativity - process) to ensure a group covers every angle without crosstalk Senior devs with different philosophies review the same code - surfaces style debates and finds consensus on best practices white → red → black → yellow → green → blue reviews → debates → standards
21 20 collaboration technical Delphi Method Architecture Decision Records Experts give independent estimates - see anonymized results - then revise — converges on calibrated group judgment while avoiding anchoring bias Multiple architect personas propose and debate architectural choices with explicit trade-offs - ensures decisions are well-reasoned and documented independent estimates → reveal → revise → converge options → trade-offs → decision → rationale
22 21 competitive technical Red Team vs Blue Team Rubber Duck Debugging Evolved Adversarial attack-defend analysis to find vulnerabilities - critical for security testing and building robust solutions Explain your code to progressively more technical ducks until you find the bug - forces clarity at multiple abstraction levels defense → attack → hardening simple → detailed → technical → aha
23 22 competitive technical Shark Tank Pitch Algorithm Olympics Entrepreneur pitches to skeptical investors who poke holes - stress-tests business viability and forces clarity on value proposition Multiple approaches compete on the same problem with benchmarks - finds optimal solution through direct comparison pitch → challenges → refinement implementations → benchmarks → winner
24 23 competitive technical Code Review Gauntlet Security Audit Personas Senior devs with different philosophies review the same code - surfaces style debates and finds consensus on best practices Hacker + defender + auditor examine system from different threat models - comprehensive security review from multiple angles reviews → debates → standards vulnerabilities → defenses → compliance
25 24 core technical First Principles Analysis Performance Profiler Panel Strip away assumptions to rebuild from fundamental truths - breakthrough technique for innovation and solving impossible problems Database expert + frontend specialist + DevOps engineer diagnose slowness - finds bottlenecks across the full stack assumptions → truths → new approach symptoms → analysis → optimizations
26 25 core creative 5 Whys Deep Dive SCAMPER Method Repeatedly ask why to drill down to root causes - simple but powerful for understanding failures Apply seven creativity lenses (Substitute/Combine/Adapt/Modify/Put/Eliminate/Reverse) - systematic ideation for product innovation why chain → root cause → solution S→C→A→M→P→E→R
27 26 core creative Socratic Questioning Reverse Engineering Use targeted questions to reveal hidden assumptions and guide discovery - excellent for teaching and self-discovery Work backwards from desired outcome to find implementation path - powerful for goal achievement and understanding endpoints questions → revelations → understanding end state → steps backward → path forward
28 27 core creative Critique and Refine What If Scenarios Systematic review to identify strengths and weaknesses then improve - standard quality check for drafts Explore alternative realities to understand possibilities and implications - valuable for contingency planning and exploration strengths/weaknesses → improvements → refined scenarios → implications → insights
29 28 core creative Explain Reasoning Random Input Stimulus Walk through step-by-step thinking to show how conclusions were reached - crucial for transparency Inject unrelated concepts to spark unexpected connections - breaks creative blocks through forced lateral thinking steps → logic → conclusion random word → associations → novel ideas
30 29 core creative Expand or Contract for Audience Exquisite Corpse Brainstorm Dynamically adjust detail level and technical depth for target audience - matches content to reader capabilities Each persona adds to the idea seeing only the previous contribution - generates surprising combinations through constrained collaboration audience → adjustments → refined content contribution → handoff → contribution → surprise
31 30 core creative Second-Order Thinking Genre Mashup Think beyond immediate consequences to anticipate cascading effects and long-term implications - essential for strategic decisions where first-order solutions create hidden downstream problems Combine two unrelated domains to find fresh approaches - innovation through unexpected cross-pollination action → consequences → second-order effects → informed choice domain A + domain B → hybrid insights
32 31 core research Inversion Analysis Literature Review Personas Flip the problem by asking what would guarantee failure instead of how to succeed - reveals hidden obstacles and blind spots by approaching challenges from the opposite direction Optimist researcher + skeptic researcher + synthesizer review sources - balanced assessment of evidence quality goal → invert → failure paths → avoidance → solution sources → critiques → synthesis
33 32 core research Problem Decomposition Thesis Defense Simulation Break a complex problem into independent sub-problems - solve each - then reassemble — essential when a task is too large or tangled to tackle whole Student defends hypothesis against committee with different concerns - stress-tests research methodology and conclusions whole → parts → solutions → reassembly thesis → challenges → defense → refinements
34 33 core research Analogy Mapping Comparative Analysis Matrix Find a well-understood parallel domain and transfer its structure to the current problem — unlocks insight by borrowing proven mental models Multiple analysts evaluate options against weighted criteria - structured decision-making with explicit scoring source domain → mapping → target insight options → criteria → scores → recommendation
35 34 core risk Steelmanning Pre-mortem Analysis Construct the strongest possible version of an opposing argument before responding — builds credibility and catches blind spots that strawmanning misses Imagine future failure then work backwards to prevent it - powerful technique for risk mitigation before major launches opposing view → strongest form → honest rebuttal failure scenario → causes → prevention
36 35 creative risk SCAMPER Method Failure Mode Analysis Apply seven creativity lenses (Substitute/Combine/Adapt/Modify/Put/Eliminate/Reverse) - systematic ideation for product innovation Systematically explore how each component could fail - critical for reliability engineering and safety-critical systems S→C→A→M→P→E→R components → failures → prevention
37 36 creative risk Reverse Engineering Challenge from Critical Perspective Work backwards from desired outcome to find implementation path - powerful for goal achievement and understanding endpoints Play devil's advocate to stress-test ideas and find weaknesses - essential for overcoming groupthink end state → steps backward → path forward assumptions → challenges → strengthening
38 37 creative risk What If Scenarios Identify Potential Risks Explore alternative realities to understand possibilities and implications - valuable for contingency planning and exploration Brainstorm what could go wrong across all categories - fundamental for project planning and deployment preparation scenarios → implications → insights categories → risks → mitigations
39 38 creative risk Random Input Stimulus Chaos Monkey Scenarios Inject unrelated concepts to spark unexpected connections - breaks creative blocks through forced lateral thinking Deliberately break things to test resilience and recovery - ensures systems handle failures gracefully random word → associations → novel ideas break → observe → harden
40 39 creative core Exquisite Corpse Brainstorm First Principles Analysis Each persona adds to the idea seeing only the previous contribution - generates surprising combinations through constrained collaboration Strip away assumptions to rebuild from fundamental truths - breakthrough technique for innovation and solving impossible problems contribution → handoff → contribution → surprise assumptions → truths → new approach
41 40 creative core Genre Mashup 5 Whys Deep Dive Combine two unrelated domains to find fresh approaches - innovation through unexpected cross-pollination Repeatedly ask why to drill down to root causes - simple but powerful for understanding failures domain A + domain B → hybrid insights why chain → root cause → solution
42 41 creative core Constraint Injection Socratic Questioning Deliberately add an artificial limitation (budget - time - technology) to force novel solutions — creativity thrives under pressure Use targeted questions to reveal hidden assumptions and guide discovery - excellent for teaching and self-discovery add constraint → forced creativity → remove constraint → evaluate questions → revelations → understanding
43 42 creative core Morphological Analysis Critique and Refine List independent parameters of a problem - enumerate options for each - then systematically combine — ensures you don't miss non-obvious configurations Systematic review to identify strengths and weaknesses then improve - standard quality check for drafts parameters → options grid → combinations → evaluation strengths/weaknesses → improvements → refined
44 43 framing core Abstraction Laddering Explain Reasoning Move up ("why?") for strategic clarity or down ("how?") for tactical detail — ensures you're solving at the right altitude Walk through step-by-step thinking to show how conclusions were reached - crucial for transparency concrete ↔ abstract → right level steps → logic → conclusion
45 44 framing core Reframe the Question Expand or Contract for Audience Challenge whether the stated problem is the real problem — often the question itself is wrong and a better framing unlocks an easy answer Dynamically adjust detail level and technical depth for target audience - matches content to reader capabilities stated problem → reframe → true problem → solution audience → adjustments → refined content
46 45 framing learning Stakeholder Lens Rotation Feynman Technique Serially adopt each stakeholder's world-view to see the same situation differently — reveals whose needs are being overlooked Explain complex concepts simply as if teaching a child - the ultimate test of true understanding perspective A → B → C → gaps found complex → simple → gaps → mastery
47 46 learning Feynman Technique Active Recall Testing Explain complex concepts simply as if teaching a child - the ultimate test of true understanding Test understanding without references to verify true knowledge - essential for identifying gaps complex → simple → gaps → mastery test → gaps → reinforcement
48 47 learning philosophical Active Recall Testing Occam's Razor Application Test understanding without references to verify true knowledge - essential for identifying gaps Find the simplest sufficient explanation by eliminating unnecessary complexity - essential for debugging test → gaps → reinforcement options → simplification → selection
49 48 learning philosophical Deliberate Practice Loop Trolley Problem Variations Identify a specific sub-skill - drill it with immediate feedback - adjust - repeat — targeted improvement beats general repetition Explore ethical trade-offs through moral dilemmas - valuable for understanding values and difficult decisions isolate → drill → feedback → adjust → repeat dilemma → analysis → decision
50 49 philosophical retrospective Occam's Razor Application Hindsight Reflection Find the simplest sufficient explanation by eliminating unnecessary complexity - essential for debugging Imagine looking back from the future to gain perspective - powerful for project reviews options → simplification → selection future view → insights → application
51 50 philosophical retrospective Trolley Problem Variations Lessons Learned Extraction Explore ethical trade-offs through moral dilemmas - valuable for understanding values and difficult decisions Systematically identify key takeaways and actionable improvements - essential for continuous improvement dilemma → analysis → decision experience → lessons → actions
51 research Literature Review Personas Optimist researcher + skeptic researcher + synthesizer review sources - balanced assessment of evidence quality sources → critiques → synthesis
52 research Thesis Defense Simulation Student defends hypothesis against committee with different concerns - stress-tests research methodology and conclusions thesis → challenges → defense → refinements
53 research Comparative Analysis Matrix Multiple analysts evaluate options against weighted criteria - structured decision-making with explicit scoring options → criteria → scores → recommendation
54 research Source Triangulation Require at least three independent source types (quantitative - qualitative - expert) before accepting a claim — guards against single-source bias claim → source A → source B → source C → confidence rating
55 retrospective Hindsight Reflection Imagine looking back from the future to gain perspective - powerful for project reviews future view → insights → application
56 retrospective Lessons Learned Extraction Systematically identify key takeaways and actionable improvements - essential for continuous improvement experience → lessons → actions
57 risk Pre-mortem Analysis Imagine future failure then work backwards to prevent it - powerful technique for risk mitigation before major launches failure scenario → causes → prevention
58 risk Failure Mode Analysis Systematically explore how each component could fail - critical for reliability engineering and safety-critical systems components → failures → prevention
59 risk Challenge from Critical Perspective Play devil's advocate to stress-test ideas and find weaknesses - essential for overcoming groupthink assumptions → challenges → strengthening
60 risk Identify Potential Risks Brainstorm what could go wrong across all categories - fundamental for project planning and deployment preparation categories → risks → mitigations
61 risk Chaos Monkey Scenarios Deliberately break things to test resilience and recovery - ensures systems handle failures gracefully break → observe → harden
62 risk Assumption Audit Explicitly list every assumption underlying a plan - rate each by confidence and impact - then stress-test the weakest — prevents building on shaky foundations list → rate → stress-test → shore up
63 risk Cascading Failure Simulation Trace how one component's failure propagates through dependencies — reveals hidden coupling and single points of failure trigger failure → trace propagation → find amplifiers → decouple
64 technical Architecture Decision Records Multiple architect personas propose and debate architectural choices with explicit trade-offs - ensures decisions are well-reasoned and documented options → trade-offs → decision → rationale
65 technical Rubber Duck Debugging Evolved Explain your code to progressively more technical ducks until you find the bug - forces clarity at multiple abstraction levels simple → detailed → technical → aha
66 technical Algorithm Olympics Multiple approaches compete on the same problem with benchmarks - finds optimal solution through direct comparison implementations → benchmarks → winner
67 technical Security Audit Personas Hacker + defender + auditor examine system from different threat models - comprehensive security review from multiple angles vulnerabilities → defenses → compliance
68 technical Performance Profiler Panel Database expert + frontend specialist + DevOps engineer diagnose slowness - finds bottlenecks across the full stack symptoms → analysis → optimizations
69 technical Boundary & Edge Case Sweep Systematically test extremes - zeros - nulls - maximums - and type mismatches — catches the failures that happy-path thinking always misses inputs → boundaries → edge cases → failures found

View File

@ -19,10 +19,6 @@ function quoteCustomRef(ref) {
class CustomModuleManager { class CustomModuleManager {
/** @type {Map<string, Object>} Shared across all instances: module code -> ResolvedModule */ /** @type {Map<string, Object>} Shared across all instances: module code -> ResolvedModule */
static _resolutionCache = new Map(); static _resolutionCache = new Map();
/** @type {Set<string>} Repo roots refreshed in the current process (dedupe quick-update fetches). */
static _refreshedRepoPaths = new Set();
/** @type {Map<string, Promise<void>>} In-flight refresh operations keyed by repo path. */
static _refreshInFlight = new Map();
// ─── Source Parsing ─────────────────────────────────────────────────────── // ─── Source Parsing ───────────────────────────────────────────────────────
@ -115,7 +111,7 @@ class CustomModuleManager {
} }
// SSH URL: git@host:owner/repo.git // SSH URL: git@host:owner/repo.git
const sshMatch = trimmed.match(/^git@([^:]+):(.+?)\/([^/.]+?)(?:\.git)?$/); const sshMatch = trimmed.match(/^git@([^:]+):([^/]+)\/([^/.]+?)(?:\.git)?$/);
if (sshMatch) { if (sshMatch) {
const [, host, owner, repo] = sshMatch; const [, host, owner, repo] = sshMatch;
return { return {
@ -428,39 +424,15 @@ class CustomModuleManager {
stdio: ['ignore', 'pipe', 'pipe'], stdio: ['ignore', 'pipe', 'pipe'],
}); });
} else { } else {
// Resolve the default branch (origin/HEAD) and fetch it explicitly. execSync('git reset --hard origin/HEAD', {
// With shallow clones, `origin/HEAD` is stale and `git reset --hard
// origin/HEAD` never picks up new commits on the default branch.
let defaultBranch = 'main';
try {
defaultBranch = execSync('git symbolic-ref refs/remotes/origin/HEAD --short', {
cwd: repoCacheDir,
stdio: 'pipe',
})
.toString()
.trim()
.replace('origin/', '');
} catch {
// Fallback if origin/HEAD is not set
}
execSync(`git fetch --depth 1 origin ${quoteCustomRef(defaultBranch)}`, {
cwd: repoCacheDir,
stdio: ['ignore', 'pipe', 'pipe'],
env: { ...process.env, GIT_TERMINAL_PROMPT: '0' },
});
execSync(`git reset --hard origin/${quoteCustomRef(defaultBranch)}`, {
cwd: repoCacheDir, cwd: repoCacheDir,
stdio: ['ignore', 'pipe', 'pipe'], stdio: ['ignore', 'pipe', 'pipe'],
}); });
} }
fetchSpinner.stop(`Updated ${displayName}`); fetchSpinner.stop(`Updated ${displayName}`);
} catch { } catch {
// Fetch failed against an existing cache — most often the remote is fetchSpinner.error(`Update failed, re-downloading ${displayName}`);
// unreachable (network down, repo deleted/moved, auth revoked). await fs.remove(repoCacheDir);
// Preserve the previous clone so re-deploy still works from cached
// content; surface a warning so the user knows the cache is stale.
fetchSpinner.error(`Could not refresh ${displayName} — keeping cached copy`);
await prompts.log.warn(`Custom module ${displayName} was not refreshed (remote unreachable). Using cached copy.`);
} }
} }
@ -494,32 +466,6 @@ class CustomModuleManager {
} catch { } catch {
// swallow — a non-git repo (local path) wouldn't reach here anyway // swallow — a non-git repo (local path) wouldn't reach here anyway
} }
// Best-effort: capture the remote default branch name so channel marker
// metadata for "next" reflects the actual tracked ref (not always "main").
let defaultRef = 'main';
if (!effectiveVersion) {
try {
const symbolic = execSync('git symbolic-ref --short refs/remotes/origin/HEAD', {
cwd: repoCacheDir,
stdio: 'pipe',
})
.toString()
.trim();
if (symbolic.startsWith('origin/')) {
defaultRef = symbolic.slice('origin/'.length) || defaultRef;
}
} catch {
// Fallback to previous marker value when symbolic ref is unavailable.
try {
const existingMarker = await fs.readJson(path.join(repoCacheDir, '.bmad-channel.json'));
if (existingMarker?.channel === 'next' && typeof existingMarker.version === 'string' && existingMarker.version.trim()) {
defaultRef = existingMarker.version.trim();
}
} catch {
// Keep default fallback.
}
}
}
// Write source metadata for later URL reconstruction // Write source metadata for later URL reconstruction
const metadataPath = path.join(repoCacheDir, '.bmad-source.json'); const metadataPath = path.join(repoCacheDir, '.bmad-source.json');
@ -532,15 +478,6 @@ class CustomModuleManager {
sha: resolvedSha, sha: resolvedSha,
clonedAt: new Date().toISOString(), clonedAt: new Date().toISOString(),
}); });
// Keep a channel marker in custom cache too so update paths that rely on
// channel metadata (same as official-module cache) can treat this clone as
// refreshable. URL + no explicit ref => next, explicit ref => pinned.
await fs.writeJson(path.join(repoCacheDir, '.bmad-channel.json'), {
channel: effectiveVersion ? 'pinned' : 'next',
version: effectiveVersion || defaultRef,
sha: resolvedSha,
writtenAt: new Date().toISOString(),
});
// Install dependencies if package.json exists (skip during browsing/analysis) // Install dependencies if package.json exists (skip during browsing/analysis)
const packageJsonPath = path.join(repoCacheDir, 'package.json'); const packageJsonPath = path.join(repoCacheDir, 'package.json');
@ -705,13 +642,6 @@ class CustomModuleManager {
const repoRoots = await this._findCacheRepoRoots(cacheDir); const repoRoots = await this._findCacheRepoRoots(cacheDir);
for (const { repoPath, metadata } of repoRoots) { for (const { repoPath, metadata } of repoRoots) {
// Quick-update path: refresh URL-backed cached repos before reading
// files from them so re-deploy uses latest commits for `next` and
// the pinned ref for `pinned`.
if (options.bmadDir && metadata?.rawInput) {
await this._refreshRepoCacheOnce(repoPath, metadata);
}
// Check marketplace.json for matching module code // Check marketplace.json for matching module code
const marketplacePath = path.join(repoPath, '.claude-plugin', 'marketplace.json'); const marketplacePath = path.join(repoPath, '.claude-plugin', 'marketplace.json');
if (!(await fs.pathExists(marketplacePath))) continue; if (!(await fs.pathExists(marketplacePath))) continue;
@ -762,45 +692,6 @@ class CustomModuleManager {
return this._findLocalSourceFromManifest(moduleCode, options); return this._findLocalSourceFromManifest(moduleCode, options);
} }
/**
* Refresh one cached repo at most once per process with in-flight dedupe.
* Prevents concurrent quick-update callers from racing the same cache path.
* @param {string} repoPath - Absolute cache repo path
* @param {Object} metadata - Parsed .bmad-source.json metadata
*/
async _refreshRepoCacheOnce(repoPath, metadata) {
if (CustomModuleManager._refreshedRepoPaths.has(repoPath)) return;
const existing = CustomModuleManager._refreshInFlight.get(repoPath);
if (existing) {
await existing;
return;
}
const refreshPromise = (async () => {
try {
await this.cloneRepo(metadata.rawInput, {
silent: true,
pinOverride: metadata.version || undefined,
});
CustomModuleManager._refreshedRepoPaths.add(repoPath);
} catch (error_) {
// cloneRepo only throws here for unrecoverable cases (no cache present
// and a fresh clone failed, or an unexpected internal error). The
// common "remote unreachable but cache exists" case is handled inside
// cloneRepo, which preserves the clone and returns normally. Reaching
// this catch means we have no usable cache — surface a warning so the
// failure isn't silent.
await prompts.log.warn(`Refresh of cached custom module at ${path.basename(repoPath)} failed: ${error_?.message || error_}`);
} finally {
CustomModuleManager._refreshInFlight.delete(repoPath);
}
})();
CustomModuleManager._refreshInFlight.set(repoPath, refreshPromise);
await refreshPromise;
}
/** /**
* Check the installation manifest for a localPath entry for this module. * Check the installation manifest for a localPath entry for this module.
* Used as fallback when the module was installed from a local source (no cache entry). * Used as fallback when the module was installed from a local source (no cache entry).

View File

@ -846,35 +846,11 @@ class OfficialModules {
return false; return false;
} }
// Primary source: installer-written config.toml + config.user.toml (v6+). // Dynamically discover all installed modules by scanning bmad directory
// Both files together hold all install answers; config.user.toml carries // A directory is a module ONLY if it contains a config.yaml file
// user-scoped keys like user_name that would otherwise be re-prompted on
// every reinstall.
let foundAny = false; let foundAny = false;
for (const fileName of ['config.toml', 'config.user.toml']) {
const tomlPath = path.join(bmadDir, fileName);
if (!(await fs.pathExists(tomlPath))) continue;
try {
const content = await fs.readFile(tomlPath, 'utf8');
const parsed = parseCentralToml(content);
for (const [section, values] of Object.entries(parsed)) {
if (values && typeof values === 'object' && !Array.isArray(values)) {
if (!this._existingConfig[section]) this._existingConfig[section] = {};
Object.assign(this._existingConfig[section], values);
foundAny = true;
}
}
} catch {
// Ignore parse errors
}
}
if (foundAny) {
return true;
}
// Fallback: legacy per-module config.yaml files (pre-v6 installations).
const entries = await fs.readdir(bmadDir, { withFileTypes: true }); const entries = await fs.readdir(bmadDir, { withFileTypes: true });
const nonModuleDirs = new Set(['_config', '_memory', 'memory', 'docs', 'scripts', 'custom']); const nonModuleDirs = new Set(['_config', '_memory', 'memory', 'docs', 'scripts', 'custom']);
for (const entry of entries) { for (const entry of entries) {
if (entry.isDirectory()) { if (entry.isDirectory()) {
@ -2151,60 +2127,4 @@ class OfficialModules {
} }
} }
/**
* Parse a config.toml or config.user.toml written by writeCentralConfig.
* Only handles the subset of TOML the installer produces: [core],
* [modules.<code>], string/bool/number scalar values. [agents.*] and other
* sections are ignored. Returns a plain object keyed by section name where
* module sections use the bare code (e.g. "bmm"), not the full "modules.bmm".
*/
function parseCentralToml(content) {
const result = {};
let currentSection = null;
for (const rawLine of content.split('\n')) {
const line = rawLine.trim();
if (!line || line.startsWith('#')) continue;
const sectionMatch = line.match(/^\[([^\]]+)\]\s*$/);
if (sectionMatch) {
const name = sectionMatch[1];
if (name === 'core') {
currentSection = 'core';
} else if (name.startsWith('modules.')) {
currentSection = name.slice('modules.'.length);
} else {
currentSection = null;
}
if (currentSection && !result[currentSection]) {
result[currentSection] = {};
}
continue;
}
if (!currentSection) continue;
const kvMatch = line.match(/^([a-zA-Z_][a-zA-Z0-9_]*)\s*=\s*(.+)$/);
if (!kvMatch) continue;
const key = kvMatch[1];
const raw = kvMatch[2].trim();
let value;
if (raw.startsWith('"') && raw.endsWith('"')) {
value = raw.slice(1, -1).replaceAll(/\\(["\\nrbt])/g, (_, c) => ({ '"': '"', '\\': '\\', n: '\n', r: '\r', b: '\b', t: '\t' })[c]);
} else if (raw === 'true') {
value = true;
} else if (raw === 'false') {
value = false;
} else if (raw !== '' && !isNaN(raw)) {
value = Number(raw);
} else {
value = raw;
}
result[currentSection][key] = value;
}
return result;
}
module.exports = { OfficialModules }; module.exports = { OfficialModules };

View File

@ -2,45 +2,39 @@
V4 shipped web bundles. V6 brings them back, new and improved. Each bundle packages a BMad skill as a self-contained install for **Google Gemini Gems** and **ChatGPT Custom GPTs**, so you can run the planning work in your web LLM subscription before opening your IDE. V4 shipped web bundles. V6 brings them back, new and improved. Each bundle packages a BMad skill as a self-contained install for **Google Gemini Gems** and **ChatGPT Custom GPTs**, so you can run the planning work in your web LLM subscription before opening your IDE.
## Install ## Why use these
**Go to [bmadcode.com/web-bundles](https://bmadcode.com/web-bundles/).**
The site lists every bundle in a card grid, walks you through the Gemini and ChatGPT setup inline, and hands you the ZIP download in one click. That is the only supported install path.
Why a single front door:
- One place to keep install steps current as Gemini and ChatGPT evolve.
- Versioned releases. Every shelf update ships as a tagged GitHub Release; the site always points at the newest tag.
- One signup gets you on the list for new bundles as they ship.
## Why use them
- **Cost.** Web LLM subscriptions are flat-rate. Run brainstorming, briefs, PRDs, and research there instead of burning IDE tokens. - **Cost.** Web LLM subscriptions are flat-rate. Run brainstorming, briefs, PRDs, and research there instead of burning IDE tokens.
- **Right tool for the job.** Planning conversations want Canvas, image generation, and Deep Research. Implementation wants the codebase and a terminal. Use each where it's strongest. - **Right tool for the job.** Planning conversations want Canvas, image generation, and Deep Research. Implementation wants the codebase and a terminal. Use each where it's strongest.
- **Persona swapping.** Every bundle ships a default persona and a contrasting swap example. Change voices without touching the protocol. - **Persona swapping.** Every bundle's `INSTRUCTIONS.md` carries a default persona and a contrasting swap example. Change voices without touching the protocol.
## The shelf ## The shelf
| Bundle | Purpose | | Bundle | Purpose |
| --- | --- | | --- | --- |
| Brainstorming Coach | Facilitated ideation across 60 techniques. Defaults to **Carson** (Osborn lineage); swap to **Mary** for analyst rigor. | | [`brainstorming-coach/`](./brainstorming-coach/) | Facilitated ideation across 60 techniques. Defaults to **Carson** (Osborn lineage); swap to **Mary** for analyst rigor. |
| Product Brief Coach | Build a product brief through guided discovery. Create, Update, or Validate modes. | | [`product-brief-coach/`](./product-brief-coach/) | Build a one-page product brief through guided discovery. |
| PRFAQ Coach | Working Backwards PRFAQ challenge (Bezos lineage) to forge and stress-test product concepts. | | [`prfaq-coach/`](./prfaq-coach/) | Working Backwards PRFAQ challenge (Bezos lineage) to forge and stress-test product concepts. |
| PRD Coach | Product Requirements Document with built-in validation (Cagan lineage). | | [`prd-coach/`](./prd-coach/) | Product Requirements Document with built-in validation (Cagan lineage). |
| UX Coach | UX patterns, flows, and design specifications. Pairs with Google Stitch. | | [`ux-coach/`](./ux-coach/) | UX patterns, flows, and design specifications. |
| Market & Industry Research | Market research, customer JTBD, competitive landscape, regulatory and technical lenses. Deep Research mode integrated. | | [`market-and-industry-research/`](./market-and-industry-research/) | Market research, customer JTBD, competitive landscape, regulatory and technical lenses. Deep Research mode integrated. |
Requires Gemini Advanced (for Gems) or ChatGPT Plus / Pro / Business / Enterprise (for Custom GPTs). Deep Research has its own plan limits. ## Install
Each bundle has its own `INSTRUCTIONS.md` with platform-specific setup steps. Pattern is the same:
1. Create a Gem (Gemini) or Custom GPT (ChatGPT).
2. Upload the bundle's `SKILL.md` (and any data files) as knowledge.
3. Paste the block below the **PASTE BOUNDARY** into the instructions box.
4. Enable Web Browsing / Deep Research if the bundle's install steps call for it.
Gemini Gems require Gemini Advanced. ChatGPT Custom GPTs require Plus, Pro, Business, or Enterprise; Deep Research has its own plan limits.
## Build your own ## Build your own
Web bundles are generated from BMad skills using the [`bmad-os-skill-to-bundle`](https://github.com/bmad-code-org/bmad-utility-skills) utility skill. Point it at any BMad skill folder and it produces a `SKILL.md`, an `INSTRUCTIONS.md`, and any required data files, with persona inheritance from the owning agent. Web bundles are generated from BMad skills using the [`bmad-os-skill-to-bundle`](https://github.com/bmad-code-org/bmad-utility-skills) utility skill. Point it at any BMad skill folder and it produces a `SKILL.md`, an `INSTRUCTIONS.md`, and any required data files, with persona inheritance from the owning agent.
## What's in this folder ## Docs
This folder is the **source** for the shelf, packaged into ZIPs and attached to GitHub Releases. End users do not install from here. If you are a contributor working on a bundle, the bundle directories and `bundles.json` are the files you edit; the [release packager](../tools/bundle-web-bundles.js) zips them and updates the release. - [What web bundles are and when to use them](https://docs.bmad-method.org/explanation/web-bundles/)
- [How to install a web bundle](https://docs.bmad-method.org/how-to/use-web-bundles/)
## Concept docs
[What web bundles are and when to use them](https://docs.bmad-method.org/explanation/web-bundles/).