Three community-reported installer fixes:
1. Remove pitch deck question from installer — this is a workflow
decision that changes per product, not a one-time config choice.
Saga now asks at runtime instead.
2. Fix Claude Code skills path from .claude/skills/wds/{name}.md
to .claude/skills/{name}/SKILL.md (correct format).
3. Move _wds-learn/ from project root into _bmad/wds/learn/ to
reduce root-level noise in monorepos.
Also: fix LF line endings on npx wrapper, add ROADMAP.md.
Reported by: @Mr-z3r0 (BMad Discord)
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
_base-ide.js required the 'yaml' package (devDependency only) instead of
'js-yaml' (production dependency), causing all IDE integrations to fail
during npx install. Also cleans up legacy _wds-learn/ during migration.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
wdsFolder was initialized from detection.folder ('_wds') but the
migrate-update branch never reassigned it to WDS_FOLDER ('_bmad/wds').
This caused the migration check (wdsFolder !== '_wds') to be false,
silently skipping the folder move.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
- Remove unused catch binding in _base-ide.js
- Use replaceAll() instead of replace() with regex
- Use String.raw for escape sequences in gemini.js and qwen.js
- Use node: protocol for child_process import
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Restructure the prompt flow so the update/fresh/migrate decision comes
before config questions. On update, config.yaml is preserved so asking
project name, output folder, IDEs etc. is unnecessary. Extract ides and
root_folder from saved config for IDE setup and folder creation.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Change default installation path from _wds/ to _bmad/wds/ to follow
BMAD module conventions. Add detection logic for existing installations
and migration prompt for legacy _wds/ projects.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Remove Agent Dialog Gate from all 9 activity workflows and the main
workflow.md initialization. Replace with a single 00-design-log.md file
containing Backlog, Current, Design Loop Status, and Log sections.
- Rewrite workflow.md adaptive dashboard to read from design log only
- Create 00-design-log.template.md, delete old 00-progress.template.md
- Update installer.js: agent-experiences folder replaces agent-dialogs
- Rename 00-progress.md → 00-design-log.md across all phases (1-5)
- Update step files to use agent experiences instead of agent dialogs
- 30 files changed, net reduction of ~140 lines of ceremony
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
- Rename docs/learn-wds/ to docs/learn/ and update all 17 references
- Module 02: Replace manual clone/mkdir/Mimir with npx installer + direct
agent activation (Saga, Freya, Idunn — no Mimir)
- Module 08: Replace 9-section scenario template with Q1-Q8 dialog format
matching the actual workflow (step-05-outline-scenario.md)
- Update scenario naming convention to persona-based (01-name-purpose)
- Update folder structure to NN.step-page-slug format
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
- ui.js: Remove Idunn from available agents list
- ide-configs.js: Remove Mimir and Idunn, update Saga/Freya phase descriptions
- _base-ide.js: Remove Idunn fallback metadata
- cline.js: Remove idunn.md from cleanup agent list
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Implement BMad-style IDE handler architecture for WDS:
- Base class (_base-ide.js) with template method pattern
- Dynamic handler discovery via IdeManager
- Priority handlers: Windsurf, Cursor, Claude Code, Cline, GitHub Copilot
- Installer integration after agent compilation step
- Saga activation now branches on starting_point config (pitch vs brief)
- Remove parenthetical hint from learning material prompt
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
- Removed all pre-selection (all unchecked by default)
- Removed star markers (⭐) - no preferences shown
- Sorted alphabetically for neutral presentation
- Users must actively choose their tools
- Validation still requires at least one selection
Platform-agnostic: WDS works equally well with any AI coding tool
Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
- Changed from single-select list to checkbox (multiselect)
- Added full IDE list from BMad: Windsurf, Cursor, Claude Code, GitHub Copilot, Cline, VS Code, Other
- Windsurf and Cursor marked as preferred (pre-checked)
- Validation requires at least one IDE selected
- Updated config.yaml to store ides array instead of single ide
- Updated success message to display multiple IDEs (e.g., "Windsurf or Cursor")
- Ensures WDS commands work cross-platform for all selected IDEs
User request: "Look at the BMad installer, there is a multiselect box for IDEs use the full list from the BMad installer"
Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
- Added IDE selection question (Windsurf, VS Code, Cursor, Other)
- Made learning material installation optional with confirm prompt
- Success message now shows selected IDE name
- Store IDE preference in config.yaml
- Installer now has 5 questions (up from 3)
User feedback: "IDE selection is crucial for the installer" and "ask if the learn section should be installed"
Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
User feedback: UX design happens IN the scenarios (C), not as separate phase.
Old (incorrect):
- A-Product-Brief
- B-Trigger-Map
- C-UX-Scenarios
- D-UX-Design (redundant!)
- E-Design-System
New (correct):
- A-Product-Brief
- B-Trigger-Map
- C-UX-Scenarios (UX design is done here)
- D-Design-System
4 phases instead of 5 - cleaner and more accurate.
More conversational and explicit:
- 'Get Started with Your Product Brief' (goal-oriented)
- 'Locate the chat window in your IDE' (explicit location)
- 'type:' instead of 'paste this command:' (simpler action)
- Command in quotes to make it clear it's text to type
- Better line breaks for readability
Old message was too technical and vague.
New message:
- Clear numbered steps (1-2-3)
- Specific: 'Open this folder in Windsurf or VS Code'
- Exact command to paste (not just 'tell the AI')
- Clear outcome: 'Saga will greet you by name'
- Cleaner layout with separator
Addresses workshop feedback about confusing instructions.
Workshop feedback: 00-*.md files were confusing and ignored by users.
Changes:
- Remove createFolderGuides() and createProjectInfoFile() methods
- Folders still created but empty (only .gitkeep)
- Agents will create files dynamically during workflows
- Cleaner, less confusing user experience
- Add 3rd question: Output folder name (default: design-process)
- Users can customize to docs/, deliverables/, etc.
- Update config.yaml to use dynamic root_folder
- Update template placeholders to use config.root_folder
Balances simplification (3 questions vs 7+) with useful customization.
Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
- Users can now choose between design-process/, docs/, or deliverables/
- Removes folder auto-detection logic that caused duplicate folders
- Installer creates folders at user's chosen location
- Prevents conflict with project setup workflow
Fixes issue where both design-process/ and docs/ were created.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
createFolderGuides() needs config parameter for template replacements.
This was causing "config is not defined" error during installation.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Inquirer v9+ is ESM-only, causing ERR_REQUIRE_ESM when loaded via
require() in CommonJS. Convert all require('inquirer') calls to
dynamic import('inquirer') across 8 CLI files.
Fixes#1197
* feat: add documentation website with Docusaurus build pipeline
* feat(docs): add AI discovery meta tags for llms.txt files
- Add global headTags with ai-terms, llms, llms-full meta tags
- Update landing page link to clarify AI context purpose
* fix(docs): restore accidentally deleted faq.md and glossary.md
Files were removed in 12dd97fe during path restructuring.
* fix(docs): update broken project-readme links to GitHub URL
* feat(schema): add compound trigger format validation