Compare commits
261 Commits
bee45a6d58
...
c3486a8844
| Author | SHA1 | Date |
|---|---|---|
|
|
c3486a8844 | |
|
|
2eb509d246 | |
|
|
ad9cb7a177 | |
|
|
93a1e1dc46 | |
|
|
31ae226bb4 | |
|
|
c28206dca4 | |
|
|
1a6f8d52bc | |
|
|
1cb913523e | |
|
|
a2839cbee0 | |
|
|
6a73623f33 | |
|
|
3ca957e229 | |
|
|
9725b0ae90 | |
|
|
182550407c | |
|
|
4b2389231f | |
|
|
9088d4958b | |
|
|
0d2863f77f | |
|
|
a092209267 | |
|
|
1786d1debc | |
|
|
4cb58ba9f3 | |
|
|
871d921072 | |
|
|
3fad46849f | |
|
|
3bb953f18b | |
|
|
43c59f0cff | |
|
|
3c8d865457 | |
|
|
1b8424cf6d | |
|
|
9973b3c35a | |
|
|
1a0da0278f | |
|
|
52ebc3330d | |
|
|
8b13628496 | |
|
|
642b6a0cf4 | |
|
|
fd1e24c5c2 | |
|
|
84bade9a95 | |
|
|
4f1894908c | |
|
|
7a214cc7d8 | |
|
|
ac5cb552c0 | |
|
|
be555aad8b | |
|
|
22035ef015 | |
|
|
f0e43f02e2 | |
|
|
0380656de6 | |
|
|
5a1f356e2c | |
|
|
21c2a48ab2 | |
|
|
ebbc6d2a33 | |
|
|
f0c7cf41c7 | |
|
|
0580164bdc | |
|
|
72f6963253 | |
|
|
3bae0cba6a | |
|
|
e84874e9f0 | |
|
|
fcd0873d22 | |
|
|
96091cb74d | |
|
|
93d03e5f80 | |
|
|
f3f606a9ce | |
|
|
9636e86b75 | |
|
|
88aa53506a | |
|
|
653c3ae152 | |
|
|
39359ddbcd | |
|
|
f036c21d13 | |
|
|
cc300b3940 | |
|
|
6de6f45086 | |
|
|
a1418dfd28 | |
|
|
e5062a8bbb | |
|
|
21123d6349 | |
|
|
f6c2854ed9 | |
|
|
b8388ff227 | |
|
|
80604b45fe | |
|
|
bce72fe18d | |
|
|
6742b1ff7b | |
|
|
e21d6b36ae | |
|
|
cad25817eb | |
|
|
aa2a9a2818 | |
|
|
be6611570a | |
|
|
28954fea79 | |
|
|
bed9052d49 | |
|
|
ba0c59128d | |
|
|
8e8432e138 | |
|
|
2f4c9ca879 | |
|
|
ebe490a505 | |
|
|
6dc9ce0090 | |
|
|
0bf6cb3380 | |
|
|
d42de639bc | |
|
|
082abc1a17 | |
|
|
07f1a44c5c | |
|
|
d1163f85e1 | |
|
|
cbb9a2a0c9 | |
|
|
45d125f3b5 | |
|
|
ce23cb5d5a | |
|
|
fdad19ebd7 | |
|
|
09bca114e5 | |
|
|
6a91eb6855 | |
|
|
f12e38e003 | |
|
|
17cd19f07b | |
|
|
4404b4bc9a | |
|
|
8efc8c309c | |
|
|
4937ce1bc2 | |
|
|
ac994d683d | |
|
|
1397c8f44a | |
|
|
1558a68a0a | |
|
|
cb16a4fac2 | |
|
|
de565221d8 | |
|
|
6ee4062e56 | |
|
|
75292af47c | |
|
|
a2f4bfea8f | |
|
|
098c96740c | |
|
|
5de8a78c6a | |
|
|
42b1d0f657 | |
|
|
1ec0d8ba43 | |
|
|
2a3708fd32 | |
|
|
e794a81ee2 | |
|
|
2aa5cddbe6 | |
|
|
67232c11cc | |
|
|
2622b5d094 | |
|
|
71c6d5c924 | |
|
|
4bfb076724 | |
|
|
f5813f26f2 | |
|
|
02cfaf64a4 | |
|
|
a98bf008fc | |
|
|
fa9c10ec05 | |
|
|
d8ab6efa1f | |
|
|
cbb8b98876 | |
|
|
9fa51d996b | |
|
|
ccfd818ebd | |
|
|
a6fdf4349f | |
|
|
da4426237e | |
|
|
f076957807 | |
|
|
5a06b56eaa | |
|
|
7f0ffb54c0 | |
|
|
a136713dc9 | |
|
|
1dd6668a0d | |
|
|
87f47625da | |
|
|
b42f1e732a | |
|
|
9f8f7f4a3e | |
|
|
6c83482513 | |
|
|
5c24754627 | |
|
|
fe86785dbf | |
|
|
0efe81faec | |
|
|
b1209a97da | |
|
|
73e5552aad | |
|
|
f7cd62acba | |
|
|
9976f06e46 | |
|
|
1338e4852d | |
|
|
6c259bbbc5 | |
|
|
f15b2d129f | |
|
|
f04a1ba8d8 | |
|
|
b9b135573d | |
|
|
709b4e8fc9 | |
|
|
930b5fd7ea | |
|
|
6721904adb | |
|
|
74391d712b | |
|
|
93a808a3d6 | |
|
|
54d097c8ca | |
|
|
fb4d9169a6 | |
|
|
71630bc4e9 | |
|
|
211c7e38c3 | |
|
|
e0a56489f7 | |
|
|
2d78e1d942 | |
|
|
7e6c26cd04 | |
|
|
b3d0810042 | |
|
|
df5c32e0dd | |
|
|
d343fbe55f | |
|
|
b0d4bf7e28 | |
|
|
9471c832d5 | |
|
|
2c23522d87 | |
|
|
089c19d7ab | |
|
|
b9926e1c4a | |
|
|
304ef02427 | |
|
|
122ef9b43c | |
|
|
2b2b9201a7 | |
|
|
516557451a | |
|
|
f3d6ee2cb8 | |
|
|
9d17cee2a8 | |
|
|
f4084ea199 | |
|
|
b93d0087db | |
|
|
6ff29d4707 | |
|
|
4cbbeb6602 | |
|
|
3678dbe3ff | |
|
|
40bb9abd31 | |
|
|
d050711b07 | |
|
|
7a0fe16251 | |
|
|
1457e0b552 | |
|
|
2d64254ff6 | |
|
|
e7f87af938 | |
|
|
8886805856 | |
|
|
7ea11c2db9 | |
|
|
f374f2e17d | |
|
|
76d5db5395 | |
|
|
67f0501a67 | |
|
|
c9658e0039 | |
|
|
717e013f55 | |
|
|
aecead265f | |
|
|
a64e4de621 | |
|
|
cc2a4142d4 | |
|
|
6ce3801dff | |
|
|
380a0af24b | |
|
|
a0c58a1814 | |
|
|
b46f42ec1e | |
|
|
a62e7a3c25 | |
|
|
74b53e13a7 | |
|
|
6a98b94949 | |
|
|
8dbc9b375d | |
|
|
6cb0cc40fc | |
|
|
bc8d239834 | |
|
|
e97aecda28 | |
|
|
ac769b230f | |
|
|
9e7aeec385 | |
|
|
405fd93e50 | |
|
|
5f92146a29 | |
|
|
df4d53de0e | |
|
|
d2f15ef776 | |
|
|
a4ecc03dcc | |
|
|
79a829b591 | |
|
|
80671650c2 | |
|
|
25d24d02c4 | |
|
|
037c34b897 | |
|
|
75867b0bea | |
|
|
d39fcd5938 | |
|
|
8ba428ee35 | |
|
|
997c2e3655 | |
|
|
521f1e15ca | |
|
|
2e88b846f7 | |
|
|
88e576d10b | |
|
|
9cd6e3826d | |
|
|
e073aee30b | |
|
|
8f1cb7fb70 | |
|
|
a48fd4aae8 | |
|
|
75ec4aa504 | |
|
|
7b4875be79 | |
|
|
c57506464f | |
|
|
fcbcaa6831 | |
|
|
fd26a2e0f2 | |
|
|
904b8c0dff | |
|
|
861716fbe3 | |
|
|
0ba809c3e8 | |
|
|
42aa184074 | |
|
|
5a5ade333a | |
|
|
7f7ce8c5e3 | |
|
|
5e1149dc14 | |
|
|
df9a7f9b67 | |
|
|
9cd362d2d8 | |
|
|
e64cef80b6 | |
|
|
32693f1a6b | |
|
|
874ae40bb2 | |
|
|
6292b0323f | |
|
|
3339f24890 | |
|
|
c0877e795f | |
|
|
ffd7d53be5 | |
|
|
031a9093a1 | |
|
|
2a12c6b2f0 | |
|
|
bb046f5062 | |
|
|
2b809e56a4 | |
|
|
5988fe0506 | |
|
|
61d89c82ef | |
|
|
30a98633cd | |
|
|
b7315c6e32 | |
|
|
6a0046917a | |
|
|
c8f5b60598 | |
|
|
7bc2b5e0e0 | |
|
|
1ed5c9d94b | |
|
|
fb76895145 | |
|
|
ebf1513069 | |
|
|
10f02a8f15 | |
|
|
7857b17626 | |
|
|
063aa58b8d |
|
|
@ -1,6 +1,7 @@
|
||||||
# Augment Code Review Guidelines for BMAD-METHOD
|
# Augment Code Review Guidelines for BMAD-METHOD
|
||||||
# https://docs.augmentcode.com/codereview/overview
|
# https://docs.augmentcode.com/codereview/overview
|
||||||
# Focus: Workflow validation and quality
|
# Focus: Skill validation and quality
|
||||||
|
# Canonical rules: tools/skill-validator.md (single source of truth)
|
||||||
|
|
||||||
file_paths_to_ignore:
|
file_paths_to_ignore:
|
||||||
# --- Shared baseline: tool configs ---
|
# --- Shared baseline: tool configs ---
|
||||||
|
|
@ -48,123 +49,17 @@ file_paths_to_ignore:
|
||||||
|
|
||||||
areas:
|
areas:
|
||||||
# ============================================
|
# ============================================
|
||||||
# WORKFLOW STRUCTURE RULES
|
# SKILL FILES
|
||||||
# ============================================
|
# ============================================
|
||||||
workflow_structure:
|
skill_files:
|
||||||
description: "Workflow folder organization and required components"
|
description: "All skill content — SKILL.md, workflow.md, step files, data files, and templates within skill directories"
|
||||||
globs:
|
globs:
|
||||||
|
- "src/**/skills/**"
|
||||||
- "src/**/workflows/**"
|
- "src/**/workflows/**"
|
||||||
|
- "src/**/tasks/**"
|
||||||
rules:
|
rules:
|
||||||
- id: "workflow_entry_point_required"
|
- id: "skill_validation"
|
||||||
description: "Every workflow folder must have workflow.md as entry point"
|
description: "Apply the full rule catalog defined in tools/skill-validator.md. That file is the single source of truth for all skill validation rules covering SKILL.md metadata, workflow.md constraints, step file structure, path references, variable resolution, sequential execution, and skill invocation syntax."
|
||||||
severity: "high"
|
|
||||||
|
|
||||||
- id: "sharded_workflow_steps_folder"
|
|
||||||
description: "Sharded workflows (using workflow.md) must have steps/ folder with numbered files (step-01-*.md, step-02-*.md)"
|
|
||||||
severity: "high"
|
|
||||||
|
|
||||||
- id: "workflow_step_limit"
|
|
||||||
description: "Workflows should have 5-10 steps maximum to prevent context loss in LLM execution"
|
|
||||||
severity: "medium"
|
|
||||||
|
|
||||||
# ============================================
|
|
||||||
# WORKFLOW ENTRY FILE RULES
|
|
||||||
# ============================================
|
|
||||||
workflow_definitions:
|
|
||||||
description: "Workflow entry files (workflow.md)"
|
|
||||||
globs:
|
|
||||||
- "src/**/workflows/**/workflow.md"
|
|
||||||
rules:
|
|
||||||
- id: "workflow_name_required"
|
|
||||||
description: "Workflow entry files must define 'name' field in frontmatter or root element"
|
|
||||||
severity: "high"
|
|
||||||
|
|
||||||
- id: "workflow_description_required"
|
|
||||||
description: "Workflow entry files must include 'description' explaining the workflow's purpose"
|
|
||||||
severity: "high"
|
|
||||||
|
|
||||||
- id: "workflow_installed_path"
|
|
||||||
description: "Workflows should define installed_path for relative file references within the workflow"
|
|
||||||
severity: "medium"
|
|
||||||
|
|
||||||
- id: "valid_step_references"
|
|
||||||
description: "Step file references in workflow entry must point to existing files"
|
|
||||||
severity: "high"
|
|
||||||
|
|
||||||
# ============================================
|
|
||||||
# SHARDED WORKFLOW STEP RULES
|
|
||||||
# ============================================
|
|
||||||
workflow_steps:
|
|
||||||
description: "Individual step files in sharded workflows"
|
|
||||||
globs:
|
|
||||||
- "src/**/workflows/**/steps/step-*.md"
|
|
||||||
rules:
|
|
||||||
- id: "step_goal_required"
|
|
||||||
description: "Each step must clearly state its goal (## STEP GOAL, ## YOUR TASK, or step n='X' goal='...')"
|
|
||||||
severity: "high"
|
|
||||||
|
|
||||||
- id: "step_mandatory_rules"
|
|
||||||
description: "Step files should include MANDATORY EXECUTION RULES section with universal agent behavior rules"
|
|
||||||
severity: "medium"
|
|
||||||
|
|
||||||
- id: "step_context_boundaries"
|
|
||||||
description: "Step files should define CONTEXT BOUNDARIES explaining available context and limits"
|
|
||||||
severity: "medium"
|
|
||||||
|
|
||||||
- id: "step_success_metrics"
|
|
||||||
description: "Step files should include SUCCESS METRICS section with ✅ checkmarks for validation criteria"
|
|
||||||
severity: "medium"
|
|
||||||
|
|
||||||
- id: "step_failure_modes"
|
|
||||||
description: "Step files should include FAILURE MODES section with ❌ marks for anti-patterns to avoid"
|
|
||||||
severity: "medium"
|
|
||||||
|
|
||||||
- id: "step_next_step_reference"
|
|
||||||
description: "Step files should reference the next step file path for sequential execution"
|
|
||||||
severity: "medium"
|
|
||||||
|
|
||||||
- id: "step_no_forward_loading"
|
|
||||||
description: "Steps must NOT load future step files until current step completes - just-in-time loading only"
|
|
||||||
severity: "high"
|
|
||||||
|
|
||||||
- id: "valid_file_references"
|
|
||||||
description: "File path references using {variable}/filename.md must point to existing files"
|
|
||||||
severity: "high"
|
|
||||||
|
|
||||||
- id: "step_naming"
|
|
||||||
description: "Step files must be named step-NN-description.md (e.g., step-01-init.md, step-02-context.md)"
|
|
||||||
severity: "medium"
|
|
||||||
|
|
||||||
- id: "halt_before_menu"
|
|
||||||
description: "Steps presenting user menus ([C] Continue, [a] Advanced, etc.) must HALT and wait for response"
|
|
||||||
severity: "high"
|
|
||||||
|
|
||||||
# ============================================
|
|
||||||
# WORKFLOW CONTENT QUALITY
|
|
||||||
# ============================================
|
|
||||||
workflow_content:
|
|
||||||
description: "Content quality and consistency rules for all workflow files"
|
|
||||||
globs:
|
|
||||||
- "src/**/workflows/**/*.md"
|
|
||||||
rules:
|
|
||||||
- id: "communication_language_variable"
|
|
||||||
description: "Workflows should use {communication_language} variable for agent output language consistency"
|
|
||||||
severity: "low"
|
|
||||||
|
|
||||||
- id: "path_placeholders_required"
|
|
||||||
description: "Use path placeholders (e.g. {project-root}, {installed_path}, {output_folder}) instead of hardcoded paths"
|
|
||||||
severity: "medium"
|
|
||||||
|
|
||||||
- id: "no_time_estimates"
|
|
||||||
description: "Workflows should NOT include time estimates - AI development speed varies significantly"
|
|
||||||
severity: "low"
|
|
||||||
|
|
||||||
- id: "facilitator_not_generator"
|
|
||||||
description: "Workflow agents should act as facilitators (guide user input) not content generators (create without input)"
|
|
||||||
severity: "medium"
|
|
||||||
|
|
||||||
- id: "no_skip_optimization"
|
|
||||||
description: "Workflows must execute steps sequentially - no skipping or 'optimizing' step order"
|
|
||||||
severity: "high"
|
severity: "high"
|
||||||
|
|
||||||
# ============================================
|
# ============================================
|
||||||
|
|
@ -183,27 +78,10 @@ areas:
|
||||||
description: "Agent files must define persona with role, identity, communication_style, and principles"
|
description: "Agent files must define persona with role, identity, communication_style, and principles"
|
||||||
severity: "high"
|
severity: "high"
|
||||||
|
|
||||||
- id: "agent_menu_valid_workflows"
|
- id: "agent_menu_valid_skills"
|
||||||
description: "Menu triggers must reference valid workflow paths that exist"
|
description: "Menu triggers must reference valid skill names that exist"
|
||||||
severity: "high"
|
severity: "high"
|
||||||
|
|
||||||
# ============================================
|
|
||||||
# TEMPLATES
|
|
||||||
# ============================================
|
|
||||||
templates:
|
|
||||||
description: "Template files for workflow outputs"
|
|
||||||
globs:
|
|
||||||
- "src/**/template*.md"
|
|
||||||
- "src/**/templates/**/*.md"
|
|
||||||
rules:
|
|
||||||
- id: "placeholder_syntax"
|
|
||||||
description: "Use {variable_name} or {{variable_name}} syntax consistently for placeholders"
|
|
||||||
severity: "medium"
|
|
||||||
|
|
||||||
- id: "template_sections_marked"
|
|
||||||
description: "Template sections that need generation should be clearly marked (e.g., <!-- GENERATE: section_name -->)"
|
|
||||||
severity: "low"
|
|
||||||
|
|
||||||
# ============================================
|
# ============================================
|
||||||
# DOCUMENTATION
|
# DOCUMENTATION
|
||||||
# ============================================
|
# ============================================
|
||||||
|
|
|
||||||
|
|
@ -1,6 +0,0 @@
|
||||||
---
|
|
||||||
name: bmad-os-audit-file-refs
|
|
||||||
description: Audit BMAD source files for file-reference convention violations using parallel Haiku subagents. Use when users requests an "audit file references" for a skill, workflow or task.
|
|
||||||
---
|
|
||||||
|
|
||||||
Read `prompts/instructions.md` and execute.
|
|
||||||
|
|
@ -1,59 +0,0 @@
|
||||||
# audit-file-refs
|
|
||||||
|
|
||||||
Audit new-format BMAD source files for file-reference convention violations using parallel Haiku subagents.
|
|
||||||
|
|
||||||
## Convention
|
|
||||||
|
|
||||||
In new-format BMAD workflow and task files (`src/bmm/`, `src/core/`, `src/utility/`), every file path reference must use one of these **valid** forms:
|
|
||||||
|
|
||||||
- `{project-root}/_bmad/path/to/file.ext` — canonical form, always correct
|
|
||||||
- `{installed_path}/relative/path` — valid in new-format step files (always defined by workflow.md before any step is reached)
|
|
||||||
- Template/runtime variables: `{nextStepFile}`, `{workflowFile}`, `{{mustache}}`, `{output_folder}`, `{communication_language}`, etc. — skip these, they are substituted at runtime
|
|
||||||
|
|
||||||
**Flag any reference that uses:**
|
|
||||||
|
|
||||||
- `./step-NN.md` or `../something.md` — relative paths
|
|
||||||
- `step-NN.md` — bare filename with no path prefix
|
|
||||||
- `steps/step-NN.md` — bare steps-relative path (missing `{project-root}/_bmad/...` prefix)
|
|
||||||
- `` `_bmad/core/tasks/help.md` `` — bare `_bmad/` path (missing `{project-root}/`)
|
|
||||||
- `/Users/...`, `/home/...`, `C:\...` — absolute system paths
|
|
||||||
|
|
||||||
References inside fenced code blocks (``` ``` ```) are examples — skip them.
|
|
||||||
|
|
||||||
Old-format files in `src/bmm/workflows/4-implementation/` use `{installed_path}` by design within the XML calling chain — exclude that directory entirely.
|
|
||||||
|
|
||||||
## Steps
|
|
||||||
|
|
||||||
1. Run this command to get the file list:
|
|
||||||
```
|
|
||||||
find src/bmm src/core src/utility -type f \( -name "*.md" -o -name "*.yaml" \) | grep -v "4-implementation" | sort
|
|
||||||
```
|
|
||||||
|
|
||||||
2. Divide the resulting file paths into batches of roughly 20 files each.
|
|
||||||
|
|
||||||
3. For each batch, spawn a subagent (`subagent_type: "Explore"`, `model: "haiku"`) with this prompt (fill in the actual file paths):
|
|
||||||
|
|
||||||
> Read each of these files (use the Read tool on each):
|
|
||||||
> [list the file paths from this batch]
|
|
||||||
>
|
|
||||||
> For each file, identify every line that contains a file path reference that violates the convention described below. Skip references inside fenced code blocks. Skip template variables (anything containing `{` that isn't `{project-root}` or `{installed_path}`).
|
|
||||||
>
|
|
||||||
> **Valid references:** `{project-root}/_bmad/...`, `{installed_path}/...`, template variables.
|
|
||||||
> **Flag:** bare filenames (`step-NN.md`), `./` or `../` relative paths, bare `steps/` paths, bare `_bmad/` paths (without `{project-root}/`), absolute system paths.
|
|
||||||
>
|
|
||||||
> Return findings as a list:
|
|
||||||
> `path/to/file.md:LINE_NUMBER | VIOLATION_TYPE | offending text`
|
|
||||||
>
|
|
||||||
> If a file has no violations, include it as: `path/to/file.md | clean`
|
|
||||||
>
|
|
||||||
> End your response with a single line: `FILES CHECKED: N` where N is the exact number of files you read.
|
|
||||||
|
|
||||||
4. Collect all findings from all subagents.
|
|
||||||
|
|
||||||
5. **Self-check before reporting:** Count the total number of files returned by the `find` command. Sum the `FILES CHECKED: N` values across all subagent responses. If the totals do not match, identify which files are missing and re-run subagents for those files before proceeding. Do not produce the final report until all files are accounted for.
|
|
||||||
|
|
||||||
6. Output a final report:
|
|
||||||
- Group findings by violation type
|
|
||||||
- List each finding as `file:line — offending text`
|
|
||||||
- Show total count of violations and number of affected files
|
|
||||||
- If nothing found, say "All files conform to the convention."
|
|
||||||
|
|
@ -1,177 +0,0 @@
|
||||||
---
|
|
||||||
name: bmad-os-changelog-social
|
|
||||||
description: Generate social media announcements for Discord, Twitter, and LinkedIn from the latest changelog entry. Use when user asks to 'create release announcement' or 'create social posts' or share changelog updates.
|
|
||||||
---
|
|
||||||
|
|
||||||
# Changelog Social
|
|
||||||
|
|
||||||
Generate engaging social media announcements from changelog entries.
|
|
||||||
|
|
||||||
## Workflow
|
|
||||||
|
|
||||||
### Step 1: Extract Changelog Entry
|
|
||||||
|
|
||||||
Read `./CHANGELOG.md` and extract the latest version entry. The changelog follows this format:
|
|
||||||
|
|
||||||
```markdown
|
|
||||||
## [VERSION]
|
|
||||||
|
|
||||||
### 🎁 Features
|
|
||||||
* **Title** — Description
|
|
||||||
|
|
||||||
### 🐛 Bug Fixes
|
|
||||||
* **Title** — Description
|
|
||||||
|
|
||||||
### 📚 Documentation
|
|
||||||
* **Title** — Description
|
|
||||||
|
|
||||||
### 🔧 Maintenance
|
|
||||||
* **Title** — Description
|
|
||||||
```
|
|
||||||
|
|
||||||
Parse:
|
|
||||||
- **Version number** (e.g., `6.0.0-Beta.5`)
|
|
||||||
- **Features** - New functionality, enhancements
|
|
||||||
- **Bug Fixes** - Fixes users will care about
|
|
||||||
- **Documentation** - New or improved docs
|
|
||||||
- **Maintenance** - Dependency updates, tooling improvements
|
|
||||||
|
|
||||||
### Step 2: Get Git Contributors
|
|
||||||
|
|
||||||
Use git log to find contributors since the previous version. Get commits between the current version tag and the previous one:
|
|
||||||
|
|
||||||
```bash
|
|
||||||
# Find the previous version tag first
|
|
||||||
git tag --sort=-version:refname | head -5
|
|
||||||
|
|
||||||
# Get commits between versions with PR numbers and authors
|
|
||||||
git log <previous-tag>..<current-tag> --pretty=format:"%h|%s|%an" --grep="#"
|
|
||||||
```
|
|
||||||
|
|
||||||
Extract PR numbers from commit messages that contain `#` followed by digits. Compile unique contributors.
|
|
||||||
|
|
||||||
### Step 3: Generate Discord Announcement
|
|
||||||
|
|
||||||
**Limit: 2,000 characters per message.** Split into multiple messages if needed.
|
|
||||||
|
|
||||||
Use this template style:
|
|
||||||
|
|
||||||
```markdown
|
|
||||||
🚀 **BMad vVERSION RELEASED!**
|
|
||||||
|
|
||||||
🎉 [Brief hype sentence]
|
|
||||||
|
|
||||||
🪥 **KEY HIGHLIGHT** - [One-line summary]
|
|
||||||
|
|
||||||
🎯 **CATEGORY NAME**
|
|
||||||
• Feature one - brief description
|
|
||||||
• Feature two - brief description
|
|
||||||
• Coming soon: Future teaser
|
|
||||||
|
|
||||||
🔧 **ANOTHER CATEGORY**
|
|
||||||
• Fix or feature
|
|
||||||
• Another item
|
|
||||||
|
|
||||||
📚 **DOCS OR OTHER**
|
|
||||||
• Item
|
|
||||||
• Item with link
|
|
||||||
|
|
||||||
🌟 **COMMUNITY PHILOSOPHY** (optional - include for major releases)
|
|
||||||
• Everything is FREE - No paywalls
|
|
||||||
• Knowledge shared, not sold
|
|
||||||
|
|
||||||
📊 **STATS**
|
|
||||||
X commits | Y PRs merged | Z files changed
|
|
||||||
|
|
||||||
🙏 **CONTRIBUTORS**
|
|
||||||
@username1 (X PRs!), @username2 (Y PRs!)
|
|
||||||
@username3, @username4, username5 + dependabot 🛡️
|
|
||||||
Community-driven FTW! 🌟
|
|
||||||
|
|
||||||
📦 **INSTALL:**
|
|
||||||
`npx bmad-method@VERSION install`
|
|
||||||
|
|
||||||
⭐ **SUPPORT US:**
|
|
||||||
🌟 GitHub: github.com/bmad-code-org/BMAD-METHOD/
|
|
||||||
📺 YouTube: youtube.com/@BMadCode
|
|
||||||
☕ Donate: buymeacoffee.com/bmad
|
|
||||||
|
|
||||||
🔥 **Next version tease!**
|
|
||||||
```
|
|
||||||
|
|
||||||
**Content Strategy:**
|
|
||||||
- Focus on **user impact** - what's better for them?
|
|
||||||
- Highlight **annoying bugs fixed** that frustrated users
|
|
||||||
- Show **new capabilities** that enable workflows
|
|
||||||
- Keep it **punchy** - use emojis and short bullets
|
|
||||||
- Add **personality** - excitement, humor, gratitude
|
|
||||||
|
|
||||||
### Step 4: Generate Twitter Post
|
|
||||||
|
|
||||||
**Limit: 25,000 characters per tweet (Premium).** With Premium, use a single comprehensive post matching the Discord style (minus Discord-specific formatting). Aim for 1,500-3,000 characters for better engagement.
|
|
||||||
|
|
||||||
**Threads are optional** — only use for truly massive releases where you want multiple engagement points.
|
|
||||||
|
|
||||||
See `examples/twitter-example.md` for the single-post Premium format.
|
|
||||||
|
|
||||||
## Content Selection Guidelines
|
|
||||||
|
|
||||||
**Include:**
|
|
||||||
- New features that change workflows
|
|
||||||
- Bug fixes for annoying/blocking issues
|
|
||||||
- Documentation that helps users
|
|
||||||
- Performance improvements
|
|
||||||
- New agents or workflows
|
|
||||||
- Breaking changes (call out clearly)
|
|
||||||
|
|
||||||
**Skip/Minimize:**
|
|
||||||
- Internal refactoring
|
|
||||||
- Dependency updates (unless user-facing)
|
|
||||||
- Test improvements
|
|
||||||
- Minor style fixes
|
|
||||||
|
|
||||||
**Emphasize:**
|
|
||||||
- "Finally fixed" issues
|
|
||||||
- "Faster" operations
|
|
||||||
- "Easier" workflows
|
|
||||||
- "Now supports" capabilities
|
|
||||||
|
|
||||||
## Examples
|
|
||||||
|
|
||||||
Reference example posts in `examples/` for tone and formatting guidance:
|
|
||||||
|
|
||||||
- **discord-example.md** — Full Discord announcement with emojis, sections, contributor shout-outs
|
|
||||||
- **twitter-example.md** — Twitter thread format (5 tweets max for major releases)
|
|
||||||
- **linkedin-example.md** — Professional post for major/minor releases with significant features
|
|
||||||
|
|
||||||
**When to use LinkedIn:**
|
|
||||||
- Major version releases (e.g., v6.0.0 Beta, v7.0.0)
|
|
||||||
- Minor releases with exceptional new features
|
|
||||||
- Community milestone announcements
|
|
||||||
|
|
||||||
Read the appropriate example file before generating to match the established style and voice.
|
|
||||||
|
|
||||||
## Output Format
|
|
||||||
|
|
||||||
**CRITICAL: ALWAYS write to files** - Create files in `_bmad-output/social/` directory:
|
|
||||||
|
|
||||||
1. `{repo-name}-discord-{version}.md` - Discord announcement
|
|
||||||
2. `{repo-name}-twitter-{version}.md` - Twitter post
|
|
||||||
3. `{repo-name}-linkedin-{version}.md` - LinkedIn post (if applicable)
|
|
||||||
|
|
||||||
Also present a preview in the chat:
|
|
||||||
|
|
||||||
```markdown
|
|
||||||
## Discord Announcement
|
|
||||||
|
|
||||||
[paste Discord content here]
|
|
||||||
|
|
||||||
## Twitter Post
|
|
||||||
|
|
||||||
[paste Twitter content here]
|
|
||||||
```
|
|
||||||
|
|
||||||
Files created:
|
|
||||||
- `_bmad-output/social/{filename}`
|
|
||||||
|
|
||||||
Offer to make adjustments if the user wants different emphasis, tone, or content.
|
|
||||||
|
|
@ -1,53 +0,0 @@
|
||||||
🚀 **BMad v6.0.0-alpha.23 RELEASED!**
|
|
||||||
|
|
||||||
🎉 Huge update - almost beta!
|
|
||||||
|
|
||||||
🪟 **WINDOWS INSTALLER FIXED** - Menu arrows issue should be fixed! CRLF & ESM problems resolved.
|
|
||||||
|
|
||||||
🎯 **PRD WORKFLOWS IMPROVED**
|
|
||||||
• Validation & Edit workflows added!
|
|
||||||
• PRD Cohesion check ensures document flows beautifully
|
|
||||||
• Coming soon: Use of subprocess optimization (context saved!)
|
|
||||||
• Coming soon: Final format polish step in all workflows - Human consumption OR hyper-optimized LLM condensed initially!
|
|
||||||
|
|
||||||
🔧 **WORKFLOW CREATOR & VALIDATOR**
|
|
||||||
• Subprocess support for advanced optimization
|
|
||||||
• Path violation checks ensure integrity
|
|
||||||
• Beyond error checking - offers optimization & flow suggestions!
|
|
||||||
|
|
||||||
📚 **NEW DOCS SITE** - docs.bmad-method.org
|
|
||||||
• Diataxis framework: Tutorials, How-To, Explanations, References
|
|
||||||
• Current docs still being revised
|
|
||||||
• Tutorials, blogs & explainers coming soon!
|
|
||||||
|
|
||||||
💡 **BRAINSTORMING REVOLUTION**
|
|
||||||
• 100+ idea goal (quantity-first!)
|
|
||||||
• Anti-bias protocol (pivot every 10 ideas)
|
|
||||||
• Chain-of-thought + simulated temperature prompts
|
|
||||||
• Coming soon: SubProcessing (on-the-fly sub agents)
|
|
||||||
|
|
||||||
🌟 **COMMUNITY PHILOSOPHY**
|
|
||||||
• Everything is FREE - No paywalls, no gated content
|
|
||||||
• Knowledge shared, not sold
|
|
||||||
• No premium tiers - full access to our ideas
|
|
||||||
|
|
||||||
📊 **27 commits | 217 links converted | 42+ docs created**
|
|
||||||
|
|
||||||
🙏 **17 Community PR Authors in this release!**
|
|
||||||
@lum (6 PRs!), @q00 (3 PRs!), @phil (2 PRs!)
|
|
||||||
@mike, @alex, @ramiz, @sjennings + dependabot 🛡️
|
|
||||||
Community-driven FTW! 🌟
|
|
||||||
|
|
||||||
📦 **INSTALL ALPHA:**
|
|
||||||
`npx bmad-method install`
|
|
||||||
|
|
||||||
⭐ **SUPPORT US:**
|
|
||||||
🌟 GitHub: github.com/bmad-code-org/BMAD-METHOD/
|
|
||||||
📺 YouTube: youtube.com/@BMadCode
|
|
||||||
|
|
||||||
🎤 **SPEAKING & MEDIA**
|
|
||||||
Available for conferences, podcasts, media appearances!
|
|
||||||
Topics: AI-Native Organizations (Any Industry), BMad Method
|
|
||||||
DM on Discord for inquiries!
|
|
||||||
|
|
||||||
🔥 **V6 Beta is DAYS away!** January 22nd ETA - new features such as xyz and abc bug fixes!
|
|
||||||
|
|
@ -1,49 +0,0 @@
|
||||||
🚀 **Announcing BMad Method v6.0.0 Beta - AI-Native Agile Development Framework**
|
|
||||||
|
|
||||||
I'm excited to share that BMad Method, the open-source AI-driven agile development framework, is entering Beta! After 27 alpha releases and countless community contributions, we're approaching a major milestone.
|
|
||||||
|
|
||||||
**What's New in v6.0.0-alpha.23**
|
|
||||||
|
|
||||||
🪟 **Windows Compatibility Fixed**
|
|
||||||
We've resolved the installer issues that affected Windows users. The menu arrows problem, CRLF handling, and ESM compatibility are all resolved.
|
|
||||||
|
|
||||||
🎯 **Enhanced PRD Workflows**
|
|
||||||
Our Product Requirements Document workflows now include validation and editing capabilities, with a new cohesion check that ensures your documents flow beautifully. Subprocess optimization is coming soon to save even more context.
|
|
||||||
|
|
||||||
🔧 **Workflow Creator & Validator**
|
|
||||||
New tools for creating and validating workflows with subprocess support, path violation checks, and optimization suggestions that go beyond simple error checking.
|
|
||||||
|
|
||||||
📚 **New Documentation Platform**
|
|
||||||
We've launched docs.bmad-method.org using the Diataxis framework - providing clear separation between tutorials, how-to guides, explanations, and references. Our documentation is being continuously revised and expanded.
|
|
||||||
|
|
||||||
💡 **Brainstorming Revolution**
|
|
||||||
Our brainstorming workflows now use research-backed techniques: 100+ idea goals, anti-bias protocols, chain-of-thought reasoning, and simulated temperature prompts for higher divergence.
|
|
||||||
|
|
||||||
**Our Philosophy**
|
|
||||||
|
|
||||||
Everything in BMad Method is FREE. No paywalls, no gated content, no premium tiers. We believe knowledge should be shared, not sold. This is community-driven development at its finest.
|
|
||||||
|
|
||||||
**The Stats**
|
|
||||||
- 27 commits in this release
|
|
||||||
- 217 documentation links converted
|
|
||||||
- 42+ new documents created
|
|
||||||
- 17 community PR authors contributed
|
|
||||||
|
|
||||||
**Get Started**
|
|
||||||
|
|
||||||
```
|
|
||||||
npx bmad-method@alpha install
|
|
||||||
```
|
|
||||||
|
|
||||||
**Learn More**
|
|
||||||
- GitHub: github.com/bmad-code-org/BMAD-METHOD
|
|
||||||
- YouTube: youtube.com/@BMadCode
|
|
||||||
- Docs: docs.bmad-method.org
|
|
||||||
|
|
||||||
**What's Next?**
|
|
||||||
|
|
||||||
Beta is just days away with an ETA of January 22nd. We're also available for conferences, podcasts, and media appearances to discuss AI-Native Organizations and the BMad Method.
|
|
||||||
|
|
||||||
Have you tried BMad Method yet? I'd love to hear about your experience in the comments!
|
|
||||||
|
|
||||||
#AI #SoftwareDevelopment #Agile #OpenSource #DevTools #LLM #AgentEngineering
|
|
||||||
|
|
@ -1,55 +0,0 @@
|
||||||
🚀 **BMad v6.0.0-alpha.23 RELEASED!**
|
|
||||||
|
|
||||||
Huge update - we're almost at Beta! 🎉
|
|
||||||
|
|
||||||
🪟 **WINDOWS INSTALLER FIXED** - Menu arrows issue should be fixed! CRLF & ESM problems resolved.
|
|
||||||
|
|
||||||
🎯 **PRD WORKFLOWS IMPROVED**
|
|
||||||
• Validation & Edit workflows added!
|
|
||||||
• PRD Cohesion check ensures document flows beautifully
|
|
||||||
• Coming soon: Subprocess optimization (context saved!)
|
|
||||||
• Coming soon: Final format polish step in all workflows
|
|
||||||
|
|
||||||
🔧 **WORKFLOW CREATOR & VALIDATOR**
|
|
||||||
• Subprocess support for advanced optimization
|
|
||||||
• Path violation checks ensure integrity
|
|
||||||
• Beyond error checking - offers optimization & flow suggestions!
|
|
||||||
|
|
||||||
📚 **NEW DOCS SITE** - docs.bmad-method.org
|
|
||||||
• Diataxis framework: Tutorials, How-To, Explanations, References
|
|
||||||
• Current docs still being revised
|
|
||||||
• Tutorials, blogs & explainers coming soon!
|
|
||||||
|
|
||||||
💡 **BRAINSTORMING REVOLUTION**
|
|
||||||
• 100+ idea goal (quantity-first!)
|
|
||||||
• Anti-bias protocol (pivot every 10 ideas)
|
|
||||||
• Chain-of-thought + simulated temperature prompts
|
|
||||||
• Coming soon: SubProcessing (on-the-fly sub agents)
|
|
||||||
|
|
||||||
🌟 **COMMUNITY PHILOSOPHY**
|
|
||||||
• Everything is FREE - No paywalls, no gated content
|
|
||||||
• Knowledge shared, not sold
|
|
||||||
• No premium tiers - full access to our ideas
|
|
||||||
|
|
||||||
📊 **27 commits | 217 links converted | 42+ docs created**
|
|
||||||
|
|
||||||
🙏 **17 Community PR Authors in this release!**
|
|
||||||
@lum (6 PRs!), @q00 (3 PRs!), @phil (2 PRs!)
|
|
||||||
@mike, @alex, @ramiz, @sjennings + dependabot 🛡️
|
|
||||||
Community-driven FTW! 🌟
|
|
||||||
|
|
||||||
📦 **INSTALL ALPHA:**
|
|
||||||
`npx bmad-method install`
|
|
||||||
|
|
||||||
⭐ **SUPPORT US:**
|
|
||||||
🌟 GitHub: github.com/bmad-code-org/BMAD-METHOD/
|
|
||||||
📺 YouTube: youtube.com/@BMadCode
|
|
||||||
|
|
||||||
🎤 **SPEAKING & MEDIA**
|
|
||||||
Available for conferences, podcasts, media appearances!
|
|
||||||
Topics: AI-Native Organizations (Any Industry), BMad Method
|
|
||||||
DM on Discord for inquiries!
|
|
||||||
|
|
||||||
🔥 **V6 Beta is DAYS away!** January 22nd ETA!
|
|
||||||
|
|
||||||
#AI #DevTools #Agile #OpenSource #LLM #AgentEngineering
|
|
||||||
|
|
@ -1,6 +0,0 @@
|
||||||
---
|
|
||||||
name: bmad-os-diataxis-style-fix
|
|
||||||
description: Fixes documentation to comply with Diataxis framework and BMad Method style guide rules. Use when user asks to check or fix style of files under the docs folder.
|
|
||||||
---
|
|
||||||
|
|
||||||
Read `prompts/instructions.md` and execute.
|
|
||||||
|
|
@ -1,229 +0,0 @@
|
||||||
# Diataxis Style Fixer
|
|
||||||
|
|
||||||
Automatically fixes documentation to comply with the Diataxis framework and BMad Method style guide.
|
|
||||||
|
|
||||||
## CRITICAL RULES
|
|
||||||
|
|
||||||
- **NEVER commit or push changes** — let the user review first
|
|
||||||
- **NEVER make destructive edits** — preserve all content, only fix formatting
|
|
||||||
- **Use Edit tool** — make targeted fixes, not full file rewrites
|
|
||||||
- **Show summary** — after fixing, list all changes made
|
|
||||||
|
|
||||||
## Input
|
|
||||||
|
|
||||||
Documentation file path or directory to fix. Defaults to `docs/` if not specified.
|
|
||||||
|
|
||||||
## Step 1: Understand Diataxis Framework
|
|
||||||
|
|
||||||
**Diataxis** is a documentation framework that categorizes content into four types based on two axes:
|
|
||||||
|
|
||||||
| | **Learning** (oriented toward future) | **Doing** (oriented toward present) |
|
|
||||||
| -------------- | ----------------------------------------------------------------------------- | ---------------------------------------------------------------------------- |
|
|
||||||
| **Practical** | **Tutorials** — lessons that guide learners through achieving a specific goal | **How-to guides** — step-by-step instructions for solving a specific problem |
|
|
||||||
| **Conceptual** | **Explanation** — content that clarifies and describes underlying concepts | **Reference** — technical descriptions, organized for lookup |
|
|
||||||
|
|
||||||
**Key principles:**
|
|
||||||
- Each document type serves a distinct user need
|
|
||||||
- Don't mix types — a tutorial shouldn't explain concepts deeply
|
|
||||||
- Focus on the user's goal, not exhaustive coverage
|
|
||||||
- Structure follows purpose (tutorials are linear, reference is scannable)
|
|
||||||
|
|
||||||
## Step 2: Read the Style Guide
|
|
||||||
|
|
||||||
Read the project's style guide at `docs/_STYLE_GUIDE.md` to understand all project-specific conventions.
|
|
||||||
|
|
||||||
## Step 3: Detect Document Type
|
|
||||||
|
|
||||||
Based on file location, determine the document type:
|
|
||||||
|
|
||||||
| Location | Diataxis Type |
|
|
||||||
| -------------------- | -------------------- |
|
|
||||||
| `/docs/tutorials/` | Tutorial |
|
|
||||||
| `/docs/how-to/` | How-to guide |
|
|
||||||
| `/docs/explanation/` | Explanation |
|
|
||||||
| `/docs/reference/` | Reference |
|
|
||||||
| `/docs/glossary/` | Reference (glossary) |
|
|
||||||
|
|
||||||
## Step 4: Find and Fix Issues
|
|
||||||
|
|
||||||
For each markdown file, scan for issues and fix them:
|
|
||||||
|
|
||||||
### Universal Fixes (All Doc Types)
|
|
||||||
|
|
||||||
**Horizontal Rules (`---`)**
|
|
||||||
- Remove any `---` outside of YAML frontmatter
|
|
||||||
- Replace with `##` section headers or admonitions as appropriate
|
|
||||||
|
|
||||||
**`####` Headers**
|
|
||||||
- Replace with bold text: `#### Header` → `**Header**`
|
|
||||||
- Or convert to admonition if it's a warning/notice
|
|
||||||
|
|
||||||
**"Related" or "Next:" Sections**
|
|
||||||
- Remove entire section including links
|
|
||||||
- The sidebar handles navigation
|
|
||||||
|
|
||||||
**Deeply Nested Lists**
|
|
||||||
- Break into sections with `##` headers
|
|
||||||
- Flatten to max 3 levels
|
|
||||||
|
|
||||||
**Code Blocks for Dialogue/Examples**
|
|
||||||
- Convert to admonitions:
|
|
||||||
```
|
|
||||||
:::note[Example]
|
|
||||||
[content]
|
|
||||||
:::
|
|
||||||
```
|
|
||||||
|
|
||||||
**Bold Paragraph Callouts**
|
|
||||||
- Convert to admonitions with appropriate type
|
|
||||||
|
|
||||||
**Too Many Admonitions**
|
|
||||||
- Limit to 1-2 per section (tutorials allow 3-4 per major section)
|
|
||||||
- Consolidate related admonitions
|
|
||||||
- Remove less critical ones if over limit
|
|
||||||
|
|
||||||
**Table Cells / List Items > 2 Sentences**
|
|
||||||
- Break into multiple rows/cells
|
|
||||||
- Or shorten to 1-2 sentences
|
|
||||||
|
|
||||||
**Header Budget Exceeded**
|
|
||||||
- Merge related sections
|
|
||||||
- Convert some `##` to `###` subsections
|
|
||||||
- Goal: 8-12 `##` per doc; 2-3 `###` per section
|
|
||||||
|
|
||||||
### Type-Specific Fixes
|
|
||||||
|
|
||||||
**Tutorials** (`/docs/tutorials/`)
|
|
||||||
- Ensure hook describes outcome in 1-2 sentences
|
|
||||||
- Add "What You'll Learn" bullet section if missing
|
|
||||||
- Add `:::note[Prerequisites]` if missing
|
|
||||||
- Add `:::tip[Quick Path]` TL;DR at top if missing
|
|
||||||
- Use tables for phases, commands, agents
|
|
||||||
- Add "What You've Accomplished" section if missing
|
|
||||||
- Add Quick Reference table if missing
|
|
||||||
- Add Common Questions section if missing
|
|
||||||
- Add Getting Help section if missing
|
|
||||||
- Add `:::tip[Key Takeaways]` at end if missing
|
|
||||||
|
|
||||||
**How-To** (`/docs/how-to/`)
|
|
||||||
- Ensure hook starts with "Use the `X` workflow to..."
|
|
||||||
- Add "When to Use This" with 3-5 bullets if missing
|
|
||||||
- Add `:::note[Prerequisites]` if missing
|
|
||||||
- Ensure steps are numbered `###` with action verbs
|
|
||||||
- Add "What You Get" describing outputs if missing
|
|
||||||
|
|
||||||
**Explanation** (`/docs/explanation/`)
|
|
||||||
- Ensure hook states what document explains
|
|
||||||
- Organize content into scannable `##` sections
|
|
||||||
- Add comparison tables for 3+ options
|
|
||||||
- Link to how-to guides for procedural questions
|
|
||||||
- Limit to 2-3 admonitions per document
|
|
||||||
|
|
||||||
**Reference** (`/docs/reference/`)
|
|
||||||
- Ensure hook states what document references
|
|
||||||
- Ensure structure matches reference type
|
|
||||||
- Use consistent item structure throughout
|
|
||||||
- Use tables for structured/comparative data
|
|
||||||
- Link to explanation docs for conceptual depth
|
|
||||||
- Limit to 1-2 admonitions per document
|
|
||||||
|
|
||||||
**Glossary** (`/docs/glossary/` or glossary files)
|
|
||||||
- Ensure categories as `##` headers
|
|
||||||
- Ensure terms in tables (not individual headers)
|
|
||||||
- Definitions 1-2 sentences max
|
|
||||||
- Bold term names in cells
|
|
||||||
|
|
||||||
## Step 5: Apply Fixes
|
|
||||||
|
|
||||||
For each file with issues:
|
|
||||||
1. Read the file
|
|
||||||
2. Use Edit tool for each fix
|
|
||||||
3. Track what was changed
|
|
||||||
|
|
||||||
## Step 6: Summary
|
|
||||||
|
|
||||||
After processing all files, output a summary:
|
|
||||||
|
|
||||||
```markdown
|
|
||||||
# Style Fixes Applied
|
|
||||||
|
|
||||||
**Files processed:** N
|
|
||||||
**Files modified:** N
|
|
||||||
|
|
||||||
## Changes Made
|
|
||||||
|
|
||||||
### `path/to/file.md`
|
|
||||||
- Removed horizontal rule at line 45
|
|
||||||
- Converted `####` headers to bold text
|
|
||||||
- Added `:::tip[Quick Path]` admonition
|
|
||||||
- Consolidated 3 admonitions into 2
|
|
||||||
|
|
||||||
### `path/to/other.md`
|
|
||||||
- Removed "Related:" section
|
|
||||||
- Fixed table cell length (broke into 2 rows)
|
|
||||||
|
|
||||||
## Review Required
|
|
||||||
|
|
||||||
Please review the changes. When satisfied, commit and push as needed.
|
|
||||||
```
|
|
||||||
|
|
||||||
## Common Patterns
|
|
||||||
|
|
||||||
**Converting `####` to bold:**
|
|
||||||
```markdown
|
|
||||||
#### Important Note
|
|
||||||
Some text here.
|
|
||||||
```
|
|
||||||
→
|
|
||||||
```markdown
|
|
||||||
**Important Note**
|
|
||||||
|
|
||||||
Some text here.
|
|
||||||
```
|
|
||||||
|
|
||||||
**Removing horizontal rule:**
|
|
||||||
```markdown
|
|
||||||
Some content above.
|
|
||||||
|
|
||||||
---
|
|
||||||
|
|
||||||
Some content below.
|
|
||||||
```
|
|
||||||
→
|
|
||||||
```markdown
|
|
||||||
Some content above.
|
|
||||||
|
|
||||||
## [Descriptive Section Header]
|
|
||||||
|
|
||||||
Some content below.
|
|
||||||
```
|
|
||||||
|
|
||||||
**Converting code block to admonition:**
|
|
||||||
```markdown
|
|
||||||
```
|
|
||||||
User: What should I do?
|
|
||||||
|
|
||||||
Agent: Run the workflow.
|
|
||||||
```
|
|
||||||
```
|
|
||||||
→
|
|
||||||
```markdown
|
|
||||||
:::note[Example]
|
|
||||||
|
|
||||||
**User:** What should I do?
|
|
||||||
|
|
||||||
**Agent:** Run the workflow.
|
|
||||||
|
|
||||||
:::
|
|
||||||
```
|
|
||||||
|
|
||||||
**Converting bold paragraph to admonition:**
|
|
||||||
```markdown
|
|
||||||
**IMPORTANT:** This is critical that you read this before proceeding.
|
|
||||||
```
|
|
||||||
→
|
|
||||||
```markdown
|
|
||||||
:::caution[Important]
|
|
||||||
This is critical that you read this before proceeding.
|
|
||||||
:::
|
|
||||||
```
|
|
||||||
|
|
@ -1,6 +0,0 @@
|
||||||
---
|
|
||||||
name: bmad-os-draft-changelog
|
|
||||||
description: "Analyzes changes since last release and updates CHANGELOG.md ONLY. Use when users requests 'update the changelog' or 'prepare changelog release notes'"
|
|
||||||
---
|
|
||||||
|
|
||||||
Read `prompts/instructions.md` and execute.
|
|
||||||
|
|
@ -1,82 +0,0 @@
|
||||||
# Draft Changelog Execution
|
|
||||||
|
|
||||||
## ⚠️ IMPORTANT - READ FIRST
|
|
||||||
|
|
||||||
**This skill ONLY updates CHANGELOG.md. That is its entire purpose.**
|
|
||||||
|
|
||||||
- **DO** update CHANGELOG.md with the new version entry
|
|
||||||
- **DO** present the draft for user review before editing
|
|
||||||
- **DO NOT** trigger any GitHub release workflows
|
|
||||||
- **DO NOT** run any other skills or workflows automatically
|
|
||||||
- **DO NOT** make any commits
|
|
||||||
|
|
||||||
After the changelog is complete, you may suggest the user can run `/release-module` if they want to proceed with the actual release — but NEVER trigger it yourself.
|
|
||||||
|
|
||||||
## Input
|
|
||||||
Project path (or run from project root)
|
|
||||||
|
|
||||||
## Step 1: Identify Current State
|
|
||||||
- Get the latest released tag
|
|
||||||
- Get current version
|
|
||||||
- Verify there are commits since the last release
|
|
||||||
|
|
||||||
## Step 2: Launch Explore Agent
|
|
||||||
|
|
||||||
Use `thoroughness: "very thorough"` to analyze all changes since the last release tag.
|
|
||||||
|
|
||||||
**Key: For each merge commit, look up the merged PR/issue that was closed.**
|
|
||||||
- Use `gh pr view` or git commit body to find the PR number
|
|
||||||
- Read the PR description and comments to understand full context
|
|
||||||
- Don't rely solely on commit merge messages - they lack context
|
|
||||||
|
|
||||||
**Analyze:**
|
|
||||||
|
|
||||||
1. **All merges/commits** since the last tag
|
|
||||||
2. **For each merge, read the original PR/issue** that was closed
|
|
||||||
3. **Files changed** with statistics
|
|
||||||
4. **Categorize changes:**
|
|
||||||
- 🎁 **Features** - New functionality, new agents, new workflows
|
|
||||||
- 🐛 **Bug Fixes** - Fixed bugs, corrected issues
|
|
||||||
- ♻️ **Refactoring** - Code improvements, reorganization
|
|
||||||
- 📚 **Documentation** - Docs updates, README changes
|
|
||||||
- 🔧 **Maintenance** - Dependency updates, tooling, infrastructure
|
|
||||||
- 💥 **Breaking Changes** - Changes that may affect users
|
|
||||||
|
|
||||||
**Provide:**
|
|
||||||
- Comprehensive summary of ALL changes with PR context
|
|
||||||
- Categorization of each change
|
|
||||||
- Identification of breaking changes
|
|
||||||
- Significance assessment (major/minor/trivial)
|
|
||||||
|
|
||||||
## Step 3: Generate Draft Changelog
|
|
||||||
|
|
||||||
Format:
|
|
||||||
```markdown
|
|
||||||
## v0.X.X - [Date]
|
|
||||||
|
|
||||||
* [Change 1 - categorized by type]
|
|
||||||
* [Change 2]
|
|
||||||
```
|
|
||||||
|
|
||||||
Guidelines:
|
|
||||||
- Present tense ("Fix bug" not "Fixed bug")
|
|
||||||
- Most significant changes first
|
|
||||||
- Group related changes
|
|
||||||
- Clear, concise language
|
|
||||||
- For breaking changes, clearly indicate impact
|
|
||||||
|
|
||||||
## Step 4: Present Draft & Update CHANGELOG.md
|
|
||||||
|
|
||||||
Show the draft with current version, last tag, commit count, and options to edit/retry.
|
|
||||||
|
|
||||||
When user accepts:
|
|
||||||
1. Update CHANGELOG.md with the new entry (insert at top, after `# Changelog` header)
|
|
||||||
2. STOP. That's it. You're done.
|
|
||||||
|
|
||||||
You may optionally suggest: *"When ready, you can run `/release-module` to create the actual release."*
|
|
||||||
|
|
||||||
**DO NOT:**
|
|
||||||
- Trigger any GitHub workflows
|
|
||||||
- Run any other skills
|
|
||||||
- Make any commits
|
|
||||||
- Do anything beyond updating CHANGELOG.md
|
|
||||||
|
|
@ -1,6 +0,0 @@
|
||||||
---
|
|
||||||
name: bmad-os-findings-triage
|
|
||||||
description: Orchestrate HITL triage of review findings using parallel agents. Use when the user says 'triage these findings' or 'run findings triage' or has a batch of review findings to process.
|
|
||||||
---
|
|
||||||
|
|
||||||
Read `prompts/instructions.md` and execute.
|
|
||||||
|
|
@ -1,104 +0,0 @@
|
||||||
# Finding Agent: {{TASK_ID}} — {{TASK_SUBJECT}}
|
|
||||||
|
|
||||||
You are a finding agent in the `{{TEAM_NAME}}` triage team. You own exactly one finding and will shepherd it through research, planning, human conversation, and a final decision.
|
|
||||||
|
|
||||||
## Your Assignment
|
|
||||||
|
|
||||||
- **Task:** `{{TASK_ID}}`
|
|
||||||
- **Finding:** `{{FINDING_ID}}` — {{FINDING_TITLE}}
|
|
||||||
- **Severity:** {{SEVERITY}}
|
|
||||||
- **Team:** `{{TEAM_NAME}}`
|
|
||||||
- **Team Lead:** `{{TEAM_LEAD_NAME}}`
|
|
||||||
|
|
||||||
## Phase 1 — Research (autonomous)
|
|
||||||
|
|
||||||
1. Read your task details with `TaskGet("{{TASK_ID}}")`.
|
|
||||||
2. Read the relevant source files to understand the finding in context:
|
|
||||||
{{FILE_LIST}}
|
|
||||||
If no specific files are listed above, use codebase search to locate code relevant to the finding.
|
|
||||||
|
|
||||||
If a context document was provided:
|
|
||||||
- Also read this context document for background: {{CONTEXT_DOC}}
|
|
||||||
|
|
||||||
If an initial triage was provided:
|
|
||||||
- **Note:** The team lead triaged this as **{{INITIAL_TRIAGE}}** — {{TRIAGE_RATIONALE}}. Evaluate whether this triage is correct and incorporate your assessment into your plan.
|
|
||||||
|
|
||||||
**Rules for research:**
|
|
||||||
- Work autonomously. Do not ask the team lead or the human for help during research.
|
|
||||||
- Use `Read`, `Grep`, `Glob`, and codebase search tools to understand the codebase.
|
|
||||||
- Trace call chains, check tests, read related code — be thorough.
|
|
||||||
- Form your own opinion on whether this finding is real, a false positive, or somewhere in between.
|
|
||||||
|
|
||||||
## Phase 2 — Plan (display only)
|
|
||||||
|
|
||||||
Prepare a plan for dealing with this finding. The plan MUST cover:
|
|
||||||
|
|
||||||
1. **Assessment** — Is this finding real? What is the actual risk or impact?
|
|
||||||
2. **Recommendation** — One of: fix it, accept the risk (wontfix), dismiss as not a real issue, or reject as a false positive.
|
|
||||||
3. **If recommending a fix:** Describe the specific changes — which files, what modifications, why this approach.
|
|
||||||
4. **If recommending against fixing:** Explain the reasoning — existing mitigations, acceptable risk, false positive rationale.
|
|
||||||
|
|
||||||
**Display the plan in your output.** Write it clearly so the human can read it directly. Follow the plan with a 2-5 line summary of the finding itself.
|
|
||||||
|
|
||||||
**CRITICAL: Do NOT send your plan or analysis to the team lead.** The team lead does not need your plan — the human reads it from your output stream. Sending full plans to the team lead wastes its context window.
|
|
||||||
|
|
||||||
## Phase 3 — Signal Ready
|
|
||||||
|
|
||||||
After displaying your plan, send exactly this to the team lead:
|
|
||||||
|
|
||||||
```
|
|
||||||
SendMessage({
|
|
||||||
type: "message",
|
|
||||||
recipient: "{{TEAM_LEAD_NAME}}",
|
|
||||||
content: "{{FINDING_ID}} ready for HITL",
|
|
||||||
summary: "{{FINDING_ID}} ready for review"
|
|
||||||
})
|
|
||||||
```
|
|
||||||
|
|
||||||
Then **stop and wait**. Do not proceed until the human engages with you.
|
|
||||||
|
|
||||||
## Phase 4 — HITL Conversation
|
|
||||||
|
|
||||||
The human will review your plan and talk to you directly. This is a real conversation, not a rubber stamp:
|
|
||||||
|
|
||||||
- The human may agree immediately, push back, ask questions, or propose alternatives.
|
|
||||||
- Answer questions thoroughly. Refer back to specific code you read.
|
|
||||||
- If the human wants a fix, **apply it** — edit the source files, verify the change makes sense.
|
|
||||||
- If the human disagrees with your assessment, update your recommendation.
|
|
||||||
- Stay focused on THIS finding only. Do not discuss other findings.
|
|
||||||
- **Do not send a decision until the human explicitly states a verdict.** Acknowledging your plan is NOT a decision. Wait for clear direction like "fix it", "dismiss", "reject", "skip", etc.
|
|
||||||
|
|
||||||
## Phase 5 — Report Decision
|
|
||||||
|
|
||||||
When the human reaches a decision, send exactly ONE message to the team lead:
|
|
||||||
|
|
||||||
```
|
|
||||||
SendMessage({
|
|
||||||
type: "message",
|
|
||||||
recipient: "{{TEAM_LEAD_NAME}}",
|
|
||||||
content: "DECISION {{FINDING_ID}} {{TASK_ID}} [CATEGORY] | [one-sentence summary]",
|
|
||||||
summary: "{{FINDING_ID}} [CATEGORY]"
|
|
||||||
})
|
|
||||||
```
|
|
||||||
|
|
||||||
Where `[CATEGORY]` is one of:
|
|
||||||
|
|
||||||
| Category | Meaning |
|
|
||||||
|----------|---------|
|
|
||||||
| **SKIP** | Human chose to skip without full review. |
|
|
||||||
| **DEFER** | Human chose to defer to a later session. |
|
|
||||||
| **FIX** | Change applied. List the file paths changed and what each change was (use a parseable format: `files: path1, path2`). |
|
|
||||||
| **WONTFIX** | Real finding, not worth fixing now. State why. |
|
|
||||||
| **DISMISS** | Not a real finding or mitigated by existing design. State the mitigation. |
|
|
||||||
| **REJECT** | False positive from the reviewer. State why it is wrong. |
|
|
||||||
|
|
||||||
After sending the decision, **go idle and wait for shutdown**. Do not take any further action. The team lead will send you a shutdown request — approve it.
|
|
||||||
|
|
||||||
## Rules
|
|
||||||
|
|
||||||
- You own ONE finding. Do not touch files unrelated to your finding unless required for the fix.
|
|
||||||
- Your plan is for the human's eyes — display it in your output, never send it to the team lead.
|
|
||||||
- Your only messages to the team lead are: (1) ready for HITL, (2) final decision. Nothing else.
|
|
||||||
- If you cannot form a confident plan (ambiguous finding, missing context), still signal ready for HITL and explain what you are unsure about. The HITL conversation will resolve it.
|
|
||||||
- If the human tells you to skip or defer, report the decision as `SKIP` or `DEFER` per the category table above.
|
|
||||||
- When you receive a shutdown request, approve it immediately.
|
|
||||||
|
|
@ -1,286 +0,0 @@
|
||||||
# Findings Triage — Team Lead Orchestration
|
|
||||||
|
|
||||||
You are the team lead for a findings triage session. Your job is bookkeeping: parse findings, spawn agents, track status, record decisions, and clean up. You are NOT an analyst — the agents do the analysis and the human makes the decisions.
|
|
||||||
|
|
||||||
**Be minimal.** Short confirmations. No editorializing. No repeating what agents already said.
|
|
||||||
|
|
||||||
---
|
|
||||||
|
|
||||||
## Phase 1 — Setup
|
|
||||||
|
|
||||||
### 1.1 Determine Input Source
|
|
||||||
|
|
||||||
The human will provide findings in one of three ways:
|
|
||||||
|
|
||||||
1. **A findings report file** — a markdown file with structured findings. Read the file.
|
|
||||||
2. **A pre-populated task list** — tasks already exist. Call `TaskList` to discover them.
|
|
||||||
- If tasks are pre-populated: skip section 1.2 (parsing) and section 1.4 (task creation). Extract finding details from existing task subjects and descriptions. Number findings based on task order. Proceed from section 1.3 (pre-spawn checks).
|
|
||||||
3. **Inline findings** — pasted directly in conversation. Parse them.
|
|
||||||
|
|
||||||
Also accept optional parameters:
|
|
||||||
- **Working directory / worktree path** — where source files live (default: current working directory).
|
|
||||||
- **Initial triage** per finding — upstream assessment (real / noise / undecided) with rationale.
|
|
||||||
- **Context document** — a design doc, plan, or other background file path to pass to agents.
|
|
||||||
|
|
||||||
### 1.2 Parse Findings
|
|
||||||
|
|
||||||
Extract from each finding:
|
|
||||||
- **Title / description**
|
|
||||||
- **Severity** (Critical / High / Medium / Low)
|
|
||||||
- **Relevant file paths**
|
|
||||||
- **Initial triage** (if provided)
|
|
||||||
|
|
||||||
Number findings sequentially: F1, F2, ... Fn. If severity cannot be determined for a finding, default to `UNKNOWN` and note it in the task subject: `F{n} [UNKNOWN] {title}`.
|
|
||||||
|
|
||||||
**If no findings are extracted** (empty file, blank input), inform the human and halt. Do not proceed to task creation or team setup.
|
|
||||||
|
|
||||||
**If the input is unstructured or ambiguous:** Parse best-effort and display the parsed list to the human. Ask for confirmation before proceeding. Do NOT spawn agents until confirmed.
|
|
||||||
|
|
||||||
### 1.3 Pre-Spawn Checks
|
|
||||||
|
|
||||||
**Large batch (>25 findings):**
|
|
||||||
HALT. Tell the human:
|
|
||||||
> "There are {N} findings. Spawning {N} agents at once may overwhelm the system. I recommend processing in waves of ~20. Proceed with all at once, or batch into waves?"
|
|
||||||
|
|
||||||
Wait for the human to decide. If batching, record wave assignments (Wave 1: F1-F20, Wave 2: F21-Fn).
|
|
||||||
|
|
||||||
**Same-file conflicts:**
|
|
||||||
Scan all findings for overlapping file paths. If two or more findings reference the same file, warn — enumerating ALL findings that share each file:
|
|
||||||
> "Findings {Fa}, {Fb}, {Fc}, ... all reference `{file}`. Concurrent edits may conflict. Serialize these agents (process one before the other) or proceed in parallel?"
|
|
||||||
|
|
||||||
Wait for the human to decide. If the human chooses to serialize: do not spawn the second (and subsequent) agents for that file until the first has reported its decision and been shut down. Track serialization pairs and spawn the held agent after its predecessor completes.
|
|
||||||
|
|
||||||
### 1.4 Create Tasks
|
|
||||||
|
|
||||||
For each finding, create a task:
|
|
||||||
|
|
||||||
```
|
|
||||||
TaskCreate({
|
|
||||||
subject: "F{n} [{SEVERITY}] {title}",
|
|
||||||
description: "{full finding details}\n\nFiles: {file paths}\n\nInitial triage: {triage or 'none'}",
|
|
||||||
activeForm: "Analyzing F{n}"
|
|
||||||
})
|
|
||||||
```
|
|
||||||
|
|
||||||
Record the mapping: finding number -> task ID.
|
|
||||||
|
|
||||||
### 1.5 Create Team
|
|
||||||
|
|
||||||
```
|
|
||||||
TeamCreate({
|
|
||||||
team_name: "{review-type}-triage",
|
|
||||||
description: "HITL triage of {N} findings from {source}"
|
|
||||||
})
|
|
||||||
```
|
|
||||||
|
|
||||||
Use a contextual name based on the review type (e.g., `pr-review-triage`, `prompt-audit-triage`, `code-review-triage`). If unsure, use `findings-triage`.
|
|
||||||
|
|
||||||
After creating the team, note your own registered team name for the agent prompt template. Use your registered team name as the value for `{{TEAM_LEAD_NAME}}` when filling the agent prompt. If unsure of your name, read the team config at `~/.claude/teams/{team-name}/config.json` to find your own entry in the members list.
|
|
||||||
|
|
||||||
### 1.6 Spawn Agents
|
|
||||||
|
|
||||||
Read the agent prompt template from `prompts/agent-prompt.md`.
|
|
||||||
|
|
||||||
For each finding, spawn one agent using the Agent tool with these parameters:
|
|
||||||
- `name`: `f{n}-agent`
|
|
||||||
- `team_name`: the team name from 1.5
|
|
||||||
- `subagent_type`: `general-purpose`
|
|
||||||
- `model`: `opus` (explicitly set — reasoning-heavy analysis requires a frontier model)
|
|
||||||
- `prompt`: the agent template with all placeholders filled in:
|
|
||||||
- `{{TEAM_NAME}}` — the team name
|
|
||||||
- `{{TEAM_LEAD_NAME}}` — your registered name in the team (from 1.5)
|
|
||||||
- `{{TASK_ID}}` — the task ID from 1.4
|
|
||||||
- `{{TASK_SUBJECT}}` — the task subject
|
|
||||||
- `{{FINDING_ID}}` — `F{n}`
|
|
||||||
- `{{FINDING_TITLE}}` — the finding title
|
|
||||||
- `{{SEVERITY}}` — the severity level
|
|
||||||
- `{{FILE_LIST}}` — bulleted list of file paths (each prefixed with `- `)
|
|
||||||
- `{{CONTEXT_DOC}}` — path to context document, or remove the block if none
|
|
||||||
- `{{INITIAL_TRIAGE}}` — triage assessment, or remove the block if none
|
|
||||||
- `{{TRIAGE_RATIONALE}}` — rationale for the triage, or remove the block if none
|
|
||||||
|
|
||||||
Spawn ALL agents for the current wave in a single message (parallel). If batching, spawn only the current wave.
|
|
||||||
|
|
||||||
After spawning, print:
|
|
||||||
|
|
||||||
```
|
|
||||||
All {N} agents spawned. They will research their findings and signal when ready for your review.
|
|
||||||
```
|
|
||||||
|
|
||||||
Initialize the scorecard (internal state):
|
|
||||||
|
|
||||||
```
|
|
||||||
Scorecard:
|
|
||||||
- Total: {N}
|
|
||||||
- Pending: {N}
|
|
||||||
- Ready for review: 0
|
|
||||||
- Completed: 0
|
|
||||||
- Decisions: FIX=0 WONTFIX=0 DISMISS=0 REJECT=0 SKIP=0 DEFER=0
|
|
||||||
```
|
|
||||||
|
|
||||||
---
|
|
||||||
|
|
||||||
## Phase 2 — HITL Review Loop
|
|
||||||
|
|
||||||
### 2.1 Track Agent Readiness
|
|
||||||
|
|
||||||
Agents will send messages matching: `F{n} ready for HITL`
|
|
||||||
|
|
||||||
When received:
|
|
||||||
- Note which finding is ready.
|
|
||||||
- Update the internal status tracker.
|
|
||||||
- Print a short status line: `F{n} ready. ({ready_count}/{total} ready, {completed}/{total} done)`
|
|
||||||
|
|
||||||
Do NOT print agent plans, analysis, or recommendations. The human reads those directly from the agent output.
|
|
||||||
|
|
||||||
### 2.2 Status Dashboard
|
|
||||||
|
|
||||||
When the human asks for status (or periodically when useful), print:
|
|
||||||
|
|
||||||
```
|
|
||||||
=== Triage Status ===
|
|
||||||
Ready for review: F3, F7, F11
|
|
||||||
Still analyzing: F1, F5, F9
|
|
||||||
Completed: F2 (FIX), F4 (DISMISS), F6 (REJECT)
|
|
||||||
{completed}/{total} done
|
|
||||||
===
|
|
||||||
```
|
|
||||||
|
|
||||||
Keep it compact. No decoration beyond what is needed.
|
|
||||||
|
|
||||||
### 2.3 Process Decisions
|
|
||||||
|
|
||||||
Agents will send messages matching: `DECISION F{n} {task_id} [CATEGORY] | [summary]`
|
|
||||||
|
|
||||||
When received:
|
|
||||||
1. **Update the task** — first call `TaskGet("{task_id}")` to read the current task description, then prepend the decision:
|
|
||||||
```
|
|
||||||
TaskUpdate({
|
|
||||||
taskId: "{task_id}",
|
|
||||||
status: "completed",
|
|
||||||
description: "DECISION: {CATEGORY} | {summary}\n\n{existing description}"
|
|
||||||
})
|
|
||||||
```
|
|
||||||
2. **Update the scorecard** — increment the decision category counter. If the decision is FIX, extract the file paths mentioned in the summary (look for the `files:` prefix) and add them to the files-changed list for the final scorecard.
|
|
||||||
3. **Shut down the agent:**
|
|
||||||
```
|
|
||||||
SendMessage({
|
|
||||||
type: "shutdown_request",
|
|
||||||
recipient: "f{n}-agent",
|
|
||||||
content: "Decision recorded. Shutting down."
|
|
||||||
})
|
|
||||||
```
|
|
||||||
4. **Print confirmation:** `F{n} closed: {CATEGORY}. {remaining} remaining.`
|
|
||||||
|
|
||||||
### 2.4 Human-Initiated Skip/Defer
|
|
||||||
|
|
||||||
If the human wants to skip or defer a finding without full engagement:
|
|
||||||
|
|
||||||
1. Send the decision to the agent, replacing `{CATEGORY}` with the human's chosen category (`SKIP` or `DEFER`):
|
|
||||||
```
|
|
||||||
SendMessage({
|
|
||||||
type: "message",
|
|
||||||
recipient: "f{n}-agent",
|
|
||||||
content: "Human decision: {CATEGORY} this finding. Report {CATEGORY} as your decision and go idle.",
|
|
||||||
summary: "F{n} {CATEGORY} directive"
|
|
||||||
})
|
|
||||||
```
|
|
||||||
2. Wait for the agent to report the decision back (it will send `DECISION F{n} ... {CATEGORY}`).
|
|
||||||
3. Process as a normal decision (2.3).
|
|
||||||
|
|
||||||
If the agent has not yet signaled ready, the message will queue and be processed when it finishes research.
|
|
||||||
|
|
||||||
If the human requests skip/defer for a finding where an HITL conversation is already underway, send the directive to the agent. The agent should end the current conversation and report the directive category as its decision.
|
|
||||||
|
|
||||||
### 2.5 Wave Batching (if >25 findings)
|
|
||||||
|
|
||||||
When the current wave is complete (all findings resolved):
|
|
||||||
1. Print wave summary.
|
|
||||||
2. Ask: `"Wave {W} complete. Spawn wave {W+1} ({count} findings)? (y/n)"`
|
|
||||||
3. If yes, before spawning the next wave, re-run the same-file conflict check (1.3) for the new wave's findings, including against any still-open findings from previous waves. Then repeat Phase 1.4 (task creation) and 1.6 (agent spawning) only. Do NOT call TeamCreate again — the team already exists.
|
|
||||||
4. If the human declines, treat unspawned findings as not processed. Proceed to Phase 3 wrap-up. Note the count of unprocessed findings in the final scorecard.
|
|
||||||
5. Carry the scorecard forward across waves.
|
|
||||||
|
|
||||||
---
|
|
||||||
|
|
||||||
## Phase 3 — Wrap-up
|
|
||||||
|
|
||||||
When all findings across all waves are resolved:
|
|
||||||
|
|
||||||
### 3.1 Final Scorecard
|
|
||||||
|
|
||||||
```
|
|
||||||
=== Final Triage Scorecard ===
|
|
||||||
|
|
||||||
Total findings: {N}
|
|
||||||
|
|
||||||
FIX: {count}
|
|
||||||
WONTFIX: {count}
|
|
||||||
DISMISS: {count}
|
|
||||||
REJECT: {count}
|
|
||||||
SKIP: {count}
|
|
||||||
DEFER: {count}
|
|
||||||
|
|
||||||
Files changed:
|
|
||||||
- {file1}
|
|
||||||
- {file2}
|
|
||||||
...
|
|
||||||
|
|
||||||
Findings:
|
|
||||||
F1 [{SEVERITY}] {title} — {DECISION}
|
|
||||||
F2 [{SEVERITY}] {title} — {DECISION}
|
|
||||||
...
|
|
||||||
|
|
||||||
=== End Triage ===
|
|
||||||
```
|
|
||||||
|
|
||||||
### 3.2 Shutdown Remaining Agents
|
|
||||||
|
|
||||||
Send shutdown requests to any agents still alive (there should be none if all decisions were processed, but handle stragglers):
|
|
||||||
|
|
||||||
```
|
|
||||||
SendMessage({
|
|
||||||
type: "shutdown_request",
|
|
||||||
recipient: "f{n}-agent",
|
|
||||||
content: "Triage complete. Shutting down."
|
|
||||||
})
|
|
||||||
```
|
|
||||||
|
|
||||||
### 3.3 Offer to Save
|
|
||||||
|
|
||||||
Ask the human:
|
|
||||||
> "Save the scorecard to a file? (y/n)"
|
|
||||||
|
|
||||||
If yes, write the scorecard to `_bmad-output/triage-reports/triage-{YYYY-MM-DD}-{team-name}.md`.
|
|
||||||
|
|
||||||
### 3.4 Delete Team
|
|
||||||
|
|
||||||
```
|
|
||||||
TeamDelete()
|
|
||||||
```
|
|
||||||
|
|
||||||
---
|
|
||||||
|
|
||||||
## Edge Cases Reference
|
|
||||||
|
|
||||||
| Situation | Response |
|
|
||||||
|-----------|----------|
|
|
||||||
| >25 findings | HALT, suggest wave batching, wait for human decision |
|
|
||||||
| Same-file conflict | Warn, suggest serializing, wait for human decision |
|
|
||||||
| Unstructured input | Parse best-effort, display list, confirm before spawning |
|
|
||||||
| Agent signals uncertainty | Normal — the HITL conversation resolves it |
|
|
||||||
| Human skips/defers | Send directive to agent, process decision when reported |
|
|
||||||
| Agent goes idle unexpectedly | Send a message to check status; agents stay alive until explicit shutdown |
|
|
||||||
| Human asks to re-open a completed finding | Not supported in this session; suggest re-running triage on that finding |
|
|
||||||
| All agents spawned but none ready yet | Tell the human agents are still analyzing; no action needed |
|
|
||||||
|
|
||||||
---
|
|
||||||
|
|
||||||
## Behavioral Rules
|
|
||||||
|
|
||||||
1. **Be minimal.** Short confirmations, compact dashboards. Do not repeat agent analysis.
|
|
||||||
2. **Never auto-close.** Every finding requires a human decision. No exceptions.
|
|
||||||
3. **One agent per finding.** Never batch multiple findings into one agent.
|
|
||||||
4. **Protect your context window.** Agents display plans in their output, not in messages to you. If an agent sends you a long message, acknowledge it briefly and move on.
|
|
||||||
5. **Track everything.** Finding number, task ID, agent name, decision, files changed. You are the single source of truth for the session.
|
|
||||||
6. **Respect the human's pace.** They review in whatever order they want. Do not rush them. Do not suggest which finding to review next unless asked.
|
|
||||||
|
|
@ -1,6 +0,0 @@
|
||||||
---
|
|
||||||
name: bmad-os-gh-triage
|
|
||||||
description: Analyze all github issues. Use when the user says 'triage the github issues' or 'analyze open github issues'.
|
|
||||||
---
|
|
||||||
|
|
||||||
Read `prompts/instructions.md` and execute.
|
|
||||||
|
|
@ -1,60 +0,0 @@
|
||||||
You are analyzing a batch of GitHub issues for deep understanding and triage.
|
|
||||||
|
|
||||||
**YOUR TASK:**
|
|
||||||
Read the issues in your batch and provide DEEP analysis:
|
|
||||||
|
|
||||||
1. **For EACH issue, analyze:**
|
|
||||||
- What is this ACTUALLY about? (beyond keywords)
|
|
||||||
- What component/system does it affect?
|
|
||||||
- What's the impact and severity?
|
|
||||||
- Is it a bug, feature request, or something else?
|
|
||||||
- What specific theme does it belong to?
|
|
||||||
|
|
||||||
2. **PRIORITY ASSESSMENT:**
|
|
||||||
- CRITICAL: Blocks users, security issues, data loss, broken installers
|
|
||||||
- HIGH: Major functionality broken, important features missing
|
|
||||||
- MEDIUM: Workarounds available, minor bugs, nice-to-have features
|
|
||||||
- LOW: Edge cases, cosmetic issues, questions
|
|
||||||
|
|
||||||
3. **RELATIONSHIPS:**
|
|
||||||
- Duplicates: Near-identical issues about the same problem
|
|
||||||
- Related: Issues connected by theme or root cause
|
|
||||||
- Dependencies: One issue blocks or requires another
|
|
||||||
|
|
||||||
**YOUR BATCH:**
|
|
||||||
[Paste the batch of issues here - each with number, title, body, labels]
|
|
||||||
|
|
||||||
**OUTPUT FORMAT (JSON only, no markdown):**
|
|
||||||
{
|
|
||||||
"issues": [
|
|
||||||
{
|
|
||||||
"number": 123,
|
|
||||||
"title": "issue title",
|
|
||||||
"deep_understanding": "2-3 sentences explaining what this is really about",
|
|
||||||
"affected_components": ["installer", "workflows", "docs"],
|
|
||||||
"issue_type": "bug/feature/question/tech-debt",
|
|
||||||
"priority": "CRITICAL/HIGH/MEDIUM/LOW",
|
|
||||||
"priority_rationale": "Why this priority level",
|
|
||||||
"theme": "installation/workflow/integration/docs/ide-support/etc",
|
|
||||||
"relationships": {
|
|
||||||
"duplicates_of": [456],
|
|
||||||
"related_to": [789, 101],
|
|
||||||
"blocks": [111]
|
|
||||||
}
|
|
||||||
}
|
|
||||||
],
|
|
||||||
"cross_repo_issues": [
|
|
||||||
{"number": 123, "target_repo": "bmad-builder", "reason": "about agent builder"}
|
|
||||||
],
|
|
||||||
"cleanup_candidates": [
|
|
||||||
{"number": 456, "reason": "v4-related/outdated/duplicate"}
|
|
||||||
],
|
|
||||||
"themes_found": {
|
|
||||||
"Installation Blockers": {
|
|
||||||
"count": 5,
|
|
||||||
"root_cause": "Common pattern if identifiable"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
Return ONLY valid JSON. No explanations outside the JSON structure.
|
|
||||||
|
|
@ -1,74 +0,0 @@
|
||||||
# GitHub Issue Triage with AI Analysis
|
|
||||||
|
|
||||||
**CRITICAL RULES:**
|
|
||||||
- NEVER include time or effort estimates in output or recommendations
|
|
||||||
- Focus on WHAT needs to be done, not HOW LONG it takes
|
|
||||||
- Use Bash tool with gh CLI for all GitHub operations
|
|
||||||
|
|
||||||
## Execution
|
|
||||||
|
|
||||||
### Step 1: Fetch Issues
|
|
||||||
Use `gh issue list --json number,title,body,labels` to fetch all open issues.
|
|
||||||
|
|
||||||
### Step 2: Batch Creation
|
|
||||||
Split issues into batches of ~10 issues each for parallel analysis.
|
|
||||||
|
|
||||||
### Step 3: Parallel Agent Analysis
|
|
||||||
For EACH batch, use the Task tool with `subagent_type=general-purpose` to launch an agent with prompt from `prompts/agent-prompt.md`
|
|
||||||
|
|
||||||
### Step 4: Consolidate & Generate Report
|
|
||||||
After all agents complete, create a comprehensive markdown report saved to `_bmad-output/triage-reports/triage-YYYY-MM-DD.md`
|
|
||||||
|
|
||||||
## Report Format
|
|
||||||
|
|
||||||
### Executive Summary
|
|
||||||
- Total issues analyzed
|
|
||||||
- Issue count by priority (CRITICAL, HIGH, MEDIUM, LOW)
|
|
||||||
- Major themes discovered
|
|
||||||
- Top 5 critical issues requiring immediate attention
|
|
||||||
|
|
||||||
### Critical Issues (CRITICAL Priority)
|
|
||||||
For each CRITICAL issue:
|
|
||||||
- **#123 - [Issue Title](url)**
|
|
||||||
- **What it's about:** [Deep understanding]
|
|
||||||
- **Affected:** [Components]
|
|
||||||
- **Why Critical:** [Rationale]
|
|
||||||
- **Suggested Action:** [Specific action]
|
|
||||||
|
|
||||||
### High Priority Issues (HIGH Priority)
|
|
||||||
Same format as Critical, grouped by theme.
|
|
||||||
|
|
||||||
### Theme Clusters
|
|
||||||
For each major theme:
|
|
||||||
- **Theme Name** (N issues)
|
|
||||||
- **What connects these:** [Pattern]
|
|
||||||
- **Root cause:** [If identifiable]
|
|
||||||
- **Consolidated actions:** [Bulk actions if applicable]
|
|
||||||
- **Issues:** #123, #456, #789
|
|
||||||
|
|
||||||
### Relationships & Dependencies
|
|
||||||
- **Duplicates:** List pairs with `gh issue close` commands
|
|
||||||
- **Related Issues:** Groups of related issues
|
|
||||||
- **Dependencies:** Blocking relationships
|
|
||||||
|
|
||||||
### Cross-Repo Issues
|
|
||||||
Issues that should be migrated to other repositories.
|
|
||||||
|
|
||||||
For each, provide:
|
|
||||||
```
|
|
||||||
gh issue close XXX --repo CURRENT_REPO --comment "This issue belongs in REPO. Please report at https://github.com/TARGET_REPO/issues/new"
|
|
||||||
```
|
|
||||||
|
|
||||||
### Cleanup Candidates
|
|
||||||
- **v4-related:** Deprecated version issues with close commands
|
|
||||||
- **Stale:** No activity >30 days
|
|
||||||
- **Low priority + old:** Low priority issues >60 days old
|
|
||||||
|
|
||||||
### Actionable Next Steps
|
|
||||||
Specific, prioritized actions:
|
|
||||||
1. [CRITICAL] Fix broken installer - affects all new users
|
|
||||||
2. [HIGH] Resolve Windows path escaping issues
|
|
||||||
3. [HIGH] Address workflow integration bugs
|
|
||||||
etc.
|
|
||||||
|
|
||||||
Include `gh` commands where applicable for bulk actions.
|
|
||||||
|
|
@ -1,6 +0,0 @@
|
||||||
---
|
|
||||||
name: bmad-os-release-module
|
|
||||||
description: Perform requested version bump, git tag, npm publish, GitHub release. Use when user requests 'perform a release' only.
|
|
||||||
---
|
|
||||||
|
|
||||||
Read `prompts/instructions.md` and execute.
|
|
||||||
|
|
@ -1,53 +0,0 @@
|
||||||
# Release BMad Module Execution
|
|
||||||
|
|
||||||
## Input
|
|
||||||
Project path (or run from project root)
|
|
||||||
|
|
||||||
## Execution Steps
|
|
||||||
|
|
||||||
### Step 1: Get Current State
|
|
||||||
- Verify git working tree is clean
|
|
||||||
- Get latest tag and current version
|
|
||||||
- Check for unpushed commits
|
|
||||||
|
|
||||||
### Step 2: Get Changelog Entry
|
|
||||||
|
|
||||||
Ask the user for the changelog entry (from draft-changelog skill or manual).
|
|
||||||
|
|
||||||
### Step 3: Confirm Changelog
|
|
||||||
|
|
||||||
Show project name, current version, proposed next version, and changelog. Get confirmation.
|
|
||||||
|
|
||||||
### Step 4: Confirm Version Bump Type
|
|
||||||
|
|
||||||
Ask what type of bump: patch, minor, major, prerelease, or custom.
|
|
||||||
|
|
||||||
### Step 5: Update CHANGELOG.md
|
|
||||||
|
|
||||||
Insert new entry at top, commit, and push.
|
|
||||||
|
|
||||||
### Step 6: Bump Version
|
|
||||||
|
|
||||||
Run `npm version` to update package.json, create commit, and create tag.
|
|
||||||
|
|
||||||
### Step 7: Push Tag
|
|
||||||
|
|
||||||
Push the new version tag to GitHub.
|
|
||||||
|
|
||||||
### Step 8: Publish to npm
|
|
||||||
|
|
||||||
Publish the package.
|
|
||||||
|
|
||||||
### Step 9: Create GitHub Release
|
|
||||||
|
|
||||||
Create release with changelog notes using `gh release create`.
|
|
||||||
|
|
||||||
## Error Handling
|
|
||||||
|
|
||||||
Stop immediately on any step failure. Inform user and suggest fix.
|
|
||||||
|
|
||||||
## Important Notes
|
|
||||||
|
|
||||||
- Wait for user confirmation before destructive operations
|
|
||||||
- Push changelog commit before version bump
|
|
||||||
- Use explicit directory paths in commands
|
|
||||||
|
|
@ -1,6 +0,0 @@
|
||||||
---
|
|
||||||
name: bmad-os-review-pr
|
|
||||||
description: Dual-layer PR review tool (Raven's Verdict). Runs adversarial cynical review and edge case hunter in parallel, merges and deduplicates findings into professional engineering output. Use when user asks to 'review a PR' and provides a PR url or id.
|
|
||||||
---
|
|
||||||
|
|
||||||
Read `prompts/instructions.md` and execute.
|
|
||||||
|
|
@ -1,288 +0,0 @@
|
||||||
# Raven's Verdict - Deep PR Review Tool
|
|
||||||
|
|
||||||
A cynical adversarial review, transformed into cold engineering professionalism.
|
|
||||||
|
|
||||||
## CRITICAL: Sandboxed Execution Rules
|
|
||||||
|
|
||||||
Before proceeding, you MUST verify:
|
|
||||||
|
|
||||||
- [ ] PR number or URL was EXPLICITLY provided in the user's message
|
|
||||||
- [ ] You are NOT inferring the PR from conversation history
|
|
||||||
- [ ] You are NOT looking at git branches, recent commits, or local state
|
|
||||||
- [ ] You are NOT guessing or assuming any PR numbers
|
|
||||||
|
|
||||||
**If no explicit PR number/URL was provided, STOP immediately and ask:**
|
|
||||||
"What PR number or URL should I review?"
|
|
||||||
|
|
||||||
## Preflight Checks
|
|
||||||
|
|
||||||
### 0.1 Parse PR Input
|
|
||||||
|
|
||||||
Extract PR number from user input. Examples of valid formats:
|
|
||||||
|
|
||||||
- `123` (just the number)
|
|
||||||
- `#123` (with hash)
|
|
||||||
- `https://github.com/owner/repo/pull/123` (full URL)
|
|
||||||
|
|
||||||
If a URL specifies a different repository than the current one:
|
|
||||||
|
|
||||||
```bash
|
|
||||||
# Check current repo
|
|
||||||
gh repo view --json nameWithOwner -q '.nameWithOwner'
|
|
||||||
```
|
|
||||||
|
|
||||||
If mismatch detected, ask user:
|
|
||||||
|
|
||||||
> "This PR is from `{detected_repo}` but we're in `{current_repo}`. Proceed with reviewing `{detected_repo}#123`? (y/n)"
|
|
||||||
|
|
||||||
If user confirms, store `{REPO}` for use in all subsequent `gh` commands.
|
|
||||||
|
|
||||||
### 0.2 Ensure Clean Checkout
|
|
||||||
|
|
||||||
Verify the working tree is clean and check out the PR branch.
|
|
||||||
|
|
||||||
```bash
|
|
||||||
# Check for uncommitted changes
|
|
||||||
git status --porcelain
|
|
||||||
```
|
|
||||||
|
|
||||||
If output is non-empty, STOP and tell user:
|
|
||||||
|
|
||||||
> "You have uncommitted changes. Please commit or stash them before running a PR review."
|
|
||||||
|
|
||||||
If clean, fetch and checkout the PR branch:
|
|
||||||
|
|
||||||
```bash
|
|
||||||
# Fetch and checkout PR branch
|
|
||||||
# For cross-repo PRs, include --repo {REPO}
|
|
||||||
gh pr checkout {PR_NUMBER} [--repo {REPO}]
|
|
||||||
```
|
|
||||||
|
|
||||||
If checkout fails, STOP and report the error.
|
|
||||||
|
|
||||||
Now you're on the PR branch with full access to all files as they exist in the PR.
|
|
||||||
|
|
||||||
### 0.3 Check PR Size
|
|
||||||
|
|
||||||
```bash
|
|
||||||
# For cross-repo PRs, include --repo {REPO}
|
|
||||||
gh pr view {PR_NUMBER} [--repo {REPO}] --json additions,deletions,changedFiles -q '{"additions": .additions, "deletions": .deletions, "files": .changedFiles}'
|
|
||||||
```
|
|
||||||
|
|
||||||
**Size thresholds:**
|
|
||||||
|
|
||||||
| Metric | Warning Threshold |
|
|
||||||
| ------------- | ----------------- |
|
|
||||||
| Files changed | > 50 |
|
|
||||||
| Lines changed | > 5000 |
|
|
||||||
|
|
||||||
If thresholds exceeded, ask user:
|
|
||||||
|
|
||||||
> "This PR has {X} files and {Y} line changes. That's large.
|
|
||||||
>
|
|
||||||
> **[f] Focus** - Pick specific files or directories to review
|
|
||||||
> **[p] Proceed** - Review everything (may be slow/expensive)
|
|
||||||
> **[a] Abort** - Stop here"
|
|
||||||
|
|
||||||
### 0.4 Note Binary Files
|
|
||||||
|
|
||||||
```bash
|
|
||||||
# For cross-repo PRs, include --repo {REPO}
|
|
||||||
gh pr diff {PR_NUMBER} [--repo {REPO}] --name-only | grep -E '\.(png|jpg|jpeg|gif|ico|svg|woff|woff2|ttf|eot|pdf|zip|tar|gz|bin|exe|dll|so|dylib)$' || echo "No binary files detected"
|
|
||||||
```
|
|
||||||
|
|
||||||
Store list of binary files to skip. Note them in final output.
|
|
||||||
|
|
||||||
## Review Layers
|
|
||||||
|
|
||||||
**Launch steps 1.1 and 1.2 as parallel subagents.** Both receive the same PR diff and run concurrently. Wait for both to complete before proceeding to step 1.3.
|
|
||||||
|
|
||||||
### 1.1 Run Cynical Review (subagent)
|
|
||||||
|
|
||||||
Spawn a subagent with the following prompt. Pass the full PR diff as context.
|
|
||||||
|
|
||||||
**INTERNAL PERSONA - Never post this directly:**
|
|
||||||
|
|
||||||
Task: You are a cynical, jaded code reviewer with zero patience for sloppy work. This PR was submitted by a clueless weasel and you expect to find problems. Find at least five issues to fix or improve in it. Number them. Be skeptical of everything.
|
|
||||||
|
|
||||||
Output format:
|
|
||||||
|
|
||||||
```markdown
|
|
||||||
### [NUMBER]. [FINDING TITLE] [likely]
|
|
||||||
|
|
||||||
**Severity:** [EMOJI] [LEVEL]
|
|
||||||
|
|
||||||
[DESCRIPTION - be specific, include file:line references]
|
|
||||||
```
|
|
||||||
|
|
||||||
Severity scale:
|
|
||||||
|
|
||||||
| Level | Emoji | Meaning |
|
|
||||||
| -------- | ----- | ------------------------------------------------------- |
|
|
||||||
| Critical | 🔴 | Security issue, data loss risk, or broken functionality |
|
|
||||||
| Moderate | 🟡 | Bug, performance issue, or significant code smell |
|
|
||||||
| Minor | 🟢 | Style, naming, minor improvement opportunity |
|
|
||||||
|
|
||||||
Likely tag:
|
|
||||||
|
|
||||||
- Add `[likely]` to findings with high confidence, e.g. with direct evidence
|
|
||||||
- Sort findings by severity (Critical → Moderate → Minor), not by confidence
|
|
||||||
|
|
||||||
### 1.2 Run Edge Case Hunter (subagent)
|
|
||||||
|
|
||||||
Spawn a subagent that invokes the `bmad-review-edge-case-hunter` skill. Pass the full PR diff as the `content` input. Omit `also_consider` unless the user specified extra focus areas.
|
|
||||||
|
|
||||||
The skill returns a JSON array of objects, each with: `location`, `trigger_condition`, `guard_snippet`, `potential_consequence`.
|
|
||||||
|
|
||||||
**Map each JSON finding to the standard finding format:**
|
|
||||||
|
|
||||||
````markdown
|
|
||||||
### [NUMBER]. [trigger_condition] [likely]
|
|
||||||
|
|
||||||
**Severity:** [INFERRED_EMOJI] [INFERRED_LEVEL]
|
|
||||||
|
|
||||||
**`[location]`** — [trigger_condition]. [potential_consequence].
|
|
||||||
|
|
||||||
**Suggested fix:**
|
|
||||||
```
|
|
||||||
[guard_snippet]
|
|
||||||
```
|
|
||||||
````
|
|
||||||
|
|
||||||
Severity inference rules for edge case findings:
|
|
||||||
|
|
||||||
- **Critical** — data loss, security, or crash conditions (null deref, unhandled throw, auth bypass)
|
|
||||||
- **Moderate** — logic errors, silent wrong results, race conditions
|
|
||||||
- **Minor** — cosmetic edge cases, unlikely boundary conditions
|
|
||||||
|
|
||||||
Add `[likely]` to all edge case findings — they are derived from mechanical path tracing, so confidence is inherently high.
|
|
||||||
|
|
||||||
If the edge case hunter returns zero findings or halts, note it internally and proceed — step 1.1 findings still stand.
|
|
||||||
|
|
||||||
### 1.3 Merge and Deduplicate
|
|
||||||
|
|
||||||
Combine the findings from step 1.1 (adversarial) and step 1.2 (edge case hunter) into a single list.
|
|
||||||
|
|
||||||
**Deduplication rules:**
|
|
||||||
|
|
||||||
1. Compare each edge case finding against each adversarial finding
|
|
||||||
2. Two findings are duplicates if they reference the same file location AND describe the same gap (use description similarity — same function/variable/condition mentioned)
|
|
||||||
3. When a duplicate is found, keep the version with more specificity (usually the edge case hunter's, since it includes `guard_snippet`)
|
|
||||||
4. Mark the kept finding with the source that produced it
|
|
||||||
|
|
||||||
**After dedup, renumber all findings sequentially and sort by severity (Critical → Moderate → Minor).**
|
|
||||||
|
|
||||||
Tag each finding with its source:
|
|
||||||
|
|
||||||
- `[Adversarial]` — from step 1.1 only
|
|
||||||
- `[Edge Case]` — from step 1.2 only
|
|
||||||
- `[Both]` — flagged by both layers (deduped)
|
|
||||||
|
|
||||||
## Tone Transformation
|
|
||||||
|
|
||||||
**Transform the merged findings into cold engineering professionalism.**
|
|
||||||
|
|
||||||
**Transformation rules:**
|
|
||||||
|
|
||||||
1. Remove all inflammatory language, insults, assumptions about the author
|
|
||||||
2. Keep all technical substance, file references, severity ratings, likely tag, and **source tags**
|
|
||||||
3. Replace accusatory phrasing with neutral observations:
|
|
||||||
- ❌ "The author clearly didn't think about..."
|
|
||||||
- ✅ "This implementation may not account for..."
|
|
||||||
4. Preserve skepticism as healthy engineering caution:
|
|
||||||
- ❌ "This will definitely break in production"
|
|
||||||
- ✅ "This pattern has historically caused issues in production environments"
|
|
||||||
5. Add the suggested fixes.
|
|
||||||
6. Keep suggestions actionable and specific
|
|
||||||
7. Edge case hunter findings need no persona cleanup, but still apply professional formatting consistently
|
|
||||||
|
|
||||||
Output format after transformation:
|
|
||||||
|
|
||||||
```markdown
|
|
||||||
## PR Review: #{PR_NUMBER}
|
|
||||||
|
|
||||||
**Title:** {PR_TITLE}
|
|
||||||
**Author:** @{AUTHOR}
|
|
||||||
**Branch:** {HEAD} → {BASE}
|
|
||||||
**Review layers:** Adversarial + Edge Case Hunter
|
|
||||||
|
|
||||||
---
|
|
||||||
|
|
||||||
### Findings
|
|
||||||
|
|
||||||
[TRANSFORMED FINDINGS HERE — each tagged with source]
|
|
||||||
|
|
||||||
---
|
|
||||||
|
|
||||||
### Summary
|
|
||||||
|
|
||||||
**Critical:** {COUNT} | **Moderate:** {COUNT} | **Minor:** {COUNT}
|
|
||||||
**Sources:** {ADVERSARIAL_COUNT} adversarial | {EDGE_CASE_COUNT} edge case | {BOTH_COUNT} both
|
|
||||||
|
|
||||||
[BINARY_FILES_NOTE if any]
|
|
||||||
|
|
||||||
---
|
|
||||||
|
|
||||||
_Review generated by Raven's Verdict. LLM-produced analysis - findings may be incorrect or lack context. Verify before acting._
|
|
||||||
```
|
|
||||||
|
|
||||||
## Post Review
|
|
||||||
|
|
||||||
### 3.1 Preview
|
|
||||||
|
|
||||||
Display the complete transformed review to the user.
|
|
||||||
|
|
||||||
```
|
|
||||||
══════════════════════════════════════════════════════
|
|
||||||
PREVIEW - This will be posted to PR #{PR_NUMBER}
|
|
||||||
══════════════════════════════════════════════════════
|
|
||||||
|
|
||||||
[FULL REVIEW CONTENT]
|
|
||||||
|
|
||||||
══════════════════════════════════════════════════════
|
|
||||||
```
|
|
||||||
|
|
||||||
### 3.2 Confirm
|
|
||||||
|
|
||||||
Ask user for explicit confirmation:
|
|
||||||
|
|
||||||
> **Ready to post this review to PR #{PR_NUMBER}?**
|
|
||||||
>
|
|
||||||
> **[y] Yes** - Post as comment
|
|
||||||
> **[n] No** - Abort, do not post
|
|
||||||
> **[e] Edit** - Let me modify before posting
|
|
||||||
> **[s] Save only** - Save locally, don't post
|
|
||||||
|
|
||||||
### 3.3 Post or Save
|
|
||||||
|
|
||||||
**Write review to a temp file, then post:**
|
|
||||||
|
|
||||||
1. Write the review content to a temp file with a unique name (include PR number to avoid collisions)
|
|
||||||
2. Post using `gh pr comment {PR_NUMBER} [--repo {REPO}] --body-file {path}`
|
|
||||||
3. Delete the temp file after successful post
|
|
||||||
|
|
||||||
Do NOT use heredocs or `echo` - Markdown code blocks will break shell parsing. Use your file writing tool instead.
|
|
||||||
|
|
||||||
**If auth fails or post fails:**
|
|
||||||
|
|
||||||
1. Display error prominently:
|
|
||||||
|
|
||||||
```
|
|
||||||
⚠️ FAILED TO POST REVIEW
|
|
||||||
Error: {ERROR_MESSAGE}
|
|
||||||
```
|
|
||||||
|
|
||||||
2. Keep the temp file and tell the user where it is, so they can post manually with:
|
|
||||||
`gh pr comment {PR_NUMBER} [--repo {REPO}] --body-file {path}`
|
|
||||||
|
|
||||||
**If save only (s):**
|
|
||||||
|
|
||||||
Keep the temp file and inform user of location.
|
|
||||||
|
|
||||||
## Notes
|
|
||||||
|
|
||||||
- The "cynical asshole" phase is internal only - never posted
|
|
||||||
- Tone transform MUST happen before any external output
|
|
||||||
- When in doubt, ask the user - never assume
|
|
||||||
- If you're unsure about severity, err toward higher severity
|
|
||||||
- If you're unsure about confidence, be honest and use Medium or Low
|
|
||||||
|
|
@ -1,177 +0,0 @@
|
||||||
---
|
|
||||||
name: bmad-os-review-prompt
|
|
||||||
description: Review LLM workflow step prompts for known failure modes (silent ignoring, negation fragility, scope creep, etc). Use when user asks to "review a prompt" or "audit a workflow step".
|
|
||||||
---
|
|
||||||
|
|
||||||
# Prompt Review Skill: PromptSentinel v1.2
|
|
||||||
|
|
||||||
**Version:** v1.2
|
|
||||||
**Date:** March 2026
|
|
||||||
**Target Models:** Frontier LLMs (Claude 4.6, GPT-5.3, Gemini 3.1 Pro and equivalents) executing autonomous multi-step workflows at million-executions-per-day scale
|
|
||||||
**Purpose:** Detect and eliminate LLM-specific failure modes that survive generic editing, few-shot examples, and even multi-layer prompting. Output is always actionable, quoted, risk-quantified, and mitigation-ready.
|
|
||||||
|
|
||||||
---
|
|
||||||
|
|
||||||
### System Role (copy verbatim into reviewer agent)
|
|
||||||
|
|
||||||
You are **PromptSentinel v1.2**, a Prompt Auditor for production-grade LLM agent systems.
|
|
||||||
|
|
||||||
Your sole objective is to prevent silent, non-deterministic, or cascading failures in prompts that will be executed millions of times daily across heterogeneous models, tool stacks, and sub-agent contexts.
|
|
||||||
|
|
||||||
**Core Principles (required for every finding)**
|
|
||||||
- Every finding must populate all columns of the output table defined in the Strict Output Format section.
|
|
||||||
- Every finding must include: exact quote/location, failure mode ID or "ADV" (adversarial) / "PATH" (path-trace), production-calibrated risk, and a concrete mitigation with positive, deterministic rewritten example.
|
|
||||||
- Assume independent sub-agent contexts, variable context-window pressure, and model variance.
|
|
||||||
|
|
||||||
---
|
|
||||||
|
|
||||||
### Mandatory Review Procedure
|
|
||||||
|
|
||||||
Execute steps in order. Steps 0-1 run sequentially. Steps 2A/2B/2C run in parallel. Steps 3-4 run sequentially after all parallel tracks complete.
|
|
||||||
|
|
||||||
---
|
|
||||||
|
|
||||||
**Step 0: Input Validation**
|
|
||||||
If the input is not a clear LLM instruction prompt (raw code, data table, empty, or fewer than 50 tokens), output exactly:
|
|
||||||
`INPUT_NOT_A_PROMPT: [one-sentence reason]. Review aborted.`
|
|
||||||
and stop.
|
|
||||||
|
|
||||||
**Step 1: Context & Dependency Inventory**
|
|
||||||
Parse the entire prompt. Derive the **Prompt Title** as follows:
|
|
||||||
- First # or ## heading if present, OR
|
|
||||||
- Filename if provided, OR
|
|
||||||
- First complete sentence (truncated to 80 characters).
|
|
||||||
|
|
||||||
Build an explicit inventory table listing:
|
|
||||||
- All numbered/bulleted steps
|
|
||||||
- All variables, placeholders, file references, prior-step outputs
|
|
||||||
- All conditionals, loops, halts, tool calls
|
|
||||||
- All assumptions about persistent memory or ordering
|
|
||||||
|
|
||||||
Flag any unresolved dependencies.
|
|
||||||
Step 1 is complete when the full inventory table is populated.
|
|
||||||
|
|
||||||
This inventory is shared context for all three parallel tracks below.
|
|
||||||
|
|
||||||
---
|
|
||||||
|
|
||||||
### Step 2: Three Parallel Review Tracks
|
|
||||||
|
|
||||||
Launch all three tracks concurrently. Each track produces findings in the same table format. Tracks are independent — no track reads another track's output.
|
|
||||||
|
|
||||||
---
|
|
||||||
|
|
||||||
**Track A: Adversarial Review (sub-agent)**
|
|
||||||
|
|
||||||
Spawn a sub-agent with the following brief and the full prompt text. Give it the Step 1 inventory for reference. Give it NO catalog, NO checklist, and NO further instructions beyond this brief:
|
|
||||||
|
|
||||||
> You are reviewing an LLM prompt that will execute millions of times daily across different models. Find every way this prompt could fail, produce wrong results, or behave inconsistently. For each issue found, provide: exact quote or location, what goes wrong at scale, and a concrete fix. Use only training knowledge — rely on your own judgment, not any external checklist.
|
|
||||||
|
|
||||||
Track A is complete when the sub-agent returns its findings.
|
|
||||||
|
|
||||||
---
|
|
||||||
|
|
||||||
**Track B: Catalog Scan + Execution Simulation (main agent)**
|
|
||||||
|
|
||||||
**B.1 — Failure Mode Audit**
|
|
||||||
Scan the prompt against all 17 failure modes in the catalog below. Quote every relevant instance. For modes with zero findings, list them in a single summary line (e.g., "Modes 3, 7, 10, 12: no instances found").
|
|
||||||
B.1 is complete when every mode has been explicitly checked.
|
|
||||||
|
|
||||||
**B.2 — Execution Simulation**
|
|
||||||
Simulate the prompt under 3 scenarios:
|
|
||||||
- Scenario A: Small-context model (32k window) under load
|
|
||||||
- Scenario B: Large-context model (200k window), fresh session
|
|
||||||
- Scenario C: Different model vendor with weaker instruction-following
|
|
||||||
|
|
||||||
For each scenario, produce one row in this table:
|
|
||||||
|
|
||||||
| Scenario | Likely Failure Location | Failure Mode | Expected Symptom |
|
|
||||||
|----------|-------------------------|--------------|------------------|
|
|
||||||
|
|
||||||
B.2 is complete when the table contains 3 fully populated rows.
|
|
||||||
|
|
||||||
Track B is complete when both B.1 and B.2 are finished.
|
|
||||||
|
|
||||||
---
|
|
||||||
|
|
||||||
**Track C: Prompt Path Tracer (sub-agent)**
|
|
||||||
|
|
||||||
Spawn a sub-agent with the following brief, the full prompt text, and the Step 1 inventory:
|
|
||||||
|
|
||||||
> You are a mechanical path tracer for LLM prompts. Walk every execution path through this prompt — every conditional, branch, loop, halt, optional step, tool call, and error path. For each path, determine: is the entry condition unambiguous? Is there a defined done-state? Are all required inputs guaranteed to be available? Report only paths with gaps — discard clean paths silently.
|
|
||||||
>
|
|
||||||
> For each finding, provide:
|
|
||||||
> - **Location**: step/section reference
|
|
||||||
> - **Path**: the specific conditional or branch
|
|
||||||
> - **Gap**: what is missing (unclear entry, no done-state, unresolved input)
|
|
||||||
> - **Fix**: concrete rewrite that closes the gap
|
|
||||||
|
|
||||||
Track C is complete when the sub-agent returns its findings.
|
|
||||||
|
|
||||||
---
|
|
||||||
|
|
||||||
**Step 3: Merge & Deduplicate**
|
|
||||||
|
|
||||||
Collect all findings from Tracks A, B, and C. Tag each finding with its source (ADV, catalog mode number, or PATH). Deduplicate by exact quote — when multiple tracks flag the same issue, keep the finding with the most specific mitigation and note all sources.
|
|
||||||
|
|
||||||
Assign severity to each finding: Critical / High / Medium / Low.
|
|
||||||
|
|
||||||
Step 3 is complete when the merged, deduplicated, severity-scored findings table is populated.
|
|
||||||
|
|
||||||
**Step 4: Final Synthesis**
|
|
||||||
|
|
||||||
Format the entire review using the Strict Output Format below. Emit the complete review only after Step 3 is finished.
|
|
||||||
|
|
||||||
---
|
|
||||||
|
|
||||||
### Complete Failure Mode Catalog (Track B — scan all 17)
|
|
||||||
|
|
||||||
1. **Silent Ignoring** — Instructions buried mid-paragraph, nested >2-deep conditionals, parentheticals, or "also remember to..." after long text.
|
|
||||||
2. **Ambiguous Completion** — Steps with no observable done-state or verification criterion ("think about it", "finalize").
|
|
||||||
3. **Context Window Assumptions** — References to "previous step output", "the file we created earlier", or variables not re-passed.
|
|
||||||
4. **Over-specification vs Under-specification** — Wall-of-text detail causing selective attention OR vague verbs inviting hallucination.
|
|
||||||
5. **Non-deterministic Phrasing** — "Consider", "you may", "if appropriate", "best way", "optionally", "try to".
|
|
||||||
6. **Negation Fragility** — "Do NOT", "avoid", "never" (especially multiple or under load).
|
|
||||||
7. **Implicit Ordering** — Step B assumes Step A completed without explicit sequencing or guardrails.
|
|
||||||
8. **Variable Resolution Gaps** — `{{VAR}}` or "the result from tool X" never initialized upstream.
|
|
||||||
9. **Scope Creep Invitation** — "Explore", "improve", "make it better", open-ended goals without hard boundaries.
|
|
||||||
10. **Halt / Checkpoint Gaps** — Human-in-loop required but no explicit `STOP_AND_WAIT_FOR_HUMAN` or output format that forces pause.
|
|
||||||
11. **Teaching Known Knowledge** — Re-explaining basic facts, tool usage, or reasoning patterns frontier models already know (2026 cutoff).
|
|
||||||
12. **Obsolete Prompting Techniques** — Outdated patterns (vanilla "think step by step" without modern scaffolding, deprecated few-shot styles).
|
|
||||||
13. **Missing Strict Output Schema** — No enforced JSON mode or structured output format.
|
|
||||||
14. **Missing Error Handling** — No recovery instructions for tool failures, timeouts, or malformed inputs.
|
|
||||||
15. **Missing Success Criteria** — No quality gates or measurable completion standards.
|
|
||||||
16. **Monolithic Prompt Anti-pattern** — Single large prompt that should be split into specialized sub-agents.
|
|
||||||
17. **Missing Grounding Instructions** — Factual claims required without explicit requirement to base them on retrieved evidence.
|
|
||||||
|
|
||||||
---
|
|
||||||
|
|
||||||
### Strict Output Format (use this template exactly as shown)
|
|
||||||
|
|
||||||
```markdown
|
|
||||||
# PromptSentinel Review: [Derived Prompt Title]
|
|
||||||
|
|
||||||
**Overall Risk Level:** Critical / High / Medium / Low
|
|
||||||
**Critical Issues:** X | **High:** Y | **Medium:** Z | **Low:** W
|
|
||||||
**Estimated Production Failure Rate if Unfixed:** ~XX% of runs
|
|
||||||
|
|
||||||
## Critical & High Findings
|
|
||||||
| # | Source | Failure Mode | Exact Quote / Location | Risk (High-Volume) | Mitigation & Rewritten Example |
|
|
||||||
|---|--------|--------------|------------------------|--------------------|-------------------------------|
|
|
||||||
| | | | | | |
|
|
||||||
|
|
||||||
## Medium & Low Findings
|
|
||||||
(same table format)
|
|
||||||
|
|
||||||
## Positive Observations
|
|
||||||
(only practices that actively mitigate known failure modes)
|
|
||||||
|
|
||||||
## Recommended Refactor Summary
|
|
||||||
- Highest-leverage changes (bullets)
|
|
||||||
|
|
||||||
## Revised Prompt Sections (Critical/High items only)
|
|
||||||
Provide full rewritten paragraphs/sections with changes clearly marked.
|
|
||||||
|
|
||||||
**Reviewer Confidence:** XX/100
|
|
||||||
**Review Complete** – ready for re-submission or automated patching.
|
|
||||||
```
|
|
||||||
|
|
@ -1,12 +0,0 @@
|
||||||
---
|
|
||||||
name: bmad-os-root-cause-analysis
|
|
||||||
description: Analyzes a bug-fix commit or PR and produces a structured Root Cause Analysis report covering what went wrong, why, and what guardrails failed.
|
|
||||||
license: MIT
|
|
||||||
disable-model-invocation: true
|
|
||||||
metadata:
|
|
||||||
author: bmad-code-org
|
|
||||||
version: "1.0.0"
|
|
||||||
compatibility: Requires gh CLI and git repository
|
|
||||||
---
|
|
||||||
|
|
||||||
Read `prompts/instructions.md` and execute.
|
|
||||||
|
|
@ -1,74 +0,0 @@
|
||||||
# Bug-Fix Root Cause Analysis
|
|
||||||
|
|
||||||
Analyze a bug-fix commit or PR and produce a structured Root Cause Analysis report.
|
|
||||||
|
|
||||||
## Principles
|
|
||||||
|
|
||||||
- **Direct attribution.** This report names the individual who introduced the defect. Industry convention advocates blameless postmortems. This skill deliberately deviates: naming the individual and trusting them to own it is more respectful than diffusing accountability into systemic abstraction. Direct, factual, not accusatory. If authorship can't be determined confidently, say so.
|
|
||||||
- **Pyramid communication.** The executive summary must convey the full picture. A reader who stops after the first paragraph gets the gist. Everything else is supporting evidence.
|
|
||||||
|
|
||||||
## Preflight
|
|
||||||
|
|
||||||
Verify `gh auth status` and that you're in a git repository. Stop with a clear message if either fails.
|
|
||||||
|
|
||||||
## Execution
|
|
||||||
|
|
||||||
1. **Identify the fix.** Accept whatever the user provides — commit SHA, PR, issue, description. Resolve to the specific fix commit/PR using `gh` and `git`. If ambiguous, ask. Confirm the change is actually a bug fix before proceeding.
|
|
||||||
2. **Gather evidence.** Read the fix diff, PR/issue discussion, and use blame/log to identify the commit that introduced the bug. Collect timeline data.
|
|
||||||
3. **Analyze.** Apply 5 Whys. Classify the root cause. Identify contributing factors.
|
|
||||||
4. **Evaluate guardrails.** Inspect the actual repo configuration (CI workflows, linter configs, test setup) — don't assume. For each applicable guardrail, explain specifically why it missed this bug.
|
|
||||||
5. **Write the report** to `_bmad-output/rca-reports/rca-{YYYY-MM-DD}-{slug}.md`. Present the executive summary in chat.
|
|
||||||
|
|
||||||
## Report Structure
|
|
||||||
|
|
||||||
```markdown
|
|
||||||
# Root Cause Analysis: {Bug Title}
|
|
||||||
|
|
||||||
**Date:** {today}
|
|
||||||
**Fix:** {PR link or commit SHA}
|
|
||||||
**Severity:** {Critical | High | Medium | Low}
|
|
||||||
**Root Cause Category:** {Requirements | Design | Code Logic | Test Gap | Process | Environment/Config}
|
|
||||||
|
|
||||||
## Executive Summary
|
|
||||||
|
|
||||||
{One paragraph. What the bug was, root cause, who introduced it and when, detection
|
|
||||||
latency (introduced → detected), severity, and the key preventive recommendation.}
|
|
||||||
|
|
||||||
## What Was the Problem?
|
|
||||||
|
|
||||||
## When Did It Happen?
|
|
||||||
|
|
||||||
| Event | Date | Reference |
|
|
||||||
|-------|------|-----------|
|
|
||||||
| Introduced | | |
|
|
||||||
| Detected | | |
|
|
||||||
| Fixed | | |
|
|
||||||
| **Detection Latency** | **{introduced → detected}** | |
|
|
||||||
|
|
||||||
## Who Caused It?
|
|
||||||
|
|
||||||
{Author, commit/PR that introduced the defect, and the context — what were they
|
|
||||||
trying to do?}
|
|
||||||
|
|
||||||
## How Did It Happen?
|
|
||||||
|
|
||||||
## Why Did It Happen?
|
|
||||||
|
|
||||||
{5 Whys analysis. Root cause category. Contributing factors.}
|
|
||||||
|
|
||||||
## Failed Guardrails Analysis
|
|
||||||
|
|
||||||
| Guardrail | In Place? | Why It Failed |
|
|
||||||
|-----------|-----------|---------------|
|
|
||||||
| | | |
|
|
||||||
|
|
||||||
**Most Critical Failure:** {Which one mattered most and why.}
|
|
||||||
|
|
||||||
## Resolution
|
|
||||||
|
|
||||||
## Corrective & Preventive Actions
|
|
||||||
|
|
||||||
| # | Action | Type | Priority |
|
|
||||||
|---|--------|------|----------|
|
|
||||||
| | | {Prevent/Detect/Mitigate} | |
|
|
||||||
```
|
|
||||||
|
|
@ -60,23 +60,40 @@ reviews:
|
||||||
- "!**/validation-report-*.md"
|
- "!**/validation-report-*.md"
|
||||||
- "!CHANGELOG.md"
|
- "!CHANGELOG.md"
|
||||||
path_instructions:
|
path_instructions:
|
||||||
- path: "**/*"
|
- path: "src/**"
|
||||||
instructions: |
|
instructions: |
|
||||||
You are a cynical, jaded reviewer with zero patience for sloppy work.
|
Source file changed. Check whether documentation under docs/ needs
|
||||||
This PR was submitted by a clueless weasel and you expect to find problems.
|
a corresponding update — new features, changed behavior, renamed
|
||||||
Be skeptical of everything.
|
concepts, altered CLI flags, or modified configuration options should
|
||||||
Look for what's missing, not just what's wrong.
|
all be reflected in the relevant doc pages. Flag missing or outdated
|
||||||
Use a precise, professional tone — no profanity or personal attacks.
|
docs as a review comment.
|
||||||
|
- path: "src/**/skills/**"
|
||||||
Review with extreme skepticism — assume problems exist.
|
instructions: |
|
||||||
Find at least 10 issues to fix or improve.
|
Skill file. Apply the full rule catalog defined in tools/skill-validator.md.
|
||||||
|
That document is the single source of truth for all skill validation rules
|
||||||
Do NOT:
|
covering SKILL.md metadata, workflow.md constraints, step file structure,
|
||||||
- Comment on formatting, linting, or style
|
path references, variable resolution, sequential execution, and skill
|
||||||
- Give "looks good" passes
|
invocation syntax.
|
||||||
- Anchor on any specific ruleset — reason freely
|
- path: "src/**/workflows/**"
|
||||||
|
instructions: |
|
||||||
If you find zero issues, re-analyze — this is suspicious.
|
Legacy workflow file (pre-skill conversion). Apply the full rule catalog
|
||||||
|
defined in tools/skill-validator.md — the same rules apply to workflows
|
||||||
|
that are being converted to skills.
|
||||||
|
- path: "src/**/tasks/**"
|
||||||
|
instructions: |
|
||||||
|
Task file. Apply the full rule catalog defined in tools/skill-validator.md.
|
||||||
|
- path: "src/**/*.agent.yaml"
|
||||||
|
instructions: |
|
||||||
|
Agent definition file. Check:
|
||||||
|
- Has metadata section with id, name, title, icon, and module
|
||||||
|
- Defines persona with role, identity, communication_style, and principles
|
||||||
|
- Menu triggers reference valid skill names that exist
|
||||||
|
- path: "docs/**/*.md"
|
||||||
|
instructions: |
|
||||||
|
Documentation file. Check internal markdown links point to existing files.
|
||||||
|
- path: "tools/**"
|
||||||
|
instructions: |
|
||||||
|
Build script/tooling. Check error handling and proper exit codes.
|
||||||
chat:
|
chat:
|
||||||
auto_reply: true # Response to mentions in comments, a la @coderabbit review
|
auto_reply: true # Response to mentions in comments, a la @coderabbit review
|
||||||
issue_enrichment:
|
issue_enrichment:
|
||||||
|
|
|
||||||
|
|
@ -1,82 +0,0 @@
|
||||||
name: Publish Latest
|
|
||||||
|
|
||||||
on:
|
|
||||||
workflow_dispatch:
|
|
||||||
inputs:
|
|
||||||
bump:
|
|
||||||
description: "Version bump type"
|
|
||||||
required: true
|
|
||||||
default: "patch"
|
|
||||||
type: choice
|
|
||||||
options:
|
|
||||||
- patch
|
|
||||||
- minor
|
|
||||||
- major
|
|
||||||
|
|
||||||
concurrency:
|
|
||||||
group: publish-latest
|
|
||||||
|
|
||||||
permissions:
|
|
||||||
id-token: write
|
|
||||||
contents: write
|
|
||||||
|
|
||||||
jobs:
|
|
||||||
publish:
|
|
||||||
runs-on: ubuntu-latest
|
|
||||||
steps:
|
|
||||||
- name: Checkout
|
|
||||||
uses: actions/checkout@v4
|
|
||||||
with:
|
|
||||||
fetch-depth: 0
|
|
||||||
token: ${{ secrets.GITHUB_TOKEN }}
|
|
||||||
|
|
||||||
- name: Setup Node
|
|
||||||
uses: actions/setup-node@v4
|
|
||||||
with:
|
|
||||||
node-version-file: ".nvmrc"
|
|
||||||
cache: "npm"
|
|
||||||
registry-url: "https://registry.npmjs.org"
|
|
||||||
|
|
||||||
- name: Configure git user
|
|
||||||
run: |
|
|
||||||
git config user.name "github-actions[bot]"
|
|
||||||
git config user.email "github-actions[bot]@users.noreply.github.com"
|
|
||||||
|
|
||||||
- name: Install dependencies
|
|
||||||
run: npm ci
|
|
||||||
|
|
||||||
- name: Run tests
|
|
||||||
run: npm test
|
|
||||||
|
|
||||||
- name: Bump version
|
|
||||||
run: 'npm version ${{ inputs.bump }} -m "chore(release): v%s [skip ci]"'
|
|
||||||
|
|
||||||
- name: Publish to npm
|
|
||||||
run: npm publish --tag latest --provenance
|
|
||||||
env:
|
|
||||||
NODE_AUTH_TOKEN: ${{ secrets.NPM_TOKEN }}
|
|
||||||
|
|
||||||
- name: Push version commit and tag
|
|
||||||
run: git push origin main --follow-tags
|
|
||||||
|
|
||||||
- name: Create GitHub Release
|
|
||||||
run: |
|
|
||||||
TAG="v$(node -p 'require("./package.json").version')"
|
|
||||||
gh release create "$TAG" --generate-notes
|
|
||||||
env:
|
|
||||||
GH_TOKEN: ${{ secrets.GITHUB_TOKEN }}
|
|
||||||
|
|
||||||
- name: Notify Discord
|
|
||||||
continue-on-error: true
|
|
||||||
run: |
|
|
||||||
set -o pipefail
|
|
||||||
source .github/scripts/discord-helpers.sh
|
|
||||||
[ -z "$WEBHOOK" ] && exit 0
|
|
||||||
|
|
||||||
VERSION=$(node -p 'require("./package.json").version')
|
|
||||||
RELEASE_URL="${{ github.server_url }}/${{ github.repository }}/releases/tag/v${VERSION}"
|
|
||||||
MSG=$(printf '📦 **[bmad-method v%s released](<%s>)**' "$VERSION" "$RELEASE_URL" | esc)
|
|
||||||
|
|
||||||
jq -n --arg content "$MSG" '{content: $content}' | curl -sf --retry 2 -X POST "$WEBHOOK" -H "Content-Type: application/json" -d @-
|
|
||||||
env:
|
|
||||||
WEBHOOK: ${{ secrets.DISCORD_WEBHOOK }}
|
|
||||||
|
|
@ -1,65 +0,0 @@
|
||||||
name: Publish Next
|
|
||||||
|
|
||||||
on:
|
|
||||||
push:
|
|
||||||
branches: [main]
|
|
||||||
paths:
|
|
||||||
- "src/**"
|
|
||||||
- "tools/cli/**"
|
|
||||||
- "package.json"
|
|
||||||
|
|
||||||
concurrency:
|
|
||||||
group: publish-next
|
|
||||||
cancel-in-progress: true
|
|
||||||
|
|
||||||
permissions:
|
|
||||||
id-token: write
|
|
||||||
contents: read
|
|
||||||
|
|
||||||
jobs:
|
|
||||||
publish:
|
|
||||||
runs-on: ubuntu-latest
|
|
||||||
steps:
|
|
||||||
- name: Checkout
|
|
||||||
uses: actions/checkout@v4
|
|
||||||
|
|
||||||
- name: Setup Node
|
|
||||||
uses: actions/setup-node@v4
|
|
||||||
with:
|
|
||||||
node-version-file: ".nvmrc"
|
|
||||||
cache: "npm"
|
|
||||||
registry-url: "https://registry.npmjs.org"
|
|
||||||
|
|
||||||
- name: Install dependencies
|
|
||||||
run: npm ci
|
|
||||||
|
|
||||||
- name: Run tests
|
|
||||||
run: npm test
|
|
||||||
|
|
||||||
- name: Derive next prerelease version
|
|
||||||
run: |
|
|
||||||
NEXT_VER=$(npm view bmad-method@next version 2>/dev/null || echo "")
|
|
||||||
LATEST_VER=$(npm view bmad-method@latest version 2>/dev/null || echo "")
|
|
||||||
|
|
||||||
# Determine the best base version for the next prerelease
|
|
||||||
BASE=$(node -e "
|
|
||||||
const semver = require('semver');
|
|
||||||
const next = process.argv[1] || null;
|
|
||||||
const latest = process.argv[2] || null;
|
|
||||||
if (!next && !latest) process.exit(0);
|
|
||||||
if (!next) { console.log(latest); process.exit(0); }
|
|
||||||
if (!latest) { console.log(next); process.exit(0); }
|
|
||||||
// If latest is newer than next's base, use latest (next prerelease will be based on it)
|
|
||||||
const nextBase = next.replace(/-next\.\d+$/, '');
|
|
||||||
console.log(semver.gt(latest, nextBase) ? latest : next);
|
|
||||||
" "$NEXT_VER" "$LATEST_VER")
|
|
||||||
|
|
||||||
if [ -n "$BASE" ]; then
|
|
||||||
npm version "$BASE" --no-git-tag-version --allow-same-version
|
|
||||||
fi
|
|
||||||
npm version prerelease --preid=next --no-git-tag-version
|
|
||||||
|
|
||||||
- name: Publish to npm
|
|
||||||
run: npm publish --tag next --provenance
|
|
||||||
env:
|
|
||||||
NODE_AUTH_TOKEN: ${{ secrets.NPM_TOKEN }}
|
|
||||||
|
|
@ -0,0 +1,141 @@
|
||||||
|
name: Publish
|
||||||
|
|
||||||
|
on:
|
||||||
|
push:
|
||||||
|
branches: [main]
|
||||||
|
paths:
|
||||||
|
- "src/**"
|
||||||
|
- "tools/cli/**"
|
||||||
|
- "package.json"
|
||||||
|
workflow_dispatch:
|
||||||
|
inputs:
|
||||||
|
channel:
|
||||||
|
description: "Publish channel"
|
||||||
|
required: true
|
||||||
|
default: "latest"
|
||||||
|
type: choice
|
||||||
|
options:
|
||||||
|
- latest
|
||||||
|
- next
|
||||||
|
bump:
|
||||||
|
description: "Version bump type (latest channel only)"
|
||||||
|
required: false
|
||||||
|
default: "patch"
|
||||||
|
type: choice
|
||||||
|
options:
|
||||||
|
- patch
|
||||||
|
- minor
|
||||||
|
- major
|
||||||
|
|
||||||
|
concurrency:
|
||||||
|
group: publish
|
||||||
|
cancel-in-progress: ${{ github.event_name == 'push' }}
|
||||||
|
|
||||||
|
permissions:
|
||||||
|
id-token: write
|
||||||
|
contents: write
|
||||||
|
|
||||||
|
jobs:
|
||||||
|
publish:
|
||||||
|
if: github.repository == 'bmad-code-org/BMAD-METHOD' && (github.event_name != 'workflow_dispatch' || github.ref == 'refs/heads/main')
|
||||||
|
runs-on: ubuntu-latest
|
||||||
|
steps:
|
||||||
|
- name: Generate GitHub App token
|
||||||
|
id: app-token
|
||||||
|
if: github.event_name == 'workflow_dispatch' && inputs.channel == 'latest'
|
||||||
|
uses: actions/create-github-app-token@v2
|
||||||
|
with:
|
||||||
|
app-id: ${{ secrets.RELEASE_APP_ID }}
|
||||||
|
private-key: ${{ secrets.RELEASE_APP_PRIVATE_KEY }}
|
||||||
|
|
||||||
|
- name: Checkout
|
||||||
|
uses: actions/checkout@v4
|
||||||
|
with:
|
||||||
|
fetch-depth: 0
|
||||||
|
token: ${{ steps.app-token.outputs.token || secrets.GITHUB_TOKEN }}
|
||||||
|
|
||||||
|
- name: Setup Node
|
||||||
|
uses: actions/setup-node@v4
|
||||||
|
with:
|
||||||
|
node-version-file: ".nvmrc"
|
||||||
|
cache: "npm"
|
||||||
|
|
||||||
|
- name: Ensure trusted publishing toolchain
|
||||||
|
run: |
|
||||||
|
# npm trusted publishing requires Node >= 22.14.0 and npm >= 11.5.1.
|
||||||
|
npm install --global npm@11.6.2
|
||||||
|
|
||||||
|
- name: Configure git user
|
||||||
|
if: github.event_name == 'workflow_dispatch' && inputs.channel == 'latest'
|
||||||
|
run: |
|
||||||
|
git config user.name "github-actions[bot]"
|
||||||
|
git config user.email "github-actions[bot]@users.noreply.github.com"
|
||||||
|
|
||||||
|
- name: Install dependencies
|
||||||
|
run: npm ci
|
||||||
|
|
||||||
|
- name: Run tests
|
||||||
|
run: npm test
|
||||||
|
|
||||||
|
- name: Derive next prerelease version
|
||||||
|
if: github.event_name == 'push' || (github.event_name == 'workflow_dispatch' && inputs.channel == 'next')
|
||||||
|
run: |
|
||||||
|
NEXT_VER=$(npm view bmad-method@next version 2>/dev/null || echo "")
|
||||||
|
LATEST_VER=$(npm view bmad-method@latest version 2>/dev/null || echo "")
|
||||||
|
|
||||||
|
# Determine the best base version for the next prerelease.
|
||||||
|
BASE=$(node -e "
|
||||||
|
const semver = require('semver');
|
||||||
|
const next = process.argv[1] || null;
|
||||||
|
const latest = process.argv[2] || null;
|
||||||
|
if (!next && !latest) process.exit(0);
|
||||||
|
if (!next) { console.log(latest); process.exit(0); }
|
||||||
|
if (!latest) { console.log(next); process.exit(0); }
|
||||||
|
const nextBase = next.replace(/-next\.\d+$/, '');
|
||||||
|
console.log(semver.gt(latest, nextBase) ? latest : next);
|
||||||
|
" "$NEXT_VER" "$LATEST_VER")
|
||||||
|
|
||||||
|
if [ -n "$BASE" ]; then
|
||||||
|
npm version "$BASE" --no-git-tag-version --allow-same-version
|
||||||
|
fi
|
||||||
|
npm version prerelease --preid=next --no-git-tag-version
|
||||||
|
|
||||||
|
- name: Bump stable version
|
||||||
|
if: github.event_name == 'workflow_dispatch' && inputs.channel == 'latest'
|
||||||
|
run: 'npm version ${{ inputs.bump }} -m "chore(release): v%s [skip ci]"'
|
||||||
|
|
||||||
|
- name: Publish prerelease to npm
|
||||||
|
if: github.event_name == 'push' || (github.event_name == 'workflow_dispatch' && inputs.channel == 'next')
|
||||||
|
run: npm publish --tag next --provenance
|
||||||
|
|
||||||
|
- name: Publish stable release to npm
|
||||||
|
if: github.event_name == 'workflow_dispatch' && inputs.channel == 'latest'
|
||||||
|
run: npm publish --tag latest --provenance
|
||||||
|
|
||||||
|
- name: Push version commit and tag
|
||||||
|
if: github.event_name == 'workflow_dispatch' && inputs.channel == 'latest'
|
||||||
|
run: git push origin main --follow-tags
|
||||||
|
|
||||||
|
- name: Create GitHub Release
|
||||||
|
if: github.event_name == 'workflow_dispatch' && inputs.channel == 'latest'
|
||||||
|
run: |
|
||||||
|
TAG="v$(node -p 'require("./package.json").version')"
|
||||||
|
gh release create "$TAG" --generate-notes
|
||||||
|
env:
|
||||||
|
GH_TOKEN: ${{ secrets.GITHUB_TOKEN }}
|
||||||
|
|
||||||
|
- name: Notify Discord
|
||||||
|
if: github.event_name == 'workflow_dispatch' && inputs.channel == 'latest'
|
||||||
|
continue-on-error: true
|
||||||
|
run: |
|
||||||
|
set -o pipefail
|
||||||
|
source .github/scripts/discord-helpers.sh
|
||||||
|
[ -z "$WEBHOOK" ] && exit 0
|
||||||
|
|
||||||
|
VERSION=$(node -p 'require("./package.json").version')
|
||||||
|
RELEASE_URL="${{ github.server_url }}/${{ github.repository }}/releases/tag/v${VERSION}"
|
||||||
|
MSG=$(printf '📦 **[bmad-method v%s released](<%s>)**' "$VERSION" "$RELEASE_URL" | esc)
|
||||||
|
|
||||||
|
jq -n --arg content "$MSG" '{content: $content}' | curl -sf --retry 2 -X POST "$WEBHOOK" -H "Content-Type: application/json" -d @-
|
||||||
|
env:
|
||||||
|
WEBHOOK: ${{ secrets.DISCORD_WEBHOOK }}
|
||||||
|
|
@ -1,15 +1,15 @@
|
||||||
name: Quality & Validation
|
name: Quality & Validation
|
||||||
|
|
||||||
# Runs comprehensive quality checks on all PRs:
|
# Runs comprehensive quality checks on all PRs and pushes to main:
|
||||||
# - Prettier (formatting)
|
# - Prettier (formatting)
|
||||||
# - ESLint (linting)
|
# - ESLint (linting)
|
||||||
# - markdownlint (markdown quality)
|
# - markdownlint (markdown quality)
|
||||||
# - Schema validation (YAML structure)
|
|
||||||
# - Agent schema tests (fixture-based validation)
|
|
||||||
# - Installation component tests (compilation)
|
# - Installation component tests (compilation)
|
||||||
# - Bundle validation (web bundle integrity)
|
# Keep this workflow aligned with `npm run quality` in `package.json`.
|
||||||
|
|
||||||
"on":
|
"on":
|
||||||
|
push:
|
||||||
|
branches: [main]
|
||||||
pull_request:
|
pull_request:
|
||||||
branches: ["**"]
|
branches: ["**"]
|
||||||
workflow_dispatch:
|
workflow_dispatch:
|
||||||
|
|
@ -103,14 +103,14 @@ jobs:
|
||||||
- name: Install dependencies
|
- name: Install dependencies
|
||||||
run: npm ci
|
run: npm ci
|
||||||
|
|
||||||
- name: Validate YAML schemas
|
|
||||||
run: npm run validate:schemas
|
|
||||||
|
|
||||||
- name: Run agent schema validation tests
|
|
||||||
run: npm run test:schemas
|
|
||||||
|
|
||||||
- name: Test agent compilation components
|
- name: Test agent compilation components
|
||||||
run: npm run test:install
|
run: npm run test:install
|
||||||
|
|
||||||
|
- name: Test module extension installer
|
||||||
|
run: npm run test:install:extensions
|
||||||
|
|
||||||
- name: Validate file references
|
- name: Validate file references
|
||||||
run: npm run validate:refs
|
run: npm run validate:refs
|
||||||
|
|
||||||
|
- name: Validate skills
|
||||||
|
run: npm run validate:skills
|
||||||
|
|
|
||||||
|
|
@ -17,9 +17,15 @@ npm-debug.log*
|
||||||
# Build output
|
# Build output
|
||||||
build/*.txt
|
build/*.txt
|
||||||
|
|
||||||
|
design-artifacts/
|
||||||
|
|
||||||
# Environment variables
|
# Environment variables
|
||||||
.env
|
.env
|
||||||
|
|
||||||
|
# Python
|
||||||
|
__pycache__/
|
||||||
|
.pytest_cache/
|
||||||
|
|
||||||
# System files
|
# System files
|
||||||
.DS_Store
|
.DS_Store
|
||||||
Thumbs.db
|
Thumbs.db
|
||||||
|
|
@ -56,7 +62,7 @@ _bmad-output
|
||||||
.qwen
|
.qwen
|
||||||
.rovodev
|
.rovodev
|
||||||
.kilocodemodes
|
.kilocodemodes
|
||||||
.claude/commands
|
.claude
|
||||||
.codex
|
.codex
|
||||||
.github/chatmodes
|
.github/chatmodes
|
||||||
.github/agents
|
.github/agents
|
||||||
|
|
|
||||||
|
|
@ -0,0 +1,39 @@
|
||||||
|
# Development & Testing
|
||||||
|
test/
|
||||||
|
.husky/
|
||||||
|
.github/
|
||||||
|
.vscode/
|
||||||
|
.augment/
|
||||||
|
coverage/
|
||||||
|
test-output/
|
||||||
|
|
||||||
|
# Documentation site (users access docs online)
|
||||||
|
docs/
|
||||||
|
website/
|
||||||
|
|
||||||
|
# Configuration files (development only)
|
||||||
|
.coderabbit.yaml
|
||||||
|
.markdownlint-cli2.yaml
|
||||||
|
.prettierignore
|
||||||
|
.nvmrc
|
||||||
|
eslint.config.mjs
|
||||||
|
prettier.config.mjs
|
||||||
|
|
||||||
|
# Build tools (not needed at runtime)
|
||||||
|
tools/build-docs.mjs
|
||||||
|
tools/fix-doc-links.js
|
||||||
|
tools/validate-doc-links.js
|
||||||
|
tools/validate-file-refs.js
|
||||||
|
|
||||||
|
# Images (branding/marketing only)
|
||||||
|
banner-bmad-method.png
|
||||||
|
Wordmark.png
|
||||||
|
|
||||||
|
# Repository metadata
|
||||||
|
CONTRIBUTING.md
|
||||||
|
CONTRIBUTORS.md
|
||||||
|
SECURITY.md
|
||||||
|
TRADEMARK.md
|
||||||
|
CHANGELOG.md
|
||||||
|
CNAME
|
||||||
|
CODE_OF_CONDUCT.md
|
||||||
|
|
@ -0,0 +1,12 @@
|
||||||
|
# BMAD-METHOD
|
||||||
|
|
||||||
|
Open source framework for structured, agent-assisted software delivery.
|
||||||
|
|
||||||
|
## Rules
|
||||||
|
|
||||||
|
- Use Conventional Commits for every commit.
|
||||||
|
- Before pushing, run `npm ci && npm run quality` on `HEAD` in the exact checkout you are about to push.
|
||||||
|
`quality` mirrors the checks in `.github/workflows/quality.yaml`.
|
||||||
|
|
||||||
|
- Skill validation rules are in `tools/skill-validator.md`.
|
||||||
|
- Deterministic skill checks run via `npm run validate:skills` (included in `quality`).
|
||||||
72
CHANGELOG.md
72
CHANGELOG.md
|
|
@ -1,5 +1,73 @@
|
||||||
# Changelog
|
# Changelog
|
||||||
|
|
||||||
|
## v6.2.0 - 2026-03-15
|
||||||
|
|
||||||
|
### 🎁 Highlights
|
||||||
|
|
||||||
|
* Fix manifest generation so BMad Builder installs correctly when a module has no agents (#1998)
|
||||||
|
* Prototype preview of bmad-product-brief-preview skill — try `/bmad-product-brief-preview` and share feedback! (#1959)
|
||||||
|
* All skills now use native skill directory format for improved modularity and maintainability (#1931, #1945, #1946, #1949, #1950, #1984, #1985, #1988, #1994)
|
||||||
|
|
||||||
|
### 🎁 Features
|
||||||
|
|
||||||
|
* Rewrite code-review skill with sharded step-file architecture and auto-detect review intent from invocation args (#2007, #2013)
|
||||||
|
* Add inference-based skill validator with comprehensive rules for naming, variables, paths, and invocation syntax (#1981)
|
||||||
|
* Add REF-03 skill invocation language rule and PATH-05 skill encapsulation rule to validator (#2004)
|
||||||
|
|
||||||
|
### 🐛 Bug Fixes
|
||||||
|
|
||||||
|
* Validation pass 2 — fix path, variable, and sequence issues across 32 files (#2008)
|
||||||
|
* Replace broken party-mode workflow refs with skill syntax (#2000)
|
||||||
|
* Improve bmad-help description for accurate trigger matching (#2012)
|
||||||
|
* Point zh-cn doc links to Chinese pages instead of English (#2010)
|
||||||
|
* Validation cleanup for bmad-quick-flow (#1997), 6 skills batch (#1996), bmad-sprint-planning (#1995), bmad-retrospective (#1993), bmad-dev-story (#1992), bmad-create-story (#1991), bmad-code-review (#1990), bmad-create-epics-and-stories (#1989), bmad-create-architecture (#1987), bmad-check-implementation-readiness (#1986), bmad-create-ux-design (#1983), bmad-create-product-brief (#1982)
|
||||||
|
|
||||||
|
### 🔧 Maintenance
|
||||||
|
|
||||||
|
* Normalize skill invocation syntax to `Invoke the skill` pattern repo-wide (#2004)
|
||||||
|
|
||||||
|
### 📚 Documentation
|
||||||
|
|
||||||
|
* Add Chinese translation for core-tools reference (#2002)
|
||||||
|
* Update version hint, TEA module link, and HTTP→HTTPS links in Chinese README (#1922, #1921)
|
||||||
|
|
||||||
|
## [6.1.0] - 2026-03-12
|
||||||
|
|
||||||
|
### Highlights
|
||||||
|
|
||||||
|
* Whiteport Design Studio (WDS) module enabled in the installer
|
||||||
|
* Support @next installation channel (`npx bmad-method@next install`) — get the latest tip of main instead of waiting for the next stable published version
|
||||||
|
* Everything now installs as a skill — all workflows, agents, and tasks converted to markdown with SKILL.md entrypoints (not yet optimized skills, but unified format)
|
||||||
|
* An experimental preview of the new Quick Dev is available, which will become the main Phase 4 development tool
|
||||||
|
* Edge Case Hunter added as a parallel code review layer in Phase 4, improving code quality by exhaustively tracing branching paths and boundary conditions (#1791)
|
||||||
|
* Documentation now available in Chinese (zh-CN) with complete translation (#1822, #1795)
|
||||||
|
|
||||||
|
### 💥 Breaking Changes
|
||||||
|
|
||||||
|
* Convert entire BMAD method to skills-based architecture with unified skill manifests (#1834)
|
||||||
|
* Convert all core workflows from YAML+instructions to single workflow.md format
|
||||||
|
* Migrate all remaining platforms to native Agent Skills format (#1841)
|
||||||
|
* Remove legacy YAML/XML workflow engine plumbing (#1864)
|
||||||
|
|
||||||
|
### 🎁 Features
|
||||||
|
|
||||||
|
* Add Pi coding agent as supported platform (#1854)
|
||||||
|
* Add unified skill scanner decoupled from legacy collectors (#1859)
|
||||||
|
* Add continuous delivery workflows for npm publishing with trusted OIDC publishing (#1872)
|
||||||
|
|
||||||
|
### ♻️ Refactoring
|
||||||
|
|
||||||
|
* Update terminology from "commands" to "skills" across all documentation (#1850)
|
||||||
|
|
||||||
|
### 🐛 Bug Fixes
|
||||||
|
|
||||||
|
* Fix code review removing mandatory minimum issue count that caused infinite review loops (#1913)
|
||||||
|
* Fix silent loss of brainstorming ideas in PRD by adding reconciliation step (#1914)
|
||||||
|
* Reduce npm tarball from 533 to 348 files (91% size reduction, 6.2 MB → 555 KB) via .npmignore (#1900)
|
||||||
|
* Fix party-mode skill conversion review findings (#1919)
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
## [6.0.4]
|
## [6.0.4]
|
||||||
|
|
||||||
### 🎁 Features
|
### 🎁 Features
|
||||||
|
|
@ -47,7 +115,7 @@
|
||||||
* Add CodeBuddy platform support with installer configuration (#1483)
|
* Add CodeBuddy platform support with installer configuration (#1483)
|
||||||
* Add LLM audit prompt for file reference conventions - new audit tool using parallel subagents (#1720)
|
* Add LLM audit prompt for file reference conventions - new audit tool using parallel subagents (#1720)
|
||||||
* Migrate Codex installer from `.codex/prompts` to `.agents/skills` format to align with Codex CLI changes (#1729)
|
* Migrate Codex installer from `.codex/prompts` to `.agents/skills` format to align with Codex CLI changes (#1729)
|
||||||
* Convert review-pr and audit-file-refs tools to proper bmad-os skills with slash commands `/bmad-os-review-pr` and `/bmad-os-audit-file-refs` (#1732)
|
* Convert review-pr and audit-file-refs tools to proper bmad-os skills with slash commands `bmad-os-review-pr` and `bmad-os-audit-file-refs` (#1732)
|
||||||
|
|
||||||
### 🐛 Bug Fixes
|
### 🐛 Bug Fixes
|
||||||
|
|
||||||
|
|
@ -365,7 +433,7 @@ V6 Stable Release! The End of Beta!
|
||||||
- TEA documentation restructured using Diátaxis framework (25 docs)
|
- TEA documentation restructured using Diátaxis framework (25 docs)
|
||||||
- Style guide optimized for LLM readers (367 lines, down from 767)
|
- Style guide optimized for LLM readers (367 lines, down from 767)
|
||||||
- Glossary rewritten using table format (123 lines, down from 373)
|
- Glossary rewritten using table format (123 lines, down from 373)
|
||||||
- README overhaul with numbered command flows and prominent `/bmad-help` callout
|
- README overhaul with numbered command flows and prominent `bmad-help` callout
|
||||||
- New workflow map diagram with interactive HTML
|
- New workflow map diagram with interactive HTML
|
||||||
- New editorial review tasks for document quality
|
- New editorial review tasks for document quality
|
||||||
- E2E testing methodology for Game Dev Studio
|
- E2E testing methodology for Game Dev Studio
|
||||||
|
|
|
||||||
|
|
@ -146,7 +146,6 @@ Keep messages under 72 characters. Each commit = one logical change.
|
||||||
- Web/planning agents can be larger with complex tasks
|
- Web/planning agents can be larger with complex tasks
|
||||||
- Everything is natural language (markdown) — no code in core framework
|
- Everything is natural language (markdown) — no code in core framework
|
||||||
- Use BMad modules for domain-specific features
|
- Use BMad modules for domain-specific features
|
||||||
- Validate YAML schemas: `npm run validate:schemas`
|
|
||||||
- Validate file references: `npm run validate:refs`
|
- Validate file references: `npm run validate:refs`
|
||||||
|
|
||||||
### File-Pattern-to-Validator Mapping
|
### File-Pattern-to-Validator Mapping
|
||||||
|
|
|
||||||
|
|
@ -13,7 +13,7 @@
|
||||||
|
|
||||||
Traditional AI tools do the thinking for you, producing average results. BMad agents and facilitated workflows act as expert collaborators who guide you through a structured process to bring out your best thinking in partnership with the AI.
|
Traditional AI tools do the thinking for you, producing average results. BMad agents and facilitated workflows act as expert collaborators who guide you through a structured process to bring out your best thinking in partnership with the AI.
|
||||||
|
|
||||||
- **AI Intelligent Help** — Ask `/bmad-help` anytime for guidance on what's next
|
- **AI Intelligent Help** — Invoke the `bmad-help` skill anytime for guidance on what's next
|
||||||
- **Scale-Domain-Adaptive** — Automatically adjusts planning depth based on project complexity
|
- **Scale-Domain-Adaptive** — Automatically adjusts planning depth based on project complexity
|
||||||
- **Structured Workflows** — Grounded in agile best practices across analysis, planning, architecture, and implementation
|
- **Structured Workflows** — Grounded in agile best practices across analysis, planning, architecture, and implementation
|
||||||
- **Specialized Agents** — 12+ domain experts (PM, Architect, Developer, UX, Scrum Master, and more)
|
- **Specialized Agents** — 12+ domain experts (PM, Architect, Developer, UX, Scrum Master, and more)
|
||||||
|
|
@ -40,7 +40,7 @@ Traditional AI tools do the thinking for you, producing average results. BMad ag
|
||||||
npx bmad-method install
|
npx bmad-method install
|
||||||
```
|
```
|
||||||
|
|
||||||
> If you are getting a stale beta version, use: `npx bmad-method@6.0.1 install`
|
> Want the newest prerelease build? Use `npx bmad-method@next install`. Expect higher churn than the default install.
|
||||||
|
|
||||||
Follow the installer prompts, then open your AI IDE (Claude Code, Cursor, etc.) in your project folder.
|
Follow the installer prompts, then open your AI IDE (Claude Code, Cursor, etc.) in your project folder.
|
||||||
|
|
||||||
|
|
@ -52,7 +52,7 @@ npx bmad-method install --directory /path/to/project --modules bmm --tools claud
|
||||||
|
|
||||||
[See all installation options](https://docs.bmad-method.org/how-to/non-interactive-installation/)
|
[See all installation options](https://docs.bmad-method.org/how-to/non-interactive-installation/)
|
||||||
|
|
||||||
> **Not sure what to do?** Run `/bmad-help` — it tells you exactly what's next and what's optional. You can also ask questions like `/bmad-help I just finished the architecture, what do I do next?`
|
> **Not sure what to do?** Ask `bmad-help` — it tells you exactly what's next and what's optional. You can also ask questions like `bmad-help I just finished the architecture, what do I do next?`
|
||||||
|
|
||||||
## Modules
|
## Modules
|
||||||
|
|
||||||
|
|
|
||||||
22
README_CN.md
22
README_CN.md
|
|
@ -13,14 +13,14 @@
|
||||||
|
|
||||||
传统 AI 工具替你思考,产生平庸的结果。BMad 智能体和辅助工作流充当专家协作者,引导你通过结构化流程,与 AI 的合作发挥最佳思维,产出最有效优秀的结果。
|
传统 AI 工具替你思考,产生平庸的结果。BMad 智能体和辅助工作流充当专家协作者,引导你通过结构化流程,与 AI 的合作发挥最佳思维,产出最有效优秀的结果。
|
||||||
|
|
||||||
- **AI 智能帮助** — 随时使用 `/bmad-help` 获取下一步指导
|
- **AI 智能帮助** — 随时使用 `bmad-help` 获取下一步指导
|
||||||
- **规模-领域自适应** — 根据项目复杂度自动调整规划深度
|
- **规模-领域自适应** — 根据项目复杂度自动调整规划深度
|
||||||
- **结构化工作流** — 基于分析、规划、架构和实施的敏捷最佳实践
|
- **结构化工作流** — 基于分析、规划、架构和实施的敏捷最佳实践
|
||||||
- **专业智能体** — 12+ 领域专家(PM、架构师、开发者、UX、Scrum Master 等)
|
- **专业智能体** — 12+ 领域专家(PM、架构师、开发者、UX、Scrum Master 等)
|
||||||
- **派对模式** — 将多个智能体角色带入一个会话进行协作和讨论
|
- **派对模式** — 将多个智能体角色带入一个会话进行协作和讨论
|
||||||
- **完整生命周期** — 从想法开始(头脑风暴)到部署发布
|
- **完整生命周期** — 从想法开始(头脑风暴)到部署发布
|
||||||
|
|
||||||
[在 **docs.bmad-method.org** 了解更多](http://docs.bmad-method.org)
|
[在 **docs.bmad-method.org** 了解更多](https://docs.bmad-method.org/zh-cn/)
|
||||||
|
|
||||||
---
|
---
|
||||||
|
|
||||||
|
|
@ -28,7 +28,7 @@
|
||||||
|
|
||||||
**V6 已到来,我们才刚刚开始!** BMad 方法正在快速发展,包括跨平台智能体团队和子智能体集成、技能架构、BMad Builder v1、开发循环自动化等优化,以及更多正在开发中的功能。
|
**V6 已到来,我们才刚刚开始!** BMad 方法正在快速发展,包括跨平台智能体团队和子智能体集成、技能架构、BMad Builder v1、开发循环自动化等优化,以及更多正在开发中的功能。
|
||||||
|
|
||||||
**[📍 查看完整路线图 →](http://docs.bmad-method.org/roadmap/)**
|
**[📍 查看完整路线图 →](https://docs.bmad-method.org/zh-cn/roadmap/)**
|
||||||
|
|
||||||
---
|
---
|
||||||
|
|
||||||
|
|
@ -40,7 +40,7 @@
|
||||||
npx bmad-method install
|
npx bmad-method install
|
||||||
```
|
```
|
||||||
|
|
||||||
> 如果你获得的是过时的测试版,请使用:`npx bmad-method@6.0.1 install`
|
> 想要最新的预发布版本?使用 `npx bmad-method@next install`。相比默认安装,可能会有更多变更。
|
||||||
|
|
||||||
按照安装程序提示操作,然后在项目文件夹中打开你的 AI IDE(Claude Code、Cursor 等)。
|
按照安装程序提示操作,然后在项目文件夹中打开你的 AI IDE(Claude Code、Cursor 等)。
|
||||||
|
|
||||||
|
|
@ -50,9 +50,9 @@ npx bmad-method install
|
||||||
npx bmad-method install --directory /path/to/project --modules bmm --tools claude-code --yes
|
npx bmad-method install --directory /path/to/project --modules bmm --tools claude-code --yes
|
||||||
```
|
```
|
||||||
|
|
||||||
[查看所有安装选项](http://docs.bmad-method.org/how-to/non-interactive-installation/)
|
[查看非交互式安装选项](https://docs.bmad-method.org/zh-cn/how-to/non-interactive-installation/)
|
||||||
|
|
||||||
> **不确定该做什么?** 运行 `/bmad-help` — 它会准确告诉你下一步做什么以及什么是可选的。你也可以问诸如 `/bmad-help 我刚刚完成了架构设计,接下来该做什么?` 之类的问题。
|
> **不确定该做什么?** 运行 `bmad-help` — 它会准确告诉你下一步做什么以及什么是可选的。你也可以问诸如 `bmad-help 我刚刚完成了架构设计,接下来该做什么?` 之类的问题。
|
||||||
|
|
||||||
## 模块
|
## 模块
|
||||||
|
|
||||||
|
|
@ -62,18 +62,18 @@ BMad 方法通过官方模块扩展到专业领域。可在安装期间或之后
|
||||||
| ----------------------------------------------------------------------------------------------------------------- | ------------------------------------------------- |
|
| ----------------------------------------------------------------------------------------------------------------- | ------------------------------------------------- |
|
||||||
| **[BMad Method (BMM)](https://github.com/bmad-code-org/BMAD-METHOD)** | 包含 34+ 工作流的核心框架 |
|
| **[BMad Method (BMM)](https://github.com/bmad-code-org/BMAD-METHOD)** | 包含 34+ 工作流的核心框架 |
|
||||||
| **[BMad Builder (BMB)](https://github.com/bmad-code-org/bmad-builder)** | 创建自定义 BMad 智能体和工作流 |
|
| **[BMad Builder (BMB)](https://github.com/bmad-code-org/bmad-builder)** | 创建自定义 BMad 智能体和工作流 |
|
||||||
| **[Test Architect (TEA)](https://github.com/bmad-code-org/tea)** | 基于风险的测试策略和自动化 |
|
| **[Test Architect (TEA)](https://github.com/bmad-code-org/bmad-method-test-architecture-enterprise)** | 基于风险的测试策略和自动化 |
|
||||||
| **[Game Dev Studio (BMGD)](https://github.com/bmad-code-org/bmad-module-game-dev-studio)** | 游戏开发工作流(Unity、Unreal、Godot) |
|
| **[Game Dev Studio (BMGD)](https://github.com/bmad-code-org/bmad-module-game-dev-studio)** | 游戏开发工作流(Unity、Unreal、Godot) |
|
||||||
| **[Creative Intelligence Suite (CIS)](https://github.com/bmad-code-org/bmad-module-creative-intelligence-suite)** | 创新、头脑风暴、设计思维 |
|
| **[Creative Intelligence Suite (CIS)](https://github.com/bmad-code-org/bmad-module-creative-intelligence-suite)** | 创新、头脑风暴、设计思维 |
|
||||||
|
|
||||||
## 文档
|
## 文档
|
||||||
|
|
||||||
[BMad 方法文档站点](http://docs.bmad-method.org) — 教程、指南、概念和参考
|
[BMad 方法文档站点](https://docs.bmad-method.org/zh-cn/) — 教程、指南、概念和参考
|
||||||
|
|
||||||
**快速链接:**
|
**快速链接:**
|
||||||
- [入门教程](http://docs.bmad-method.org/tutorials/getting-started/)
|
- [入门教程](https://docs.bmad-method.org/zh-cn/tutorials/getting-started/)
|
||||||
- [从先前版本升级](http://docs.bmad-method.org/how-to/upgrade-to-v6/)
|
- [从先前版本升级](https://docs.bmad-method.org/zh-cn/how-to/upgrade-to-v6/)
|
||||||
- [测试架构师文档](https://bmad-code-org.github.io/bmad-method-test-architecture-enterprise/)
|
- [测试架构师文档(英文)](https://bmad-code-org.github.io/bmad-method-test-architecture-enterprise/)
|
||||||
|
|
||||||
|
|
||||||
## 社区
|
## 社区
|
||||||
|
|
|
||||||
|
|
@ -148,7 +148,7 @@ your-project/
|
||||||
| ----------------- | ----------------------------- |
|
| ----------------- | ----------------------------- |
|
||||||
| **Index/Landing** | `core-concepts/index.md` |
|
| **Index/Landing** | `core-concepts/index.md` |
|
||||||
| **Concept** | `what-are-agents.md` |
|
| **Concept** | `what-are-agents.md` |
|
||||||
| **Feature** | `quick-flow.md` |
|
| **Feature** | `quick-dev.md` |
|
||||||
| **Philosophy** | `why-solutioning-matters.md` |
|
| **Philosophy** | `why-solutioning-matters.md` |
|
||||||
| **FAQ** | `established-projects-faq.md` |
|
| **FAQ** | `established-projects-faq.md` |
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -0,0 +1,73 @@
|
||||||
|
---
|
||||||
|
title: "Quick Dev"
|
||||||
|
description: Reduce human-in-the-loop friction without giving up the checkpoints that protect output quality
|
||||||
|
sidebar:
|
||||||
|
order: 2
|
||||||
|
---
|
||||||
|
|
||||||
|
Intent in, code changes out, with as few human-in-the-loop turns as possible — without sacrificing quality.
|
||||||
|
|
||||||
|
It lets the model run longer between checkpoints, then brings the human back only when the task cannot safely continue without human judgment or when it is time to review the end result.
|
||||||
|
|
||||||
|

|
||||||
|
|
||||||
|
## Why This Exists
|
||||||
|
|
||||||
|
Human-in-the-loop turns are necessary and expensive.
|
||||||
|
|
||||||
|
Current LLMs still fail in predictable ways: they misread intent, fill gaps with confident guesses, drift into unrelated work, and generate noisy review output. At the same time, constant human intervention limits development velocity. Human attention is the bottleneck.
|
||||||
|
|
||||||
|
`bmad-quick-dev` rebalances that tradeoff. It trusts the model to run unsupervised for longer stretches, but only after the workflow has created a strong enough boundary to make that safe.
|
||||||
|
|
||||||
|
## The Core Design
|
||||||
|
|
||||||
|
### 1. Compress intent first
|
||||||
|
|
||||||
|
The workflow starts by having the human and the model compress the request into one coherent goal. The input can begin as a rough expression of intent, but before the workflow runs autonomously it has to become small enough, clear enough, and contradiction-free enough to execute.
|
||||||
|
|
||||||
|
Intent can come in many forms: a couple of phrases, a bug tracker link, output from plan mode, text copied from a chat session, or even a story number from BMAD's own `epics.md`. In that last case, the workflow will not understand BMAD story-tracking semantics, but it can still take the story itself and run with it.
|
||||||
|
|
||||||
|
This workflow does not eliminate human control. It relocates it to a small number of high-value moments:
|
||||||
|
|
||||||
|
- **Intent clarification** - turning a messy request into one coherent goal without hidden contradictions
|
||||||
|
- **Spec approval** - confirming that the frozen understanding is the right thing to build
|
||||||
|
- **Review of the final product** - the primary checkpoint, where the human decides whether the result is acceptable at the end
|
||||||
|
|
||||||
|
### 2. Route to the smallest safe path
|
||||||
|
|
||||||
|
Once the goal is clear, the workflow decides whether this is a true one-shot change or whether it needs the fuller path. Small, zero-blast-radius changes can go straight to implementation. Everything else goes through planning so the model has a stronger boundary before it runs longer on its own.
|
||||||
|
|
||||||
|
### 3. Run longer with less supervision
|
||||||
|
|
||||||
|
After that routing decision, the model can carry more of the work on its own. On the fuller path, the approved spec becomes the boundary the model executes against with less supervision, which is the whole point of the design.
|
||||||
|
|
||||||
|
### 4. Diagnose failure at the right layer
|
||||||
|
|
||||||
|
If the implementation is wrong because the intent was wrong, patching the code is the wrong fix. If the code is wrong because the spec was weak, patching the diff is also the wrong fix. The workflow is designed to diagnose where the failure entered the system, go back to that layer, and regenerate from there.
|
||||||
|
|
||||||
|
Review findings are used to decide whether the problem came from intent, spec generation, or local implementation. Only truly local problems get patched locally.
|
||||||
|
|
||||||
|
### 5. Bring the human back only when needed
|
||||||
|
|
||||||
|
The intent interview is human-in-the-loop, but it is not the same kind of interruption as a recurring checkpoint. The workflow tries to keep those recurring checkpoints to a minimum. After the initial shaping of intent, the human mainly comes back when the workflow cannot safely continue without judgment and at the end, when it is time to review the result.
|
||||||
|
|
||||||
|
- **Intent-gap resolution** - stepping back in when review proves the workflow could not safely infer what was meant
|
||||||
|
|
||||||
|
Everything else is a candidate for longer autonomous execution. That tradeoff is deliberate. Older patterns spend more human attention on continuous supervision. Quick Dev spends more trust on the model, but saves human attention for the moments where human reasoning has the highest leverage.
|
||||||
|
|
||||||
|
## Why the Review System Matters
|
||||||
|
|
||||||
|
The review phase is not just there to find bugs. It is there to route correction without destroying momentum.
|
||||||
|
|
||||||
|
This workflow works best on a platform that can spawn subagents, or at least invoke another LLM through the command line and wait for a result. If your platform does not support that natively, you can add a skill to do it. Context-free subagents are a cornerstone of the review design.
|
||||||
|
|
||||||
|
Agentic reviews often go wrong in two ways:
|
||||||
|
|
||||||
|
- They generate too many findings, forcing the human to sift through noise.
|
||||||
|
- They derail the current change by surfacing unrelated issues and turning every run into an ad hoc cleanup project.
|
||||||
|
|
||||||
|
Quick Dev addresses both by treating review as triage.
|
||||||
|
|
||||||
|
Some findings belong to the current change. Some do not. If a finding is incidental rather than causally tied to the current work, the workflow can defer it instead of forcing the human to handle it immediately. That keeps the run focused and prevents random tangents from consuming the budget of attention.
|
||||||
|
|
||||||
|
That triage will sometimes be imperfect. That is acceptable. It is usually better to misjudge some findings than to flood the human with thousands of low-value review comments. The system is optimizing for signal quality, not exhaustive recall.
|
||||||
|
|
@ -1,73 +0,0 @@
|
||||||
---
|
|
||||||
title: "Quick Flow"
|
|
||||||
description: Fast-track for small changes - skip the full methodology
|
|
||||||
sidebar:
|
|
||||||
order: 1
|
|
||||||
---
|
|
||||||
|
|
||||||
Skip the ceremony. Quick Flow takes you from idea to working code in two skills - no Product Brief, no PRD, no Architecture doc.
|
|
||||||
|
|
||||||
## When to Use It
|
|
||||||
|
|
||||||
- Bug fixes and patches
|
|
||||||
- Refactoring existing code
|
|
||||||
- Small, well-understood features
|
|
||||||
- Prototyping and spikes
|
|
||||||
- Single-agent work where one developer can hold the full scope
|
|
||||||
|
|
||||||
## When NOT to Use It
|
|
||||||
|
|
||||||
- New products or platforms that need stakeholder alignment
|
|
||||||
- Major features spanning multiple components or teams
|
|
||||||
- Work that requires architectural decisions (database schema, API contracts, service boundaries)
|
|
||||||
- Anything where requirements are unclear or contested
|
|
||||||
|
|
||||||
:::caution[Scope Creep]
|
|
||||||
If you start a Quick Flow and realize the scope is bigger than expected, `bmad-quick-dev` will detect this and offer to escalate. You can switch to a full PRD workflow at any point without losing your work.
|
|
||||||
:::
|
|
||||||
|
|
||||||
## How It Works
|
|
||||||
|
|
||||||
Quick Flow has two skills, each backed by a structured workflow. You can run them together or independently.
|
|
||||||
|
|
||||||
### quick-spec: Plan
|
|
||||||
|
|
||||||
Run `bmad-quick-spec` and Barry (the Quick Flow agent) walks you through a conversational discovery process:
|
|
||||||
|
|
||||||
1. **Understand** - You describe what you want to build. Barry scans the codebase to ask informed questions, then captures a problem statement, solution approach, and scope boundaries.
|
|
||||||
2. **Investigate** - Barry reads relevant files, maps code patterns, identifies files to modify, and documents the technical context.
|
|
||||||
3. **Generate** - Produces a complete tech-spec with ordered implementation tasks (specific file paths and actions), acceptance criteria in Given/When/Then format, testing strategy, and dependencies.
|
|
||||||
4. **Review** - Presents the full spec for your sign-off. You can edit, ask questions, run adversarial review, or refine with advanced elicitation before finalizing.
|
|
||||||
|
|
||||||
The output is a `tech-spec-{slug}.md` file saved to your project's implementation artifacts folder. It contains everything a fresh agent needs to implement the feature - no conversation history required.
|
|
||||||
|
|
||||||
### quick-dev: Build
|
|
||||||
|
|
||||||
Run `bmad-quick-dev` and Barry implements the work. It operates in two modes:
|
|
||||||
|
|
||||||
- **Tech-spec mode** - Point it at a spec file (`quick-dev tech-spec-auth.md`) and it executes every task in order, writes tests, and verifies acceptance criteria.
|
|
||||||
- **Direct mode** - Give it instructions directly (`quick-dev "refactor the auth middleware"`) and it gathers context, builds a mental plan, and executes.
|
|
||||||
|
|
||||||
After implementation, `bmad-quick-dev` runs a self-check audit against all tasks and acceptance criteria, then triggers an adversarial code review of the diff. Findings are presented for you to resolve before wrapping up.
|
|
||||||
|
|
||||||
:::tip[Fresh Context]
|
|
||||||
For best results, run `bmad-quick-dev` in a new conversation after finishing `bmad-quick-spec`. This gives the implementation agent clean context focused solely on building.
|
|
||||||
:::
|
|
||||||
|
|
||||||
## What Quick Flow Skips
|
|
||||||
|
|
||||||
The full BMad Method produces a Product Brief, PRD, Architecture doc, and Epic/Story breakdown before any code is written. Quick Flow replaces all of that with a single tech-spec. This works because Quick Flow targets changes where:
|
|
||||||
|
|
||||||
- The product direction is already established
|
|
||||||
- Architecture decisions are already made
|
|
||||||
- A single developer can reason about the full scope
|
|
||||||
- Requirements fit in one conversation
|
|
||||||
|
|
||||||
## Escalating to Full BMad Method
|
|
||||||
|
|
||||||
Quick Flow includes built-in guardrails for scope detection. When you run `bmad-quick-dev` with a direct request, it evaluates signals like multi-component mentions, system-level language, and uncertainty about approach. If it detects the work is bigger than a quick flow:
|
|
||||||
|
|
||||||
- **Light escalation** - Recommends running `bmad-quick-spec` first to create a plan
|
|
||||||
- **Heavy escalation** - Recommends switching to the full BMad Method PRD process
|
|
||||||
|
|
||||||
You can also escalate manually at any time. Your tech-spec work carries forward - it becomes input for the broader planning process rather than being discarded.
|
|
||||||
|
|
@ -0,0 +1,8 @@
|
||||||
|
---
|
||||||
|
title: Page introuvable
|
||||||
|
template: splash
|
||||||
|
---
|
||||||
|
|
||||||
|
La page que vous recherchez n'existe pas ou a été déplacée.
|
||||||
|
|
||||||
|
[Retour à l'accueil](/fr/index.md)
|
||||||
|
|
@ -0,0 +1,370 @@
|
||||||
|
---
|
||||||
|
title: "Guide de style de la documentation"
|
||||||
|
description: Conventions de documentation spécifiques au projet, basées sur le style Google et la structure Diataxis
|
||||||
|
---
|
||||||
|
|
||||||
|
Ce projet suit le [Guide de style de documentation pour développeurs Google](https://developers.google.com/style) et utilise [Diataxis](https://diataxis.fr/) pour structurer le contenu. Seules les conventions spécifiques au projet sont présentées ci-dessous.
|
||||||
|
|
||||||
|
## Règles spécifiques au projet
|
||||||
|
|
||||||
|
| Règle | Spécification |
|
||||||
|
| --------------------------------------- | ------------------------------------------------------ |
|
||||||
|
| Pas de règles horizontales (`---`) | Perturbe le flux de lecture des fragments |
|
||||||
|
| Pas de titres `####` | Utiliser du texte en gras ou des admonitions |
|
||||||
|
| Pas de sections « Related » ou « Next: » | La barre latérale gère la navigation |
|
||||||
|
| Pas de listes profondément imbriquées | Diviser en sections à la place |
|
||||||
|
| Pas de blocs de code pour non-code | Utiliser des admonitions pour les exemples de dialogue |
|
||||||
|
| Pas de paragraphes en gras pour les appels | Utiliser des admonitions à la place |
|
||||||
|
| 1-2 admonitions max par section | Les tutoriels permettent 3-4 par section majeure |
|
||||||
|
| Cellules de tableau / éléments de liste | 1-2 phrases maximum |
|
||||||
|
| Budget de titres | 8-12 `##` par doc ; 2-3 `###` par section |
|
||||||
|
|
||||||
|
## Admonitions (Syntaxe Starlight)
|
||||||
|
|
||||||
|
```md
|
||||||
|
:::tip[Titre]
|
||||||
|
Raccourcis, bonnes pratiques
|
||||||
|
:::
|
||||||
|
|
||||||
|
:::note[Titre]
|
||||||
|
Contexte, définitions, exemples, prérequis
|
||||||
|
:::
|
||||||
|
|
||||||
|
:::caution[Titre]
|
||||||
|
Mises en garde, problèmes potentiels
|
||||||
|
:::
|
||||||
|
|
||||||
|
:::danger[Titre]
|
||||||
|
Avertissements critiques uniquement — perte de données, problèmes de sécurité
|
||||||
|
:::
|
||||||
|
```
|
||||||
|
|
||||||
|
### Utilisations standards
|
||||||
|
|
||||||
|
| Admonition | Usage |
|
||||||
|
| -------------------------- | ---------------------------------------- |
|
||||||
|
| `:::note[Pré-requis]` | Dépendances avant de commencer |
|
||||||
|
| `:::tip[Chemin rapide]` | Résumé TL;DR en haut du document |
|
||||||
|
| `:::caution[Important]` | Mises en garde critiques |
|
||||||
|
| `:::note[Exemple]` | Exemples de commandes/réponses |
|
||||||
|
|
||||||
|
## Formats de tableau standards
|
||||||
|
|
||||||
|
**Phases :**
|
||||||
|
|
||||||
|
```md
|
||||||
|
| Phase | Nom | Ce qui se passe |
|
||||||
|
| ----- | ---------- | --------------------------------------------------- |
|
||||||
|
| 1 | Analyse | Brainstorm, recherche *(optionnel)* |
|
||||||
|
| 2 | Planification | Exigences — PRD ou spécification technique *(requis)* |
|
||||||
|
```
|
||||||
|
|
||||||
|
**Skills :**
|
||||||
|
|
||||||
|
```md
|
||||||
|
| Skill | Agent | Objectif |
|
||||||
|
| ------------------- | ------- | ----------------------------------------------- |
|
||||||
|
| `bmad-brainstorming` | Analyste | Brainstorming pour un nouveau projet |
|
||||||
|
| `bmad-create-prd` | PM | Créer un document d'exigences produit |
|
||||||
|
```
|
||||||
|
|
||||||
|
## Blocs de structure de dossiers
|
||||||
|
|
||||||
|
À afficher dans les sections "Ce que vous avez accompli" :
|
||||||
|
|
||||||
|
````md
|
||||||
|
```
|
||||||
|
votre-projet/
|
||||||
|
├── _bmad/ # Configuration BMad
|
||||||
|
├── _bmad-output/
|
||||||
|
│ ├── planning-artifacts/
|
||||||
|
│ │ └── PRD.md # Votre document d'exigences
|
||||||
|
│ ├── implementation-artifacts/
|
||||||
|
│ └── project-context.md # Règles d'implémentation (optionnel)
|
||||||
|
└── ...
|
||||||
|
```
|
||||||
|
````
|
||||||
|
|
||||||
|
## Structure des tutoriels
|
||||||
|
|
||||||
|
```text
|
||||||
|
1. Titre + Accroche (1-2 phrases décrivant le résultat)
|
||||||
|
2. Notice de version/module (admonition info ou avertissement) (optionnel)
|
||||||
|
3. Ce que vous allez apprendre (liste à puces des résultats)
|
||||||
|
4. Prérequis (admonition info)
|
||||||
|
5. Chemin rapide (admonition tip - résumé TL;DR)
|
||||||
|
6. Comprendre [Sujet] (contexte avant les étapes - tableaux pour phases/agents)
|
||||||
|
7. Installation (optionnel)
|
||||||
|
8. Étape 1 : [Première tâche majeure]
|
||||||
|
9. Étape 2 : [Deuxième tâche majeure]
|
||||||
|
10. Étape 3 : [Troisième tâche majeure]
|
||||||
|
11. Ce que vous avez accompli (résumé + structure de dossiers)
|
||||||
|
12. Référence rapide (tableau des compétences)
|
||||||
|
13. Questions courantes (format FAQ)
|
||||||
|
14. Obtenir de l'aide (liens communautaires)
|
||||||
|
15. Points clés à retenir (admonition tip)
|
||||||
|
```
|
||||||
|
|
||||||
|
### Liste de vérification des tutoriels
|
||||||
|
|
||||||
|
- [ ] L'accroche décrit le résultat en 1-2 phrases
|
||||||
|
- [ ] Section "Ce que vous allez apprendre" présente
|
||||||
|
- [ ] Prérequis dans une admonition
|
||||||
|
- [ ] Admonition TL;DR de chemin rapide en haut
|
||||||
|
- [ ] Tableaux pour phases, skills, agents
|
||||||
|
- [ ] Section "Ce que vous avez accompli" présente
|
||||||
|
- [ ] Tableau de référence rapide présent
|
||||||
|
- [ ] Section questions courantes présente
|
||||||
|
- [ ] Section obtenir de l'aide présente
|
||||||
|
- [ ] Admonition points clés à retenir à la fin
|
||||||
|
|
||||||
|
## Structure des guides pratiques (How-To)
|
||||||
|
|
||||||
|
```text
|
||||||
|
1. Titre + Accroche (une phrase : « Utilisez le workflow `X` pour... »)
|
||||||
|
2. Quand utiliser ce guide (liste à puces de scénarios)
|
||||||
|
3. Quand éviter ce guide (optionnel)
|
||||||
|
4. Prérequis (admonition note)
|
||||||
|
5. Étapes (sous-sections ### numérotées)
|
||||||
|
6. Ce que vous obtenez (produits de sortie/artefacts)
|
||||||
|
7. Exemple (optionnel)
|
||||||
|
8. Conseils (optionnel)
|
||||||
|
9. Prochaines étapes (optionnel)
|
||||||
|
```
|
||||||
|
|
||||||
|
### Liste de vérification des guides pratiques
|
||||||
|
|
||||||
|
- [ ] L'accroche commence par « Utilisez le workflow `X` pour... »
|
||||||
|
- [ ] "Quand utiliser ce guide" contient 3-5 points
|
||||||
|
- [ ] Prérequis listés
|
||||||
|
- [ ] Les étapes sont des sous-sections `###` numérotées avec des verbes d'action
|
||||||
|
- [ ] "Ce que vous obtenez" décrit les artefacts produits
|
||||||
|
|
||||||
|
## Structure des explications
|
||||||
|
|
||||||
|
### Types
|
||||||
|
|
||||||
|
| Type | Exemple |
|
||||||
|
| ----------------------- | ------------------------------------ |
|
||||||
|
| **Index/Page d'accueil** | `core-concepts/index.md` |
|
||||||
|
| **Concept** | `what-are-agents.md` |
|
||||||
|
| **Fonctionnalité** | `quick-dev.md` |
|
||||||
|
| **Philosophie** | `why-solutioning-matters.md` |
|
||||||
|
| **FAQ** | `established-projects-faq.md` |
|
||||||
|
|
||||||
|
### Modèle général
|
||||||
|
|
||||||
|
```text
|
||||||
|
1. Titre + Accroche (1-2 phrases)
|
||||||
|
2. Vue d'ensemble/Définition (ce que c'est, pourquoi c'est important)
|
||||||
|
3. Concepts clés (sous-sections ###)
|
||||||
|
4. Tableau comparatif (optionnel)
|
||||||
|
5. Quand utiliser / Quand ne pas utiliser (optionnel)
|
||||||
|
6. Diagramme (optionnel - mermaid, 1 max par doc)
|
||||||
|
7. Prochaines étapes (optionnel)
|
||||||
|
```
|
||||||
|
|
||||||
|
### Pages d'index/d'accueil
|
||||||
|
|
||||||
|
```text
|
||||||
|
1. Titre + Accroche (une phrase)
|
||||||
|
2. Tableau de contenu (liens avec descriptions)
|
||||||
|
3. Pour commencer (liste numérotée)
|
||||||
|
4. Choisissez votre parcours (optionnel - arbre de décision)
|
||||||
|
```
|
||||||
|
|
||||||
|
### Explications de concepts
|
||||||
|
|
||||||
|
```text
|
||||||
|
1. Titre + Accroche (ce que c'est)
|
||||||
|
2. Types/Catégories (sous-sections ###) (optionnel)
|
||||||
|
3. Tableau des différences clés
|
||||||
|
4. Composants/Parties
|
||||||
|
5. Lequel devriez-vous utiliser ?
|
||||||
|
6. Création/Personnalisation (lien vers les guides pratiques)
|
||||||
|
```
|
||||||
|
|
||||||
|
### Explications de fonctionnalités
|
||||||
|
|
||||||
|
```text
|
||||||
|
1. Titre + Accroche (ce que cela fait)
|
||||||
|
2. Faits rapides (optionnel - "Idéal pour :", "Temps :")
|
||||||
|
3. Quand utiliser / Quand ne pas utiliser
|
||||||
|
4. Comment cela fonctionne (diagramme mermaid optionnel)
|
||||||
|
5. Avantages clés
|
||||||
|
6. Tableau comparatif (optionnel)
|
||||||
|
7. Quand évoluer/mettre à niveau (optionnel)
|
||||||
|
```
|
||||||
|
|
||||||
|
### Documents de philosophie/justification
|
||||||
|
|
||||||
|
```text
|
||||||
|
1. Titre + Accroche (le principe)
|
||||||
|
2. Le problème
|
||||||
|
3. La solution
|
||||||
|
4. Principes clés (sous-sections ###)
|
||||||
|
5. Avantages
|
||||||
|
6. Quand cela s'applique
|
||||||
|
```
|
||||||
|
|
||||||
|
### Liste de vérification des explications
|
||||||
|
|
||||||
|
- [ ] L'accroche énonce ce que le document explique
|
||||||
|
- [ ] Contenu dans des sections `##` parcourables
|
||||||
|
- [ ] Tableaux comparatifs pour 3+ options
|
||||||
|
- [ ] Les diagrammes ont des étiquettes claires
|
||||||
|
- [ ] Liens vers les guides pratiques pour les questions procédurales
|
||||||
|
- [ ] 2-3 admonitions max par document
|
||||||
|
|
||||||
|
## Structure des références
|
||||||
|
|
||||||
|
### Types
|
||||||
|
|
||||||
|
| Type | Exemple |
|
||||||
|
| ----------------------- | --------------------- |
|
||||||
|
| **Index/Page d'accueil** | `workflows/index.md` |
|
||||||
|
| **Catalogue** | `agents/index.md` |
|
||||||
|
| **Approfondissement** | `document-project.md` |
|
||||||
|
| **Configuration** | `core-tasks.md` |
|
||||||
|
| **Glossaire** | `glossary/index.md` |
|
||||||
|
| **Complet** | `bmgd-workflows.md` |
|
||||||
|
|
||||||
|
### Pages d'index de référence
|
||||||
|
|
||||||
|
```text
|
||||||
|
1. Titre + Accroche (une phrase)
|
||||||
|
2. Sections de contenu (## pour chaque catégorie)
|
||||||
|
- Liste à puces avec liens et descriptions
|
||||||
|
```
|
||||||
|
|
||||||
|
### Référence de catalogue
|
||||||
|
|
||||||
|
```text
|
||||||
|
1. Titre + Accroche
|
||||||
|
2. Éléments (## pour chaque élément)
|
||||||
|
- Brève description (une phrase)
|
||||||
|
- **Skills :** ou **Infos clés :** sous forme de liste simple
|
||||||
|
3. Universel/Partagé (## section) (optionnel)
|
||||||
|
```
|
||||||
|
|
||||||
|
### Référence d'approfondissement d'élément
|
||||||
|
|
||||||
|
```text
|
||||||
|
1. Titre + Accroche (objectif en une phrase)
|
||||||
|
2. Faits rapides (admonition note optionnelle)
|
||||||
|
- Module, Skill, Entrée, Sortie sous forme de liste
|
||||||
|
3. Objectif/Vue d'ensemble (## section)
|
||||||
|
4. Comment invoquer (bloc de code)
|
||||||
|
5. Sections clés (## pour chaque aspect)
|
||||||
|
- Utiliser ### pour les sous-options
|
||||||
|
6. Notes/Mises en garde (admonition tip ou caution)
|
||||||
|
```
|
||||||
|
|
||||||
|
### Référence de configuration
|
||||||
|
|
||||||
|
```text
|
||||||
|
1. Titre + Accroche
|
||||||
|
2. Table des matières (liens de saut si 4+ éléments)
|
||||||
|
3. Éléments (## pour chaque config/tâche)
|
||||||
|
- **Résumé en gras** — une phrase
|
||||||
|
- **Utilisez-le quand :** liste à puces
|
||||||
|
- **Comment cela fonctionne :** étapes numérotées (3-5 max)
|
||||||
|
- **Sortie :** résultat attendu (optionnel)
|
||||||
|
```
|
||||||
|
|
||||||
|
### Guide de référence complet
|
||||||
|
|
||||||
|
```text
|
||||||
|
1. Titre + Accroche
|
||||||
|
2. Vue d'ensemble (## section)
|
||||||
|
- Diagramme ou tableau montrant l'organisation
|
||||||
|
3. Sections majeures (## pour chaque phase/catégorie)
|
||||||
|
- Éléments (### pour chaque élément)
|
||||||
|
- Champs standardisés : Skill, Agent, Entrée, Sortie, Description
|
||||||
|
4. Prochaines étapes (optionnel)
|
||||||
|
```
|
||||||
|
|
||||||
|
### Liste de vérification des références
|
||||||
|
|
||||||
|
- [ ] L'accroche énonce ce que le document référence
|
||||||
|
- [ ] La structure correspond au type de référence
|
||||||
|
- [ ] Les éléments utilisent une structure cohérente
|
||||||
|
- [ ] Tableaux pour les données structurées/comparatives
|
||||||
|
- [ ] Liens vers les documents d'explication pour la profondeur conceptuelle
|
||||||
|
- [ ] 1-2 admonitions max
|
||||||
|
|
||||||
|
## Structure du glossaire
|
||||||
|
|
||||||
|
Starlight génère la navigation "Sur cette page" à droite à partir des titres :
|
||||||
|
|
||||||
|
- Catégories en tant que titres `##` — apparaissent dans la navigation à droite
|
||||||
|
- Termes dans des tableaux — lignes compactes, pas de titres individuels
|
||||||
|
- Pas de TOC en ligne — la barre latérale à droite gère la navigation
|
||||||
|
|
||||||
|
### Format de tableau
|
||||||
|
|
||||||
|
```md
|
||||||
|
## Nom de catégorie
|
||||||
|
|
||||||
|
| Terme | Définition |
|
||||||
|
| ------------ | --------------------------------------------------------------------------------------------- |
|
||||||
|
| **Agent** | Personnalité IA spécialisée avec une expertise spécifique qui guide les utilisateurs dans les workflows. |
|
||||||
|
| **Workflow** | Processus guidé en plusieurs étapes qui orchestre les activités des agents IA pour produire des livrables. |
|
||||||
|
```
|
||||||
|
|
||||||
|
### Règles de définition
|
||||||
|
|
||||||
|
| À faire | À ne pas faire |
|
||||||
|
| --------------------------------- | --------------------------------------------- |
|
||||||
|
| Commencer par ce que c'est ou ce que cela fait | Commencer par « C'est... » ou « Un [terme] est... » |
|
||||||
|
| Se limiter à 1-2 phrases | Écrire des explications de plusieurs paragraphes |
|
||||||
|
| Mettre le nom du terme en gras dans la cellule | Utiliser du texte simple pour les termes |
|
||||||
|
|
||||||
|
### Marqueurs de contexte
|
||||||
|
|
||||||
|
Ajouter un contexte en italique au début de la définition pour les termes à portée limitée :
|
||||||
|
|
||||||
|
- `*Quick Dev uniquement.*`
|
||||||
|
- `*méthode BMad/Enterprise.*`
|
||||||
|
- `*Phase N.*`
|
||||||
|
- `*BMGD.*`
|
||||||
|
- `*Projets établis.*`
|
||||||
|
|
||||||
|
### Liste de vérification du glossaire
|
||||||
|
|
||||||
|
- [ ] Termes dans des tableaux, pas de titres individuels
|
||||||
|
- [ ] Termes alphabétisés au sein des catégories
|
||||||
|
- [ ] Définitions de 1-2 phrases
|
||||||
|
- [ ] Marqueurs de contexte en italique
|
||||||
|
- [ ] Noms des termes en gras dans les cellules
|
||||||
|
- [ ] Pas de définitions « Un [terme] est... »
|
||||||
|
|
||||||
|
## Sections FAQ
|
||||||
|
|
||||||
|
```md
|
||||||
|
## Questions
|
||||||
|
|
||||||
|
- [Ai-je toujours besoin d'architecture ?](#ai-je-toujours-besoin-darchitecture)
|
||||||
|
- [Puis-je modifier mon plan plus tard ?](#puis-je-modifier-mon-plan-plus-tard)
|
||||||
|
|
||||||
|
### Ai-je toujours besoin d'architecture ?
|
||||||
|
|
||||||
|
Uniquement pour les parcours méthode BMad et Enterprise. Quick Dev passe directement à l'implémentation.
|
||||||
|
|
||||||
|
### Puis-je modifier mon plan plus tard ?
|
||||||
|
|
||||||
|
Oui. Utilisez `bmad-correct-course` pour gérer les changements de portée.
|
||||||
|
|
||||||
|
**Une question sans réponse ici ?** [Ouvrez une issue](...) ou posez votre question sur [Discord](...).
|
||||||
|
```
|
||||||
|
|
||||||
|
## Commandes de validation
|
||||||
|
|
||||||
|
Avant de soumettre des modifications de documentation :
|
||||||
|
|
||||||
|
```bash
|
||||||
|
npm run docs:fix-links # Prévisualiser les corrections de format de liens
|
||||||
|
npm run docs:fix-links -- --write # Appliquer les corrections
|
||||||
|
npm run docs:validate-links # Vérifier que les liens existent
|
||||||
|
npm run docs:build # Vérifier l'absence d'erreurs de build
|
||||||
|
```
|
||||||
|
|
@ -0,0 +1,49 @@
|
||||||
|
---
|
||||||
|
title: "Élicitation Avancée"
|
||||||
|
description: Pousser le LLM à repenser son travail en utilisant des méthodes de raisonnement structurées
|
||||||
|
sidebar:
|
||||||
|
order: 6
|
||||||
|
---
|
||||||
|
|
||||||
|
Faites repenser au LLM ce qu'il vient de générer. Vous choisissez une méthode de raisonnement, il l'applique à sa propre sortie, et vous décidez de conserver ou non les améliorations.
|
||||||
|
|
||||||
|
## Qu'est-ce que l’Élicitation Avancée ?
|
||||||
|
|
||||||
|
Un second passage structuré. Au lieu de demander à l'IA de "réessayer" ou de "faire mieux", vous sélectionnez une méthode de raisonnement spécifique et l'IA réexamine sa propre sortie à travers ce prisme.
|
||||||
|
|
||||||
|
La différence est importante. Les demandes vagues produisent des révisions vagues. Une méthode nommée impose un angle d'attaque particulier, mettant en lumière des perspectives qu'un simple réajustement générique aurait manquées.
|
||||||
|
|
||||||
|
## Quand l'utiliser
|
||||||
|
|
||||||
|
- Après qu'un workflow a généré du contenu et vous souhaitez des alternatives
|
||||||
|
- Lorsque la sortie semble correcte mais que vous soupçonnez qu'il y a davantage de profondeur
|
||||||
|
- Pour tester les hypothèses ou trouver des faiblesses
|
||||||
|
- Pour du contenu à enjeux élevés où la réflexion approfondie aide
|
||||||
|
|
||||||
|
Les workflows offrent l'élicitation aux points de décision - après que le LLM ait généré quelque chose, on vous demandera si vous souhaitez l'exécuter.
|
||||||
|
|
||||||
|
## Comment ça fonctionne
|
||||||
|
|
||||||
|
1. Le LLM suggère 5 méthodes pertinentes pour votre contenu
|
||||||
|
2. Vous en choisissez une (ou remélangez pour différentes options)
|
||||||
|
3. La méthode est appliquée, les améliorations sont affichées
|
||||||
|
4. Acceptez ou rejetez, répétez ou continuez
|
||||||
|
|
||||||
|
## Méthodes intégrées
|
||||||
|
|
||||||
|
Des dizaines de méthodes de raisonnement sont disponibles. Quelques exemples :
|
||||||
|
|
||||||
|
- **Analyse Pré-mortem** - Suppose que le projet a déjà échoué, revient en arrière pour trouver pourquoi
|
||||||
|
- **Pensée de Premier Principe** - Élimine les hypothèses, reconstruit à partir de la vérité de terrain
|
||||||
|
- **Inversion** - Demande comment garantir l'échec, puis les évite
|
||||||
|
- **Équipe Rouge vs Équipe Bleue** - Attaque votre propre travail, puis le défend
|
||||||
|
- **Questionnement Socratique** - Conteste chaque affirmation avec "pourquoi ?" et "comment le savez-vous ?"
|
||||||
|
- **Suppression des Contraintes** - Abandonne toutes les contraintes, voit ce qui change, les réajoute sélectivement
|
||||||
|
- **Cartographie des Parties Prenantes** - Réévalue depuis la perspective de chaque partie prenante
|
||||||
|
- **Raisonnement Analogique** - Trouve des parallèles dans d'autres domaines et applique leurs leçons
|
||||||
|
|
||||||
|
Et bien d'autres. L'IA choisit les options les plus pertinentes pour votre contenu - vous choisissez lesquelles exécuter.
|
||||||
|
|
||||||
|
:::tip[Commencez Ici]
|
||||||
|
L'Analyse Pré-mortem est un bon premier choix pour toute spécification ou tout plan. Elle trouve systématiquement des lacunes qu'une révision standard manque.
|
||||||
|
:::
|
||||||
|
|
@ -0,0 +1,66 @@
|
||||||
|
---
|
||||||
|
title: "Revue Contradictoire"
|
||||||
|
description: Technique de raisonnement forcée qui empêche les revues paresseuses du style "ça à l'air bon"
|
||||||
|
sidebar:
|
||||||
|
order: 5
|
||||||
|
---
|
||||||
|
|
||||||
|
Forcez une analyse plus approfondie en exigeant que des problèmes soient trouvés.
|
||||||
|
|
||||||
|
## Qu'est-ce que la Revue Contradictoire ?
|
||||||
|
|
||||||
|
Une technique de revue où le réviseur *doit* trouver des problèmes. Pas de "ça a l'air bon" autorisé. Le réviseur adopte une posture cynique - suppose que des problèmes existent et les trouve.
|
||||||
|
|
||||||
|
Il ne s'agit pas d'être négatif. Il s'agit de forcer une analyse authentique au lieu d'un coup d'œil superficiel qui valide automatiquement ce qui a été soumis.
|
||||||
|
|
||||||
|
**La règle fondamentale :** Il doit trouver des problèmes. Zéro constatation déclenche un arrêt - réanalyse ou explique pourquoi.
|
||||||
|
|
||||||
|
## Pourquoi Cela Fonctionne
|
||||||
|
|
||||||
|
Les revues normales souffrent du biais de confirmation[^1]. Il parcourt le travail rapidement, rien ne lui saute aux yeux, il l'approuve. L'obligation de "trouver des problèmes" brise ce schéma :
|
||||||
|
|
||||||
|
- **Force la rigueur** - Impossible d'approuver tant qu’il n'a pas examiné suffisamment en profondeur pour trouver des problèmes
|
||||||
|
- **Détecte les oublis** - "Qu'est-ce qui manque ici ?" devient une question naturelle
|
||||||
|
- **Améliore la qualité du signal** - Les constatations sont spécifiques et actionnables, pas des préoccupations vagues
|
||||||
|
- **Asymétrie d'information**[^2] - Effectue les revues avec un contexte frais (sans accès au raisonnement original) pour évaluer l'artefact, pas l'intention
|
||||||
|
|
||||||
|
## Où Elle Est Utilisée
|
||||||
|
|
||||||
|
La revue contradictoire apparaît dans tous les workflows BMad - revue de code, vérifications de préparation à l'implémentation, validation de spécifications, et d'autres. Parfois c'est une étape obligatoire, parfois optionnelle (comme l'élicitation avancée ou le mode party). Le pattern s'adapte à n'importe quel artefact nécessitant un examen.
|
||||||
|
|
||||||
|
## Filtrage Humain Requis
|
||||||
|
|
||||||
|
Parce que l'IA est *instruite* de trouver des problèmes, elle trouvera des problèmes - même lorsqu'ils n'existent pas. Attendez-vous à des faux positifs : des détails présentés comme des problèmes, des malentendus sur l'intention, ou des préoccupations purement hallucinées[^3].
|
||||||
|
|
||||||
|
**C'est vous qui décidez ce qui est réel.** Examinez chaque constatation, ignorez le bruit, corrigez ce qui compte.
|
||||||
|
|
||||||
|
## Exemple
|
||||||
|
|
||||||
|
Au lieu de :
|
||||||
|
|
||||||
|
> "L'implémentation de l'authentification semble raisonnable. Approuvé."
|
||||||
|
|
||||||
|
Une revue contradictoire produit :
|
||||||
|
|
||||||
|
> 1. **ÉLEVÉ** - `login.ts:47` - Pas de limitation de débit sur les tentatives échouées
|
||||||
|
> 2. **ÉLEVÉ** - Jeton de session stocké dans localStorage (vulnérable au XSS)
|
||||||
|
> 3. **MOYEN** - La validation du mot de passe se fait côté client uniquement
|
||||||
|
> 4. **MOYEN** - Pas de journalisation d'audit pour les tentatives de connexion échouées
|
||||||
|
> 5. **FAIBLE** - Le nombre magique `3600` devrait être `SESSION_TIMEOUT_SECONDS`
|
||||||
|
|
||||||
|
La première revue pourrait manquer une vulnérabilité de sécurité. La seconde en a attrapé quatre.
|
||||||
|
|
||||||
|
## Itération et Rendements Décroissants
|
||||||
|
|
||||||
|
Après avoir traité les constatations, envisagez de relancer la revue. Une deuxième passe détecte généralement plus de problèmes. Une troisième n'est pas toujours inutile non plus. Mais chaque passe prend du temps, et vous finissez par atteindre des rendements décroissants[^4] - juste des détails et des faux problèmes.
|
||||||
|
|
||||||
|
:::tip[Meilleures Revues]
|
||||||
|
Supposez que des problèmes existent. Cherchez ce qui manque, pas seulement ce qui ne va pas.
|
||||||
|
:::
|
||||||
|
|
||||||
|
## Glossaire
|
||||||
|
|
||||||
|
[^1]: **Biais de confirmation** : tendance cognitive à rechercher, interpréter et favoriser les informations qui confirment nos croyances préexistantes, tout en ignorant ou minimisant celles qui les contredisent.
|
||||||
|
[^2]: **Asymétrie d'information** : situation où une partie dispose de plus ou de meilleures informations qu'une autre, conduisant potentiellement à des décisions ou jugements biaisés.
|
||||||
|
[^3]: **Hallucination (IA)** : phénomène où un modèle d'IA génère des informations plausibles mais factuellement incorrectes ou inventées, présentées avec confiance comme si elles étaient vraies.
|
||||||
|
[^4]: **Rendements décroissants** : principe selon lequel l'augmentation continue d'un investissement (temps, effort, ressources) finit par produire des bénéfices de plus en plus faibles proportionnellement.
|
||||||
|
|
@ -0,0 +1,33 @@
|
||||||
|
---
|
||||||
|
title: "Brainstorming"
|
||||||
|
description: Sessions interactives créatives utilisant plus de 60 techniques d'idéation éprouvées
|
||||||
|
sidebar:
|
||||||
|
order: 2
|
||||||
|
---
|
||||||
|
|
||||||
|
Libérez votre créativité grâce à une exploration guidée.
|
||||||
|
|
||||||
|
## Qu'est-ce que le Brainstorming ?
|
||||||
|
|
||||||
|
Lancez `bmad-brainstorming` et vous obtenez un facilitateur créatif qui fait émerger vos idées - pas qui les génère pour vous. L'IA agit comme coach et guide, utilisant des techniques éprouvées pour créer les conditions où votre meilleure réflexion émerge.
|
||||||
|
|
||||||
|
**Idéal pour :**
|
||||||
|
|
||||||
|
- Surmonter les blocages créatifs
|
||||||
|
- Générer des idées de produits ou de fonctionnalités
|
||||||
|
- Explorer des problèmes sous de nouveaux angles
|
||||||
|
- Développer des concepts bruts en plans d'action
|
||||||
|
|
||||||
|
## Comment ça fonctionne
|
||||||
|
|
||||||
|
1. **Configuration** - Définir le sujet, les objectifs, les contraintes
|
||||||
|
2. **Choisir l'approche** - Choisir vous-même les techniques, obtenir des recommandations de l'IA, aller au hasard, ou suivre un flux progressif
|
||||||
|
3. **Facilitation** - Travailler à travers les techniques avec des questions approfondies et un coaching collaboratif
|
||||||
|
4. **Organiser** - Idées regroupées par thèmes et priorisées
|
||||||
|
5. **Action** - Les meilleures idées reçoivent des prochaines étapes et des indicateurs de succès
|
||||||
|
|
||||||
|
Tout est capturé dans un document de session que vous pouvez consulter ultérieurement ou partager avec les parties prenantes.
|
||||||
|
|
||||||
|
:::note[Vos Idées]
|
||||||
|
Chaque idée vient de vous. Le workflow crée les conditions propices à une vision nouvelle - vous en êtes la source.
|
||||||
|
:::
|
||||||
|
|
@ -0,0 +1,50 @@
|
||||||
|
---
|
||||||
|
title: "FAQ Projets Existants"
|
||||||
|
description: Questions courantes sur l'utilisation de la méthode BMad sur des projets existants
|
||||||
|
sidebar:
|
||||||
|
order: 8
|
||||||
|
---
|
||||||
|
Réponses rapides aux questions courantes sur l'utilisation de la méthode BMad (BMM) sur des projets existants.
|
||||||
|
|
||||||
|
## Questions
|
||||||
|
|
||||||
|
- [Dois-je d'abord exécuter document-project ?](#dois-je-dabord-exécuter-document-project)
|
||||||
|
- [Que faire si j'oublie d'exécuter document-project ?](#que-faire-si-joublie-dexécuter-document-project)
|
||||||
|
- [Puis-je utiliser Quick Dev pour les projets existants ?](#puis-je-utiliser-quick-dev-pour-les-projets-existants)
|
||||||
|
- [Que faire si mon code existant ne suit pas les bonnes pratiques ?](#que-faire-si-mon-code-existant-ne-suit-pas-les-bonnes-pratiques)
|
||||||
|
|
||||||
|
### Dois-je d'abord exécuter `document-project` ?
|
||||||
|
|
||||||
|
Hautement recommandé, surtout si :
|
||||||
|
|
||||||
|
- Aucune documentation existante
|
||||||
|
- La documentation est obsolète
|
||||||
|
- Les agents IA ont besoin de contexte sur le code existant
|
||||||
|
|
||||||
|
Vous pouvez l'ignorer si vous disposez d'une documentation complète et à jour incluant `docs/index.md` ou si vous utiliserez d'autres outils ou techniques pour aider à la découverte afin que l'agent puisse construire sur un système existant.
|
||||||
|
|
||||||
|
### Que faire si j'oublie d'exécuter `document-project` ?
|
||||||
|
|
||||||
|
Ne vous inquiétez pas — vous pouvez le faire à tout moment. Vous pouvez même le faire pendant ou après un projet pour aider à maintenir la documentation à jour.
|
||||||
|
|
||||||
|
### Puis-je utiliser Quick Dev pour les projets existants ?
|
||||||
|
|
||||||
|
Oui ! Quick Dev fonctionne très bien pour les projets existants. Il va :
|
||||||
|
|
||||||
|
- Détecter automatiquement votre pile technologique existante
|
||||||
|
- Analyser les patterns de code existants
|
||||||
|
- Détecter les conventions et demander confirmation
|
||||||
|
- Générer une spécification technique riche en contexte qui respecte le code existant
|
||||||
|
|
||||||
|
Parfait pour les corrections de bugs et les petites fonctionnalités dans des bases de code existantes.
|
||||||
|
|
||||||
|
### Que faire si mon code existant ne suit pas les bonnes pratiques ?
|
||||||
|
|
||||||
|
Quick Dev détecte vos conventions et demande : « Dois-je suivre ces conventions existantes ? » Vous décidez :
|
||||||
|
|
||||||
|
- **Oui** → Maintenir la cohérence avec la base de code actuelle
|
||||||
|
- **Non** → Établir de nouvelles normes (documenter pourquoi dans la spécification technique)
|
||||||
|
|
||||||
|
BMM respecte votre choix — il ne forcera pas la modernisation, mais la proposera.
|
||||||
|
|
||||||
|
**Une question sans réponse ici ?** Veuillez [ouvrir un ticket](https://github.com/bmad-code-org/BMAD-METHOD/issues) ou poser votre question sur [Discord](https://discord.gg/gk8jAdXWmj) afin que nous puissions l'ajouter !
|
||||||
|
|
@ -0,0 +1,64 @@
|
||||||
|
---
|
||||||
|
title: "Party Mode"
|
||||||
|
description: Collaboration multi-agents - regroupez tous vos agents IA dans une seule conversation
|
||||||
|
sidebar:
|
||||||
|
order: 7
|
||||||
|
---
|
||||||
|
|
||||||
|
Regroupez tous vos agents IA dans une seule conversation.
|
||||||
|
|
||||||
|
## Qu'est-ce que le Party Mode ?
|
||||||
|
|
||||||
|
Lancez `bmad-party-mode` et vous avez toute votre équipe IA dans une même pièce - PM, Architecte, Développeur, Designer UX, selon vos besoins. BMad Master orchestre, en sélectionnant les agents pertinents à chaque message. Les agents répondent en personnage, sont en accord ou désaccord, et construisent sur les idées des autres.
|
||||||
|
|
||||||
|
La conversation continue aussi longtemps que vous le souhaitez. Posez des questions de suivi, remettez en question les réponses, redirigez la discussion - c'est un véritable échange avec vos agents jusqu'à ce que vous ayez terminé.
|
||||||
|
|
||||||
|
**Idéal pour :**
|
||||||
|
|
||||||
|
- Les grandes décisions avec des compromis
|
||||||
|
- Les sessions de brainstorming
|
||||||
|
- Les rétrospectives post-incident quand les choses tournent mal
|
||||||
|
- Les rétrospectives de sprint et la planification
|
||||||
|
|
||||||
|
## Exemples
|
||||||
|
|
||||||
|
### Remettre en question une mauvaise architecture
|
||||||
|
|
||||||
|
**Vous :** « Ok l'équipe, notre dernier sprint a été un désastre. Le service d'authentification est tombé trois fois. Qui a cafouillé ? »
|
||||||
|
|
||||||
|
**Architecte :** « Le design était solide - authentification distribuée avec des fallbacks appropriés. Si l'implémentation a dévié des specs... »
|
||||||
|
|
||||||
|
**Développeur :** « J'ai suivi le document d'architecture à la lettre. Les specs ne prenaient pas en compte les race conditions lors de l'invalidation de sessions concurrentes. »
|
||||||
|
|
||||||
|
**PM :** « Vous avez tous les deux raté le vrai problème - nous n'avons pas validé les exigences de gestion des sessions dans le PRD. C'est de ma faute de ne pas l'avoir repéré. »
|
||||||
|
|
||||||
|
**TEA :** « Et j'aurais dû le repérer dans les tests d'intégration. Les scénarios de test ne couvraient pas l'invalidation concurrente. »
|
||||||
|
|
||||||
|
### Brainstorming créatif
|
||||||
|
|
||||||
|
**Vous :** « Comment rendre l'onboarding magique au lieu d'ennuyeux ? »
|
||||||
|
|
||||||
|
**Designer UX :** « Commençons par la divulgation progressive - révélons les fonctionnalités au fur et à mesure que les utilisateurs en ont besoin, pas d'un coup dans un tutoriel. »
|
||||||
|
|
||||||
|
**Storyteller :** « Et si l'onboarding était une histoire ? Chaque étape révèle le parcours d'un personnage - l'utilisateur EST le héros. »
|
||||||
|
|
||||||
|
**Game Designer :** « En partant de là - et si la première "quête" consistait à résoudre un vrai problème utilisateur ? Ils apprennent en faisant quelque chose d'utile. »
|
||||||
|
|
||||||
|
### Décision technique
|
||||||
|
|
||||||
|
**Vous :** « Monolithe ou microservices pour le MVP[^1] ? »
|
||||||
|
|
||||||
|
**Architecte :** « Commencez en monolithe. Les microservices ajoutent une complexité dont vous n'avez pas besoin à 1000 utilisateurs. »
|
||||||
|
|
||||||
|
**PM :** « D'accord. Le time-to-market[^2] compte plus que la scalabilité théorique. »
|
||||||
|
|
||||||
|
**Développeur :** « Monolithe avec des frontières de modules claires. On pourra extraire des services plus tard si nécessaire. »
|
||||||
|
|
||||||
|
:::tip[Meilleures décisions]
|
||||||
|
De meilleures décisions grâce à des perspectives diverses. Bienvenue dans le party mode.
|
||||||
|
:::
|
||||||
|
|
||||||
|
## Glossaire
|
||||||
|
|
||||||
|
[^1]: MVP (Minimum Viable Product) : version minimale d'un produit contenant juste assez de fonctionnalités pour être utilisée par des utilisateurs précoces et valider les hypothèses de marché avant d'investir dans un développement plus complet.
|
||||||
|
[^2]: Time-to-market : délai nécessaire pour concevoir, développer et lancer un produit sur le marché. Plus ce délai est court, plus l'entreprise peut prendre de l'avance sur ses concurrents.
|
||||||
|
|
@ -0,0 +1,117 @@
|
||||||
|
---
|
||||||
|
title: "Prévention des conflits entre agents"
|
||||||
|
description: Comment l'architecture empêche les conflits lorsque plusieurs agents implémentent un système
|
||||||
|
sidebar:
|
||||||
|
order: 4
|
||||||
|
---
|
||||||
|
|
||||||
|
Lorsque plusieurs agents IA implémentent différentes parties d'un système, ils peuvent prendre des décisions techniques contradictoires. La documentation d'architecture prévient cela en établissant des standards partagés.
|
||||||
|
|
||||||
|
## Types de conflits courants
|
||||||
|
|
||||||
|
### Conflits de style d'API
|
||||||
|
|
||||||
|
Sans architecture :
|
||||||
|
- L'agent A utilise REST avec `/users/{id}`
|
||||||
|
- L'agent B utilise des mutations GraphQL
|
||||||
|
- Résultat : Patterns d'API incohérents, consommateurs confus
|
||||||
|
|
||||||
|
Avec architecture :
|
||||||
|
- L'ADR[^1] spécifie : « Utiliser GraphQL pour toute communication client-serveur »
|
||||||
|
- Tous les agents suivent le même pattern
|
||||||
|
|
||||||
|
### Conflits de conception de base de données
|
||||||
|
|
||||||
|
Sans architecture :
|
||||||
|
- L'agent A utilise des noms de colonnes en snake_case
|
||||||
|
- L'agent B utilise des noms de colonnes en camelCase
|
||||||
|
- Résultat : Schéma incohérent, requêtes illisibles
|
||||||
|
|
||||||
|
Avec architecture :
|
||||||
|
- Un document de standards spécifie les conventions de nommage
|
||||||
|
- Tous les agents suivent les mêmes patterns
|
||||||
|
|
||||||
|
### Conflits de gestion d'état
|
||||||
|
|
||||||
|
Sans architecture :
|
||||||
|
- L'agent A utilise Redux pour l'état global
|
||||||
|
- L'agent B utilise React Context
|
||||||
|
- Résultat : Multiples approches de gestion d'état, complexité
|
||||||
|
|
||||||
|
Avec architecture :
|
||||||
|
- L'ADR spécifie l'approche de gestion d'état
|
||||||
|
- Tous les agents implémentent de manière cohérente
|
||||||
|
|
||||||
|
## Comment l'architecture prévient les conflits
|
||||||
|
|
||||||
|
### 1. Décisions explicites via les ADR[^1]
|
||||||
|
|
||||||
|
Chaque choix technologique significatif est documenté avec :
|
||||||
|
- Contexte (pourquoi cette décision est importante)
|
||||||
|
- Options considérées (quelles alternatives existent)
|
||||||
|
- Décision (ce qui a été choisi)
|
||||||
|
- Justification (pourquoi cela a-t-il été choisi)
|
||||||
|
- Conséquences (compromis acceptés)
|
||||||
|
|
||||||
|
### 2. Guidance spécifique aux FR/NFR[^2]
|
||||||
|
|
||||||
|
L'architecture associe chaque exigence fonctionnelle à une approche technique :
|
||||||
|
- FR-001 : Gestion des utilisateurs → Mutations GraphQL
|
||||||
|
- FR-002 : Application mobile → Requêtes optimisées
|
||||||
|
|
||||||
|
### 3. Standards et conventions
|
||||||
|
|
||||||
|
Documentation explicite de :
|
||||||
|
- La structure des répertoires
|
||||||
|
- Les conventions de nommage
|
||||||
|
- L'organisation du code
|
||||||
|
- Les patterns de test
|
||||||
|
|
||||||
|
## L'architecture comme contexte partagé
|
||||||
|
|
||||||
|
Considérez l'architecture comme le contexte partagé que tous les agents lisent avant d'implémenter :
|
||||||
|
|
||||||
|
```text
|
||||||
|
PRD : "Que construire"
|
||||||
|
↓
|
||||||
|
Architecture : "Comment le construire"
|
||||||
|
↓
|
||||||
|
L'agent A lit l'architecture → implémente l'Epic 1
|
||||||
|
L'agent B lit l'architecture → implémente l'Epic 2
|
||||||
|
L'agent C lit l'architecture → implémente l'Epic 3
|
||||||
|
↓
|
||||||
|
Résultat : Implémentation cohérente
|
||||||
|
```
|
||||||
|
|
||||||
|
## Sujets clés des ADR
|
||||||
|
|
||||||
|
Décisions courantes qui préviennent les conflits :
|
||||||
|
|
||||||
|
| Sujet | Exemple de décision |
|
||||||
|
| ---------------- | -------------------------------------------- |
|
||||||
|
| Style d'API | GraphQL vs REST vs gRPC |
|
||||||
|
| Base de données | PostgreSQL vs MongoDB |
|
||||||
|
| Authentification | JWT vs Sessions |
|
||||||
|
| Gestion d'état | Redux vs Context vs Zustand |
|
||||||
|
| Styling | CSS Modules vs Tailwind vs Styled Components |
|
||||||
|
| Tests | Jest + Playwright vs Vitest + Cypress |
|
||||||
|
|
||||||
|
## Anti-patterns à éviter
|
||||||
|
|
||||||
|
:::caution[Erreurs courantes]
|
||||||
|
- **Décisions implicites** — « On décidera du style d'API au fur et à mesure » mène à l'incohérence
|
||||||
|
- **Sur-documentation** — Documenter chaque choix mineur cause une paralysie analytique
|
||||||
|
- **Architecture obsolète** — Les documents écrits une fois et jamais mis à jour poussent les agents à suivre des patterns dépassés
|
||||||
|
:::
|
||||||
|
|
||||||
|
:::tip[Approche correcte]
|
||||||
|
- Documenter les décisions qui traversent les frontières des epics
|
||||||
|
- Se concentrer sur les zones sujettes aux conflits
|
||||||
|
- Mettre à jour l'architecture au fur et à mesure des apprentissages
|
||||||
|
- Utiliser `bmad-correct-course` pour les changements significatifs
|
||||||
|
:::
|
||||||
|
|
||||||
|
## Glossaire
|
||||||
|
|
||||||
|
[^1]: ADR (Architecture Decision Record) : document qui consigne une décision d’architecture, son contexte, les options envisagées, le choix retenu et ses conséquences, afin d’assurer la traçabilité et la compréhension des décisions techniques dans le temps.
|
||||||
|
[^2]: FR / NFR (Functional / Non-Functional Requirement) : exigences décrivant respectivement **ce que le système doit faire** (fonctionnalités, comportements attendus) et **comment il doit le faire** (contraintes de performance, sécurité, fiabilité, ergonomie, etc.).
|
||||||
|
|
@ -0,0 +1,158 @@
|
||||||
|
---
|
||||||
|
title: "Contexte du Projet"
|
||||||
|
description: Comment project-context.md guide les agents IA avec les règles et préférences de votre projet
|
||||||
|
sidebar:
|
||||||
|
order: 7
|
||||||
|
---
|
||||||
|
|
||||||
|
Le fichier `project-context.md` est le guide d'implémentation de votre projet pour les agents IA. Similaire à une « constitution » dans d'autres systèmes de développement, il capture les règles, les patterns et les préférences qui garantissent une génération de code cohérente à travers tous les workflows.
|
||||||
|
|
||||||
|
## Ce Qu'il Fait
|
||||||
|
|
||||||
|
Les agents IA prennent constamment des décisions d'implémentation — quels patterns suivre, comment structurer le code, quelles conventions utiliser. Sans guidance claire, ils peuvent :
|
||||||
|
- Suivre des bonnes pratiques génériques qui ne correspondent pas à votre codebase
|
||||||
|
- Prendre des décisions incohérentes selon les différentes stories
|
||||||
|
- Passer à côté d'exigences ou de contraintes spécifiques au projet
|
||||||
|
|
||||||
|
Le fichier `project-context.md` résout ce problème en documentant ce que les agents doivent savoir dans un format concis et optimisé pour les LLM.
|
||||||
|
|
||||||
|
## Comment Ça Fonctionne
|
||||||
|
|
||||||
|
Chaque workflow d'implémentation charge automatiquement `project-context.md` s'il existe. Le workflow architecte le charge également pour respecter vos préférences techniques lors de la conception de l'architecture.
|
||||||
|
|
||||||
|
**Chargé par ces workflows :**
|
||||||
|
- `bmad-create-architecture` — respecte les préférences techniques pendant la phase de solutioning
|
||||||
|
- `bmad-create-story` — informe la création de stories avec les patterns du projet
|
||||||
|
- `bmad-dev-story` — guide les décisions d'implémentation
|
||||||
|
- `bmad-code-review` — valide par rapport aux standards du projet
|
||||||
|
- `bmad-quick-dev` — applique les patterns lors de l'implémentation des spécifications techniques
|
||||||
|
- `bmad-sprint-planning`, `bmad-retrospective`, `bmad-correct-course` — fournit le contexte global du projet
|
||||||
|
|
||||||
|
## Quand Le Créer
|
||||||
|
|
||||||
|
Le fichier `project-context.md` est utile à n'importe quel stade d'un projet :
|
||||||
|
|
||||||
|
| Scénario | Quand Créer | Objectif |
|
||||||
|
|------------------------------------------|-----------------------------------------------------|---------------------------------------------------------------------------------------|
|
||||||
|
| **Nouveau projet, avant l'architecture** | Manuellement, avant `bmad-create-architecture` | Documenter vos préférences techniques pour que l'architecte les respecte |
|
||||||
|
| **Nouveau projet, après l'architecture** | Via `bmad-generate-project-context` ou manuellement | Capturer les décisions d'architecture pour les agents d'implémentation |
|
||||||
|
| **Projet existant** | Via `bmad-generate-project-context` | Découvrir les patterns existants pour que les agents suivent les conventions établies |
|
||||||
|
| **Projet Quick Dev** | Avant ou pendant `bmad-quick-dev` | Garantir que l'implémentation rapide respecte vos patterns |
|
||||||
|
|
||||||
|
:::tip[Recommandé]
|
||||||
|
Pour les nouveaux projets, créez-le manuellement avant l'architecture si vous avez de fortes préférences techniques. Sinon, générez-le après l'architecture pour capturer ces décisions.
|
||||||
|
:::
|
||||||
|
|
||||||
|
## Ce Qu'il Contient
|
||||||
|
|
||||||
|
Le fichier a deux sections principales :
|
||||||
|
|
||||||
|
### Pile Technologique & Versions
|
||||||
|
|
||||||
|
Documente les frameworks, langages et outils utilisés par votre projet avec leurs versions spécifiques :
|
||||||
|
|
||||||
|
```markdown
|
||||||
|
## Pile Technologique & Versions
|
||||||
|
|
||||||
|
- Node.js 20.x, TypeScript 5.3, React 18.2
|
||||||
|
- State: Zustand (pas Redux)
|
||||||
|
- Testing: Vitest, Playwright, MSW
|
||||||
|
- Styling: Tailwind CSS avec design tokens personnalisés
|
||||||
|
```
|
||||||
|
|
||||||
|
### Règles Critiques d’Implémentation
|
||||||
|
|
||||||
|
Documente les patterns et conventions que les agents pourraient autrement manquer :
|
||||||
|
|
||||||
|
```markdown
|
||||||
|
|
||||||
|
## Règles Critiques d’Implémentation
|
||||||
|
|
||||||
|
**Configuration TypeScript :**
|
||||||
|
- Mode strict activé — pas de types `any` sans approbation explicite
|
||||||
|
- Utiliser `interface` pour les APIs publiques, `type` pour les unions/intersections
|
||||||
|
|
||||||
|
**Organisation du Code :**
|
||||||
|
- Composants dans `/src/components/` avec fichiers `.test.tsx` co-localisés
|
||||||
|
- Utilitaires dans `/src/lib/` pour les fonctions pures réutilisables
|
||||||
|
- Les appels API utilisent le singleton `apiClient` — jamais de fetch direct
|
||||||
|
|
||||||
|
**Patterns de Tests :**
|
||||||
|
- Les tests unitaires se concentrent sur la logique métier, pas sur les détails d’implémentation
|
||||||
|
- Les tests d’intégration utilisent MSW pour simuler les réponses API
|
||||||
|
- Les tests E2E couvrent uniquement les parcours utilisateurs critiques
|
||||||
|
|
||||||
|
**Spécifique au Framework :**
|
||||||
|
- Toutes les opérations async utilisent le wrapper `handleError` pour une gestion cohérente des erreurs
|
||||||
|
- Les feature flags sont accessibles via `featureFlag()` de `@/lib/flags`
|
||||||
|
- Les nouvelles routes suivent le modèle de routage basé sur les fichiers dans `/src/app/`
|
||||||
|
```
|
||||||
|
|
||||||
|
Concentrez-vous sur ce qui est **non évident** — des choses que les agents pourraient ne pas déduire en lisant des extraits de code. Ne documentez pas les pratiques standard qui s'appliquent universellement.
|
||||||
|
|
||||||
|
## Création du Fichier
|
||||||
|
|
||||||
|
Vous avez trois options :
|
||||||
|
|
||||||
|
### Création Manuelle
|
||||||
|
|
||||||
|
Créez le fichier `_bmad-output/project-context.md` et ajoutez vos règles :
|
||||||
|
|
||||||
|
```bash
|
||||||
|
# Depuis la racine du projet
|
||||||
|
mkdir -p _bmad-output
|
||||||
|
touch _bmad-output/project-context.md
|
||||||
|
```
|
||||||
|
|
||||||
|
Éditez-le avec votre pile technologique et vos règles d'implémentation. Les workflows architecture et implémentation le trouveront et le chargeront automatiquement.
|
||||||
|
|
||||||
|
### Générer Après L'Architecture
|
||||||
|
|
||||||
|
Exécutez le workflow `bmad-generate-project-context` après avoir terminé votre architecture :
|
||||||
|
|
||||||
|
```bash
|
||||||
|
bmad-generate-project-context
|
||||||
|
```
|
||||||
|
|
||||||
|
Cela analyse votre document d'architecture et vos fichiers projet pour générer un fichier de contexte capturant les décisions prises.
|
||||||
|
|
||||||
|
### Générer Pour Les Projets Existants
|
||||||
|
|
||||||
|
Pour les projets existants, exécutez `bmad-generate-project-context` pour découvrir les patterns existants :
|
||||||
|
|
||||||
|
```bash
|
||||||
|
bmad-generate-project-context
|
||||||
|
```
|
||||||
|
|
||||||
|
Le workflow analyse votre codebase pour identifier les conventions, puis génère un fichier de contexte que vous pouvez examiner et affiner.
|
||||||
|
|
||||||
|
## Pourquoi C'est Important
|
||||||
|
|
||||||
|
Sans `project-context.md`, les agents font des suppositions qui peuvent ne pas correspondre à votre projet :
|
||||||
|
|
||||||
|
| Sans Contexte | Avec Contexte |
|
||||||
|
|----------------------------------------------------|-------------------------------------------------|
|
||||||
|
| Utilise des patterns génériques | Suit vos conventions établies |
|
||||||
|
| Style incohérent selon les stories | Implémentation cohérente |
|
||||||
|
| Peut manquer les contraintes spécifiques au projet | Respecte toutes les exigences techniques |
|
||||||
|
| Chaque agent décide indépendamment | Tous les agents s'alignent sur les mêmes règles |
|
||||||
|
|
||||||
|
C'est particulièrement important pour :
|
||||||
|
- **Quick Dev** — saute le PRD et l'architecture, le fichier de contexte comble le vide
|
||||||
|
- **Projets d'équipe** — garantit que tous les agents suivent les mêmes standards
|
||||||
|
- **Projets existants** — empêche de casser les patterns établis
|
||||||
|
|
||||||
|
## Édition et Mise à Jour
|
||||||
|
|
||||||
|
Le fichier `project-context.md` est un document vivant. Mettez-le à jour quand :
|
||||||
|
|
||||||
|
- Les décisions d'architecture changent
|
||||||
|
- De nouvelles conventions sont établies
|
||||||
|
- Les patterns évoluent pendant l'implémentation
|
||||||
|
- Vous identifiez des lacunes dans le comportement des agents
|
||||||
|
|
||||||
|
Vous pouvez l'éditer manuellement à tout moment, ou réexécuter `bmad-generate-project-context` pour le mettre à jour après des changements significatifs.
|
||||||
|
|
||||||
|
:::note[Emplacement du Fichier]
|
||||||
|
L'emplacement par défaut est `_bmad-output/project-context.md`. Les workflows le recherchent là, et vérifient également `**/project-context.md` n'importe où dans votre projet.
|
||||||
|
:::
|
||||||
|
|
@ -0,0 +1,79 @@
|
||||||
|
---
|
||||||
|
title: "Quick Dev"
|
||||||
|
description: Réduire la friction de l’interaction humaine sans renoncer aux points de contrôle qui protègent la qualité des résultats
|
||||||
|
sidebar:
|
||||||
|
order: 2
|
||||||
|
---
|
||||||
|
|
||||||
|
Intention en entrée, modifications de code en sortie, avec aussi peu d'interactions humaines dans la boucle que possible — sans sacrifier la qualité.
|
||||||
|
|
||||||
|
Il permet au modèle de s'exécuter plus longtemps entre les points de contrôle, puis ne vous fait intervenir que lorsque la tâche ne peut pas se poursuivre en toute sécurité sans jugement humain, ou lorsqu'il est temps de revoir le résultat final.
|
||||||
|
|
||||||
|

|
||||||
|
|
||||||
|
## Pourquoi cette fonctionnalité existe
|
||||||
|
|
||||||
|
Les interactions humaines dans la boucle sont nécessaires et coûteuses.
|
||||||
|
|
||||||
|
Les LLM actuels échouent encore de manière prévisible : ils interprètent mal l'intention, comblent les lacunes avec des suppositions assurées, dérivent vers du travail non lié, et génèrent des résultats à réviser bruyants. En même temps, l'intervention humaine constante limite la fluidité du développement. L'attention humaine est le goulot d'étranglement.
|
||||||
|
|
||||||
|
`bmad-quick-dev` rééquilibre ce compromis. Il fait confiance au modèle pour s'exécuter sans surveillance sur de plus longues périodes, mais seulement après que le workflow ait créé une frontière suffisamment solide pour rendre cela sûr.
|
||||||
|
|
||||||
|
## La conception fondamentale
|
||||||
|
|
||||||
|
### 1. Compresser l'intention d'abord
|
||||||
|
|
||||||
|
Le workflow commence par compresser l’interaction de la personne et du modèle à partir de la requête en un objectif cohérent. L'entrée peut commencer sous forme d'une expression grossière de l'intention, mais avant que le workflow ne s'exécute de manière autonome, elle doit devenir suffisamment petite, claire et sans contradiction pour être exécutable.
|
||||||
|
|
||||||
|
L'intention peut prendre plusieurs formes : quelques phrases, un lien vers un outil de suivi de bugs, une sortie du mode planification, du texte copié depuis une session de chat, ou même un numéro de story depuis un fichier `epics.md` de BMAD. Dans ce dernier cas, le workflow ne comprendra pas la sémantique de suivi des stories de BMAD, mais il peut quand même prendre la story elle-même et l'exécuter.
|
||||||
|
|
||||||
|
Ce workflow n'élimine pas le contrôle humain. Il le déplace vers un nombre réduit d’étapes à forte valeur :
|
||||||
|
|
||||||
|
- **Clarification de l'intention** - transformer une demande confuse en un objectif cohérent sans contradictions cachées
|
||||||
|
- **Approbation de la spécification** - confirmer que la compréhension figée correspond bien à ce qu'il faut construire
|
||||||
|
- **Revue du produit final** - le point de contrôle principal, où la personne décide si le résultat est acceptable à la fin
|
||||||
|
|
||||||
|
### 2. Router vers le chemin le plus court et sûr
|
||||||
|
|
||||||
|
Une fois l'objectif clair, le workflow décide s'il s'agit d'un véritable changement en une seule étape ou s'il nécessite le chemin complet. Les petits changements à zéro impact peuvent aller directement à l'implémentation. Tout le reste passe par la planification pour que le modèle dispose d'un cadre plus solide avant de s'exécuter plus longtemps de manière autonome.
|
||||||
|
|
||||||
|
### 3. S'exécuter plus longtemps avec moins de supervision
|
||||||
|
|
||||||
|
Après cette décision de routage, le modèle peut prendre en charge une plus grande partie du travail par lui-même. Sur le chemin complet, la spécification approuvée devient le cadre dans lequel le modèle s'exécute avec moins de supervision, ce qui est tout l'intérêt de la conception.
|
||||||
|
|
||||||
|
### 4. Diagnostiquer les échecs au bon niveau
|
||||||
|
|
||||||
|
Si l'implémentation est incorrecte parce que l'intention était mauvaise, corriger le code n'est pas la bonne solution. Si le code est incorrect parce que la spécification était faible, corriger le diff n'est pas non plus la bonne solution. Le workflow est conçu pour diagnostiquer où l'échec est entré dans le système, revenir à ce niveau, et régénérer à partir de ce point.
|
||||||
|
|
||||||
|
Les résultats de la revue sont utilisés pour décider si le problème provenait de l'intention, de la génération de la spécification, ou de l'implémentation locale. Seuls les véritables problèmes locaux sont corrigés localement.
|
||||||
|
|
||||||
|
### 5. Ne faire intervenir l’humain que si nécessaire
|
||||||
|
|
||||||
|
L'entretien sur l'intention implique la personne dans la boucle, mais ce n'est pas le même type d'interruption qu'un point de contrôle récurrent. Le workflow essaie de garder ces points de contrôle récurrents au minimum. Après la mise en forme initiale de l'intention, la personne revient principalement lorsque le workflow ne peut pas continuer en toute sécurité sans jugement, et à la fin, lorsqu'il est temps de revoir le résultat.
|
||||||
|
|
||||||
|
- **Résolution des lacunes d'intention** - intervenir à nouveau lors de la revue prouve que le workflow n'a pas pu déduire correctement ce qui était voulu
|
||||||
|
|
||||||
|
Tout le reste est candidat à une exécution autonome plus longue. Ce compromis est délibéré. Les anciens patterns dépensent plus d'attention humaine en supervision continue. Quick Dev fait davantage confiance au modèle, mais préserve l'attention humaine pour les moments où le raisonnement humain a le plus d'impact.
|
||||||
|
|
||||||
|
## Pourquoi le système de revue est important
|
||||||
|
|
||||||
|
La phase de revue n'est pas seulement là pour trouver des bugs. Elle est là pour router la correction sans détruire l'élan.
|
||||||
|
|
||||||
|
Ce workflow fonctionne mieux sur une plateforme capable de générer des sous-agents[^1], ou au moins d'invoquer un autre LLM via la ligne de commande et d'attendre un résultat. Si votre plateforme ne supporte pas cela nativement, vous pouvez ajouter un skill pour le faire. Les sous-agents sans contexte sont une pierre angulaire de la conception de la revue.
|
||||||
|
|
||||||
|
Les revues agentiques[^2] échouent souvent de deux manières :
|
||||||
|
|
||||||
|
- Elles génèrent trop d’observations, forçant la personne à trier le bruit.
|
||||||
|
- Elles déraillent des modifications actuelles en remontant des problèmes non liés et en transformant chaque exécution en un projet de nettoyage improvisé.
|
||||||
|
|
||||||
|
Quick Dev aborde ces deux problèmes en traitant la revue comme un triage[^3].
|
||||||
|
|
||||||
|
Lorsqu’une observation est fortuite plutôt que directement liée au travail en cours, le processus peut la mettre de côté au lieu d’obliger la personne à s’en occuper immédiatement. Cela permet de rester concentré sur l’exécution et d’éviter que des digressions aléatoires ne viennent épuiser le capital d’attention.
|
||||||
|
|
||||||
|
Ce triage sera parfois imparfait. C’est acceptable. Il est généralement préférable de mal juger certaines observations plutôt que d’inonder la personne de milliers de commentaires de revue à faible valeur. Le système optimise la qualité du rapport, pas d’être exhaustif.
|
||||||
|
|
||||||
|
## Glossaire
|
||||||
|
|
||||||
|
[^1]: Sous-agent : agent IA secondaire créé temporairement pour effectuer une tâche spécifique (comme une revue de code) de manière isolée, sans hériter du contexte complet de l’agent principal, ce qui permet une analyse plus objective et impartiale.
|
||||||
|
[^2]: Revues agentiques (agentic review) : revue de code effectuée par un agent IA de manière autonome, capable d’analyser, d’identifier des problèmes et de formuler des recommandations sans intervention humaine directe.
|
||||||
|
[^3]: Triage : processus de filtrage et de priorisation des observations issues d’une revue, afin de distinguer les problèmes pertinents à traiter immédiatement de ceux qui peuvent être mis de côté pour plus tard.
|
||||||
|
|
@ -0,0 +1,85 @@
|
||||||
|
---
|
||||||
|
title: "Pourquoi le Solutioning est Important"
|
||||||
|
description: Comprendre pourquoi la phase de solutioning est critique pour les projets multi-epics
|
||||||
|
sidebar:
|
||||||
|
order: 3
|
||||||
|
---
|
||||||
|
|
||||||
|
La Phase 3 (Solutioning) traduit le **quoi** construire (issu de la Planification) en **comment** le construire (conception technique). Cette phase évite les conflits entre agents dans les projets multi-epics en documentant les décisions architecturales avant le début de l'implémentation.
|
||||||
|
|
||||||
|
## Le Problème Sans Solutioning
|
||||||
|
|
||||||
|
```text
|
||||||
|
Agent 1 implémente l'Epic 1 avec une API REST
|
||||||
|
Agent 2 implémente l'Epic 2 avec GraphQL
|
||||||
|
Résultat : Conception d'API incohérente, cauchemar d'intégration
|
||||||
|
```
|
||||||
|
|
||||||
|
Lorsque plusieurs agents implémentent différentes parties d'un système sans orientation architecturale partagée, ils prennent des décisions techniques indépendantes qui peuvent entrer en conflit.
|
||||||
|
|
||||||
|
## La Solution Avec le Solutioning
|
||||||
|
|
||||||
|
```text
|
||||||
|
le workflow architecture décide : "Utiliser GraphQL pour toutes les API"
|
||||||
|
Tous les agents suivent les décisions d'architecture
|
||||||
|
Résultat : Implémentation cohérente, pas de conflits
|
||||||
|
```
|
||||||
|
|
||||||
|
En documentant les décisions techniques de manière explicite, tous les agents implémentent de façon cohérente et l'intégration devient simple.
|
||||||
|
|
||||||
|
## Solutioning vs Planification
|
||||||
|
|
||||||
|
| Aspect | Planification (Phase 2) | Solutioning (Phase 3) |
|
||||||
|
|----------|--------------------------|-------------------------------------------------|
|
||||||
|
| Question | Quoi et Pourquoi ? | Comment ? Puis Quelles unités de travail ? |
|
||||||
|
| Sortie | FRs/NFRs (Exigences)[^1] | Architecture + Epics[^2]/Stories[^3] |
|
||||||
|
| Agent | PM | Architect → PM |
|
||||||
|
| Audience | Parties prenantes | Développeurs |
|
||||||
|
| Document | PRD[^4] (FRs/NFRs) | Architecture + Fichiers Epics |
|
||||||
|
| Niveau | Logique métier | Conception technique + Décomposition du travail |
|
||||||
|
|
||||||
|
## Principe Clé
|
||||||
|
|
||||||
|
**Rendre les décisions techniques explicites et documentées** pour que tous les agents implémentent de manière cohérente.
|
||||||
|
|
||||||
|
Cela évite :
|
||||||
|
- Les conflits de style d'API (REST vs GraphQL)
|
||||||
|
- Les incohérences de conception de base de données
|
||||||
|
- Les désaccords sur la gestion du state
|
||||||
|
- Les inadéquations de conventions de nommage
|
||||||
|
- Les variations d'approche de sécurité
|
||||||
|
|
||||||
|
## Quand le Solutioning est Requis
|
||||||
|
|
||||||
|
| Parcours | Solutioning Requis ? |
|
||||||
|
|-----------------------|-----------------------------|
|
||||||
|
| Quick Dev | Non - l’ignore complètement |
|
||||||
|
| Méthode BMad Simple | Optionnel |
|
||||||
|
| Méthode BMad Complexe | Oui |
|
||||||
|
| Enterprise | Oui |
|
||||||
|
|
||||||
|
:::tip[Règle Générale]
|
||||||
|
Si vous avez plusieurs epics qui pourraient être implémentés par différents agents, vous avez besoin de solutioning.
|
||||||
|
:::
|
||||||
|
|
||||||
|
## Conséquences de sauter la phase de Solutioning
|
||||||
|
|
||||||
|
Sauter le solutioning sur des projets complexes entraîne :
|
||||||
|
|
||||||
|
- **Des problèmes d'intégration** découverts en milieu de sprint[^5]
|
||||||
|
- **Du travail répété** dû à des implémentations conflictuelles
|
||||||
|
- **Un temps de développement plus long** globalement
|
||||||
|
- **De la dette technique**[^6] due à des patterns incohérents
|
||||||
|
|
||||||
|
:::caution[Coût Multiplié]
|
||||||
|
Détecter les problèmes d'alignement lors du solutioning est 10× plus rapide que de les découvrir pendant l'implémentation.
|
||||||
|
:::
|
||||||
|
|
||||||
|
## Glossaire
|
||||||
|
|
||||||
|
[^1]: FR / NFR (Functional / Non-Functional Requirement) : exigences décrivant respectivement **ce que le système doit faire** (fonctionnalités, comportements attendus) et **comment il doit le faire** (contraintes de performance, sécurité, fiabilité, ergonomie, etc.).
|
||||||
|
[^2]: Epic : dans les méthodologies agiles, une unité de travail importante qui peut être décomposée en plusieurs stories plus petites. Un epic représente généralement une fonctionnalité majeure ou un objectif métier.
|
||||||
|
[^3]: Story (User Story) : description courte et simple d'une fonctionnalité du point de vue de l'utilisateur, utilisée dans les méthodologies agiles pour planifier et prioriser le travail.
|
||||||
|
[^4]: PRD (Product Requirements Document) : document de référence qui décrit les objectifs du produit, les besoins utilisateurs, les fonctionnalités attendues, les contraintes et les critères de succès, afin d'aligner les équipes sur ce qui doit être construit et pourquoi.
|
||||||
|
[^5]: Sprint : période de temps fixe (généralement 1 à 4 semaines) dans les méthodologies agiles durant laquelle l'équipe complète un ensemble prédéfini de tâches.
|
||||||
|
[^6]: Dette technique : coût futur supplémentaire de travail résultant de choix de facilité ou de raccourcis pris lors du développement initial, nécessitant souvent une refonte ultérieure.
|
||||||
|
|
@ -0,0 +1,174 @@
|
||||||
|
---
|
||||||
|
title: "Comment personnaliser BMad"
|
||||||
|
description: Personnalisez les agents, les workflows et les modules tout en préservant la compatibilité avec les mises à jour
|
||||||
|
sidebar:
|
||||||
|
order: 7
|
||||||
|
---
|
||||||
|
|
||||||
|
Utilisez les fichiers `.customize.yaml` pour adapter le comportement, les personas[^1] et les menus des agents tout en préservant vos modifications lors des mises à jour.
|
||||||
|
|
||||||
|
## Quand utiliser cette fonctionnalité
|
||||||
|
|
||||||
|
- Vous souhaitez modifier le nom, la personnalité ou le style de communication d'un agent
|
||||||
|
- Vous avez besoin que les agents se souviennent du contexte spécifique au projet
|
||||||
|
- Vous souhaitez ajouter des éléments de menu personnalisés qui déclenchent vos propres workflows ou prompts
|
||||||
|
- Vous voulez que les agents effectuent des actions spécifiques à chaque démarrage
|
||||||
|
|
||||||
|
:::note[Prérequis]
|
||||||
|
- BMad installé dans votre projet (voir [Comment installer BMad](./install-bmad.md))
|
||||||
|
- Un éditeur de texte pour les fichiers YAML
|
||||||
|
:::
|
||||||
|
|
||||||
|
:::caution[Protégez vos personnalisations]
|
||||||
|
Utilisez toujours les fichiers `.customize.yaml` décrits ici plutôt que de modifier directement les fichiers d'agents. L'installateur écrase les fichiers d'agents lors des mises à jour, mais préserve vos modifications dans les fichiers `.customize.yaml`.
|
||||||
|
:::
|
||||||
|
|
||||||
|
## Étapes
|
||||||
|
|
||||||
|
### 1. Localiser les fichiers de personnalisation
|
||||||
|
|
||||||
|
Après l'installation, vous trouverez un fichier `.customize.yaml` par agent dans :
|
||||||
|
|
||||||
|
```text
|
||||||
|
_bmad/_config/agents/
|
||||||
|
├── bmm-analyst.customize.yaml
|
||||||
|
├── bmm-architect.customize.yaml
|
||||||
|
└── ... (un fichier par agent installé)
|
||||||
|
```
|
||||||
|
|
||||||
|
### 2. Modifier le fichier de personnalisation
|
||||||
|
|
||||||
|
Ouvrez le fichier `.customize.yaml` de l'agent que vous souhaitez modifier. Chaque section est facultative — personnalisez uniquement ce dont vous avez besoin.
|
||||||
|
|
||||||
|
| Section | Comportement | Objectif |
|
||||||
|
| ------------------ | ------------ | ------------------------------------------------ |
|
||||||
|
| `agent.metadata` | Remplace | Remplacer le nom d'affichage de l'agent |
|
||||||
|
| `persona` | Remplace | Définir le rôle, l'identité, le style et les principes |
|
||||||
|
| `memories` | Ajoute | Ajouter un contexte persistant que l'agent se rappelle toujours |
|
||||||
|
| `menu` | Ajoute | Ajouter des éléments de menu personnalisés pour les workflows ou prompts |
|
||||||
|
| `critical_actions` | Ajoute | Définir les instructions de démarrage de l'agent |
|
||||||
|
| `prompts` | Ajoute | Créer des prompts réutilisables pour les actions du menu |
|
||||||
|
|
||||||
|
Les sections marquées **Remplace** écrasent entièrement les valeurs par défaut de l'agent. Les sections marquées **Ajoute** s'ajoutent à la configuration existante.
|
||||||
|
|
||||||
|
**Nom de l'agent**
|
||||||
|
|
||||||
|
Modifier la façon dont l'agent se présente :
|
||||||
|
|
||||||
|
```yaml
|
||||||
|
agent:
|
||||||
|
metadata:
|
||||||
|
name: 'Bob l’éponge' # Par défaut : "Mary"
|
||||||
|
```
|
||||||
|
|
||||||
|
**Persona**
|
||||||
|
|
||||||
|
Remplacer la personnalité, le rôle et le style de communication de l'agent :
|
||||||
|
|
||||||
|
```yaml
|
||||||
|
persona:
|
||||||
|
role: 'Ingénieur Full-Stack Senior'
|
||||||
|
identity: 'Habite dans un ananas (au fond de la mer)'
|
||||||
|
communication_style: 'Style agaçant de Bob l’Éponge'
|
||||||
|
principles:
|
||||||
|
- 'Jamais de nidification, les devs Bob l’Éponge détestent plus de 2 niveaux d’imbrication'
|
||||||
|
- 'Privilégier la composition à l’héritage'
|
||||||
|
```
|
||||||
|
|
||||||
|
La section `persona`[^1] remplace entièrement le persona par défaut, donc incluez les quatre champs si vous la définissez.
|
||||||
|
|
||||||
|
**Souvenirs**
|
||||||
|
|
||||||
|
Ajouter un contexte persistant que l'agent gardera toujours en mémoire :
|
||||||
|
|
||||||
|
```yaml
|
||||||
|
memories:
|
||||||
|
- 'Travaille au Krusty Krab'
|
||||||
|
- 'Célébrité préférée : David Hasslehoff'
|
||||||
|
- 'Appris dans l’Epic 1 que ce n’est pas cool de faire semblant que les tests ont passé'
|
||||||
|
```
|
||||||
|
|
||||||
|
**Éléments de menu**
|
||||||
|
|
||||||
|
Ajouter des entrées personnalisées au menu d'affichage de l'agent. Chaque élément nécessite un `trigger`, une cible (chemin `workflow` ou référence `action`), et une `description` :
|
||||||
|
|
||||||
|
```yaml
|
||||||
|
menu:
|
||||||
|
- trigger: my-workflow
|
||||||
|
workflow: 'my-custom/workflows/my-workflow.yaml'
|
||||||
|
description: Mon workflow personnalisé
|
||||||
|
- trigger: deploy
|
||||||
|
action: '#deploy-prompt'
|
||||||
|
description: Déployer en production
|
||||||
|
```
|
||||||
|
|
||||||
|
**Actions critiques**
|
||||||
|
|
||||||
|
Définir des instructions qui s'exécutent au démarrage de l'agent :
|
||||||
|
|
||||||
|
```yaml
|
||||||
|
critical_actions:
|
||||||
|
- 'Vérifier les pipelines CI avec le Skill XYZ et alerter l’utilisateur au réveil si quelque chose nécessite une attention urgente'
|
||||||
|
```
|
||||||
|
|
||||||
|
**Prompts personnalisés**
|
||||||
|
|
||||||
|
Créer des prompts réutilisables que les éléments de menu peuvent référencer avec `action="#id"` :
|
||||||
|
|
||||||
|
```yaml
|
||||||
|
prompts:
|
||||||
|
- id: deploy-prompt
|
||||||
|
content: |
|
||||||
|
Déployer la branche actuelle en production :
|
||||||
|
1. Exécuter tous les tests
|
||||||
|
2. Build le projet
|
||||||
|
3. Exécuter le script de déploiement
|
||||||
|
```
|
||||||
|
|
||||||
|
### 3. Appliquer vos modifications
|
||||||
|
|
||||||
|
Après modification, réinstallez pour appliquer les changements :
|
||||||
|
|
||||||
|
```bash
|
||||||
|
npx bmad-method install
|
||||||
|
```
|
||||||
|
|
||||||
|
L'installateur détecte l'installation existante et propose ces options :
|
||||||
|
|
||||||
|
| Option | Ce qu'elle fait |
|
||||||
|
| ----------------------------------- | ---------------------------------------------------------------------- |
|
||||||
|
| **Quick Update** | Met à jour tous les modules vers la dernière version et applique les personnalisations |
|
||||||
|
| **Modify BMad Installation** | Flux d'installation complet pour ajouter ou supprimer des modules |
|
||||||
|
|
||||||
|
Pour des modifications de personnalisation uniquement, **Quick Update** est l'option la plus rapide.
|
||||||
|
|
||||||
|
## Résolution des problèmes
|
||||||
|
|
||||||
|
**Les modifications n'apparaissent pas ?**
|
||||||
|
|
||||||
|
- Exécutez `npx bmad-method install` et sélectionnez **Quick Update** pour appliquer les modifications
|
||||||
|
- Vérifiez que votre syntaxe YAML est valide (l'indentation compte)
|
||||||
|
- Assurez-vous d'avoir modifié le bon fichier `.customize.yaml` pour l'agent
|
||||||
|
|
||||||
|
**L'agent ne se charge pas ?**
|
||||||
|
|
||||||
|
- Vérifiez les erreurs de syntaxe YAML à l'aide d'un validateur YAML en ligne
|
||||||
|
- Assurez-vous de ne pas avoir laissé de champs vides après les avoir décommentés
|
||||||
|
- Essayez de revenir au modèle d'origine et de reconstruire
|
||||||
|
|
||||||
|
**Besoin de réinitialiser un agent ?**
|
||||||
|
|
||||||
|
- Effacez ou supprimez le fichier `.customize.yaml` de l'agent
|
||||||
|
- Exécutez `npx bmad-method install` et sélectionnez **Quick Update** pour restaurer les valeurs par défaut
|
||||||
|
|
||||||
|
## Personnalisation des workflows
|
||||||
|
|
||||||
|
La personnalisation des workflows et skills existants de la méthode BMad arrive bientôt.
|
||||||
|
|
||||||
|
## Personnalisation des modules
|
||||||
|
|
||||||
|
Les conseils sur la création de modules d'extension et la personnalisation des modules existants arrivent bientôt.
|
||||||
|
|
||||||
|
## Glossaire
|
||||||
|
|
||||||
|
[^1]: Persona : définition de la personnalité, du rôle et du style de communication d'un agent IA. Permet d'adapter le comportement et les réponses de l'agent selon les besoins du projet.
|
||||||
|
|
@ -0,0 +1,122 @@
|
||||||
|
---
|
||||||
|
title: "Projets existants"
|
||||||
|
description: Comment utiliser la méthode BMad sur des bases de code existantes
|
||||||
|
sidebar:
|
||||||
|
order: 6
|
||||||
|
---
|
||||||
|
|
||||||
|
Utilisez la méthode BMad efficacement lorsque vous travaillez sur des projets existants et des bases de code legacy.
|
||||||
|
|
||||||
|
Ce guide couvre le flux de travail essentiel pour l'intégration à des projets existants avec la méthode BMad.
|
||||||
|
|
||||||
|
:::note[Prérequis]
|
||||||
|
- méthode BMad installée (`npx bmad-method install`)
|
||||||
|
- Une base de code existante sur laquelle vous souhaitez travailler
|
||||||
|
- Accès à un IDE IA (Claude Code ou Cursor)
|
||||||
|
:::
|
||||||
|
|
||||||
|
## Étape 1 : Nettoyer les artefacts de planification terminés
|
||||||
|
|
||||||
|
Si vous avez terminé tous les epics et stories du PRD[^1] via le processus BMad, nettoyez ces fichiers. Archivez-les, supprimez-les, ou appuyez-vous sur l'historique des versions si nécessaire. Ne conservez pas ces fichiers dans :
|
||||||
|
|
||||||
|
- `docs/`
|
||||||
|
- `_bmad-output/planning-artifacts/`
|
||||||
|
- `_bmad-output/implementation-artifacts/`
|
||||||
|
|
||||||
|
## Étape 2 : Créer le contexte du projet
|
||||||
|
|
||||||
|
:::tip[Recommandé pour les projets existants]
|
||||||
|
Générez `project-context.md` pour capturer les patterns et conventions de votre base de code existante. Cela garantit que les agents IA suivent vos pratiques établies lors de l'implémentation des modifications.
|
||||||
|
:::
|
||||||
|
|
||||||
|
Exécutez le workflow de génération de contexte du projet :
|
||||||
|
|
||||||
|
```bash
|
||||||
|
bmad-generate-project-context
|
||||||
|
```
|
||||||
|
|
||||||
|
Cela analyse votre base de code pour identifier :
|
||||||
|
- La pile technologique et les versions
|
||||||
|
- Les patterns d'organisation du code
|
||||||
|
- Les conventions de nommage
|
||||||
|
- Les approches de test
|
||||||
|
- Les patterns spécifiques aux frameworks
|
||||||
|
|
||||||
|
Vous pouvez examiner et affiner le fichier généré, ou le créer manuellement à `_bmad-output/project-context.md` si vous préférez.
|
||||||
|
|
||||||
|
[En savoir plus sur le contexte du projet](../explanation/project-context.md)
|
||||||
|
|
||||||
|
## Étape 3 : Maintenir une documentation de projet de qualité
|
||||||
|
|
||||||
|
Votre dossier `docs/` doit contenir une documentation succincte et bien organisée qui représente fidèlement votre projet :
|
||||||
|
|
||||||
|
- L'intention et la justification métier
|
||||||
|
- Les règles métier
|
||||||
|
- L'architecture
|
||||||
|
- Toute autre information pertinente sur le projet
|
||||||
|
|
||||||
|
Pour les projets complexes, envisagez d'utiliser le workflow `bmad-document-project`. Il offre des variantes d'exécution qui analyseront l'ensemble de votre projet et documenteront son état actuel réel.
|
||||||
|
|
||||||
|
## Étape 4 : Obtenir de l'aide
|
||||||
|
|
||||||
|
### BMad-Help : Votre point de départ
|
||||||
|
|
||||||
|
**Exécutez `bmad-help` chaque fois que vous n'êtes pas sûr de la prochaine étape.** Ce guide intelligent :
|
||||||
|
|
||||||
|
- Inspecte votre projet pour voir ce qui a déjà été fait
|
||||||
|
- Affiche les options basées sur vos modules installés
|
||||||
|
- Comprend les requêtes en langage naturel
|
||||||
|
|
||||||
|
```
|
||||||
|
bmad-help J'ai une app Rails existante, par où dois-je commencer ?
|
||||||
|
bmad-help Quelle est la différence entre quick-dev et la méthode complète ?
|
||||||
|
bmad-help Montre-moi quels workflows sont disponibles
|
||||||
|
```
|
||||||
|
|
||||||
|
BMad-Help s'exécute également **automatiquement à la fin de chaque workflow**, fournissant des conseils clairs sur exactement quoi faire ensuite.
|
||||||
|
|
||||||
|
### Choisir votre approche
|
||||||
|
|
||||||
|
Vous avez deux options principales selon l'ampleur des modifications :
|
||||||
|
|
||||||
|
| Portée | Approche recommandée |
|
||||||
|
| ----------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------- |
|
||||||
|
| **Petites mises à jour ou ajouts** | Exécutez `bmad-quick-dev` pour clarifier l'intention, planifier, implémenter et réviser dans un seul workflow. La méthode BMad complète en quatre phases est probablement excessive. |
|
||||||
|
| **Modifications ou ajouts majeurs** | Commencez avec la méthode BMad, en appliquant autant ou aussi peu de rigueur que nécessaire. |
|
||||||
|
|
||||||
|
### Pendant la création du PRD
|
||||||
|
|
||||||
|
Lors de la création d'un brief ou en passant directement au PRD[^1], assurez-vous que l'agent :
|
||||||
|
|
||||||
|
- Trouve et analyse votre documentation de projet existante
|
||||||
|
- Lit le contexte approprié sur votre système actuel
|
||||||
|
|
||||||
|
Vous pouvez guider l'agent explicitement, mais l'objectif est de garantir que la nouvelle fonctionnalité s'intègre bien à votre système existant.
|
||||||
|
|
||||||
|
### Considérations UX
|
||||||
|
|
||||||
|
Le travail UX[^2] est optionnel. La décision dépend non pas de savoir si votre projet a une UX, mais de :
|
||||||
|
|
||||||
|
- Si vous allez travailler sur des modifications UX
|
||||||
|
- Si des conceptions ou patterns UX significatifs sont nécessaires
|
||||||
|
|
||||||
|
Si vos modifications se résument à de simples mises à jour d'écrans existants qui vous satisfont, un processus UX complet n'est pas nécessaire.
|
||||||
|
|
||||||
|
### Considérations d'architecture
|
||||||
|
|
||||||
|
Lors de la création de l'architecture, assurez-vous que l'architecte :
|
||||||
|
|
||||||
|
- Utilise les fichiers documentés appropriés
|
||||||
|
- Analyse la base de code existante
|
||||||
|
|
||||||
|
Soyez particulièrement attentif ici pour éviter de réinventer la roue ou de prendre des décisions qui ne s'alignent pas avec votre architecture existante.
|
||||||
|
|
||||||
|
## Plus d'informations
|
||||||
|
|
||||||
|
- **[Corrections rapides](./quick-fixes.md)** - Corrections de bugs et modifications ad-hoc
|
||||||
|
- **[FAQ Projets existants](../explanation/established-projects-faq.md)** - Questions courantes sur le travail sur des projets établis
|
||||||
|
|
||||||
|
## Glossaire
|
||||||
|
|
||||||
|
[^1]: PRD (Product Requirements Document) : document de référence qui décrit les objectifs du produit, les besoins utilisateurs, les fonctionnalités attendues, les contraintes et les critères de succès, afin d'aligner les équipes sur ce qui doit être construit et pourquoi.
|
||||||
|
[^2]: UX (User Experience) : expérience utilisateur, englobant l'ensemble des interactions et perceptions d'un utilisateur face à un produit. Le design UX vise à créer des interfaces intuitives, efficaces et agréables en tenant compte des besoins, comportements et contexte d'utilisation.
|
||||||
|
|
@ -0,0 +1,136 @@
|
||||||
|
---
|
||||||
|
title: "Comment obtenir des réponses à propos de BMad"
|
||||||
|
description: Utiliser un LLM pour répondre rapidement à vos questions sur BMad
|
||||||
|
sidebar:
|
||||||
|
order: 4
|
||||||
|
---
|
||||||
|
|
||||||
|
## Commencez ici : BMad-Help
|
||||||
|
|
||||||
|
**Le moyen le plus rapide d'obtenir des réponses sur BMad est le skill `bmad-help`.** Ce guide intelligent répondra à plus de 80 % de toutes les questions et est disponible directement dans votre IDE pendant que vous travaillez.
|
||||||
|
|
||||||
|
BMad-Help est bien plus qu'un outil de recherche — il :
|
||||||
|
- **Inspecte votre projet** pour voir ce qui a déjà été réalisé
|
||||||
|
- **Comprend le langage naturel** — posez vos questions en français courant
|
||||||
|
- **S'adapte à vos modules installés** — affiche les options pertinentes
|
||||||
|
- **Se lance automatiquement après les workflows** — vous indique exactement quoi faire ensuite
|
||||||
|
- **Recommande la première tâche requise** — plus besoin de deviner par où commencer
|
||||||
|
|
||||||
|
### Comment utiliser BMad-Help
|
||||||
|
|
||||||
|
Appelez-le par son nom dans votre session IA :
|
||||||
|
|
||||||
|
```
|
||||||
|
bmad-help
|
||||||
|
```
|
||||||
|
|
||||||
|
:::tip
|
||||||
|
Vous pouvez également utiliser `/bmad-help` ou `$bmad-help` selon votre plateforme, mais `bmad-help` tout seul devrait fonctionner partout.
|
||||||
|
:::
|
||||||
|
|
||||||
|
Combinez-le avec une requête en langage naturel :
|
||||||
|
|
||||||
|
```
|
||||||
|
bmad-help J'ai une idée de SaaS et je connais toutes les fonctionnalités. Par où commencer ?
|
||||||
|
bmad-help Quelles sont mes options pour le design UX ?
|
||||||
|
bmad-help Je suis bloqué sur le workflow PRD
|
||||||
|
bmad-help Montre-moi ce qui a été fait jusqu'à maintenant
|
||||||
|
```
|
||||||
|
|
||||||
|
BMad-Help répond avec :
|
||||||
|
- Ce qui est recommandé pour votre situation
|
||||||
|
- Quelle est la première tâche requise
|
||||||
|
- À quoi ressemble le reste du processus
|
||||||
|
|
||||||
|
## Quand utiliser ce guide
|
||||||
|
|
||||||
|
Utilisez cette section lorsque :
|
||||||
|
- Vous souhaitez comprendre l'architecture ou les éléments internes de BMad
|
||||||
|
- Vous avez besoin de réponses au-delà de ce que BMad-Help fournit
|
||||||
|
- Vous faites des recherches sur BMad avant l'installation
|
||||||
|
- Vous souhaitez explorer le code source directement
|
||||||
|
|
||||||
|
## Étapes
|
||||||
|
|
||||||
|
### 1. Choisissez votre source
|
||||||
|
|
||||||
|
| Source | Idéal pour | Exemples |
|
||||||
|
|-------------------------|------------------------------------------------------|---------------------------------------|
|
||||||
|
| **Dossier `_bmad`** | Comment fonctionne BMad — agents, workflows, prompts | "Que fait l'agent Analyste ?" |
|
||||||
|
| **Repo GitHub complet** | Historique, installateur, architecture | "Qu'est-ce qui a changé dans la v6 ?" |
|
||||||
|
| **`llms-full.txt`** | Aperçu rapide depuis la documentation | "Expliquez les quatre phases de BMad" |
|
||||||
|
|
||||||
|
Le dossier `_bmad` est créé lorsque vous installez BMad. Si vous ne l'avez pas encore, clonez le repo à la place.
|
||||||
|
|
||||||
|
### 2. Pointez votre IA vers la source
|
||||||
|
|
||||||
|
**Si votre IA peut lire des fichiers (Claude Code, Cursor, etc.) :**
|
||||||
|
|
||||||
|
- **BMad installé :** Pointez vers le dossier `_bmad` et posez vos questions directement
|
||||||
|
- **Vous voulez plus de contexte :** Clonez le [repo complet](https://github.com/bmad-code-org/BMAD-METHOD)
|
||||||
|
|
||||||
|
**Si vous utilisez ChatGPT ou Claude.ai (LLM en ligne) :**
|
||||||
|
|
||||||
|
Importez `llms-full.txt` dans votre session :
|
||||||
|
|
||||||
|
```text
|
||||||
|
https://bmad-code-org.github.io/BMAD-METHOD/llms-full.txt
|
||||||
|
```
|
||||||
|
|
||||||
|
|
||||||
|
### 3. Posez votre question
|
||||||
|
|
||||||
|
:::note[Exemple]
|
||||||
|
**Q :** "Quel est le moyen le plus rapide de construire quelque chose avec BMad ?"
|
||||||
|
|
||||||
|
**R :** Utilisez le workflow Quick Dev : Lancez `bmad-quick-dev` — il clarifie votre intention, planifie, implémente, révise et présente les résultats dans un seul workflow, en sautant les phases de planification complètes.
|
||||||
|
:::
|
||||||
|
|
||||||
|
## Ce que vous obtenez
|
||||||
|
|
||||||
|
Des réponses directes sur BMad — comment fonctionnent les agents, ce que font les workflows, pourquoi les choses sont structurées ainsi — sans attendre la réponse de quelqu'un.
|
||||||
|
|
||||||
|
## Conseils
|
||||||
|
|
||||||
|
- **Vérifiez les réponses surprenantes** — Les LLM font parfois des erreurs. Consultez le fichier source ou posez la question sur Discord.
|
||||||
|
- **Soyez précis** — "Que fait l'étape 3 du workflow PRD ?" est mieux que "Comment fonctionne le PRD ?"
|
||||||
|
|
||||||
|
## Toujours bloqué ?
|
||||||
|
|
||||||
|
Avez-vous essayé l'approche LLM et avez encore besoin d'aide ? Vous avez maintenant une bien meilleure question à poser.
|
||||||
|
|
||||||
|
| Canal | Utilisé pour |
|
||||||
|
| ------------------------- | ------------------------------------------- |
|
||||||
|
| `#bmad-method-help` | Questions rapides (chat en temps réel) |
|
||||||
|
| Forum `help-requests` | Questions détaillées (recherchables, persistants) |
|
||||||
|
| `#suggestions-feedback` | Idées et demandes de fonctionnalités |
|
||||||
|
| `#report-bugs-and-issues` | Rapports de bugs |
|
||||||
|
|
||||||
|
**Discord :** [discord.gg/gk8jAdXWmj](https://discord.gg/gk8jAdXWmj)
|
||||||
|
|
||||||
|
**GitHub Issues :** [github.com/bmad-code-org/BMAD-METHOD/issues](https://github.com/bmad-code-org/BMAD-METHOD/issues) (pour les bugs clairs)
|
||||||
|
|
||||||
|
*Toi !*
|
||||||
|
*Bloqué*
|
||||||
|
*dans la file d'attente—*
|
||||||
|
*qui*
|
||||||
|
*attends-tu ?*
|
||||||
|
|
||||||
|
*La source*
|
||||||
|
*est là,*
|
||||||
|
*facile à voir !*
|
||||||
|
|
||||||
|
*Pointez*
|
||||||
|
*votre machine.*
|
||||||
|
*Libérez-la.*
|
||||||
|
|
||||||
|
*Elle lit.*
|
||||||
|
*Elle parle.*
|
||||||
|
*Demandez—*
|
||||||
|
|
||||||
|
*Pourquoi attendre*
|
||||||
|
*demain*
|
||||||
|
*quand tu as déjà*
|
||||||
|
*cette journée ?*
|
||||||
|
|
||||||
|
*—Claude*
|
||||||
|
|
@ -0,0 +1,116 @@
|
||||||
|
---
|
||||||
|
title: "Comment installer BMad"
|
||||||
|
description: Guide étape par étape pour installer BMad dans votre projet
|
||||||
|
sidebar:
|
||||||
|
order: 1
|
||||||
|
---
|
||||||
|
|
||||||
|
Utilisez la commande `npx bmad-method install` pour configurer BMad dans votre projet avec votre choix de modules et d'outils d'IA.
|
||||||
|
|
||||||
|
Si vous souhaitez utiliser un installateur non interactif et fournir toutes les options d'installation en ligne de commande, consultez [ce guide](./non-interactive-installation.md).
|
||||||
|
|
||||||
|
## Quand l'utiliser
|
||||||
|
|
||||||
|
- Démarrer un nouveau projet avec BMad
|
||||||
|
- Ajouter BMad à une base de code existante
|
||||||
|
- Mettre à jour une installation BMad existante
|
||||||
|
|
||||||
|
:::note[Prérequis]
|
||||||
|
- **Node.js** 20+ (requis pour l'installateur)
|
||||||
|
- **Git** (recommandé)
|
||||||
|
- **Outil d'IA** (Claude Code, Cursor, ou similaire)
|
||||||
|
:::
|
||||||
|
|
||||||
|
## Étapes
|
||||||
|
|
||||||
|
### 1. Lancer l'installateur
|
||||||
|
|
||||||
|
```bash
|
||||||
|
npx bmad-method install
|
||||||
|
```
|
||||||
|
|
||||||
|
:::tip[Vous voulez la dernière version préliminaire ?]
|
||||||
|
Utilisez le dist-tag `next` :
|
||||||
|
```bash
|
||||||
|
npx bmad-method@next install
|
||||||
|
```
|
||||||
|
|
||||||
|
Cela vous permet d'obtenir les nouvelles modifications plus tôt, avec un risque plus élevé de changements que l'installation par défaut.
|
||||||
|
:::
|
||||||
|
|
||||||
|
:::tip[Version de développement]
|
||||||
|
Pour installer la dernière version depuis la branche main (peut être instable) :
|
||||||
|
```bash
|
||||||
|
npx github:bmad-code-org/BMAD-METHOD install
|
||||||
|
```
|
||||||
|
:::
|
||||||
|
|
||||||
|
### 2. Choisir l'emplacement d'installation
|
||||||
|
|
||||||
|
L'installateur vous demandera où installer les fichiers BMad :
|
||||||
|
|
||||||
|
- Répertoire courant (recommandé pour les nouveaux projets si vous avez créé le répertoire vous-même et l'exécutez depuis ce répertoire)
|
||||||
|
- Chemin personnalisé
|
||||||
|
|
||||||
|
### 3. Sélectionner vos outils d'IA
|
||||||
|
|
||||||
|
Choisissez les outils d'IA que vous utilisez :
|
||||||
|
|
||||||
|
- Claude Code
|
||||||
|
- Cursor
|
||||||
|
- Autres
|
||||||
|
|
||||||
|
Chaque outil a sa propre façon d'intégrer les skills. L'installateur crée de petits fichiers de prompt pour activer les workflows et les agents — il les place simplement là où votre outil s'attend à les trouver.
|
||||||
|
|
||||||
|
:::note[Activer les skills]
|
||||||
|
Certaines plateformes nécessitent que les skills soient explicitement activés dans les paramètres avant d'apparaître. Si vous installez BMad et ne voyez pas les skills, vérifiez les paramètres de votre plateforme ou demandez à votre assistant IA comment activer les skills.
|
||||||
|
:::
|
||||||
|
|
||||||
|
### 4. Choisir les modules
|
||||||
|
|
||||||
|
L'installateur affiche les modules disponibles. Sélectionnez ceux dont vous avez besoin — la plupart des utilisateurs veulent simplement **méthode BMad** (le module de développement logiciel).
|
||||||
|
|
||||||
|
### 5. Suivre les instructions
|
||||||
|
|
||||||
|
L'installateur vous guide pour le reste — contenu personnalisé, paramètres, etc.
|
||||||
|
|
||||||
|
## Ce que vous obtenez
|
||||||
|
|
||||||
|
```text
|
||||||
|
votre-projet/
|
||||||
|
├── _bmad/
|
||||||
|
│ ├── bmm/ # Vos modules sélectionnés
|
||||||
|
│ │ └── config.yaml # Paramètres du module (si vous devez les modifier)
|
||||||
|
│ ├── core/ # Module core requis
|
||||||
|
│ └── ...
|
||||||
|
├── _bmad-output/ # Artefacts générés
|
||||||
|
├── .claude/ # Skills Claude Code (si vous utilisez Claude Code)
|
||||||
|
│ └── skills/
|
||||||
|
│ ├── bmad-help/
|
||||||
|
│ ├── bmad-persona/
|
||||||
|
│ └── ...
|
||||||
|
└── .cursor/ # Skills Cursor (si vous utilisez Cursor)
|
||||||
|
└── skills/
|
||||||
|
└── ...
|
||||||
|
```
|
||||||
|
|
||||||
|
## Vérifier l'installation
|
||||||
|
|
||||||
|
Exécutez `bmad-help` pour vérifier que tout fonctionne et voir quoi faire ensuite.
|
||||||
|
|
||||||
|
**BMad-Help est votre guide intelligent** qui va :
|
||||||
|
- Confirmer que votre installation fonctionne
|
||||||
|
- Afficher ce qui est disponible en fonction de vos modules installés
|
||||||
|
- Recommander votre première étape
|
||||||
|
|
||||||
|
Vous pouvez aussi lui poser des questions :
|
||||||
|
```
|
||||||
|
bmad-help Je viens d'installer, que dois-je faire en premier ?
|
||||||
|
bmad-help Quelles sont mes options pour un projet SaaS ?
|
||||||
|
```
|
||||||
|
|
||||||
|
## Résolution de problèmes
|
||||||
|
|
||||||
|
**L'installateur affiche une erreur** — Copiez-collez la sortie dans votre assistant IA et laissez-le résoudre le problème.
|
||||||
|
|
||||||
|
**L'installateur a fonctionné mais quelque chose ne fonctionne pas plus tard** — Votre IA a besoin du contexte BMad pour vous aider. Consultez [Comment obtenir des réponses à propos de BMad](./get-answers-about-bmad.md) pour savoir comment diriger votre IA vers les bonnes sources.
|
||||||
|
|
@ -0,0 +1,171 @@
|
||||||
|
---
|
||||||
|
title: Installation non-interactive
|
||||||
|
description: Installer BMad en utilisant des options de ligne de commande pour les pipelines CI/CD et les déploiements automatisés
|
||||||
|
sidebar:
|
||||||
|
order: 2
|
||||||
|
---
|
||||||
|
|
||||||
|
Utilisez les options de ligne de commande pour installer BMad de manière non-interactive. Cela est utile pour :
|
||||||
|
|
||||||
|
## Quand utiliser cette méthode
|
||||||
|
|
||||||
|
- Déploiements automatisés et pipelines CI/CD
|
||||||
|
- Installations scriptées
|
||||||
|
- Installations par lots sur plusieurs projets
|
||||||
|
- Installations rapides avec des configurations connues
|
||||||
|
|
||||||
|
:::note[Prérequis]
|
||||||
|
Nécessite [Node.js](https://nodejs.org) v20+ et `npx` (inclus avec npm).
|
||||||
|
:::
|
||||||
|
|
||||||
|
## Options disponibles
|
||||||
|
|
||||||
|
### Options d'installation
|
||||||
|
|
||||||
|
| Option | Description | Exemple |
|
||||||
|
|------|-------------|---------|
|
||||||
|
| `--directory <chemin>` | Répertoire d'installation | `--directory ~/projects/myapp` |
|
||||||
|
| `--modules <modules>` | IDs de modules séparés par des virgules | `--modules bmm,bmb` |
|
||||||
|
| `--tools <outils>` | IDs d'outils/IDE séparés par des virgules (utilisez `none` pour ignorer) | `--tools claude-code,cursor` ou `--tools none` |
|
||||||
|
| `--custom-content <chemins>` | Chemins vers des modules personnalisés séparés par des virgules | `--custom-content ~/my-module,~/another-module` |
|
||||||
|
| `--action <type>` | Action pour les installations existantes : `install` (par défaut), `update`, ou `quick-update` | `--action quick-update` |
|
||||||
|
|
||||||
|
### Configuration principale
|
||||||
|
|
||||||
|
| Option | Description | Par défaut |
|
||||||
|
|------|-------------|---------|
|
||||||
|
| `--user-name <nom>` | Nom à utiliser par les agents | Nom d'utilisateur système |
|
||||||
|
| `--communication-language <langue>` | Langue de communication des agents | Anglais |
|
||||||
|
| `--document-output-language <langue>` | Langue de sortie des documents | Anglais |
|
||||||
|
| `--output-folder <chemin>` | Chemin du dossier de sortie | _bmad-output |
|
||||||
|
|
||||||
|
### Autres options
|
||||||
|
|
||||||
|
| Option | Description |
|
||||||
|
|------|-------------|
|
||||||
|
| `-y, --yes` | Accepter tous les paramètres par défaut et ignorer les invites |
|
||||||
|
| `-d, --debug` | Activer la sortie de débogage pour la génération du manifeste |
|
||||||
|
|
||||||
|
## IDs de modules
|
||||||
|
|
||||||
|
IDs de modules disponibles pour l’option `--modules` :
|
||||||
|
|
||||||
|
- `bmm` — méthode BMad Master
|
||||||
|
- `bmb` — BMad Builder
|
||||||
|
|
||||||
|
Consultez le [registre BMad](https://github.com/bmad-code-org) pour les modules externes disponibles.
|
||||||
|
|
||||||
|
## IDs d'outils/IDE
|
||||||
|
|
||||||
|
IDs d'outils disponibles pour l’option `--tools` :
|
||||||
|
|
||||||
|
**Recommandés :** `claude-code`, `cursor`
|
||||||
|
|
||||||
|
Exécutez `npx bmad-method install` de manière interactive une fois pour voir la liste complète actuelle des outils pris en charge, ou consultez la [configuration des codes de la plateforme](https://github.com/bmad-code-org/BMAD-METHOD/blob/main/tools/cli/installers/lib/ide/platform-codes.yaml).
|
||||||
|
|
||||||
|
## Modes d'installation
|
||||||
|
|
||||||
|
| Mode | Description | Exemple |
|
||||||
|
|------|-------------|---------|
|
||||||
|
| Entièrement non-interactif | Fournir toutes les options pour ignorer toutes les invites | `npx bmad-method install --directory . --modules bmm --tools claude-code --yes` |
|
||||||
|
| Semi-interactif | Fournir certains options ; BMad demande les autres | `npx bmad-method install --directory . --modules bmm` |
|
||||||
|
| Paramètres par défaut uniquement | Accepter tous les paramètres par défaut avec `-y` | `npx bmad-method install --yes` |
|
||||||
|
| Sans outils | Ignorer la configuration des outils/IDE | `npx bmad-method install --modules bmm --tools none` |
|
||||||
|
|
||||||
|
## Exemples
|
||||||
|
|
||||||
|
### Installation dans un pipeline CI/CD
|
||||||
|
|
||||||
|
```bash
|
||||||
|
#!/bin/bash
|
||||||
|
# install-bmad.sh
|
||||||
|
|
||||||
|
npx bmad-method install \
|
||||||
|
--directory "${GITHUB_WORKSPACE}" \
|
||||||
|
--modules bmm \
|
||||||
|
--tools claude-code \
|
||||||
|
--user-name "CI Bot" \
|
||||||
|
--communication-language Français \
|
||||||
|
--document-output-language Français \
|
||||||
|
--output-folder _bmad-output \
|
||||||
|
--yes
|
||||||
|
```
|
||||||
|
|
||||||
|
### Mettre à jour une installation existante
|
||||||
|
|
||||||
|
```bash
|
||||||
|
npx bmad-method install \
|
||||||
|
--directory ~/projects/myapp \
|
||||||
|
--action update \
|
||||||
|
--modules bmm,bmb,custom-module
|
||||||
|
```
|
||||||
|
|
||||||
|
### Mise à jour rapide (conserver les paramètres)
|
||||||
|
|
||||||
|
```bash
|
||||||
|
npx bmad-method install \
|
||||||
|
--directory ~/projects/myapp \
|
||||||
|
--action quick-update
|
||||||
|
```
|
||||||
|
|
||||||
|
### Installation avec du contenu personnalisé
|
||||||
|
|
||||||
|
```bash
|
||||||
|
npx bmad-method install \
|
||||||
|
--directory ~/projects/myapp \
|
||||||
|
--modules bmm \
|
||||||
|
--custom-content ~/my-custom-module,~/another-module \
|
||||||
|
--tools claude-code
|
||||||
|
```
|
||||||
|
|
||||||
|
## Ce que vous obtenez
|
||||||
|
|
||||||
|
- Un répertoire `_bmad/` entièrement configuré dans votre projet
|
||||||
|
- Des agents et des flux de travail configurés pour vos modules et outils sélectionnés
|
||||||
|
- Un dossier `_bmad-output/` pour les artefacts générés
|
||||||
|
|
||||||
|
## Validation et gestion des erreurs
|
||||||
|
|
||||||
|
BMad valide toutes les options fournis :
|
||||||
|
|
||||||
|
- **Directory** — Doit être un chemin valide avec des permissions d'écriture
|
||||||
|
- **Modules** — Avertit des IDs de modules invalides (mais n'échoue pas)
|
||||||
|
- **Tools** — Avertit des IDs d'outils invalides (mais n'échoue pas)
|
||||||
|
- **Custom Content** — Chaque chemin doit contenir un fichier `module.yaml` valide
|
||||||
|
- **Action** — Doit être l'une des suivantes : `install`, `update`, `quick-update`
|
||||||
|
|
||||||
|
Les valeurs invalides entraîneront soit :
|
||||||
|
1. L’affichage d’un message d'erreur suivi d’un exit (pour les options critiques comme le répertoire)
|
||||||
|
2. Un avertissement puis la continuation de l’installation (pour les éléments optionnels comme le contenu personnalisé)
|
||||||
|
3. Un retour aux invites interactives (pour les valeurs requises manquantes)
|
||||||
|
|
||||||
|
:::tip[Bonnes pratiques]
|
||||||
|
- Utilisez des chemins absolus pour `--directory` pour éviter toute ambiguïté
|
||||||
|
- Testez les options localement avant de les utiliser dans des pipelines CI/CD
|
||||||
|
- Combinez avec `-y` pour des installations vraiment sans surveillance
|
||||||
|
- Utilisez `--debug` si vous rencontrez des problèmes lors de l'installation
|
||||||
|
:::
|
||||||
|
|
||||||
|
## Résolution des problèmes
|
||||||
|
|
||||||
|
### L'installation échoue avec "Invalid directory"
|
||||||
|
|
||||||
|
- Le chemin du répertoire doit exister (ou son parent doit exister)
|
||||||
|
- Vous avez besoin des permissions d'écriture
|
||||||
|
- Le chemin doit être absolu ou correctement relatif au répertoire actuel
|
||||||
|
|
||||||
|
### Module non trouvé
|
||||||
|
|
||||||
|
- Vérifiez que l'ID du module est correct
|
||||||
|
- Les modules externes doivent être disponibles dans le registre
|
||||||
|
|
||||||
|
### Chemin de contenu personnalisé invalide
|
||||||
|
|
||||||
|
Assurez-vous que chaque chemin de contenu personnalisé :
|
||||||
|
- Pointe vers un répertoire
|
||||||
|
- Contient un fichier `module.yaml` à la racine
|
||||||
|
- Possède un champ `code` dans `module.yaml`
|
||||||
|
|
||||||
|
:::note[Toujours bloqué ?]
|
||||||
|
Exécutez avec `--debug` pour une sortie détaillée, essayez le mode interactif pour isoler le problème, ou signalez-le à <https://github.com/bmad-code-org/BMAD-METHOD/issues>.
|
||||||
|
:::
|
||||||
|
|
@ -0,0 +1,127 @@
|
||||||
|
---
|
||||||
|
title: "Gérer le contexte du projet"
|
||||||
|
description: Créer et maintenir project-context.md pour guider les agents IA
|
||||||
|
sidebar:
|
||||||
|
order: 8
|
||||||
|
---
|
||||||
|
|
||||||
|
Utilisez le fichier `project-context.md` pour garantir que les agents IA respectent les préférences techniques et les règles d'implémentation de votre projet tout au long des workflows. Pour vous assurer qu'il est toujours disponible, vous pouvez également ajouter la ligne `Le contexte et les conventions importantes du projet se trouvent dans [chemin vers le contexte du projet]/project-context.md` à votre fichier de contexte ou de règles permanentes (comme `AGENTS.md`).
|
||||||
|
|
||||||
|
:::note[Prérequis]
|
||||||
|
- Méthode BMad installée
|
||||||
|
- Connaissance de la pile technologique et des conventions de votre projet
|
||||||
|
:::
|
||||||
|
|
||||||
|
## Quand utiliser cette fonctionnalité
|
||||||
|
|
||||||
|
- Vous avez des préférences techniques fortes avant de commencer l'architecture
|
||||||
|
- Vous avez terminé l'architecture et souhaitez consigner les décisions pour l'implémentation
|
||||||
|
- Vous travaillez sur une base de code existante avec des patterns établis
|
||||||
|
- Vous remarquez que les agents prennent des décisions incohérentes entre les stories
|
||||||
|
|
||||||
|
## Étape 1 : Choisissez votre approche
|
||||||
|
|
||||||
|
**Création manuelle** — Idéal lorsque vous savez exactement quelles règles vous souhaitez documenter
|
||||||
|
|
||||||
|
**Génération après l'architecture** — Idéal pour capturer les décisions prises lors du solutioning
|
||||||
|
|
||||||
|
**Génération pour les projets existants** — Idéal pour découvrir les patterns dans les bases de code existantes
|
||||||
|
|
||||||
|
## Étape 2 : Créez le fichier
|
||||||
|
|
||||||
|
### Option A : Création manuelle
|
||||||
|
|
||||||
|
Créez le fichier à l'emplacement `_bmad-output/project-context.md` :
|
||||||
|
|
||||||
|
```bash
|
||||||
|
mkdir -p _bmad-output
|
||||||
|
touch _bmad-output/project-context.md
|
||||||
|
```
|
||||||
|
|
||||||
|
Ajoutez votre pile technologique et vos règles d'implémentation :
|
||||||
|
|
||||||
|
```markdown
|
||||||
|
---
|
||||||
|
project_name: 'MonProjet'
|
||||||
|
user_name: 'VotreNom'
|
||||||
|
date: '2026-02-15'
|
||||||
|
sections_completed: ['technology_stack', 'critical_rules']
|
||||||
|
---
|
||||||
|
|
||||||
|
# Contexte de Projet pour Agents IA
|
||||||
|
|
||||||
|
## Pile Technologique & Versions
|
||||||
|
|
||||||
|
- Node.js 20.x, TypeScript 5.3, React 18.2
|
||||||
|
- State : Zustand
|
||||||
|
- Tests : Vitest, Playwright
|
||||||
|
- Styles : Tailwind CSS
|
||||||
|
|
||||||
|
## Règles d'Implémentation Critiques
|
||||||
|
|
||||||
|
**TypeScript :**
|
||||||
|
- Mode strict activé, pas de types `any`
|
||||||
|
- Utiliser `interface` pour les API publiques, `type` pour les unions
|
||||||
|
|
||||||
|
**Organisation du Code :**
|
||||||
|
- Composants dans `/src/components/` avec tests co-localisés
|
||||||
|
- Les appels API utilisent le singleton `apiClient` — jamais de fetch direct
|
||||||
|
|
||||||
|
**Tests :**
|
||||||
|
- Tests unitaires axés sur la logique métier
|
||||||
|
- Tests d'intégration utilisent MSW pour le mock API
|
||||||
|
```
|
||||||
|
|
||||||
|
### Option B : Génération après l'architecture
|
||||||
|
|
||||||
|
Exécutez le workflow dans une nouvelle conversation :
|
||||||
|
|
||||||
|
```bash
|
||||||
|
bmad-generate-project-context
|
||||||
|
```
|
||||||
|
|
||||||
|
Le workflow analyse votre document d'architecture et vos fichiers projet pour générer un fichier de contexte qui capture les décisions prises.
|
||||||
|
|
||||||
|
### Option C : Génération pour les projets existants
|
||||||
|
|
||||||
|
Pour les projets existants, exécutez :
|
||||||
|
|
||||||
|
```bash
|
||||||
|
bmad-generate-project-context
|
||||||
|
```
|
||||||
|
|
||||||
|
Le workflow analyse votre base de code pour identifier les conventions, puis génère un fichier de contexte que vous pouvez réviser et affiner.
|
||||||
|
|
||||||
|
## Étape 3 : Vérifiez le contenu
|
||||||
|
|
||||||
|
Révisez le fichier généré et assurez-vous qu'il capture :
|
||||||
|
|
||||||
|
- Les versions correctes des technologies
|
||||||
|
- Vos conventions réelles (pas les bonnes pratiques génériques)
|
||||||
|
- Les règles qui évitent les erreurs courantes
|
||||||
|
- Les patterns spécifiques aux frameworks
|
||||||
|
|
||||||
|
Modifiez manuellement pour ajouter les éléments manquants ou supprimer les inexactitudes.
|
||||||
|
|
||||||
|
## Ce que vous obtenez
|
||||||
|
|
||||||
|
Un fichier `project-context.md` qui :
|
||||||
|
|
||||||
|
- Garantit que tous les agents suivent les mêmes conventions
|
||||||
|
- Évite les décisions incohérentes entre les stories
|
||||||
|
- Capture les décisions d'architecture pour l'implémentation
|
||||||
|
- Sert de référence pour les patterns et règles de votre projet
|
||||||
|
|
||||||
|
## Conseils
|
||||||
|
|
||||||
|
:::tip[Bonnes pratiques]
|
||||||
|
- **Concentrez-vous sur ce qui n'est pas évident** — Documentez les patterns que les agents pourraient manquer (par ex. « Utiliser JSDoc sur chaque classe publique »), et non les pratiques universelles comme « utiliser des noms de variables significatifs ».
|
||||||
|
- **Gardez-le concis** — Ce fichier est chargé par chaque workflow d'implémentation. Les fichiers longs gaspillent le contexte. Excluez le contenu qui ne s'applique qu'à un périmètre restreint ou à des stories spécifiques.
|
||||||
|
- **Mettez à jour si nécessaire** — Modifiez manuellement lorsque les patterns changent, ou régénérez après des changements d'architecture significatifs.
|
||||||
|
- Fonctionne aussi bien pour Quick Dev que pour les projets complets méthode BMad.
|
||||||
|
:::
|
||||||
|
|
||||||
|
## Prochaines étapes
|
||||||
|
|
||||||
|
- [**Explication du contexte projet**](../explanation/project-context.md) — En savoir plus sur son fonctionnement
|
||||||
|
- [**Carte des workflows**](../reference/workflow-map.md) — Voir quels workflows chargent le contexte projet
|
||||||
|
|
@ -0,0 +1,98 @@
|
||||||
|
---
|
||||||
|
title: "Corrections Rapides"
|
||||||
|
description: Comment effectuer des corrections rapides et des modifications ciblées
|
||||||
|
sidebar:
|
||||||
|
order: 5
|
||||||
|
---
|
||||||
|
|
||||||
|
Utilisez **Quick Dev** pour les corrections de bugs, les refactorisations ou les petites modifications ciblées qui ne nécessitent pas la méthode BMad complète.
|
||||||
|
|
||||||
|
## Quand Utiliser Cette Approche
|
||||||
|
|
||||||
|
- Corrections de bugs avec une cause claire et connue
|
||||||
|
- Petites refactorisations (renommage, extraction, restructuration) contenues dans quelques fichiers
|
||||||
|
- Ajustements mineurs de fonctionnalités ou modifications de configuration
|
||||||
|
- Mises à jour de dépendances
|
||||||
|
|
||||||
|
:::note[Prérequis]
|
||||||
|
- Méthode BMad installée (`npx bmad-method install`)
|
||||||
|
- Un IDE IA (Claude Code, Cursor, ou similaire)
|
||||||
|
:::
|
||||||
|
|
||||||
|
## Étapes
|
||||||
|
|
||||||
|
### 1. Démarrer une Nouvelle Conversation
|
||||||
|
|
||||||
|
Ouvrez une **nouvelle conversation** dans votre IDE IA. Réutiliser une session d'un workflow précédent peut causer des conflits de contexte.
|
||||||
|
|
||||||
|
### 2. Spécifiez Votre Intention
|
||||||
|
|
||||||
|
Quick Dev accepte l'intention en forme libre — avant, avec, ou après l'invocation. Exemples :
|
||||||
|
|
||||||
|
```text
|
||||||
|
quick-dev — Corrige le bug de validation de connexion qui permet les mots de passe vides.
|
||||||
|
```
|
||||||
|
|
||||||
|
```text
|
||||||
|
quick-dev — corrige https://github.com/org/repo/issues/42
|
||||||
|
```
|
||||||
|
|
||||||
|
```text
|
||||||
|
quick-dev — implémente _bmad-output/implementation-artifacts/my-intent.md
|
||||||
|
```
|
||||||
|
|
||||||
|
```text
|
||||||
|
Je pense que le problème est dans le middleware d'auth, il ne vérifie pas l'expiration du token.
|
||||||
|
Regardons... oui, src/auth/middleware.ts ligne 47 saute complètement la vérification exp. lance quick-dev
|
||||||
|
```
|
||||||
|
|
||||||
|
```text
|
||||||
|
quick-dev
|
||||||
|
> Que voulez-vous faire ?
|
||||||
|
Refactoriser UserService pour utiliser async/await au lieu des callbacks.
|
||||||
|
```
|
||||||
|
|
||||||
|
Texte brut, chemins de fichiers, URLs d'issues GitHub, liens de trackers de bugs — tout ce que le LLM peut résoudre en une intention concrète.
|
||||||
|
|
||||||
|
### 3. Répondre aux Questions et Approuver
|
||||||
|
|
||||||
|
Quick Dev peut poser des questions de clarification ou présenter une courte spécification demandant votre approbation avant l'implémentation. Répondez à ses questions et approuvez lorsque vous êtes satisfait du plan.
|
||||||
|
|
||||||
|
### 4. Réviser et Pousser
|
||||||
|
|
||||||
|
Quick Dev implémente la modification, révise son propre travail, corrige les problèmes et effectue un commit local. Lorsqu'il a terminé, il ouvre les fichiers affectés dans votre éditeur.
|
||||||
|
|
||||||
|
- Parcourez le diff pour confirmer que la modification correspond à votre intention
|
||||||
|
- Si quelque chose semble incorrect, dites à l'agent ce qu'il faut corriger — il peut itérer dans la même session
|
||||||
|
|
||||||
|
Une fois satisfait, poussez le commit. Quick Dev vous proposera de pousser et de créer une PR pour vous.
|
||||||
|
|
||||||
|
:::caution[Si Quelque Chose Casse]
|
||||||
|
Si une modification poussée cause des problèmes inattendus, utilisez `git revert HEAD` pour annuler proprement le dernier commit. Ensuite, démarrez une nouvelle conversation et exécutez Quick Dev à nouveau pour essayer une approche différente.
|
||||||
|
:::
|
||||||
|
|
||||||
|
## Ce Que Vous Obtenez
|
||||||
|
|
||||||
|
- Fichiers source modifiés avec la correction ou refactorisation appliquée
|
||||||
|
- Tests passants (si votre projet a une suite de tests)
|
||||||
|
- Un commit prêt à pousser avec un message de commit conventionnel
|
||||||
|
|
||||||
|
## Travail Différé
|
||||||
|
|
||||||
|
Quick Dev garde chaque exécution concentrée sur un seul objectif. Si votre demande contient plusieurs objectifs indépendants, ou si la revue remonte des problèmes préexistants non liés à votre modification, Quick Dev les diffère vers un fichier (`deferred-work.md` dans votre répertoire d'artefacts d'implémentation) plutôt que d'essayer de tout régler en même temps.
|
||||||
|
|
||||||
|
Consultez ce fichier après une exécution — c'est votre backlog[^1] de choses sur lesquelles revenir. Chaque élément différé peut être introduit dans une nouvelle exécution Quick Dev ultérieurement.
|
||||||
|
|
||||||
|
## Quand Passer à une Planification Formelle
|
||||||
|
|
||||||
|
Envisagez d'utiliser la méthode BMad complète lorsque :
|
||||||
|
|
||||||
|
- La modification affecte plusieurs systèmes ou nécessite des mises à jour coordonnées dans de nombreux fichiers
|
||||||
|
- Vous n'êtes pas sûr de la portée et avez besoin d'une découverte des exigences d'abord
|
||||||
|
- Vous avez besoin de documentation ou de décisions architecturales enregistrées pour l'équipe
|
||||||
|
|
||||||
|
Voir [Quick Dev](../explanation/quick-dev.md) pour plus d'informations sur la façon dont Quick Dev s'intègre dans la méthode BMad.
|
||||||
|
|
||||||
|
## Glossaire
|
||||||
|
|
||||||
|
[^1]: Backlog : liste priorisée de tâches ou d'éléments de travail à traiter ultérieurement, issue des méthodologies agiles.
|
||||||
|
|
@ -0,0 +1,78 @@
|
||||||
|
---
|
||||||
|
title: "Guide de Division de Documents"
|
||||||
|
description: Diviser les fichiers markdown volumineux en fichiers plus petits et organisés pour une meilleure gestion du contexte
|
||||||
|
sidebar:
|
||||||
|
order: 9
|
||||||
|
---
|
||||||
|
|
||||||
|
Utilisez l'outil `bmad-shard-doc` si vous avez besoin de diviser des fichiers markdown volumineux en fichiers plus petits et organisés pour une meilleure gestion du contexte.
|
||||||
|
|
||||||
|
:::caution[Déprécié]
|
||||||
|
Ceci n'est plus recommandé, et bientôt avec les workflows mis à jour et la plupart des LLM et outils majeurs supportant les sous-processus, cela deviendra inutile.
|
||||||
|
:::
|
||||||
|
|
||||||
|
## Quand l’Utiliser
|
||||||
|
|
||||||
|
Utilisez ceci uniquement si vous remarquez que votre combinaison outil / modèle ne parvient pas à charger et lire tous les documents en entrée lorsque c'est nécessaire.
|
||||||
|
|
||||||
|
## Qu'est-ce que la Division de Documents ?
|
||||||
|
|
||||||
|
La division de documents divise les fichiers markdown volumineux en fichiers plus petits et organisés basés sur les titres de niveau 2 (`## Titre`).
|
||||||
|
|
||||||
|
### Architecture
|
||||||
|
|
||||||
|
```text
|
||||||
|
Avant Division :
|
||||||
|
_bmad-output/planning-artifacts/
|
||||||
|
└── PRD.md (fichier volumineux de 50k tokens)
|
||||||
|
|
||||||
|
Après Division :
|
||||||
|
_bmad-output/planning-artifacts/
|
||||||
|
└── prd/
|
||||||
|
├── index.md # Table des matières avec descriptions
|
||||||
|
├── overview.md # Section 1
|
||||||
|
├── user-requirements.md # Section 2
|
||||||
|
├── technical-requirements.md # Section 3
|
||||||
|
└── ... # Sections supplémentaires
|
||||||
|
```
|
||||||
|
|
||||||
|
## Étapes
|
||||||
|
|
||||||
|
### 1. Exécuter l'Outil Shard-Doc
|
||||||
|
|
||||||
|
```bash
|
||||||
|
/bmad-shard-doc
|
||||||
|
```
|
||||||
|
|
||||||
|
### 2. Suivre le Processus Interactif
|
||||||
|
|
||||||
|
```text
|
||||||
|
Agent : Quel document souhaitez-vous diviser ?
|
||||||
|
Utilisateur : docs/PRD.md
|
||||||
|
|
||||||
|
Agent : Destination par défaut : docs/prd/
|
||||||
|
Accepter la valeur par défaut ? [y/n]
|
||||||
|
Utilisateur : y
|
||||||
|
|
||||||
|
Agent : Division de PRD.md...
|
||||||
|
✓ 12 fichiers de section créés
|
||||||
|
✓ index.md généré
|
||||||
|
✓ Terminé !
|
||||||
|
```
|
||||||
|
|
||||||
|
## Comment Fonctionne la Découverte de Workflow
|
||||||
|
|
||||||
|
Les workflows BMad utilisent un **système de découverte double** :
|
||||||
|
|
||||||
|
1. **Essaye d'abord le document entier** - Rechercher `document-name.md`
|
||||||
|
2. **Vérifie la version divisée** - Rechercher `document-name/index.md`
|
||||||
|
3. **Règle de priorité** - Le document entier a la priorité si les deux existent - supprimez le document entier si vous souhaitez que la version divisée soit utilisée à la place
|
||||||
|
|
||||||
|
## Support des Workflows
|
||||||
|
|
||||||
|
Tous les workflows BMM prennent en charge les deux formats :
|
||||||
|
|
||||||
|
- Documents entiers
|
||||||
|
- Documents divisés
|
||||||
|
- Détection automatique
|
||||||
|
- Transparent pour l'utilisateur
|
||||||
|
|
@ -0,0 +1,106 @@
|
||||||
|
---
|
||||||
|
title: "Comment passer à la v6"
|
||||||
|
description: Migrer de BMad v4 vers v6
|
||||||
|
sidebar:
|
||||||
|
order: 3
|
||||||
|
---
|
||||||
|
|
||||||
|
Utilisez l'installateur BMad pour passer de la v4 à la v6, qui inclut une détection automatique des installations existantes et une assistance à la migration.
|
||||||
|
|
||||||
|
## Quand utiliser ce guide
|
||||||
|
|
||||||
|
- Vous avez BMad v4 installé (dossier `.bmad-method`)
|
||||||
|
- Vous souhaitez migrer vers la nouvelle architecture v6
|
||||||
|
- Vous avez des artefacts de planification existants à préserver
|
||||||
|
|
||||||
|
:::note[Prérequis]
|
||||||
|
- Node.js 20+
|
||||||
|
- Installation BMad v4 existante
|
||||||
|
:::
|
||||||
|
|
||||||
|
## Étapes
|
||||||
|
|
||||||
|
### 1. Lancer l'installateur
|
||||||
|
|
||||||
|
Suivez les [Instructions d'installation](./install-bmad.md).
|
||||||
|
|
||||||
|
### 2. Gérer l'installation existante
|
||||||
|
|
||||||
|
Quand v4 est détecté, vous pouvez :
|
||||||
|
|
||||||
|
- Autoriser l'installateur à sauvegarder et supprimer `.bmad-method`
|
||||||
|
- Quitter et gérer le nettoyage manuellement
|
||||||
|
|
||||||
|
Si vous avez nommé votre dossier de méthode bmad autrement, vous devrez supprimer le dossier vous-même manuellement.
|
||||||
|
|
||||||
|
### 3. Nettoyer les skills IDE
|
||||||
|
|
||||||
|
Supprimez manuellement les commandes/skills IDE v4 existants - par exemple si vous avez Claude Code, recherchez tous les dossiers imbriqués qui commencent par bmad et supprimez-les :
|
||||||
|
|
||||||
|
- `.claude/commands/`
|
||||||
|
|
||||||
|
Les nouveaux skills v6 sont installés dans :
|
||||||
|
|
||||||
|
- `.claude/skills/`
|
||||||
|
|
||||||
|
### 4. Migrer les artefacts de planification
|
||||||
|
|
||||||
|
**Si vous avez des documents de planification (Brief/PRD/UX/Architecture) :**
|
||||||
|
|
||||||
|
Déplacez-les dans `_bmad-output/planning-artifacts/` avec des noms descriptifs :
|
||||||
|
|
||||||
|
- Incluez `PRD` dans le nom de fichier pour les documents PRD[^1]
|
||||||
|
- Incluez `brief`, `architecture`, ou `ux-design` selon le cas
|
||||||
|
- Les documents divisés peuvent être dans des sous-dossiers nommés
|
||||||
|
|
||||||
|
**Si vous êtes en cours de planification :** Envisagez de redémarrer avec les workflows v6. Utilisez vos documents existants comme entrées - les nouveaux workflows de découverte progressive avec recherche web et mode plan IDE produisent de meilleurs résultats.
|
||||||
|
|
||||||
|
### 5. Migrer le développement en cours
|
||||||
|
|
||||||
|
Si vous avez des stories[^3] créées ou implémentées :
|
||||||
|
|
||||||
|
1. Terminez l'installation v6
|
||||||
|
2. Placez `epics.md` ou `epics/epic*.md`[^2] dans `_bmad-output/planning-artifacts/`
|
||||||
|
3. Lancez le workflow `bmad-sprint-planning`[^4]
|
||||||
|
4. Indiquez quels epics/stories sont déjà terminés
|
||||||
|
|
||||||
|
## Ce que vous obtenez
|
||||||
|
|
||||||
|
**Structure unifiée v6 :**
|
||||||
|
|
||||||
|
```text
|
||||||
|
votre-projet/
|
||||||
|
├── _bmad/ # Dossier d'installation unique
|
||||||
|
│ ├── _config/ # Vos personnalisations
|
||||||
|
│ │ └── agents/ # Fichiers de personnalisation des agents
|
||||||
|
│ ├── core/ # Framework core universel
|
||||||
|
│ ├── bmm/ # Module BMad Method
|
||||||
|
│ ├── bmb/ # BMad Builder
|
||||||
|
│ └── cis/ # Creative Intelligence Suite
|
||||||
|
└── _bmad-output/ # Dossier de sortie (était le dossier doc en v4)
|
||||||
|
```
|
||||||
|
|
||||||
|
## Migration des modules
|
||||||
|
|
||||||
|
| Module v4 | Statut v6 |
|
||||||
|
| ----------------------------- | ----------------------------------------- |
|
||||||
|
| `.bmad-2d-phaser-game-dev` | Intégré dans le Module BMGD |
|
||||||
|
| `.bmad-2d-unity-game-dev` | Intégré dans le Module BMGD |
|
||||||
|
| `.bmad-godot-game-dev` | Intégré dans le Module BMGD |
|
||||||
|
| `.bmad-infrastructure-devops` | Déprécié - nouvel agent DevOps bientôt disponible |
|
||||||
|
| `.bmad-creative-writing` | Non adapté - nouveau module v6 bientôt disponible |
|
||||||
|
|
||||||
|
## Changements clés
|
||||||
|
|
||||||
|
| Concept | v4 | v6 |
|
||||||
|
| ------------- | ------------------------------------- | ------------------------------------ |
|
||||||
|
| **Core** | `_bmad-core` était en fait la méthode BMad | `_bmad/core/` est le framework universel |
|
||||||
|
| **Method** | `_bmad-method` | `_bmad/bmm/` |
|
||||||
|
| **Config** | Fichiers modifiés directement | `config.yaml` par module |
|
||||||
|
| **Documents** | Division ou non division requise | Entièrement flexible, scan automatique |
|
||||||
|
|
||||||
|
## Glossaire
|
||||||
|
[^1]: PRD (Product Requirements Document) : document de référence qui décrit les objectifs du produit, les besoins utilisateurs, les fonctionnalités attendues, les contraintes et les critères de succès, afin d'aligner les équipes sur ce qui doit être construit et pourquoi.
|
||||||
|
[^2]: Epic : dans les méthodologies agiles, une grande unité de travail qui peut être décomposée en plusieurs stories. Un epic représente généralement une fonctionnalité majeure ou un ensemble de capacités livrable sur plusieurs sprints.
|
||||||
|
[^3]: Story (User Story) : une description courte et simple d'une fonctionnalité du point de vue de l'utilisateur. Les stories sont des unités de travail suffisamment petites pour être complétées en un sprint.
|
||||||
|
[^4]: Sprint : dans Scrum, une période de temps fixe (généralement 1 à 4 semaines) pendant laquelle l'équipe travaille à livrer un incrément de produit potentiellement libérable.
|
||||||
|
|
@ -0,0 +1,69 @@
|
||||||
|
---
|
||||||
|
title: Bienvenue dans la méthode BMad
|
||||||
|
description: Framework de développement propulsé par l'IA avec des agents spécialisés, des workflows guidés et une planification intelligente
|
||||||
|
---
|
||||||
|
|
||||||
|
La méthode BMad (**B**uild **M**ore **A**rchitect **D**reams) est un module[^1] de développement assisté par l'IA au sein de l'écosystème BMad, conçu pour vous faciliter la création de logiciels par un processus complet, de l'idéation et de la planification jusqu'à l'implémentation agentique. Elle fournit des agents[^2] IA spécialisés, des workflows guidés et une planification intelligente qui s'adapte à la complexité de votre projet, que vous corrigiez un bug ou construisiez une plateforme d'entreprise.
|
||||||
|
|
||||||
|
Si vous êtes à l'aise avec les assistants de codage IA comme Claude, Cursor ou GitHub Copilot, vous êtes prêt à commencer.
|
||||||
|
|
||||||
|
:::note[🚀 La V6 est là et ce n'est que le début !]
|
||||||
|
Architecture par Skills, BMad Builder v1, automatisation Dev Loop, et bien plus encore en préparation. **[Consultez la Feuille de route →](./roadmap)**
|
||||||
|
:::
|
||||||
|
|
||||||
|
## Première visite ? Commencez par un tutoriel
|
||||||
|
|
||||||
|
La façon la plus rapide de comprendre BMad est de l'essayer.
|
||||||
|
|
||||||
|
- **[Premiers pas avec BMad](./tutorials/getting-started.md)** — Installez et comprenez comment fonctionne BMad
|
||||||
|
- **[Carte des workflows](./reference/workflow-map.md)** — Vue d'ensemble visuelle des phases BMM, des workflows et de la gestion du contexte
|
||||||
|
|
||||||
|
:::tip[Envie de plonger directement ?]
|
||||||
|
Installez BMad et utilisez le skill[^3] `bmad-help` — il vous guidera entièrement en fonction de votre projet et de vos modules installés.
|
||||||
|
:::
|
||||||
|
|
||||||
|
## Comment utiliser cette documentation
|
||||||
|
|
||||||
|
Cette documentation est organisée en quatre sections selon ce que vous essayez de faire :
|
||||||
|
|
||||||
|
| Section | Objectif |
|
||||||
|
| ----------------- | ----------------------------------------------------------------------------------------------------------- |
|
||||||
|
| **Tutoriels** | Orientés apprentissage. Guides étape par étape qui vous accompagnent dans la construction de quelque chose. Commencez ici si vous êtes nouveau. |
|
||||||
|
| **Guides pratiques** | Orientés tâches. Guides pratiques pour résoudre des problèmes spécifiques. « Comment personnaliser un agent ? » se trouve ici. |
|
||||||
|
| **Explication** | Orientés compréhension. Explications en profondeur des concepts et de l'architecture. À lire quand vous voulez savoir *pourquoi*. |
|
||||||
|
| **Référence** | Orientés information. Spécifications techniques pour les agents, workflows et configuration. |
|
||||||
|
|
||||||
|
## Étendre et personnaliser
|
||||||
|
|
||||||
|
Vous souhaitez étendre BMad avec vos propres agents, workflows ou modules ? Le **[BMad Builder](https://bmad-builder-docs.bmad-method.org/)** fournit le framework et les outils pour créer des extensions personnalisées, que vous ajoutiez de nouvelles capacités à BMad ou que vous construisiez des modules entièrement nouveaux à partir de zéro.
|
||||||
|
|
||||||
|
## Ce dont vous aurez besoin
|
||||||
|
|
||||||
|
BMad fonctionne avec tout assistant de codage IA qui prend en charge les prompts système personnalisés ou le contexte de projet. Les options populaires incluent :
|
||||||
|
|
||||||
|
- **[Claude Code](https://code.claude.com)** — Outil CLI d'Anthropic (recommandé)
|
||||||
|
- **[Cursor](https://cursor.sh)** — Éditeur de code propulsé par l'IA
|
||||||
|
- **[Codex CLI](https://github.com/openai/codex)** — Agent de codage terminal d'OpenAI
|
||||||
|
|
||||||
|
Vous devriez être à l'aise avec les concepts de base du développement logiciel comme le contrôle de version, la structure de projet et les workflows agiles. Aucune expérience préalable avec les systèmes d'agent de type BMad n'est requise — c'est justement le but de cette documentation.
|
||||||
|
|
||||||
|
## Rejoindre la communauté
|
||||||
|
|
||||||
|
Obtenez de l'aide, partagez ce que vous construisez ou contribuez à BMad :
|
||||||
|
|
||||||
|
- **[Discord](https://discord.gg/gk8jAdXWmj)** — Discutez avec d'autres utilisateurs de BMad, posez des questions, partagez des idées
|
||||||
|
- **[GitHub](https://github.com/bmad-code-org/BMAD-METHOD)** — Code source, issues et contributions
|
||||||
|
- **[YouTube](https://www.youtube.com/@BMadCode)** — Tutoriels vidéo et démonstrations
|
||||||
|
|
||||||
|
## Prochaine étape
|
||||||
|
|
||||||
|
Prêt à vous lancer ? **[Commencez avec BMad](./tutorials/getting-started.md)** et construisez votre premier projet.
|
||||||
|
|
||||||
|
---
|
||||||
|
## Glossaire
|
||||||
|
|
||||||
|
[^1]: **Module** : composant autonome du système BMad qui peut être installé et utilisé indépendamment, offrant des fonctionnalités spécifiques.
|
||||||
|
|
||||||
|
[^2]: **Agent** : assistant IA spécialisé avec une expertise spécifique qui guide les utilisateurs dans les workflows.
|
||||||
|
|
||||||
|
[^3]: **Skill** : capacité ou fonctionnalité invoquable d'un agent pour effectuer une tâche spécifique.
|
||||||
|
|
@ -0,0 +1,58 @@
|
||||||
|
---
|
||||||
|
title: Agents
|
||||||
|
description: Agents BMM par défaut avec leurs identifiants de skill, déclencheurs de menu et workflows principaux (Analyst, Architect, UX Designer, Technical Writer)
|
||||||
|
sidebar:
|
||||||
|
order: 2
|
||||||
|
---
|
||||||
|
|
||||||
|
## Agents par défaut
|
||||||
|
|
||||||
|
Cette page liste les quatre agents BMM (suite Agile) par défaut installés avec la méthode BMad, ainsi que leurs identifiants de skill, déclencheurs de menu et workflows principaux. Chaque agent est invoqué en tant que skill.
|
||||||
|
|
||||||
|
## Notes
|
||||||
|
|
||||||
|
- Chaque agent est disponible en tant que skill, généré par l’installateur. L’identifiant de skill (par exemple, `bmad-analyst`) est utilisé pour invoquer l’agent.
|
||||||
|
- Les déclencheurs sont les codes courts de menu (par exemple, `BP`) et les correspondances approximatives affichés dans chaque menu d’agent.
|
||||||
|
- La génération de tests QA est gérée par le skill de workflow `bmad-qa-generate-e2e-tests`. L’architecte de tests complet (TEA) se trouve dans son propre module.
|
||||||
|
|
||||||
|
| Agent | Identifiant de skill | Déclencheurs | Workflows principaux |
|
||||||
|
|------------------------|----------------------|------------------------------------|----------------------------------------------------------------------------------------------------------------------------------------------------------------|
|
||||||
|
| Analyste (Mary) | `bmad-analyst` | `BP`, `MR`, `DR`, `TR`, `CB`, `DP` | Brainstorming du projet, Recherche marché/domaine/technique, Création du brief[^1], Documentation du projet |
|
||||||
|
| Architecte (Winston) | `bmad-architect` | `CA`, `IR` | Créer l’architecture, Préparation à l’implémentation |
|
||||||
|
| Designer UX (Sally) | `bmad-ux-designer` | `CU` | Création du design UX[^2] |
|
||||||
|
| Rédacteur Technique (Paige) | `bmad-tech-writer` | `DP`, `WD`, `US`, `MG`, `VD`, `EC` | Documentation du projet, Rédaction de documents, Mise à jour des standards, Génération de diagrammes Mermaid, Validation de documents, Explication de concepts |
|
||||||
|
|
||||||
|
## Types de déclencheurs
|
||||||
|
|
||||||
|
Les déclencheurs de menu d'agent utilisent deux types d'invocation différents. Connaître le type utilisé par un déclencheur vous aide à fournir la bonne entrée.
|
||||||
|
|
||||||
|
### Déclencheurs de workflow (aucun argument nécessaire)
|
||||||
|
|
||||||
|
La plupart des déclencheurs chargent un fichier de workflow structuré. Tapez le code du déclencheur et l'agent démarre le workflow, vous demandant de saisir les informations à chaque étape.
|
||||||
|
|
||||||
|
Exemples : `BP` (Brainstorm Project), `CA` (Create Architecture), `CU` (Create UX Design)
|
||||||
|
|
||||||
|
### Déclencheurs conversationnels (arguments requis)
|
||||||
|
|
||||||
|
Certains déclencheurs lancent une conversation libre au lieu d'un workflow structuré. Ils s'attendent à ce que vous décriviez ce dont vous avez besoin à côté du code du déclencheur.
|
||||||
|
|
||||||
|
| Agent | Déclencheur | Ce qu'il faut fournir |
|
||||||
|
| --- | --- | --- |
|
||||||
|
| Rédacteur Technique (Paige) | `WD` | Description du document à rédiger |
|
||||||
|
| Rédacteur Technique (Paige) | `US` | Préférences ou conventions à ajouter aux standards |
|
||||||
|
| Rédacteur Technique (Paige) | `MG` | Description et type de diagramme (séquence, organigramme, etc.) |
|
||||||
|
| Rédacteur Technique (Paige) | `VD` | Document à valider et domaines à examiner |
|
||||||
|
| Rédacteur Technique (Paige) | `EC` | Nom du concept à expliquer |
|
||||||
|
|
||||||
|
**Exemple :**
|
||||||
|
|
||||||
|
```text
|
||||||
|
WD Rédige un guide de déploiement pour notre configuration Docker
|
||||||
|
MG Crée un diagramme de séquence montrant le flux d’authentification
|
||||||
|
EC Explique le fonctionnement du système de modules
|
||||||
|
```
|
||||||
|
|
||||||
|
## Glossaire
|
||||||
|
|
||||||
|
[^1]: Brief : document synthétique qui formalise le contexte, les objectifs, le périmètre et les contraintes d’un projet ou d’une demande, afin d’aligner rapidement les parties prenantes avant le travail détaillé.
|
||||||
|
[^2]: UX (User Experience) : expérience utilisateur, englobant l’ensemble des interactions et perceptions d’un utilisateur face à un produit. Le design UX vise à créer des interfaces intuitives, efficaces et agréables en tenant compte des besoins, comportements et contexte d’utilisation.
|
||||||
|
|
@ -0,0 +1,139 @@
|
||||||
|
---
|
||||||
|
title: Skills
|
||||||
|
description: Référence des skills BMad — ce qu'ils sont, comment ils fonctionnent et où les trouver.
|
||||||
|
sidebar:
|
||||||
|
order: 3
|
||||||
|
---
|
||||||
|
|
||||||
|
Les skills sont des prompts pré-construits qui chargent des agents, exécutent des workflows ou lancent des tâches dans votre IDE. L'installateur BMad les génère à partir de vos modules installés au moment de l'installation. Si vous ajoutez, supprimez ou modifiez des modules ultérieurement, relancez l'installateur pour garder les skills synchronisés (voir [Dépannage](#dépannage)).
|
||||||
|
|
||||||
|
## Skills vs. Déclencheurs du menu Agent
|
||||||
|
|
||||||
|
BMad offre deux façons de démarrer un travail, chacune ayant un usage différent.
|
||||||
|
|
||||||
|
| Mécanisme | Comment l'invoquer | Ce qui se passe |
|
||||||
|
| --- | --- | --- |
|
||||||
|
| **Skill** | Tapez le nom du skill (ex. `bmad-help`) dans votre IDE | Charge directement un agent, exécute un workflow ou lance une tâche |
|
||||||
|
| **Déclencheur du menu agent** | Chargez d'abord un agent, puis tapez un code court (ex. `DS`) | L'agent interprète le code et démarre le workflow correspondant tout en préservant son persona |
|
||||||
|
|
||||||
|
Les déclencheurs du menu agent nécessitent une session agent active. Utilisez les skills lorsque vous savez quel workflow vous voulez. Utilisez les déclencheurs lorsque vous travaillez déjà avec un agent et souhaitez changer de tâche sans quitter la conversation.
|
||||||
|
|
||||||
|
## Comment les skills sont générés
|
||||||
|
|
||||||
|
Lorsque vous exécutez `npx bmad-method install`, l'installateur lit les manifests de chaque module sélectionné et écrit un skill par agent, workflow, tâche et outil. Chaque skill est un répertoire contenant un fichier `SKILL.md` qui indique à l'IA de charger le fichier source correspondant et de suivre ses instructions.
|
||||||
|
|
||||||
|
L'installateur utilise des modèles pour chaque type de skill :
|
||||||
|
|
||||||
|
| Type de skill | Ce que fait le fichier généré |
|
||||||
|
| --- | --- |
|
||||||
|
| **Lanceur d'agent** | Charge le fichier de persona de l'agent, active son menu et reste en caractère |
|
||||||
|
| **Skill de workflow** | Charge la configuration du workflow et suit ses étapes |
|
||||||
|
| **Skill de tâche** | Charge un fichier de tâche autonome et suit ses instructions |
|
||||||
|
| **Skill d'outil** | Charge un fichier d'outil autonome et suit ses instructions |
|
||||||
|
|
||||||
|
:::note[Relancer l'installateur]
|
||||||
|
Si vous ajoutez ou supprimez des modules, relancez l'installateur. Il régénère tous les fichiers de skill pour correspondre à votre sélection actuelle de modules.
|
||||||
|
:::
|
||||||
|
|
||||||
|
## Emplacement des fichiers de skill
|
||||||
|
|
||||||
|
L'installateur écrit les fichiers de skill dans un répertoire spécifique à l'IDE à l'intérieur de votre projet. Le chemin exact dépend de l'IDE que vous avez sélectionné lors de l'installation.
|
||||||
|
|
||||||
|
| IDE / CLI | Répertoire des skills |
|
||||||
|
| --- | --- |
|
||||||
|
| Claude Code | `.claude/skills/` |
|
||||||
|
| Cursor | `.cursor/skills/` |
|
||||||
|
| Windsurf | `.windsurf/skills/` |
|
||||||
|
| Autres IDE | Consultez la sortie de l'installateur pour le chemin cible |
|
||||||
|
|
||||||
|
Chaque skill est un répertoire contenant un fichier `SKILL.md`. Par exemple, une installation Claude Code ressemble à :
|
||||||
|
|
||||||
|
```text
|
||||||
|
.claude/skills/
|
||||||
|
├── bmad-help/
|
||||||
|
│ └── SKILL.md
|
||||||
|
├── bmad-create-prd/
|
||||||
|
│ └── SKILL.md
|
||||||
|
├── bmad-analyst/
|
||||||
|
│ └── SKILL.md
|
||||||
|
└── ...
|
||||||
|
```
|
||||||
|
|
||||||
|
Le nom du répertoire détermine le nom du skill dans votre IDE. Par exemple, le répertoire `bmad-analyst/` enregistre le skill `bmad-analyst`.
|
||||||
|
|
||||||
|
## Comment découvrir vos skills
|
||||||
|
|
||||||
|
Tapez le nom du skill dans votre IDE pour l'invoquer. Certaines plateformes nécessitent d'activer les skills dans les paramètres avant qu'ils n'apparaissent.
|
||||||
|
|
||||||
|
Exécutez `bmad-help` pour obtenir des conseils contextuels sur votre prochaine étape.
|
||||||
|
|
||||||
|
:::tip[Découverte rapide]
|
||||||
|
Les répertoires de skills générés dans votre projet sont la liste de référence. Ouvrez-les dans votre explorateur de fichiers pour voir chaque skill avec sa description.
|
||||||
|
:::
|
||||||
|
|
||||||
|
## Catégories de skills
|
||||||
|
|
||||||
|
### Skills d'agent
|
||||||
|
|
||||||
|
Les skills d'agent chargent une persona[^2] IA spécialisée avec un rôle défini, un style de communication et un menu de workflows. Une fois chargé, l'agent reste en caractère et répond aux déclencheurs du menu.
|
||||||
|
|
||||||
|
| Exemple de skill | Agent | Rôle |
|
||||||
|
| --- | --- | --- |
|
||||||
|
| `bmad-analyst` | Mary (Analyste) | Brainstorming de projets, recherche, création de briefs |
|
||||||
|
| `bmad-architect` | Winston (Architecte) | Conçoit l'architecture système |
|
||||||
|
| `bmad-ux-designer` | Sally (Designer UX) | Crée les designs UX |
|
||||||
|
| `bmad-tech-writer` | Paige (Rédacteur Technique) | Documente les projets, rédige des guides, génère des diagrammes |
|
||||||
|
|
||||||
|
Consultez [Agents](./agents.md) pour la liste complète des agents par défaut et leurs déclencheurs.
|
||||||
|
|
||||||
|
### Skills de workflow
|
||||||
|
|
||||||
|
Les skills de workflow exécutent un processus structuré en plusieurs étapes sans charger d'abord une persona d'agent. Ils chargent une configuration de workflow et suivent ses étapes.
|
||||||
|
|
||||||
|
| Exemple de skill | Objectif |
|
||||||
|
| --- | --- |
|
||||||
|
| `bmad-create-prd` | Créer un PRD[^1] |
|
||||||
|
| `bmad-create-architecture` | Concevoir l'architecture système |
|
||||||
|
| `bmad-create-epics-and-stories` | Créer des epics et des stories |
|
||||||
|
| `bmad-dev-story` | Implémenter une story |
|
||||||
|
| `bmad-code-review` | Effectuer une revue de code |
|
||||||
|
| `bmad-quick-dev` | Flux rapide unifié — clarifier l'intention, planifier, implémenter, réviser, présenter |
|
||||||
|
|
||||||
|
Consultez la [Carte des workflows](./workflow-map.md) pour la référence complète des workflows organisés par phase.
|
||||||
|
|
||||||
|
### Skills de tâche et d'outil
|
||||||
|
|
||||||
|
Les tâches et outils sont des opérations autonomes qui ne nécessitent pas de contexte d'agent ou de workflow.
|
||||||
|
|
||||||
|
**BMad-Help : Votre guide intelligent**
|
||||||
|
|
||||||
|
`bmad-help` est votre interface principale pour découvrir quoi faire ensuite. Il inspecte votre projet, comprend les requêtes en langage naturel et recommande la prochaine étape requise ou optionnelle en fonction de vos modules installés.
|
||||||
|
|
||||||
|
:::note[Exemple]
|
||||||
|
```
|
||||||
|
bmad-help
|
||||||
|
bmad-help J'ai une idée de SaaS et je connais toutes les fonctionnalités. Par où commencer ?
|
||||||
|
bmad-help Quelles sont mes options pour le design UX ?
|
||||||
|
```
|
||||||
|
:::
|
||||||
|
|
||||||
|
**Autres tâches et outils principaux**
|
||||||
|
|
||||||
|
Le module principal inclut 11 outils intégrés — revues, compression, brainstorming, gestion de documents, et plus. Consultez [Outils principaux](./core-tools.md) pour la référence complète.
|
||||||
|
|
||||||
|
## Convention de nommage
|
||||||
|
|
||||||
|
Tous les skills utilisent le préfixe `bmad-` suivi d'un nom descriptif (ex. `bmad-analyst`, `bmad-create-prd`, `bmad-help`). Consultez [Modules](./modules.md) pour les modules disponibles.
|
||||||
|
|
||||||
|
## Dépannage
|
||||||
|
|
||||||
|
**Les skills n'apparaissent pas après l'installation.** Certaines plateformes nécessitent d'activer explicitement les skills dans les paramètres. Consultez la documentation de votre IDE ou demandez à votre assistant IA comment activer les skills. Vous devrez peut-être aussi redémarrer votre IDE ou recharger la fenêtre.
|
||||||
|
|
||||||
|
**Des skills attendus sont manquants.** L'installateur génère uniquement les skills pour les modules que vous avez sélectionnés. Exécutez à nouveau `npx bmad-method install` et vérifiez votre sélection de modules. Vérifiez que les fichiers de skill existent dans le répertoire attendu.
|
||||||
|
|
||||||
|
**Des skills d'un module supprimé apparaissent encore.** L'installateur ne supprime pas automatiquement les anciens fichiers de skill. Supprimez les répertoires obsolètes du répertoire de skills de votre IDE, ou supprimez tout le répertoire de skills et relancez l'installateur pour obtenir un ensemble propre.
|
||||||
|
|
||||||
|
## Glossaire
|
||||||
|
|
||||||
|
[^1]: PRD (Product Requirements Document) : document de référence qui décrit les objectifs du produit, les besoins utilisateurs, les fonctionnalités attendues, les contraintes et les critères de succès, afin d’aligner les équipes sur ce qui doit être construit et pourquoi.
|
||||||
|
[^2]: Persona : dans le contexte de BMad, une persona désigne un agent IA avec un rôle défini, un style de communication et une expertise spécifiques (ex. Mary l'analyste, Winston l'architecte). Chaque persona garde son "caractère" pendant les interactions.
|
||||||
|
|
@ -0,0 +1,298 @@
|
||||||
|
---
|
||||||
|
title: Outils Principaux
|
||||||
|
description: Référence pour toutes les tâches et tous les workflows intégrés disponibles dans chaque installation BMad sans modules supplémentaires.
|
||||||
|
sidebar:
|
||||||
|
order: 2
|
||||||
|
---
|
||||||
|
|
||||||
|
Chaque installation BMad comprend un ensemble de compétences principales qui peuvent être utilisées conjointement avec tout ce que vous faites — des tâches et des workflows autonomes qui fonctionnent dans tous les projets, tous les modules et toutes les phases. Ceux-ci sont toujours disponibles, quels que soient les modules optionnels que vous installez.
|
||||||
|
|
||||||
|
:::tip[Raccourci Rapide]
|
||||||
|
Exécutez n'importe quel outil principal en tapant son nom de compétence (par ex., `bmad-help`) dans votre IDE. Aucune session d'agent requise.
|
||||||
|
:::
|
||||||
|
|
||||||
|
## Vue d'ensemble
|
||||||
|
|
||||||
|
| Outil | Type | Objectif |
|
||||||
|
|-----------------------------------------------------------------------|----------|------------------------------------------------------------------------------|
|
||||||
|
| [`bmad-help`](#bmad-help) | Tâche | Obtenir des conseils contextuels sur la prochaine étape |
|
||||||
|
| [`bmad-brainstorming`](#bmad-brainstorming) | Workflow | Faciliter des sessions de brainstorming interactives |
|
||||||
|
| [`bmad-party-mode`](#bmad-party-mode) | Workflow | Orchestrer des discussions de groupe multi-agents |
|
||||||
|
| [`bmad-distillator`](#bmad-distillator) | Tâche | Compression sans perte optimisée pour LLM de documents |
|
||||||
|
| [`bmad-advanced-elicitation`](#bmad-advanced-elicitation) | Tâche | Pousser la sortie LLM à travers des méthodes de raffinement itératives |
|
||||||
|
| [`bmad-review-adversarial-general`](#bmad-review-adversarial-general) | Tâche | Revue cynique qui trouve ce qui manque et ce qui ne va pas |
|
||||||
|
| [`bmad-review-edge-case-hunter`](#bmad-review-edge-case-hunter) | Tâche | Analyse exhaustive des chemins de branchement pour les cas limites non gérés |
|
||||||
|
| [`bmad-editorial-review-prose`](#bmad-editorial-review-prose) | Tâche | Révision de copie clinique pour la clarté de communication |
|
||||||
|
| [`bmad-editorial-review-structure`](#bmad-editorial-review-structure) | Tâche | Édition structurelle — coupes, fusions et réorganisation |
|
||||||
|
| [`bmad-shard-doc`](#bmad-shard-doc) | Tâche | Diviser les fichiers markdown volumineux en sections organisées |
|
||||||
|
| [`bmad-index-docs`](#bmad-index-docs) | Tâche | Générer ou mettre à jour un index de tous les documents dans un dossier |
|
||||||
|
|
||||||
|
## bmad-help
|
||||||
|
|
||||||
|
**Votre guide intelligent pour la suite.** — Inspecte l'état de votre projet, détecte ce qui a été fait et recommande la prochaine étape requise ou facultative.
|
||||||
|
|
||||||
|
**Utilisez-le quand :**
|
||||||
|
|
||||||
|
- Vous avez terminé un workflow et voulez savoir ce qui suit
|
||||||
|
- Vous êtes nouveau sur BMad et avez besoin d'orientation
|
||||||
|
- Vous êtes bloqué et voulez des conseils contextuels
|
||||||
|
- Vous avez installé de nouveaux modules et voulez voir ce qui est disponible
|
||||||
|
|
||||||
|
**Fonctionnement :**
|
||||||
|
|
||||||
|
1. Analyse votre projet pour les artefacts existants (PRD, architecture, stories, etc.)
|
||||||
|
2. Détecte quels modules sont installés et leurs workflows disponibles
|
||||||
|
3. Recommande les prochaines étapes par ordre de priorité — étapes requises d'abord, puis facultatives
|
||||||
|
4. Présente chaque recommandation avec la commande de compétence et une brève description
|
||||||
|
|
||||||
|
**Entrée :** Requête optionnelle en langage naturel (par ex., `bmad-help J'ai une idée de SaaS, par où commencer ?`)
|
||||||
|
|
||||||
|
**Sortie :** Liste priorisée des prochaines étapes recommandées avec les commandes de compétence
|
||||||
|
|
||||||
|
## bmad-brainstorming
|
||||||
|
|
||||||
|
**Génère des idées diverses à travers des techniques créatives interactives.** — Une session de brainstorming facilitée qui charge des méthodes d'idéation éprouvées depuis une bibliothèque de techniques et vous guide vers plus de 100 idées avant organisation.
|
||||||
|
|
||||||
|
**Utilisez-le quand :**
|
||||||
|
|
||||||
|
- Vous commencez un nouveau projet et devez explorer l’espace problème
|
||||||
|
- Vous êtes bloqué dans la génération d'idées et avez besoin de créativité structurée
|
||||||
|
- Vous voulez utiliser des cadres d'idéation éprouvés (SCAMPER, brainstorming inversé, etc.)
|
||||||
|
|
||||||
|
**Fonctionnement :**
|
||||||
|
|
||||||
|
1. Configure une session de brainstorming avec votre sujet
|
||||||
|
2. Charge les techniques créatives depuis une bibliothèque de méthodes
|
||||||
|
3. Vous guide à travers technique après technique, générant des idées
|
||||||
|
4. Applique un protocole anti-biais — change de domaine créatif toutes les 10 idées pour éviter le regroupement
|
||||||
|
5. Produit un document de session en mode ajout uniquement avec toutes les idées organisées par technique
|
||||||
|
|
||||||
|
**Entrée :** Sujet de brainstorming ou énoncé de problème, fichier de contexte optionnel
|
||||||
|
|
||||||
|
**Sortie :** `brainstorming-session-{date}.md` avec toutes les idées générées
|
||||||
|
|
||||||
|
:::note[Cible de Quantité]
|
||||||
|
La magie se produit dans les idées 50–100. Le workflow encourage la génération de plus de 100 idées avant organisation.
|
||||||
|
:::
|
||||||
|
|
||||||
|
## bmad-party-mode
|
||||||
|
|
||||||
|
**Orchestre des discussions de groupe multi-agents.** — Charge tous les agents BMad installés et facilite une conversation naturelle où chaque agent contribue depuis son expertise et personnalité uniques.
|
||||||
|
|
||||||
|
**Utilisez-le quand :**
|
||||||
|
|
||||||
|
- Vous avez besoin de multiples perspectives d'experts sur une décision
|
||||||
|
- Vous voulez que les agents remettent en question les hypothèses des autres
|
||||||
|
- Vous explorez un sujet complexe qui couvre plusieurs domaines
|
||||||
|
|
||||||
|
**Fonctionnement :**
|
||||||
|
|
||||||
|
1. Charge le manifeste d'agents avec toutes les personnalités d'agents installées
|
||||||
|
2. Analyse votre sujet pour sélectionner les 2–3 agents les plus pertinents
|
||||||
|
3. Les agents prennent des tours pour contribuer, avec des échanges naturels et des désaccords
|
||||||
|
4. Fait rouler la participation des agents pour assurer des perspectives diverses au fil du temps
|
||||||
|
5. Quittez avec `goodbye`, `end party` ou `quit`
|
||||||
|
|
||||||
|
**Entrée :** Sujet de discussion ou question, ainsi que la spécification des personas que vous souhaitez faire participer (optionnel)
|
||||||
|
|
||||||
|
**Sortie :** Conversation multi-agents en temps réel avec des personnalités d'agents maintenues
|
||||||
|
|
||||||
|
## bmad-distillator
|
||||||
|
|
||||||
|
**Compression sans perte optimisée pour LLM de documents sources.** — Produit des distillats denses et efficaces en tokens qui préservent toute l'information pour la consommation par des LLM en aval. Vérifiable par reconstruction aller-retour.
|
||||||
|
|
||||||
|
**Utilisez-le quand :**
|
||||||
|
|
||||||
|
- Un document est trop volumineux pour la fenêtre de contexte d'un LLM
|
||||||
|
- Vous avez besoin de versions économes en tokens de recherches, spécifications ou artefacts de planification
|
||||||
|
- Vous voulez vérifier qu'aucune information n'est perdue pendant la compression
|
||||||
|
- Les agents auront besoin de référencer et de trouver fréquemment des informations dedans
|
||||||
|
|
||||||
|
**Fonctionnement :**
|
||||||
|
|
||||||
|
1. **Analyser** — Lit les documents sources, identifie la densité d'information et la structure
|
||||||
|
2. **Compresser** — Convertit la prose en format dense de liste de points, supprime le formatage décoratif
|
||||||
|
3. **Vérifier** — Vérifie l'exhaustivité pour s'assurer que toute l'information originale est préservée
|
||||||
|
4. **Valider** (optionnel) — Le test de reconstruction aller-retour prouve la compression sans perte
|
||||||
|
|
||||||
|
**Entrée :**
|
||||||
|
|
||||||
|
- `source_documents` (requis) — Chemins de fichiers, chemins de dossiers ou motifs glob
|
||||||
|
- `downstream_consumer` (optionnel) — Ce qui va le consommer (par ex., "création de PRD")
|
||||||
|
- `token_budget` (optionnel) — Taille cible approximative
|
||||||
|
- `--validate` (drapeau) — Exécuter le test de reconstruction aller-retour
|
||||||
|
|
||||||
|
**Sortie :** Fichier(s) markdown distillé(s) avec rapport de ratio de compression (par ex., "3.2:1")
|
||||||
|
|
||||||
|
## bmad-advanced-elicitation
|
||||||
|
|
||||||
|
**Passer la sortie du LLM à travers des méthodes de raffinement itératives.** — Sélectionne depuis une bibliothèque de techniques d'élicitation pour améliorer systématiquement le contenu à travers multiples passages.
|
||||||
|
|
||||||
|
**Utilisez-le quand :**
|
||||||
|
|
||||||
|
- La sortie du LLM semble superficielle ou générique
|
||||||
|
- Vous voulez explorer un sujet depuis de multiples angles analytiques
|
||||||
|
- Vous raffinez un document critique et voulez une réflexion plus approfondie
|
||||||
|
|
||||||
|
**Fonctionnement :**
|
||||||
|
|
||||||
|
1. Charge le registre de méthodes avec plus de 5 techniques d'élicitation
|
||||||
|
2. Sélectionne les 5 méthodes les mieux adaptées selon le type de contenu et la complexité
|
||||||
|
3. Présente un menu interactif — choisissez une méthode, remélangez, ou listez tout
|
||||||
|
4. Applique la méthode sélectionnée pour améliorer le contenu
|
||||||
|
5. Re-présente les options pour l'amélioration itérative jusqu'à ce que vous sélectionniez "Procéder"
|
||||||
|
|
||||||
|
**Entrée :** Section de contenu à améliorer
|
||||||
|
|
||||||
|
**Sortie :** Version améliorée du contenu avec les améliorations appliquées
|
||||||
|
|
||||||
|
## bmad-review-adversarial-general
|
||||||
|
|
||||||
|
**Revue contradictoire qui suppose que des problèmes existent et les recherche.** — Adopte une perspective de réviseur sceptique et blasé avec zéro tolérance pour le travail bâclé. Cherche ce qui manque, pas seulement ce qui ne va pas.
|
||||||
|
|
||||||
|
**Utilisez-le quand :**
|
||||||
|
|
||||||
|
- Vous avez besoin d'assurance qualité avant de finaliser un livrable
|
||||||
|
- Vous voulez tester en conditions réelles une spécification, story ou document
|
||||||
|
- Vous voulez trouver des lacunes de couverture que les revues optimistes manquent
|
||||||
|
|
||||||
|
**Fonctionnement :**
|
||||||
|
|
||||||
|
1. Lit le contenu avec une perspective contradictoire et critique
|
||||||
|
2. Identifie les problèmes à travers l'exhaustivité, la justesse et la qualité
|
||||||
|
3. Recherche spécifiquement ce qui manque — pas seulement ce qui est présent et faux
|
||||||
|
4. Doit trouver un minimum de 10 problèmes ou réanalyse plus profondément
|
||||||
|
|
||||||
|
**Entrée :**
|
||||||
|
|
||||||
|
- `content` (requis) — Diff, spécification, story, document ou tout artefact
|
||||||
|
- `also_consider` (optionnel) — Domaines supplémentaires à garder à l'esprit
|
||||||
|
|
||||||
|
**Sortie :** Liste markdown de plus de 10 constatations avec descriptions
|
||||||
|
|
||||||
|
## bmad-review-edge-case-hunter
|
||||||
|
|
||||||
|
**Parcours tous les chemins de branchement et les conditions limites, ne rapporte que les cas non gérés.** — Méthodologie pure de traçage de chemin[^1] qui dérive mécaniquement les classes de cas limites. Orthogonale à la revue contradictoire — centrée sur la méthode, pas sur l'attitude.
|
||||||
|
|
||||||
|
**À utiliser quand :**
|
||||||
|
|
||||||
|
- Vous souhaitez une couverture exhaustive des cas limites pour le code ou la logique
|
||||||
|
- Vous avez besoin d'un complément à la revue contradictoire (méthodologie différente, résultats différents)
|
||||||
|
- Vous révisez un diff ou une fonction pour des conditions limites
|
||||||
|
|
||||||
|
**Fonctionnement :**
|
||||||
|
|
||||||
|
1. Énumère tous les chemins de branchement dans le contenu
|
||||||
|
2. Dérive mécaniquement les classes de cas limites : else/default manquants, entrées non vérifiées, décalage d’unité, overflow arithmétique, coercition implicite des types, conditions de concurrence, écarts de timeout
|
||||||
|
3. Teste chaque chemin contre les protections existantes
|
||||||
|
4. Ne rapporte que les chemins non gérés — ignore silencieusement les chemins gérés
|
||||||
|
|
||||||
|
**Entrée :**
|
||||||
|
|
||||||
|
- `content` (obligatoire) — Diff, fichier complet ou fonction
|
||||||
|
- `also_consider` (facultatif) — Zones supplémentaires à garder à l’esprit
|
||||||
|
|
||||||
|
**Sortie :** Tableau JSON des résultats, chacun avec `location`, `trigger_condition`, `guard_snippet` et `potential_consequence`
|
||||||
|
|
||||||
|
:::note[Revue Complémentaire]
|
||||||
|
Exécutez à la fois `bmad-review-adversarial-general` et `bmad-review-edge-case-hunter` pour une couverture orthogonale. La revue contradictoire détecte les problèmes de qualité et de complétude ; le chasseur de cas limites détecte les chemins non gérés.
|
||||||
|
:::
|
||||||
|
|
||||||
|
## bmad-editorial-review-prose
|
||||||
|
|
||||||
|
**Relecture éditoriale clinique centrée sur la clarté de communication.** — Analyse le texte pour détecter les problèmes qui nuisent à la compréhension. Applique le Microsoft Writing Style Guide baseline. Préserve la voix de l’auteur.
|
||||||
|
|
||||||
|
**À utiliser quand :**
|
||||||
|
|
||||||
|
- Vous avez rédigé un document et souhaitez polir le style
|
||||||
|
- Vous devez assurer la clarté pour un public spécifique
|
||||||
|
- Vous voulez des corrections de communication sans modifier les choix stylistiques
|
||||||
|
|
||||||
|
**Fonctionnement :**
|
||||||
|
|
||||||
|
1. Lit le contenu en ignorant les blocs de code et le frontmatter
|
||||||
|
2. Identifie les problèmes de communication (pas les préférences de style)
|
||||||
|
3. Déduit les doublons du même problème à différents emplacements
|
||||||
|
4. Produit un tableau de corrections en trois colonnes
|
||||||
|
|
||||||
|
**Entrée :**
|
||||||
|
|
||||||
|
- `content` (obligatoire) — Markdown, texte brut ou XML
|
||||||
|
- `style_guide` (facultatif) — Guide de style spécifique au projet
|
||||||
|
- `reader_type` (facultatif) — `humans` (par défaut) pour clarté/fluide, ou `llm` pour précision/consistance
|
||||||
|
|
||||||
|
**Sortie :** Tableau Markdown en trois colonnes : Texte original | Texte révisé | Modifications
|
||||||
|
|
||||||
|
## bmad-editorial-review-structure
|
||||||
|
|
||||||
|
**Édition structurelle — propose des coupes, fusions, déplacements et condensations.** — Révise l'organisation du document et propose des changements substantiels pour améliorer la clarté et le flux avant la révision de copie.
|
||||||
|
|
||||||
|
**Utilisez-le quand :**
|
||||||
|
|
||||||
|
- Un document a été produit depuis de multiples sous-processus et a besoin de cohérence structurelle
|
||||||
|
- Vous voulez réduire la longueur du document tout en préservant la compréhension
|
||||||
|
- Vous devez identifier les violations de portée ou les informations critiques enfouies
|
||||||
|
|
||||||
|
**Fonctionnement :**
|
||||||
|
|
||||||
|
1. Analyse le document contre 5 modèles de structure (Tutoriel, Référence, Explication, Prompt, Stratégique)
|
||||||
|
2. Identifie les redondances, violations de portée et informations enfouies
|
||||||
|
3. Produit des recommandations priorisées : COUPER, FUSIONNER, DÉPLACER, CONDENSER, QUESTIONNER, PRÉSERVER
|
||||||
|
4. Estime la réduction totale en mots et pourcentage
|
||||||
|
|
||||||
|
**Entrée :**
|
||||||
|
|
||||||
|
- `content` (requis) — Document à réviser
|
||||||
|
- `purpose` (optionnel) — Objectif prévu (par ex., "tutoriel de démarrage rapide")
|
||||||
|
- `target_audience` (optionnel) — Qui lit ceci
|
||||||
|
- `reader_type` (optionnel) — `humans` ou `llm`
|
||||||
|
- `length_target` (optionnel) — Réduction cible (par ex., "30% plus court")
|
||||||
|
|
||||||
|
**Sortie :** Résumé du document, liste de recommandations priorisées et réduction estimée
|
||||||
|
|
||||||
|
## bmad-shard-doc
|
||||||
|
|
||||||
|
**Diviser les fichiers markdown volumineux en fichiers de sections organisés.** — Utilise les en-têtes de niveau 2 comme points de division pour créer un dossier de fichiers de sections autonomes avec un index.
|
||||||
|
|
||||||
|
**Utilisez-le quand :**
|
||||||
|
|
||||||
|
- Un document markdown est devenu trop volumineux pour être géré efficacement (plus de 500 lignes)
|
||||||
|
- Vous voulez diviser un document monolithique en sections navigables
|
||||||
|
- Vous avez besoin de fichiers séparés pour l'édition parallèle ou la gestion de contexte LLM
|
||||||
|
|
||||||
|
**Fonctionnement :**
|
||||||
|
|
||||||
|
1. Valide que le fichier source existe et est markdown
|
||||||
|
2. Divise sur les en-têtes de niveau 2 (`##`) en fichiers de sections numérotées
|
||||||
|
3. Crée un `index.md` avec manifeste de sections et liens
|
||||||
|
4. Vous invite à supprimer, archiver ou conserver l'original
|
||||||
|
|
||||||
|
**Entrée :** Chemin du fichier markdown source, dossier de destination optionnel
|
||||||
|
|
||||||
|
**Sortie :** Dossier avec `index.md` et `01-{section}.md`, `02-{section}.md`, etc.
|
||||||
|
|
||||||
|
## bmad-index-docs
|
||||||
|
|
||||||
|
**Générer ou mettre à jour un index de tous les documents dans un dossier.** — Analyse un répertoire, lit chaque fichier pour comprendre son objectif et produit un `index.md` organisé avec liens et descriptions.
|
||||||
|
|
||||||
|
**Utilisez-le quand :**
|
||||||
|
|
||||||
|
- Vous avez besoin d'un index léger pour un scan LLM rapide des documents disponibles
|
||||||
|
- Un dossier de documentation a grandi et a besoin d'une table des matières organisée
|
||||||
|
- Vous voulez un aperçu auto-généré qui reste à jour
|
||||||
|
|
||||||
|
**Fonctionnement :**
|
||||||
|
|
||||||
|
1. Analyse le répertoire cible pour tous les fichiers non cachés
|
||||||
|
2. Lit chaque fichier pour comprendre son objectif réel
|
||||||
|
3. Groupe les fichiers par type, objectif ou sous-répertoire
|
||||||
|
4. Génère des descriptions concises (3–10 mots chacune)
|
||||||
|
|
||||||
|
**Entrée :** Chemin du dossier cible
|
||||||
|
|
||||||
|
**Sortie :** `index.md` avec listes de fichiers organisées, liens relatifs et brèves descriptions
|
||||||
|
|
||||||
|
## Glossaire
|
||||||
|
|
||||||
|
[^1]: Path-tracing : méthode d'analyse qui suit systématiquement tous les chemins d'exécution possibles dans un programme pour identifier les cas non gérés.
|
||||||
|
|
||||||
|
|
@ -0,0 +1,82 @@
|
||||||
|
---
|
||||||
|
title: Modules Officiels
|
||||||
|
description: Modules additionnels pour créer des agents personnalisés, de l'intelligence créative, du développement de jeux et des tests
|
||||||
|
sidebar:
|
||||||
|
order: 4
|
||||||
|
---
|
||||||
|
|
||||||
|
BMad s'étend via des modules officiels que vous sélectionnez lors de l'installation. Ces modules additionnels fournissent des agents, des workflows et des tâches spécialisés pour des domaines spécifiques, au-delà du noyau intégré et de BMM (suite Agile).
|
||||||
|
|
||||||
|
:::tip[Installer des Modules]
|
||||||
|
Exécutez `npx bmad-method install` et sélectionnez les modules souhaités. L'installateur gère automatiquement le téléchargement, la configuration et l'intégration IDE.
|
||||||
|
:::
|
||||||
|
|
||||||
|
## BMad Builder
|
||||||
|
|
||||||
|
Créez des agents personnalisés, des workflows et des modules spécifiques à un domaine avec une assistance guidée. BMad Builder est le méta-module pour étendre le framework lui-même.
|
||||||
|
|
||||||
|
- **Code :** `bmb`
|
||||||
|
- **npm :** [`bmad-builder`](https://www.npmjs.com/package/bmad-builder)
|
||||||
|
- **GitHub :** [bmad-code-org/bmad-builder](https://github.com/bmad-code-org/bmad-builder)
|
||||||
|
|
||||||
|
**Fournit :**
|
||||||
|
|
||||||
|
- Agent Builder — créez des agents IA spécialisés avec une expertise et un accès aux outils personnalisés
|
||||||
|
- Workflow Builder — concevez des processus structurés avec des étapes et des points de décision
|
||||||
|
- Module Builder — empaquetez des agents et des workflows dans des modules partageables et publiables
|
||||||
|
- Configuration interactive avec support de configuration YAML et publication npm
|
||||||
|
|
||||||
|
## Creative Intelligence Suite
|
||||||
|
|
||||||
|
Outils basés sur l'IA pour la créativité structurée, l'idéation et l'innovation pendant le développement en phase amont. La suite fournit plusieurs agents qui facilitent le brainstorming, le design thinking et la résolution de problèmes en utilisant des cadres éprouvés.
|
||||||
|
|
||||||
|
- **Code :** `cis`
|
||||||
|
- **npm :** [`bmad-creative-intelligence-suite`](https://www.npmjs.com/package/bmad-creative-intelligence-suite)
|
||||||
|
- **GitHub :** [bmad-code-org/bmad-module-creative-intelligence-suite](https://github.com/bmad-code-org/bmad-module-creative-intelligence-suite)
|
||||||
|
|
||||||
|
**Fournit :**
|
||||||
|
|
||||||
|
- Agents Innovation Strategist, Design Thinking Coach et Brainstorming Coach
|
||||||
|
- Problem Solver et Creative Problem Solver pour la pensée systématique et latérale
|
||||||
|
- Storyteller et Presentation Master pour les récits et les présentations
|
||||||
|
- Cadres d'idéation incluant SCAMPER[^1], Brainstorming inversé et reformulation de problèmes
|
||||||
|
|
||||||
|
## Game Dev Studio
|
||||||
|
|
||||||
|
Workflows de développement de jeux structurés adaptés pour Unity, Unreal, Godot et moteurs personnalisés. Supporte le prototypage rapide via Quick Dev et la production à grande échelle avec des sprints propulsés par epics.
|
||||||
|
|
||||||
|
- **Code :** `gds`
|
||||||
|
- **npm :** [`bmad-game-dev-studio`](https://www.npmjs.com/package/bmad-game-dev-studio)
|
||||||
|
- **GitHub :** [bmad-code-org/bmad-module-game-dev-studio](https://github.com/bmad-code-org/bmad-module-game-dev-studio)
|
||||||
|
|
||||||
|
**Fournit :**
|
||||||
|
|
||||||
|
- Workflow de génération de Document de Design de Jeu (GDD[^3])
|
||||||
|
- Mode Quick Dev pour le prototypage rapide
|
||||||
|
- Support de design narratif pour les personnages, dialogues et construction de monde
|
||||||
|
- Couverture de plus de 21 types de jeux avec des conseils d'architecture spécifiques au moteur
|
||||||
|
|
||||||
|
## Test Architect (TEA)
|
||||||
|
|
||||||
|
Stratégie de test de niveau entreprise, conseils d'automatisation et décisions de porte de release via un agent expert et neuf workflows structurés. TEA va bien au-delà du workflow QA intégré avec une priorisation basée sur les risques et une traçabilité des exigences.
|
||||||
|
|
||||||
|
- **Code :** `tea`
|
||||||
|
- **npm :** [`bmad-method-test-architecture-enterprise`](https://www.npmjs.com/package/bmad-method-test-architecture-enterprise)
|
||||||
|
- **GitHub :** [bmad-code-org/bmad-method-test-architecture-enterprise](https://github.com/bmad-code-org/bmad-method-test-architecture-enterprise)
|
||||||
|
|
||||||
|
**Fournit :**
|
||||||
|
|
||||||
|
- Agent Murat (Master Test Architect and Quality Advisor)
|
||||||
|
- Workflows pour la conception de tests, ATDD, l'automatisation, la revue de tests et la traçabilité
|
||||||
|
- Évaluation NFR[^2], configuration CI et scaffolding de framework
|
||||||
|
- Priorisation P0-P3 avec Playwright Utils et intégrations MCP optionnelles
|
||||||
|
|
||||||
|
## Modules Communautaires
|
||||||
|
|
||||||
|
Les modules communautaires et une marketplace de modules sont à venir. Consultez l'[organisation GitHub BMad](https://github.com/bmad-code-org) pour les mises à jour.
|
||||||
|
|
||||||
|
## Glossaire
|
||||||
|
|
||||||
|
[^1]: SCAMPER : acronyme anglais pour une technique de créativité structurée (Substitute, Combine, Adapt, Modify, Put to another use, Eliminate, Reverse) qui permet d'explorer systématiquement les modifications possibles d'un produit ou d'une idée pour générer des innovations.
|
||||||
|
[^2]: NFR (Non-Functional Requirement) : exigence décrivant les contraintes de qualité du système (performance, sécurité, fiabilité, ergonomie) plutôt que ses fonctionnalités.
|
||||||
|
[^3]: GDD (Game Design Document) : document de conception de jeu qui décrit en détail les mécaniques, l'univers, les personnages, les niveaux et tous les aspects du jeu à développer.
|
||||||
|
|
@ -0,0 +1,111 @@
|
||||||
|
---
|
||||||
|
title: Options de Testing
|
||||||
|
description: Comparaison du workflow QA intégré avec le module Test Architect (TEA) pour l'automatisation des tests.
|
||||||
|
sidebar:
|
||||||
|
order: 5
|
||||||
|
---
|
||||||
|
|
||||||
|
BMad propose deux approches de test : un workflow QA[^1] intégré pour une génération rapide de tests et un module Test Architect installable pour une stratégie de test de qualité entreprise.
|
||||||
|
|
||||||
|
## Lequel Choisir ?
|
||||||
|
|
||||||
|
| Facteur | QA Intégré | Module TEA |
|
||||||
|
|-------------------------|----------------------------------------------|---------------------------------------------------------------------|
|
||||||
|
| **Idéal pour** | Projets petits et moyens, couverture rapide | Grands projets, domaines réglementés ou complexes |
|
||||||
|
| **Installation** | Rien à installer — inclus dans BMM | Installer séparément via `npx bmad-method install` |
|
||||||
|
| **Approche** | Générer les tests rapidement, itérer ensuite | Planifier d'abord, puis générer avec traçabilité |
|
||||||
|
| **Types de tests** | Tests API et E2E | API, E2E, ATDD[^2], NFR, et plus |
|
||||||
|
| **Stratégie** | Chemin nominal + cas limites critiques | Priorisation basée sur les risques (P0-P3) |
|
||||||
|
| **Nombre de workflows** | 1 (Automate) | 9 (conception, ATDD, automatisation, revue, traçabilité, et autres) |
|
||||||
|
|
||||||
|
:::tip[Commencez avec le QA Intégré]
|
||||||
|
La plupart des projets devraient commencer avec le workflow QA intégré. Si vous avez ensuite besoin d'une stratégie de test, de murs de qualité ou de traçabilité des exigences, installez TEA en complément.
|
||||||
|
:::
|
||||||
|
|
||||||
|
## Workflow QA Intégré
|
||||||
|
|
||||||
|
Le workflow QA intégré est inclus dans le module BMM (suite Agile). Il génère rapidement des tests fonctionnels en utilisant le framework de test existant de votre projet — aucune configuration ni installation supplémentaire requise.
|
||||||
|
|
||||||
|
**Déclencheur :** `QA` ou `bmad-qa-generate-e2e-tests`
|
||||||
|
|
||||||
|
### Ce que le Workflow QA Fait
|
||||||
|
|
||||||
|
Le workflow QA exécute un processus unique (Automate) qui parcourt cinq étapes :
|
||||||
|
|
||||||
|
1. **Détecte le framework de test** — analyse `package.json` et les fichiers de test existants pour identifier votre framework (Jest, Vitest, Playwright, Cypress, ou tout runner standard). Si aucun n'existe, analyse la pile technologique du projet et en suggère un.
|
||||||
|
2. **Identifie les fonctionnalités** — demande ce qu'il faut tester ou découvre automatiquement les fonctionnalités dans le codebase.
|
||||||
|
3. **Génère les tests API** — couvre les codes de statut, la structure des réponses, le chemin nominal, et 1-2 cas d'erreur.
|
||||||
|
4. **Génére les tests E2E** — couvre les parcours utilisateur avec des localisateurs sémantiques et des assertions sur les résultats visibles.
|
||||||
|
5. **Exécute et vérifie** — lance les tests générés et corrige immédiatement les échecs.
|
||||||
|
|
||||||
|
Le workflow QA produit un résumé de test sauvegardé dans le dossier des artefacts d'implémentation de votre projet.
|
||||||
|
|
||||||
|
### Patterns de Test
|
||||||
|
|
||||||
|
Les tests générés suivent une philosophie "simple et maintenable" :
|
||||||
|
|
||||||
|
- **APIs standard du framework uniquement** — pas d'utilitaires externes ni d'abstractions personnalisées
|
||||||
|
- **Localisateurs sémantiques** pour les tests UI (rôles, labels, texte plutôt que sélecteurs CSS)
|
||||||
|
- **Tests indépendants** sans dépendances d'ordre
|
||||||
|
- **Pas d'attentes ou de sleeps codés en dur**
|
||||||
|
- **Descriptions claires** qui se lisent comme de la documentation fonctionnelle
|
||||||
|
|
||||||
|
:::note[Portée]
|
||||||
|
Le workflow QA génère uniquement des tests. Pour la revue de code et la validation des stories, utilisez plutôt le workflow Code Review (`CR`).
|
||||||
|
:::
|
||||||
|
|
||||||
|
### Quand Utiliser le QA Intégré
|
||||||
|
|
||||||
|
- Couverture de test rapide pour une fonctionnalité nouvelle ou existante
|
||||||
|
- Automatisation de tests accessible aux débutants sans configuration avancée
|
||||||
|
- Patterns de test standards que tout développeur peut lire et maintenir
|
||||||
|
- Projets petits et moyens où une stratégie de test complète n'est pas nécessaire
|
||||||
|
|
||||||
|
## Module Test Architect (TEA)
|
||||||
|
|
||||||
|
TEA est un module autonome qui fournit un agent expert (Murat) et neuf workflows structurés pour des tests de qualité entreprise. Il va au-delà de la génération de tests pour inclure la stratégie de test, la planification basée sur les risques, les murs de qualité et la traçabilité des exigences.
|
||||||
|
|
||||||
|
- **Documentation :** [TEA Module Docs](https://bmad-code-org.github.io/bmad-method-test-architecture-enterprise/)
|
||||||
|
- **Installation :** `npx bmad-method install` et sélectionnez le module TEA
|
||||||
|
- **npm :** [`bmad-method-test-architecture-enterprise`](https://www.npmjs.com/package/bmad-method-test-architecture-enterprise)
|
||||||
|
|
||||||
|
### Ce que TEA Fournit
|
||||||
|
|
||||||
|
| Workflow | Objectif |
|
||||||
|
|-----------------------|--------------------------------------------------------------------------------------|
|
||||||
|
| Test Design | Créer une stratégie de test complète liée aux exigences |
|
||||||
|
| ATDD | Développement piloté par les tests d'acceptation avec critères des parties prenantes |
|
||||||
|
| Automate | Générer des tests avec des patterns et utilitaires avancés |
|
||||||
|
| Test Review | Valider la qualité et la couverture des tests par rapport à la stratégie |
|
||||||
|
| Traceability | Remonter les tests aux exigences pour l'audit et la conformité |
|
||||||
|
| NFR Assessment | Évaluer les exigences non-fonctionnelles (performance, sécurité) |
|
||||||
|
| CI Setup | Configurer l'exécution des tests dans les pipelines d'intégration continue |
|
||||||
|
| Framework Scaffolding | Configurer l'infrastructure de test et la structure du projet |
|
||||||
|
| Release Gate | Prendre des décisions de livraison go/no-go basées sur les données |
|
||||||
|
|
||||||
|
TEA supporte également la priorisation basée sur les risques P0-P3 et des intégrations optionnelles avec Playwright Utils et les outils MCP.
|
||||||
|
|
||||||
|
### Quand Utiliser TEA
|
||||||
|
|
||||||
|
- Projets nécessitant une traçabilité des exigences ou une documentation de conformité
|
||||||
|
- Équipes ayant besoin d'une priorisation des tests basée sur les risques sur plusieurs fonctionnalités
|
||||||
|
- Environnements entreprise avec des murs de qualité formels avant livraison
|
||||||
|
- Domaines complexes où la stratégie de test doit être planifiée avant d'écrire les tests
|
||||||
|
- Projets ayant dépassé l'approche à workflow unique du QA intégré
|
||||||
|
|
||||||
|
## Comment les Tests S'Intègrent dans les Workflows
|
||||||
|
|
||||||
|
Le workflow Automate du QA intégré apparaît dans la Phase 4 (Implémentation) de la carte de workflow méthode BMad. Il est conçu pour s'exécuter **après qu'un epic complet soit terminé** — une fois que toutes les stories d'un epic ont été implémentées et revues. Une séquence typique :
|
||||||
|
|
||||||
|
1. Pour chaque story de l'epic : implémenter avec Dev Story (`DS`), puis valider avec Code Review (`CR`)
|
||||||
|
2. Après la fin de l'epic : générer les tests avec le workflow QA (`QA`) ou le workflow Automate de TEA
|
||||||
|
3. Lancer la rétrospective (`bmad-retrospective`) pour capturer les leçons apprises
|
||||||
|
|
||||||
|
Le workflow QA travaille directement à partir du code source sans charger les documents de planification (PRD, architecture). Les workflows TEA peuvent s'intégrer avec les artefacts de planification en amont pour la traçabilité.
|
||||||
|
|
||||||
|
Pour en savoir plus sur la place des tests dans le processus global, consultez la [Carte des Workflows](./workflow-map.md).
|
||||||
|
|
||||||
|
## Glossaire
|
||||||
|
|
||||||
|
[^1]: QA (Quality Assurance) : assurance qualité, ensemble des processus et activités visant à garantir que le produit logiciel répond aux exigences de qualité définies.
|
||||||
|
[^2]: ATDD (Acceptance Test-Driven Development) : méthode de développement où les tests d'acceptation sont écrits avant le code, en collaboration avec les parties prenantes pour définir les critères de réussite.
|
||||||
|
|
@ -0,0 +1,94 @@
|
||||||
|
---
|
||||||
|
title: "Carte des Workflows"
|
||||||
|
description: Référence visuelle des phases et des résultats des workflows de la méthode BMad
|
||||||
|
sidebar:
|
||||||
|
order: 1
|
||||||
|
---
|
||||||
|
|
||||||
|
La méthode BMad (BMM) est un module de l'écosystème BMad, conçu pour suivre les meilleures pratiques de l'ingénierie du contexte et de la planification. Les agents IA fonctionnent de manière optimale avec un contexte clair et structuré. Le système BMM construit ce contexte progressivement à travers 4 phases distinctes — chaque phase, et plusieurs workflows optionnels au sein de chaque phase, produisent des documents qui alimentent la phase suivante, afin que les agents sachent toujours quoi construire et pourquoi.
|
||||||
|
|
||||||
|
La logique et les concepts proviennent des méthodologies agiles qui ont été utilisées avec succès dans l'industrie comme cadre mental de référence.
|
||||||
|
|
||||||
|
Si à tout moment vous ne savez pas quoi faire, le skill `bmad-help` vous aidera à rester sur la bonne voie ou à savoir quoi faire ensuite. Vous pouvez toujours vous référer à cette page également — mais `bmad-help` est entièrement interactif et beaucoup plus rapide si vous avez déjà installé la méthode BMad. De plus, si vous utilisez différents modules qui ont étendu la méthode BMad ou ajouté d'autres modules complémentaires non extensifs — `bmad-help` évolue pour connaître tout ce qui est disponible et vous donner les meilleurs conseils du moment.
|
||||||
|
|
||||||
|
Note finale importante : Chaque workflow ci-dessous peut être exécuté directement avec l'outil de votre choix via un skill ou en chargeant d'abord un agent et en utilisant l'entrée du menu des agents.
|
||||||
|
|
||||||
|
<iframe src="/workflow-map-diagram-fr.html" title="Diagramme de la carte des workflows de la méthode BMad" width="100%" height="100%" style="border-radius: 8px; border: 1px solid #334155; min-height: 900px;"></iframe>
|
||||||
|
|
||||||
|
<p style="font-size: 0.8rem; text-align: right; margin-top: -0.5rem; margin-bottom: 1rem;">
|
||||||
|
<a href="/workflow-map-diagram-fr.html" target="_blank" rel="noopener noreferrer">Ouvrir le diagramme dans un nouvel onglet ↗</a>
|
||||||
|
</p>
|
||||||
|
|
||||||
|
## Phase 1 : Analyse (Optionnelle)
|
||||||
|
|
||||||
|
Explorez l’espace problème et validez les idées avant de vous engager dans la planification.
|
||||||
|
|
||||||
|
| Workflow | Objectif | Produit |
|
||||||
|
|---------------------------------------------------------------------------|------------------------------------------------------------------------------------------|---------------------------|
|
||||||
|
| `bmad-brainstorming` | Brainstormez des idées de projet avec l'accompagnement guidé d'un coach de brainstorming | `brainstorming-report.md` |
|
||||||
|
| `bmad-domain-research`, `bmad-market-research`, `bmad-technical-research` | Validez les hypothèses de marché, techniques ou de domaine | Rapport de recherches |
|
||||||
|
| `bmad-create-product-brief` | Capturez la vision stratégique | `product-brief.md` |
|
||||||
|
|
||||||
|
## Phase 2 : Planification
|
||||||
|
|
||||||
|
Définissez ce qu'il faut construire et pour qui.
|
||||||
|
|
||||||
|
| Workflow | Objectif | Produit |
|
||||||
|
|-------------------------|---------------------------------------------------------|--------------|
|
||||||
|
| `bmad-create-prd` | Définissez les exigences (FRs/NFRs)[^1] | `PRD.md`[^2] |
|
||||||
|
| `bmad-create-ux-design` | Concevez l'expérience utilisateur (lorsque l'UX compte) | `ux-spec.md` |
|
||||||
|
|
||||||
|
## Phase 3 : Solutioning
|
||||||
|
|
||||||
|
Décidez comment le construire et décomposez le travail en stories.
|
||||||
|
|
||||||
|
| Workflow | Objectif | Produit |
|
||||||
|
|---------------------------------------|---------------------------------------------------|------------------------------|
|
||||||
|
| `bmad-create-architecture` | Rendez les décisions techniques explicites | `architecture.md` avec ADRs[^3] |
|
||||||
|
| `bmad-create-epics-and-stories` | Décomposez les exigences en travail implémentable | Fichiers d'epic avec stories |
|
||||||
|
| `bmad-check-implementation-readiness` | Vérification avant implémentation | Décision Passe/Réserves/Échec |
|
||||||
|
|
||||||
|
## Phase 4 : Implémentation
|
||||||
|
|
||||||
|
Construisez, une story à la fois. Bientôt disponible : automatisation complète de la phase 4 !
|
||||||
|
|
||||||
|
| Workflow | Objectif | Produit |
|
||||||
|
|------------------------|-------------------------------------------------------------------------------------|----------------------------------|
|
||||||
|
| `bmad-sprint-planning` | Initialisez le suivi (une fois par projet pour séquencer le cycle de développement) | `sprint-status.yaml` |
|
||||||
|
| `bmad-create-story` | Préparez la story suivante pour implémentation | `story-[slug].md` |
|
||||||
|
| `bmad-dev-story` | Implémentez la story | Code fonctionnel + tests |
|
||||||
|
| `bmad-code-review` | Validez la qualité de l'implémentation | Approuvé ou changements demandés |
|
||||||
|
| `bmad-correct-course` | Gérez les changements significatifs en cours de sprint | Plan mis à jour ou réorientation |
|
||||||
|
| `bmad-sprint-status` | Suivez la progression du sprint et le statut des stories | Mise à jour du statut du sprint |
|
||||||
|
| `bmad-retrospective` | Revue après complétion d'un epic | Leçons apprises |
|
||||||
|
|
||||||
|
## Quick Dev (Parcours Parallèle)
|
||||||
|
|
||||||
|
Sautez les phases 1-3 pour les travaux de faible envergure et bien compris.
|
||||||
|
|
||||||
|
| Workflow | Objectif | Produit |
|
||||||
|
|------------------|-------------------------------------------------------------------------------------|-----------------------|
|
||||||
|
| `bmad-quick-dev` | Flux rapide unifié — clarifie l'intention, planifie, implémente, révise et présente | `tech-spec.md` + code |
|
||||||
|
|
||||||
|
## Gestion du Contexte
|
||||||
|
|
||||||
|
Chaque document devient le contexte de la phase suivante. Le PRD[^2] indique à l'architecte quelles contraintes sont importantes. L'architecture indique à l'agent de développement quels modèles suivre. Les fichiers de story fournissent un contexte focalisé et complet pour l'implémentation. Sans cette structure, les agents prennent des décisions incohérentes.
|
||||||
|
|
||||||
|
### Contexte du Projet
|
||||||
|
|
||||||
|
:::tip[Recommandé]
|
||||||
|
Créez `project-context.md` pour vous assurer que les agents IA suivent les règles et préférences de votre projet. Ce fichier fonctionne comme une constitution pour votre projet — il guide les décisions d'implémentation à travers tous les workflows. Ce fichier optionnel peut être généré à la fin de la création de l'architecture, ou dans un projet existant il peut également être généré pour capturer ce qui est important de conserver aligné avec les conventions actuelles.
|
||||||
|
:::
|
||||||
|
|
||||||
|
**Comment le créer :**
|
||||||
|
|
||||||
|
- **Manuellement** — Créez `_bmad-output/project-context.md` avec votre pile technologique et vos règles d'implémentation
|
||||||
|
- **Générez-le** — Exécutez `bmad-generate-project-context` pour l'auto-générer à partir de votre architecture ou de votre codebase
|
||||||
|
|
||||||
|
[**En savoir plus sur project-context.md**](../explanation/project-context.md)
|
||||||
|
|
||||||
|
## Glossaire
|
||||||
|
|
||||||
|
[^1]: FR / NFR (Functional / Non-Functional Requirement) : exigences décrivant respectivement **ce que le système doit faire** (fonctionnalités, comportements attendus) et **comment il doit le faire** (contraintes de performance, sécurité, fiabilité, ergonomie, etc.).
|
||||||
|
[^2]: PRD (Product Requirements Document) : document de référence qui décrit les objectifs du produit, les besoins utilisateurs, les fonctionnalités attendues, les contraintes et les critères de succès, afin d’aligner les équipes sur ce qui doit être construit et pourquoi.
|
||||||
|
[^3]: ADR (Architecture Decision Record) : document qui consigne une décision d’architecture, son contexte, les options envisagées, le choix retenu et ses conséquences, afin d’assurer la traçabilité et la compréhension des décisions techniques dans le temps.
|
||||||
|
|
@ -0,0 +1,136 @@
|
||||||
|
---
|
||||||
|
title: Feuille de route
|
||||||
|
description: La suite pour BMad - Fonctionnalités, améliorations et contributions de la communauté
|
||||||
|
---
|
||||||
|
|
||||||
|
# La Méthode BMad : Feuille de route publique
|
||||||
|
|
||||||
|
La Méthode BMad, BMad Method Module (BMM) et BMad Builder (BMB) évoluent. Voici ce sur quoi nous travaillons et ce qui arrive prochainement.
|
||||||
|
|
||||||
|
<div class="roadmap-container">
|
||||||
|
|
||||||
|
<h2 class="roadmap-section-title">En cours</h2>
|
||||||
|
|
||||||
|
<div class="roadmap-future">
|
||||||
|
<div class="roadmap-future-card">
|
||||||
|
<span class="roadmap-emoji">🧩</span>
|
||||||
|
<h4>Architecture par Skills Universelle</h4>
|
||||||
|
<p>Un skill, toutes les plateformes. Écrivez une fois, exécutez partout.</p>
|
||||||
|
</div>
|
||||||
|
<div class="roadmap-future-card">
|
||||||
|
<span class="roadmap-emoji">🏗️</span>
|
||||||
|
<h4>BMad Builder v1</h4>
|
||||||
|
<p>Créez des agents IA et des workflows prêts pour la production avec des évaluations, des équipes et dégradation gracieuse intégrées.</p>
|
||||||
|
</div>
|
||||||
|
<div class="roadmap-future-card">
|
||||||
|
<span class="roadmap-emoji">🧠</span>
|
||||||
|
<h4>Système de Contexte Projet</h4>
|
||||||
|
<p>Votre IA comprend vraiment votre projet. Un contexte adapté au framework qui évolue avec votre base de code.</p>
|
||||||
|
</div>
|
||||||
|
<div class="roadmap-future-card">
|
||||||
|
<span class="roadmap-emoji">📦</span>
|
||||||
|
<h4>Skills Centralisés</h4>
|
||||||
|
<p>Installez une fois, utilisez partout. Partagez des skills entre projets sans l'encombrement de fichiers.</p>
|
||||||
|
</div>
|
||||||
|
<div class="roadmap-future-card">
|
||||||
|
<span class="roadmap-emoji">🔄</span>
|
||||||
|
<h4>Skills Adaptatifs</h4>
|
||||||
|
<p>Des skills qui connaissent vos outils. Des variantes optimisées pour Claude, Codex, Kimi et OpenCode, et bien d'autres encore.</p>
|
||||||
|
</div>
|
||||||
|
<div class="roadmap-future-card">
|
||||||
|
<span class="roadmap-emoji">📝</span>
|
||||||
|
<h4>Blog BMad Team Pros</h4>
|
||||||
|
<p>Guides, articles et perspectives de l'équipe. Lancement prochainement.</p>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<h2 class="roadmap-section-title">Pour bien commencer</h2>
|
||||||
|
|
||||||
|
<div class="roadmap-future">
|
||||||
|
<div class="roadmap-future-card">
|
||||||
|
<span class="roadmap-emoji">🏪</span>
|
||||||
|
<h4>Marketplace de Skills</h4>
|
||||||
|
<p>Découvrez, installez et mettez à jour des skills créés par la communauté. À une commande curl de super-pouvoirs.</p>
|
||||||
|
</div>
|
||||||
|
<div class="roadmap-future-card">
|
||||||
|
<span class="roadmap-emoji">🎨</span>
|
||||||
|
<h4>Personnalisation de Workflow</h4>
|
||||||
|
<p>Faites-en le vôtre. Intégrez Jira, Linear, des sorties personnalisées à votre workflow, vos règles.</p>
|
||||||
|
</div>
|
||||||
|
<div class="roadmap-future-card">
|
||||||
|
<span class="roadmap-emoji">🚀</span>
|
||||||
|
<h4>Optimisation Phases 1-3</h4>
|
||||||
|
<p>Planification éclair avec collecte de contexte par sous-agents. Le mode YOLO rencontre l'excellence guidée.</p>
|
||||||
|
</div>
|
||||||
|
<div class="roadmap-future-card">
|
||||||
|
<span class="roadmap-emoji">🌐</span>
|
||||||
|
<h4>Prêt pour l'Entreprise</h4>
|
||||||
|
<p>SSO, journaux d'audit, espaces de travail d'équipe. Toutes les choses ennuyantes qui feront dire oui aux entreprises.</p>
|
||||||
|
</div>
|
||||||
|
<div class="roadmap-future-card">
|
||||||
|
<span class="roadmap-emoji">💎</span>
|
||||||
|
<h4>Explosion de Modules Communautaires</h4>
|
||||||
|
<p>Divertissement, sécurité, thérapie, jeu de rôle et bien plus encore. Étendez la plateforme de la Méthode BMad.</p>
|
||||||
|
</div>
|
||||||
|
<div class="roadmap-future-card">
|
||||||
|
<span class="roadmap-emoji">⚡</span>
|
||||||
|
<h4>Automatisation de la Boucle de Développement</h4>
|
||||||
|
<p>Pilote automatique optionnel pour le développement. Laissez l'IA gérer le flux tout en maintenant une qualité optimale.</p>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<h2 class="roadmap-section-title">Communauté et Équipe</h2>
|
||||||
|
|
||||||
|
<div class="roadmap-future">
|
||||||
|
<div class="roadmap-future-card">
|
||||||
|
<span class="roadmap-emoji">🎙️</span>
|
||||||
|
<h4>Le Podcast de la Méthode BMad</h4>
|
||||||
|
<p>Conversations sur le développement natif IA. Lancement le 1er mars 2026 !</p>
|
||||||
|
</div>
|
||||||
|
<div class="roadmap-future-card">
|
||||||
|
<span class="roadmap-emoji">🎓</span>
|
||||||
|
<h4>Le Master Class de la Méthode BMad</h4>
|
||||||
|
<p>Passez d'utilisateur à expert. Approfondissements dans chaque phase, chaque workflow, chaque secret.</p>
|
||||||
|
</div>
|
||||||
|
<div class="roadmap-future-card">
|
||||||
|
<span class="roadmap-emoji">🏗️</span>
|
||||||
|
<h4>La Master Class BMad Builder</h4>
|
||||||
|
<p>Construisez vos propres agents. Techniques avancées pour quand vous êtes prêt à créer, pas seulement à utiliser.</p>
|
||||||
|
</div>
|
||||||
|
<div class="roadmap-future-card">
|
||||||
|
<span class="roadmap-emoji">⚡</span>
|
||||||
|
<h4>BMad Prototype First</h4>
|
||||||
|
<p>De l'idée au prototype fonctionnel en une seule session. Créez l'application de vos rêves comme une œuvre d'art.</p>
|
||||||
|
</div>
|
||||||
|
<div class="roadmap-future-card">
|
||||||
|
<span class="roadmap-emoji">🌴</span>
|
||||||
|
<h4>BMad BALM !</h4>
|
||||||
|
<p>Gestion de vie native IA. Tâches, habitudes, objectifs : votre copilote IA pour tout.</p>
|
||||||
|
</div>
|
||||||
|
<div class="roadmap-future-card">
|
||||||
|
<span class="roadmap-emoji">🖥️</span>
|
||||||
|
<h4>UI Officielle</h4>
|
||||||
|
<p>Une belle interface pour tout l'écosystème BMad. La puissance de la CLI, le polissage de l'interface graphique.</p>
|
||||||
|
</div>
|
||||||
|
<div class="roadmap-future-card">
|
||||||
|
<span class="roadmap-emoji">🔒</span>
|
||||||
|
<h4>BMad in a Box</h4>
|
||||||
|
<p>Auto-hébergé, isolé, niveau entreprise. Votre assistant IA, votre infrastructure, votre contrôle.</p>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div style="text-align: center; margin-top: 3rem; padding: 2rem; background: var(--color-bg-card); border-radius: 12px; border: 1px solid var(--color-border);">
|
||||||
|
<h3 style="margin: 0 0 1rem;">Envie de contribuer ?</h3>
|
||||||
|
<p style="color: var(--slate-color-400); margin: 0;">
|
||||||
|
Ce n'est qu'une liste partielle de ce qui est prévu. L'équipe Open Source BMad accueille les contributeurs !{" "}<br />
|
||||||
|
<a href="https://github.com/bmad-code-org/BMAD-METHOD" style="color: var(--color-in-progress);">Rejoignez-nous sur GitHub</a> pour aider à façonner l'avenir du développement propulsé par l'IA.
|
||||||
|
</p>
|
||||||
|
<p style="color: var(--slate-color-400); margin: 1.5rem 0 0;">
|
||||||
|
Vous aimez ce que nous construisons ? Nous apprécions le soutien ponctuel et mensuel sur{" "}<a href="https://buymeacoffee.com/bmad" style="color: var(--color-in-progress);">Buy Me a Coffee</a>.
|
||||||
|
</p>
|
||||||
|
<p style="color: var(--slate-color-400); margin: 1rem 0 0;">
|
||||||
|
Pour les parrainages d'entreprise, les demandes de partenariat, les interventions, les formations ou les demandes médias :{" "}
|
||||||
|
<a href="mailto:contact@bmadcode.com" style="color: var(--color-in-progress);">contact@bmadcode.com</a>
|
||||||
|
</p>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
|
@ -0,0 +1,279 @@
|
||||||
|
---
|
||||||
|
title: "Premiers pas"
|
||||||
|
description: Installer BMad et construire votre premier projet
|
||||||
|
---
|
||||||
|
|
||||||
|
Construisez des logiciels plus rapidement en utilisant des workflows propulsés par l'IA avec des agents spécialisés qui vous guident à travers la planification, l'architecture et l'implémentation.
|
||||||
|
|
||||||
|
## Ce que vous allez apprendre
|
||||||
|
|
||||||
|
- Installer et initialiser la méthode BMad pour un nouveau projet
|
||||||
|
- Utiliser **BMad-Help** — votre guide intelligent qui sait quoi faire ensuite
|
||||||
|
- Choisir la bonne voie de planification selon la taille de votre projet
|
||||||
|
- Progresser à travers les phases, des exigences au code fonctionnel
|
||||||
|
- Utiliser efficacement les agents et les workflows
|
||||||
|
|
||||||
|
:::note[Prérequis]
|
||||||
|
- **Node.js 20+** — Requis pour l'installateur
|
||||||
|
- **Git** — Recommandé pour le contrôle de version
|
||||||
|
- **IDE IA** — Claude Code, Cursor, ou similaire
|
||||||
|
- **Une idée de projet** — Même simple, elle fonctionne pour apprendre
|
||||||
|
:::
|
||||||
|
|
||||||
|
:::tip[Le chemin le plus simple]
|
||||||
|
**Installer** → `npx bmad-method install`
|
||||||
|
**Demander** → `bmad-help que dois-je faire en premier ?`
|
||||||
|
**Construire** → Laissez BMad-Help vous guider workflow par workflow
|
||||||
|
:::
|
||||||
|
|
||||||
|
## Découvrez BMad-Help : votre guide intelligent
|
||||||
|
|
||||||
|
**BMad-Help est le moyen le plus rapide de démarrer avec BMad.** Vous n'avez pas besoin de mémoriser les workflows ou les phases — posez simplement la question, et BMad-Help va :
|
||||||
|
|
||||||
|
- **Inspecter votre projet** pour voir ce qui a déjà été fait
|
||||||
|
- **Vous montrer vos options** en fonction des modules que vous avez installés
|
||||||
|
- **Recommander la prochaine étape** — y compris la première tâche obligatoire
|
||||||
|
- **Répondre aux questions** comme « J'ai une idée de SaaS, par où commencer ? »
|
||||||
|
|
||||||
|
### Comment utiliser BMad-Help
|
||||||
|
|
||||||
|
Exécutez-le dans votre IDE avec IA en invoquant la skill :
|
||||||
|
|
||||||
|
```
|
||||||
|
bmad-help
|
||||||
|
```
|
||||||
|
|
||||||
|
Ou combinez-le avec une question pour obtenir des conseils adaptés au contexte :
|
||||||
|
|
||||||
|
```
|
||||||
|
bmad-help J'ai une idée de produit SaaS, je connais déjà toutes les fonctionnalités que je veux. Par où dois-je commencer ?
|
||||||
|
```
|
||||||
|
|
||||||
|
BMad-Help répondra avec :
|
||||||
|
- Ce qui est recommandé pour votre situation
|
||||||
|
- Quelle est la première tâche obligatoire
|
||||||
|
- À quoi ressemble le reste du processus
|
||||||
|
|
||||||
|
### Il alimente aussi les workflows
|
||||||
|
|
||||||
|
BMad-Help ne se contente pas de répondre aux questions — **il s'exécute automatiquement à la fin de chaque workflow** pour vous dire exactement quoi faire ensuite. Pas de devinettes, pas de recherche dans la documentation — juste des conseils clairs sur le prochain workflow requis.
|
||||||
|
|
||||||
|
:::tip[Commencez ici]
|
||||||
|
Après avoir installé BMad, invoquez immédiatement la skill `bmad-help`. Elle détectera les modules que vous avez installés et vous guidera vers le bon point de départ pour votre projet.
|
||||||
|
:::
|
||||||
|
|
||||||
|
## Comprendre BMad
|
||||||
|
|
||||||
|
BMad vous aide à construire des logiciels grâce à des workflows guidés avec des agents IA spécialisés. Le processus suit quatre phases :
|
||||||
|
|
||||||
|
| Phase | Nom | Ce qui se passe |
|
||||||
|
|-------|----------------|----------------------------------------------------------------|
|
||||||
|
| 1 | Analyse | Brainstorming, recherche, product brief *(optionnel)* |
|
||||||
|
| 2 | Planification | Créer les exigences (PRD[^1] ou spécification technique) |
|
||||||
|
| 3 | Solutioning | Concevoir l'architecture *(BMad Method/Enterprise uniquement)* |
|
||||||
|
| 4 | Implémentation | Construire epic[^2] par epic, story[^3] par story |
|
||||||
|
|
||||||
|
**[Ouvrir la carte des workflows](../reference/workflow-map.md)** pour explorer les phases, les workflows et la gestion du contexte.
|
||||||
|
|
||||||
|
Selon la complexité de votre projet, BMad propose trois voies de planification :
|
||||||
|
|
||||||
|
| Voie | Idéal pour | Documents créés |
|
||||||
|
|------------------|------------------------------------------------------------------------------|----------------------------------------|
|
||||||
|
| **Quick Dev** | Corrections de bugs, fonctionnalités simples, périmètre clair (1-15 stories) | Spécification technique uniquement |
|
||||||
|
| **méthode BMad** | Produits, plateformes, fonctionnalités complexes (10-50+ stories) | PRD + Architecture + UX[^4] |
|
||||||
|
| **Enterprise** | Conformité, systèmes multi-tenant[^5] (30+ stories) | PRD + Architecture + Security + DevOps |
|
||||||
|
|
||||||
|
:::note
|
||||||
|
Les comptes de stories sont indicatifs, pas des définitions. Choisissez votre voie en fonction des besoins de planification, pas du calcul des stories.
|
||||||
|
:::
|
||||||
|
|
||||||
|
## Installation
|
||||||
|
|
||||||
|
Ouvrez un terminal dans le répertoire de votre projet et exécutez :
|
||||||
|
|
||||||
|
```bash
|
||||||
|
npx bmad-method install
|
||||||
|
```
|
||||||
|
|
||||||
|
Si vous souhaitez la version préliminaire la plus récente au lieu du canal de release par défaut, utilisez `npx bmad-method@next install`.
|
||||||
|
|
||||||
|
Lorsque vous êtes invité à sélectionner des modules, choisissez **méthode BMad**.
|
||||||
|
|
||||||
|
L'installateur crée deux dossiers :
|
||||||
|
- `_bmad/` — agents, workflows, tâches et configuration
|
||||||
|
- `_bmad-output/` — vide pour l'instant, mais c'est là que vos artefacts seront enregistrés
|
||||||
|
|
||||||
|
:::tip[Votre prochaine étape]
|
||||||
|
Ouvrez votre IDE avec IA dans le dossier du projet et exécutez :
|
||||||
|
|
||||||
|
```
|
||||||
|
bmad-help
|
||||||
|
```
|
||||||
|
|
||||||
|
BMad-Help détectera ce que vous avez accompli et recommandera exactement quoi faire ensuite. Vous pouvez aussi lui poser des questions comme « Quelles sont mes options ? » ou « J'ai une idée de SaaS, par où devrais-je commencer ? »
|
||||||
|
:::
|
||||||
|
|
||||||
|
:::note[Comment charger les agents et exécuter les workflows]
|
||||||
|
Chaque workflow possède une **skill** que vous invoquez par nom dans votre IDE (par ex., `bmad-create-prd`). Votre outil IA reconnaîtra le nom `bmad-*` et l'exécutera.
|
||||||
|
:::
|
||||||
|
|
||||||
|
:::caution[Nouveaux chats]
|
||||||
|
Démarrez toujours un nouveau chat pour chaque workflow. Cela évite que les limitations de contexte ne causent des problèmes.
|
||||||
|
:::
|
||||||
|
|
||||||
|
## Étape 1 : Créer votre plan
|
||||||
|
|
||||||
|
Travaillez à travers les phases 1-3. **Utilisez de nouveaux chats pour chaque workflow.**
|
||||||
|
|
||||||
|
:::tip[Contexte de projet (Optionnel)]
|
||||||
|
Avant de commencer, envisagez de créer `project-context.md` pour documenter vos préférences techniques et règles d'implémentation. Cela garantit que tous les agents IA suivent vos conventions tout au long du projet.
|
||||||
|
|
||||||
|
Créez-le manuellement dans `_bmad-output/project-context.md` ou générez-le après l'architecture en utilisant `bmad-generate-project-context`. [En savoir plus](../explanation/project-context.md).
|
||||||
|
:::
|
||||||
|
|
||||||
|
### Phase 1 : Analyse (Optionnel)
|
||||||
|
|
||||||
|
Tous les workflows de cette phase sont optionnels :
|
||||||
|
- **brainstorming** (`bmad-brainstorming`) — Idéation guidée
|
||||||
|
- **research** (`bmad-research`) — Recherche marché et technique
|
||||||
|
- **create-product-brief** (`bmad-create-product-brief`) — Document de base recommandé
|
||||||
|
|
||||||
|
### Phase 2 : Planification (Requis)
|
||||||
|
|
||||||
|
**Pour les voies BMad Method et Enterprise :**
|
||||||
|
1. Exécutez `bmad-create-prd` dans un nouveau chat
|
||||||
|
2. Sortie : `PRD.md`
|
||||||
|
|
||||||
|
**Pour la voie Quick Dev :**
|
||||||
|
- Utilisez le workflow `bmad-quick-dev` (`bmad-quick-dev`) à la place du PRD, puis passez à l'implémentation
|
||||||
|
|
||||||
|
:::note[Design UX (Optionnel)]
|
||||||
|
Si votre projet a une interface utilisateur, exécutez le workflow de design UX (`bmad-create-ux-design`) après avoir créé votre PRD.
|
||||||
|
:::
|
||||||
|
|
||||||
|
### Phase 3 : Solutioning (méthode BMad/Enterprise)
|
||||||
|
|
||||||
|
**Créer l'Architecture**
|
||||||
|
1. Exécutez `bmad-create-architecture` dans un nouveau chat
|
||||||
|
2. Sortie : Document d'architecture avec les décisions techniques
|
||||||
|
|
||||||
|
**Créer les Epics et Stories**
|
||||||
|
|
||||||
|
:::tip[Amélioration V6]
|
||||||
|
Les epics et stories sont maintenant créés *après* l'architecture. Cela produit des stories de meilleure qualité car les décisions d'architecture (base de données, patterns d'API, pile technologique) affectent directement la façon dont le travail doit être décomposé.
|
||||||
|
:::
|
||||||
|
|
||||||
|
1. Exécutez `bmad-create-epics-and-stories` dans un nouveau chat
|
||||||
|
2. Le workflow utilise à la fois le PRD et l'Architecture pour créer des stories techniquement éclairées
|
||||||
|
|
||||||
|
**Vérification de préparation à l'implémentation** *(Hautement recommandé)*
|
||||||
|
1. Exécutez `bmad-check-implementation-readiness` dans un nouveau chat
|
||||||
|
2. Valide la cohérence entre tous les documents de planification
|
||||||
|
|
||||||
|
## Étape 2 : Construire votre projet
|
||||||
|
|
||||||
|
Une fois la planification terminée, passez à l'implémentation. **Chaque workflow doit s'exécuter dans un nouveau chat.**
|
||||||
|
|
||||||
|
### Initialiser la planification de sprint
|
||||||
|
|
||||||
|
Exécutez `bmad-sprint-planning` dans un nouveau chat. Cela crée `sprint-status.yaml` pour suivre tous les epics et stories.
|
||||||
|
|
||||||
|
### Le cycle de construction
|
||||||
|
|
||||||
|
Pour chaque story, répétez ce cycle avec de nouveaux chats :
|
||||||
|
|
||||||
|
| Étape | Workflow | Commande | Objectif |
|
||||||
|
| ----- | --------------------- | --------------------- | ----------------------------------- |
|
||||||
|
| 1 | `bmad-create-story` | `bmad-create-story` | Créer le fichier story depuis l'epic |
|
||||||
|
| 2 | `bmad-dev-story` | `bmad-dev-story` | Implémenter la story |
|
||||||
|
| 3 | `bmad-code-review` | `bmad-code-review` | Validation de qualité *(recommandé)* |
|
||||||
|
|
||||||
|
Après avoir terminé toutes les stories d'un epic, exécutez `bmad-retrospective` dans un nouveau chat.
|
||||||
|
|
||||||
|
## Ce que vous avez accompli
|
||||||
|
|
||||||
|
Vous avez appris les fondamentaux de la construction avec BMad :
|
||||||
|
|
||||||
|
- Installé BMad et configuré pour votre IDE
|
||||||
|
- Initialisé un projet avec votre voie de planification choisie
|
||||||
|
- Créé des documents de planification (PRD, Architecture, Epics & Stories)
|
||||||
|
- Compris le cycle de construction pour l'implémentation
|
||||||
|
|
||||||
|
Votre projet contient maintenant :
|
||||||
|
|
||||||
|
```text
|
||||||
|
your-project/
|
||||||
|
├── _bmad/ # Configuration BMad
|
||||||
|
├── _bmad-output/
|
||||||
|
│ ├── planning-artifacts/
|
||||||
|
│ │ ├── PRD.md # Votre document d'exigences
|
||||||
|
│ │ ├── architecture.md # Décisions techniques
|
||||||
|
│ │ └── epics/ # Fichiers epic et story
|
||||||
|
│ ├── implementation-artifacts/
|
||||||
|
│ │ └── sprint-status.yaml # Suivi de sprint
|
||||||
|
│ └── project-context.md # Règles d'implémentation (optionnel)
|
||||||
|
└── ...
|
||||||
|
```
|
||||||
|
|
||||||
|
## Référence rapide
|
||||||
|
|
||||||
|
| Workflow | Commande | Objectif |
|
||||||
|
| ------------------------------------- | ------------------------------------------- | ------------------------------------------------ |
|
||||||
|
| **`bmad-help`** ⭐ | `bmad-help` | **Votre guide intelligent — posez n'importe quelle question !** |
|
||||||
|
| `bmad-create-prd` | `bmad-create-prd` | Créer le document d'exigences produit |
|
||||||
|
| `bmad-create-architecture` | `bmad-create-architecture` | Créer le document d'architecture |
|
||||||
|
| `bmad-generate-project-context` | `bmad-generate-project-context` | Créer le fichier de contexte projet |
|
||||||
|
| `bmad-create-epics-and-stories` | `bmad-create-epics-and-stories` | Décomposer le PRD en epics |
|
||||||
|
| `bmad-check-implementation-readiness` | `bmad-check-implementation-readiness` | Valider la cohérence de planification |
|
||||||
|
| `bmad-sprint-planning` | `bmad-sprint-planning` | Initialiser le suivi de sprint |
|
||||||
|
| `bmad-create-story` | `bmad-create-story` | Créer un fichier story |
|
||||||
|
| `bmad-dev-story` | `bmad-dev-story` | Implémenter une story |
|
||||||
|
| `bmad-code-review` | `bmad-code-review` | Revoir le code implémenté |
|
||||||
|
|
||||||
|
## Questions fréquentes
|
||||||
|
|
||||||
|
**Ai-je toujours besoin d'une architecture ?**
|
||||||
|
Uniquement pour les voies méthode BMad et Enterprise. Quick Dev passe directement de la spécification technique (tech-spec) à l'implémentation.
|
||||||
|
|
||||||
|
**Puis-je modifier mon plan plus tard ?**
|
||||||
|
Oui. Utilisez `bmad-correct-course` pour gérer les changements de périmètre.
|
||||||
|
|
||||||
|
**Et si je veux d'abord faire du brainstorming ?**
|
||||||
|
Invoquez l'agent Analyst (`bmad-analyst`) et exécutez `bmad-brainstorming` (`bmad-brainstorming`) avant de commencer votre PRD.
|
||||||
|
|
||||||
|
**Dois-je suivre un ordre strict ?**
|
||||||
|
Pas strictement. Une fois que vous maîtrisez le flux, vous pouvez exécuter les workflows directement en utilisant la référence rapide ci-dessus.
|
||||||
|
|
||||||
|
## Obtenir de l'aide
|
||||||
|
|
||||||
|
:::tip[Premier arrêt : BMad-Help]
|
||||||
|
**Invoquez `bmad-help` à tout moment** — c'est le moyen le plus rapide de se débloquer. Posez n'importe quelle question :
|
||||||
|
- « Que dois-je faire après l'installation ? »
|
||||||
|
- « Je suis bloqué sur le workflow X »
|
||||||
|
- « Quelles sont mes options pour Y ? »
|
||||||
|
- « Montre-moi ce qui a été fait jusqu'ici »
|
||||||
|
|
||||||
|
BMad-Help inspecte votre projet, détecte ce que vous avez accompli et vous dit exactement quoi faire ensuite.
|
||||||
|
:::
|
||||||
|
|
||||||
|
- **Pendant les workflows** — Les agents vous guident avec des questions et des explications
|
||||||
|
- **Communauté** — [Discord](https://discord.gg/gk8jAdXWmj) (#bmad-method-help, #report-bugs-and-issues)
|
||||||
|
|
||||||
|
## Points clés à retenir
|
||||||
|
|
||||||
|
:::tip[Retenez ceci]
|
||||||
|
- **Commencez par `bmad-help`** — Votre guide intelligent qui connaît votre projet et vos options
|
||||||
|
- **Utilisez toujours de nouveaux chats** — Démarrez un nouveau chat pour chaque workflow
|
||||||
|
- **La voie compte** — Quick Dev utilise `bmad-quick-dev` ; La méthode BMad/Enterprise nécessitent PRD et architecture
|
||||||
|
- **BMad-Help s'exécute automatiquement** — Chaque workflow se termine par des conseils sur la prochaine étape
|
||||||
|
:::
|
||||||
|
|
||||||
|
Prêt à commencer ? Installez BMad, invoquez `bmad-help`, et laissez votre guide intelligent vous montrer le chemin.
|
||||||
|
|
||||||
|
## Glossaire
|
||||||
|
|
||||||
|
[^1]: PRD (Product Requirements Document) : document de référence qui décrit les objectifs du produit, les besoins utilisateurs, les fonctionnalités attendues, les contraintes et les critères de succès, afin d'aligner les équipes sur ce qui doit être construit et pourquoi.
|
||||||
|
[^2]: Epic : grand ensemble de fonctionnalités ou de travaux qui peut être décomposé en plusieurs user stories.
|
||||||
|
[^3]: Story (User Story) : description courte et simple d'une fonctionnalité du point de vue de l'utilisateur ou du client. Elle représente une unité de travail implémentable en un court délai.
|
||||||
|
[^4]: UX (User Experience) : expérience utilisateur, englobant l'ensemble des interactions et perceptions d'un utilisateur face à un produit. Le design UX vise à créer des interfaces intuitives, efficaces et agréables en tenant compte des besoins, comportements et contexte d'utilisation.
|
||||||
|
[^5]: Multi-tenant : architecture logicielle où une seule instance de l'application sert plusieurs clients (tenants) tout en maintenant leurs données isolées et sécurisées les unes des autres.
|
||||||
|
|
@ -128,7 +128,7 @@ prompts:
|
||||||
|
|
||||||
### 3. Apply Your Changes
|
### 3. Apply Your Changes
|
||||||
|
|
||||||
After editing, recompile the agent to apply changes:
|
After editing, reinstall to apply changes:
|
||||||
|
|
||||||
```bash
|
```bash
|
||||||
npx bmad-method install
|
npx bmad-method install
|
||||||
|
|
@ -138,17 +138,16 @@ The installer detects the existing installation and offers these options:
|
||||||
|
|
||||||
| Option | What It Does |
|
| Option | What It Does |
|
||||||
| ---------------------------- | ------------------------------------------------------------------- |
|
| ---------------------------- | ------------------------------------------------------------------- |
|
||||||
| **Quick Update** | Updates all modules to the latest version and recompiles all agents |
|
| **Quick Update** | Updates all modules to the latest version and applies customizations |
|
||||||
| **Recompile Agents** | Applies customizations only, without updating module files |
|
|
||||||
| **Modify BMad Installation** | Full installation flow for adding or removing modules |
|
| **Modify BMad Installation** | Full installation flow for adding or removing modules |
|
||||||
|
|
||||||
For customization-only changes, **Recompile Agents** is the fastest option.
|
For customization-only changes, **Quick Update** is the fastest option.
|
||||||
|
|
||||||
## Troubleshooting
|
## Troubleshooting
|
||||||
|
|
||||||
**Changes not appearing?**
|
**Changes not appearing?**
|
||||||
|
|
||||||
- Run `npx bmad-method install` and select **Recompile Agents** to apply changes
|
- Run `npx bmad-method install` and select **Quick Update** to apply changes
|
||||||
- Check that your YAML syntax is valid (indentation matters)
|
- Check that your YAML syntax is valid (indentation matters)
|
||||||
- Verify you edited the correct `.customize.yaml` file for the agent
|
- Verify you edited the correct `.customize.yaml` file for the agent
|
||||||
|
|
||||||
|
|
@ -161,7 +160,7 @@ For customization-only changes, **Recompile Agents** is the fastest option.
|
||||||
**Need to reset an agent?**
|
**Need to reset an agent?**
|
||||||
|
|
||||||
- Clear or delete the agent's `.customize.yaml` file
|
- Clear or delete the agent's `.customize.yaml` file
|
||||||
- Run `npx bmad-method install` and select **Recompile Agents** to restore defaults
|
- Run `npx bmad-method install` and select **Quick Update** to restore defaults
|
||||||
|
|
||||||
## Workflow Customization
|
## Workflow Customization
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -81,7 +81,7 @@ You have two primary options depending on the scope of changes:
|
||||||
|
|
||||||
| Scope | Recommended Approach |
|
| Scope | Recommended Approach |
|
||||||
| ------------------------------ | ----------------------------------------------------------------------------------------------------------------------------- |
|
| ------------------------------ | ----------------------------------------------------------------------------------------------------------------------------- |
|
||||||
| **Small updates or additions** | Use `bmad-quick-flow-solo-dev` to create a tech-spec and implement the change. The full four-phase BMad Method is likely overkill. |
|
| **Small updates or additions** | Run `bmad-quick-dev` to clarify intent, plan, implement, and review in a single workflow. The full four-phase BMad Method is likely overkill. |
|
||||||
| **Major changes or additions** | Start with the BMad Method, applying as much or as little rigor as needed. |
|
| **Major changes or additions** | Start with the BMad Method, applying as much or as little rigor as needed. |
|
||||||
|
|
||||||
### During PRD Creation
|
### During PRD Creation
|
||||||
|
|
|
||||||
|
|
@ -7,7 +7,7 @@ sidebar:
|
||||||
|
|
||||||
## Start Here: BMad-Help
|
## Start Here: BMad-Help
|
||||||
|
|
||||||
**The fastest way to get answers about BMad is `/bmad-help`.** This intelligent guide will answer upwards of 80% of all questions and is available to you directly in your IDE as you work.
|
**The fastest way to get answers about BMad is the `bmad-help` skill.** This intelligent guide will answer upwards of 80% of all questions and is available to you directly in your IDE as you work.
|
||||||
|
|
||||||
BMad-Help is more than a lookup tool — it:
|
BMad-Help is more than a lookup tool — it:
|
||||||
- **Inspects your project** to see what's already been completed
|
- **Inspects your project** to see what's already been completed
|
||||||
|
|
@ -18,19 +18,23 @@ BMad-Help is more than a lookup tool — it:
|
||||||
|
|
||||||
### How to Use BMad-Help
|
### How to Use BMad-Help
|
||||||
|
|
||||||
Run it with just the skill name:
|
Call it by name in your AI session:
|
||||||
|
|
||||||
```
|
```
|
||||||
/bmad-help
|
bmad-help
|
||||||
```
|
```
|
||||||
|
|
||||||
Or combine it with a natural language query:
|
:::tip
|
||||||
|
You can also use `/bmad-help` or `$bmad-help` depending on your platform, but just `bmad-help` should work everywhere.
|
||||||
|
:::
|
||||||
|
|
||||||
|
Combine it with a natural language query:
|
||||||
|
|
||||||
```
|
```
|
||||||
/bmad-help I have a SaaS idea and know all the features. Where do I start?
|
bmad-help I have a SaaS idea and know all the features. Where do I start?
|
||||||
/bmad-help What are my options for UX design?
|
bmad-help What are my options for UX design?
|
||||||
/bmad-help I'm stuck on the PRD workflow
|
bmad-help I'm stuck on the PRD workflow
|
||||||
/bmad-help Show me what's been done so far
|
bmad-help Show me what's been done so far
|
||||||
```
|
```
|
||||||
|
|
||||||
BMad-Help responds with:
|
BMad-Help responds with:
|
||||||
|
|
@ -38,8 +42,6 @@ BMad-Help responds with:
|
||||||
- What the first required task is
|
- What the first required task is
|
||||||
- What the rest of the process looks like
|
- What the rest of the process looks like
|
||||||
|
|
||||||
---
|
|
||||||
|
|
||||||
## When to Use This Guide
|
## When to Use This Guide
|
||||||
|
|
||||||
Use this section when:
|
Use this section when:
|
||||||
|
|
@ -81,7 +83,7 @@ https://bmad-code-org.github.io/BMAD-METHOD/llms-full.txt
|
||||||
:::note[Example]
|
:::note[Example]
|
||||||
**Q:** "Tell me the fastest way to build something with BMad"
|
**Q:** "Tell me the fastest way to build something with BMad"
|
||||||
|
|
||||||
**A:** Use Quick Flow: Run `bmad-quick-spec` to write a technical specification, then `bmad-quick-dev` to implement it—skipping the full planning phases.
|
**A:** Use Quick Flow: Run `bmad-quick-dev` — it clarifies your intent, plans, implements, reviews, and presents results in a single workflow, skipping the full planning phases.
|
||||||
:::
|
:::
|
||||||
|
|
||||||
## What You Get
|
## What You Get
|
||||||
|
|
|
||||||
|
|
@ -29,6 +29,15 @@ If you want to use a non interactive installer and provide all install options o
|
||||||
npx bmad-method install
|
npx bmad-method install
|
||||||
```
|
```
|
||||||
|
|
||||||
|
:::tip[Want the newest prerelease build?]
|
||||||
|
Use the `next` dist-tag:
|
||||||
|
```bash
|
||||||
|
npx bmad-method@next install
|
||||||
|
```
|
||||||
|
|
||||||
|
This gets you newer changes earlier, with a higher chance of churn than the default install.
|
||||||
|
:::
|
||||||
|
|
||||||
:::tip[Bleeding edge]
|
:::tip[Bleeding edge]
|
||||||
To install the latest from the main branch (may be unstable):
|
To install the latest from the main branch (may be unstable):
|
||||||
```bash
|
```bash
|
||||||
|
|
|
||||||
|
|
@ -28,7 +28,7 @@ Requires [Node.js](https://nodejs.org) v20+ and `npx` (included with npm).
|
||||||
| `--modules <modules>` | Comma-separated module IDs | `--modules bmm,bmb` |
|
| `--modules <modules>` | Comma-separated module IDs | `--modules bmm,bmb` |
|
||||||
| `--tools <tools>` | Comma-separated tool/IDE IDs (use `none` to skip) | `--tools claude-code,cursor` or `--tools none` |
|
| `--tools <tools>` | Comma-separated tool/IDE IDs (use `none` to skip) | `--tools claude-code,cursor` or `--tools none` |
|
||||||
| `--custom-content <paths>` | Comma-separated paths to custom modules | `--custom-content ~/my-module,~/another-module` |
|
| `--custom-content <paths>` | Comma-separated paths to custom modules | `--custom-content ~/my-module,~/another-module` |
|
||||||
| `--action <type>` | Action for existing installations: `install` (default), `update`, `quick-update`, or `compile-agents` | `--action quick-update` |
|
| `--action <type>` | Action for existing installations: `install` (default), `update`, or `quick-update` | `--action quick-update` |
|
||||||
|
|
||||||
### Core Configuration
|
### Core Configuration
|
||||||
|
|
||||||
|
|
@ -121,7 +121,7 @@ npx bmad-method install \
|
||||||
## What You Get
|
## What You Get
|
||||||
|
|
||||||
- A fully configured `_bmad/` directory in your project
|
- A fully configured `_bmad/` directory in your project
|
||||||
- Compiled agents and workflows for your selected modules and tools
|
- Agents and workflows configured for your selected modules and tools
|
||||||
- A `_bmad-output/` folder for generated artifacts
|
- A `_bmad-output/` folder for generated artifacts
|
||||||
|
|
||||||
## Validation and Error Handling
|
## Validation and Error Handling
|
||||||
|
|
@ -132,7 +132,7 @@ BMad validates all provided flags:
|
||||||
- **Modules** — Warns about invalid module IDs (but won't fail)
|
- **Modules** — Warns about invalid module IDs (but won't fail)
|
||||||
- **Tools** — Warns about invalid tool IDs (but won't fail)
|
- **Tools** — Warns about invalid tool IDs (but won't fail)
|
||||||
- **Custom Content** — Each path must contain a valid `module.yaml` file
|
- **Custom Content** — Each path must contain a valid `module.yaml` file
|
||||||
- **Action** — Must be one of: `install`, `update`, `quick-update`, `compile-agents`
|
- **Action** — Must be one of: `install`, `update`, `quick-update`
|
||||||
|
|
||||||
Invalid values will either:
|
Invalid values will either:
|
||||||
1. Show an error and exit (for critical options like directory)
|
1. Show an error and exit (for critical options like directory)
|
||||||
|
|
|
||||||
|
|
@ -2,10 +2,10 @@
|
||||||
title: "Manage Project Context"
|
title: "Manage Project Context"
|
||||||
description: Create and maintain project-context.md to guide AI agents
|
description: Create and maintain project-context.md to guide AI agents
|
||||||
sidebar:
|
sidebar:
|
||||||
order: 7
|
order: 8
|
||||||
---
|
---
|
||||||
|
|
||||||
Use the `project-context.md` file to ensure AI agents follow your project's technical preferences and implementation rules throughout all workflows.
|
Use the `project-context.md` file to ensure AI agents follow your project's technical preferences and implementation rules throughout all workflows. To make sure this is always available, you can also add the line `Important project context and conventions are located in [path to project context]/project-context.md` to your tools context or always rules file (such as `AGENTS.md`)
|
||||||
|
|
||||||
:::note[Prerequisites]
|
:::note[Prerequisites]
|
||||||
- BMad Method installed
|
- BMad Method installed
|
||||||
|
|
@ -114,20 +114,11 @@ A `project-context.md` file that:
|
||||||
|
|
||||||
## Tips
|
## Tips
|
||||||
|
|
||||||
:::tip[Focus on the Unobvious]
|
:::tip[Best Practices]
|
||||||
Document patterns agents might miss such as "Use JSDoc style comments on every public class, function and variable", not universal practices like "use meaningful variable names" which LLMs know at this point.
|
- **Focus on the unobvious** — Document patterns agents might miss (e.g., "Use JSDoc on every public class"), not universal practices like "use meaningful variable names."
|
||||||
:::
|
- **Keep it lean** — This file is loaded by every implementation workflow. Long files waste context. Exclude content that only applies to narrow scope or specific stories.
|
||||||
|
- **Update as needed** — Edit manually when patterns change, or re-generate after significant architecture changes.
|
||||||
:::tip[Keep It Lean]
|
- Works for Quick Flow and full BMad Method projects alike.
|
||||||
This file is loaded by every implementation workflow. Long files waste context. Do not include content that only applies to narrow scope or specific stories or features.
|
|
||||||
:::
|
|
||||||
|
|
||||||
:::tip[Update as Needed]
|
|
||||||
Edit manually when patterns change, or re-generate after significant architecture changes.
|
|
||||||
:::
|
|
||||||
|
|
||||||
:::tip[Works for All Project Types]
|
|
||||||
Just as useful for Quick Flow as for full BMad Method projects.
|
|
||||||
:::
|
:::
|
||||||
|
|
||||||
## Next Steps
|
## Next Steps
|
||||||
|
|
|
||||||
|
|
@ -5,119 +5,91 @@ sidebar:
|
||||||
order: 5
|
order: 5
|
||||||
---
|
---
|
||||||
|
|
||||||
Use the **DEV agent** directly for bug fixes, refactorings, or small targeted changes that don't require the full BMad Method or Quick Flow.
|
Use **Quick Dev** for bug fixes, refactorings, or small targeted changes that don't require the full BMad Method.
|
||||||
|
|
||||||
## When to Use This
|
## When to Use This
|
||||||
|
|
||||||
- Bug fixes with a clear, known cause
|
- Bug fixes with a clear, known cause
|
||||||
- Small refactorings (rename, extract, restructure) contained within a few files
|
- Small refactorings (rename, extract, restructure) contained within a few files
|
||||||
- Minor feature tweaks or configuration changes
|
- Minor feature tweaks or configuration changes
|
||||||
- Exploratory work to understand an unfamiliar codebase
|
- Dependency updates
|
||||||
|
|
||||||
:::note[Prerequisites]
|
:::note[Prerequisites]
|
||||||
- BMad Method installed (`npx bmad-method install`)
|
- BMad Method installed (`npx bmad-method install`)
|
||||||
- An AI-powered IDE (Claude Code, Cursor, or similar)
|
- An AI-powered IDE (Claude Code, Cursor, or similar)
|
||||||
:::
|
:::
|
||||||
|
|
||||||
## Choose Your Approach
|
|
||||||
|
|
||||||
| Situation | Agent | Why |
|
|
||||||
| --- | --- | --- |
|
|
||||||
| Fix a specific bug or make a small, scoped change | **DEV agent** | Jumps straight into implementation without planning overhead |
|
|
||||||
| Change touches several files or you want a written plan first | **Quick Flow Solo Dev** | Creates a quick-spec before implementation so the agent stays aligned to your standards |
|
|
||||||
|
|
||||||
If you are unsure, start with the DEV agent. You can always escalate to Quick Flow if the change grows.
|
|
||||||
|
|
||||||
## Steps
|
## Steps
|
||||||
|
|
||||||
### 1. Invoke the DEV Agent
|
### 1. Start a Fresh Chat
|
||||||
|
|
||||||
Start a **fresh chat** in your AI IDE and invoke the DEV agent skill:
|
Open a **fresh chat session** in your AI IDE. Reusing a session from a previous workflow can cause context conflicts.
|
||||||
|
|
||||||
|
### 2. Give It Your Intent
|
||||||
|
|
||||||
|
Quick Dev accepts free-form intent — before, with, or after the invocation. Examples:
|
||||||
|
|
||||||
```text
|
```text
|
||||||
bmad-dev
|
run quick-dev — Fix the login validation bug that allows empty passwords.
|
||||||
```
|
```
|
||||||
|
|
||||||
This loads the agent's persona and capabilities into the session. If you decide you need Quick Flow instead, invoke the **Quick Flow Solo Dev** agent skill in a fresh chat:
|
|
||||||
|
|
||||||
```text
|
```text
|
||||||
bmad-quick-flow-solo-dev
|
run quick-dev — fix https://github.com/org/repo/issues/42
|
||||||
```
|
```
|
||||||
|
|
||||||
Once the Solo Dev agent is loaded, describe your change and ask it to create a **quick-spec**. The agent drafts a lightweight spec capturing what you want to change and how. After you approve the quick-spec, tell the agent to start the **Quick Flow dev cycle** -- it will implement the change, run tests, and perform a self-review, all guided by the spec you just approved.
|
```text
|
||||||
|
run quick-dev — implement the intent in _bmad-output/implementation-artifacts/my-intent.md
|
||||||
|
```
|
||||||
|
|
||||||
:::tip[Fresh Chats]
|
```text
|
||||||
Always start a new chat session when loading an agent. Reusing a session from a previous workflow can cause context conflicts.
|
I think the problem is in the auth middleware, it's not checking token expiry.
|
||||||
:::
|
Let me look at it... yeah, src/auth/middleware.ts line 47 skips
|
||||||
|
the exp check entirely. run quick-dev
|
||||||
|
```
|
||||||
|
|
||||||
### 2. Describe the Change
|
```text
|
||||||
|
run quick-dev
|
||||||
|
> What would you like to do?
|
||||||
|
Refactor UserService to use async/await instead of callbacks.
|
||||||
|
```
|
||||||
|
|
||||||
Tell the agent what you need in plain language. Be specific about the problem and, if you know it, where the relevant code lives.
|
Plain text, file paths, GitHub issue URLs, bug tracker links — anything the LLM can resolve to a concrete intent.
|
||||||
|
|
||||||
:::note[Example Prompts]
|
### 3. Answer Questions and Approve
|
||||||
**Bug fix** -- "Fix the login validation bug that allows empty passwords. The validation logic is in `src/auth/validate.ts`."
|
|
||||||
|
|
||||||
**Refactoring** -- "Refactor the UserService to use async/await instead of callbacks."
|
Quick Dev may ask clarifying questions or present a short spec for your approval before implementing. Answer its questions and approve when you're satisfied with the plan.
|
||||||
|
|
||||||
**Configuration change** -- "Update the CI pipeline to cache node_modules between runs."
|
### 4. Review and Push
|
||||||
|
|
||||||
**Dependency update** -- "Upgrade the express dependency to the latest v5 release and fix any breaking changes."
|
Quick Dev implements the change, reviews its own work, patches issues, and commits locally. When it's done, it opens the affected files in your editor.
|
||||||
:::
|
|
||||||
|
|
||||||
You don't need to provide every detail. The agent will read the relevant source files and ask clarifying questions when needed.
|
- Skim the diff to confirm the change matches your intent
|
||||||
|
- If something looks off, tell the agent what to fix — it can iterate in the same session
|
||||||
|
|
||||||
### 3. Let the Agent Work
|
Once satisfied, push the commit. Quick Dev will offer to push and create a PR for you.
|
||||||
|
|
||||||
The agent will:
|
|
||||||
|
|
||||||
- Read and analyze the relevant source files
|
|
||||||
- Propose a solution and explain its reasoning
|
|
||||||
- Implement the change across the affected files
|
|
||||||
- Run your project's test suite if one exists
|
|
||||||
|
|
||||||
If your project has tests, the agent runs them automatically after making changes and iterates until tests pass. For projects without a test suite, verify the change manually (run the app, hit the endpoint, check the output).
|
|
||||||
|
|
||||||
### 4. Review and Verify
|
|
||||||
|
|
||||||
Before committing, review what changed:
|
|
||||||
|
|
||||||
- Read through the diff to confirm the change matches your intent
|
|
||||||
- Run the application or tests yourself to double-check
|
|
||||||
- If something looks wrong, tell the agent what to fix -- it can iterate in the same session
|
|
||||||
|
|
||||||
Once satisfied, commit the changes with a clear message describing the fix.
|
|
||||||
|
|
||||||
:::caution[If Something Breaks]
|
:::caution[If Something Breaks]
|
||||||
If a committed change causes unexpected issues, use `git revert HEAD` to undo the last commit cleanly. Then start a fresh chat with the DEV agent to try a different approach.
|
If a pushed change causes unexpected issues, use `git revert HEAD` to undo the last commit cleanly. Then start a fresh chat and run Quick Dev again to try a different approach.
|
||||||
:::
|
:::
|
||||||
|
|
||||||
## Learning Your Codebase
|
|
||||||
|
|
||||||
The DEV agent is also useful for exploring unfamiliar code. Load it in a fresh chat and ask questions:
|
|
||||||
|
|
||||||
:::note[Example Prompts]
|
|
||||||
"Explain how the authentication system works in this codebase."
|
|
||||||
|
|
||||||
"Show me where error handling happens in the API layer."
|
|
||||||
|
|
||||||
"What does the `ProcessOrder` function do and what calls it?"
|
|
||||||
:::
|
|
||||||
|
|
||||||
Use the agent to learn about your project, understand how components connect, and explore unfamiliar areas before making changes.
|
|
||||||
|
|
||||||
## What You Get
|
## What You Get
|
||||||
|
|
||||||
- Modified source files with the fix or refactoring applied
|
- Modified source files with the fix or refactoring applied
|
||||||
- Passing tests (if your project has a test suite)
|
- Passing tests (if your project has a test suite)
|
||||||
- A clean commit describing the change
|
- A ready-to-push commit with a conventional commit message
|
||||||
|
|
||||||
No planning artifacts are produced -- that's the point of this approach.
|
## Deferred Work
|
||||||
|
|
||||||
|
Quick Dev keeps each run focused on a single goal. If your request contains multiple independent goals, or if the review surfaces pre-existing issues unrelated to your change, Quick Dev defers them to a file (`deferred-work.md` in your implementation artifacts directory) rather than trying to tackle everything at once.
|
||||||
|
|
||||||
|
Check this file after a run — it's your backlog of things to come back to. Each deferred item can be fed into a fresh Quick Dev run later.
|
||||||
|
|
||||||
## When to Upgrade to Formal Planning
|
## When to Upgrade to Formal Planning
|
||||||
|
|
||||||
Consider using [Quick Flow](../explanation/quick-flow.md) or the full BMad Method when:
|
Consider using the full BMad Method when:
|
||||||
|
|
||||||
- The change affects multiple systems or requires coordinated updates across many files
|
- The change affects multiple systems or requires coordinated updates across many files
|
||||||
- You are unsure about the scope and need a spec to think it through
|
- You are unsure about the scope and need requirements discovery first
|
||||||
- The fix keeps growing in complexity as you work on it
|
|
||||||
- You need documentation or architectural decisions recorded for the team
|
- You need documentation or architectural decisions recorded for the team
|
||||||
|
|
||||||
|
See [Quick Dev](../explanation/quick-dev.md) for more on how Quick Dev fits into the BMad Method.
|
||||||
|
|
|
||||||
|
|
@ -2,7 +2,7 @@
|
||||||
title: "Document Sharding Guide"
|
title: "Document Sharding Guide"
|
||||||
description: Split large markdown files into smaller organized files for better context management
|
description: Split large markdown files into smaller organized files for better context management
|
||||||
sidebar:
|
sidebar:
|
||||||
order: 8
|
order: 9
|
||||||
---
|
---
|
||||||
|
|
||||||
Use the `bmad-shard-doc` tool if you need to split large markdown files into smaller, organized files for better context management.
|
Use the `bmad-shard-doc` tool if you need to split large markdown files into smaller, organized files for better context management.
|
||||||
|
|
|
||||||
|
|
@ -23,6 +23,36 @@ This page lists the default BMM (Agile suite) agents that install with BMad Meth
|
||||||
| Scrum Master (Bob) | `bmad-sm` | `SP`, `CS`, `ER`, `CC` | Sprint Planning, Create Story, Epic Retrospective, Correct Course |
|
| Scrum Master (Bob) | `bmad-sm` | `SP`, `CS`, `ER`, `CC` | Sprint Planning, Create Story, Epic Retrospective, Correct Course |
|
||||||
| Developer (Amelia) | `bmad-dev` | `DS`, `CR` | Dev Story, Code Review |
|
| Developer (Amelia) | `bmad-dev` | `DS`, `CR` | Dev Story, Code Review |
|
||||||
| QA Engineer (Quinn) | `bmad-qa` | `QA` | Automate (generate tests for existing features) |
|
| QA Engineer (Quinn) | `bmad-qa` | `QA` | Automate (generate tests for existing features) |
|
||||||
| Quick Flow Solo Dev (Barry) | `bmad-master` | `QS`, `QD`, `CR` | Quick Spec, Quick Dev, Code Review |
|
| Quick Flow Solo Dev (Barry) | `bmad-master` | `QD`, `CR` | Quick Dev, Code Review |
|
||||||
| UX Designer (Sally) | `bmad-ux-designer` | `CU` | Create UX Design |
|
| UX Designer (Sally) | `bmad-ux-designer` | `CU` | Create UX Design |
|
||||||
| Technical Writer (Paige) | `bmad-tech-writer` | `DP`, `WD`, `US`, `MG`, `VD`, `EC` | Document Project, Write Document, Update Standards, Mermaid Generate, Validate Doc, Explain Concept |
|
| Technical Writer (Paige) | `bmad-tech-writer` | `DP`, `WD`, `US`, `MG`, `VD`, `EC` | Document Project, Write Document, Update Standards, Mermaid Generate, Validate Doc, Explain Concept |
|
||||||
|
|
||||||
|
## Trigger Types
|
||||||
|
|
||||||
|
Agent menu triggers use two different invocation types. Knowing which type a trigger uses helps you provide the right input.
|
||||||
|
|
||||||
|
### Workflow triggers (no arguments needed)
|
||||||
|
|
||||||
|
Most triggers load a structured workflow file. Type the trigger code and the agent starts the workflow, prompting you for input at each step.
|
||||||
|
|
||||||
|
Examples: `CP` (Create PRD), `DS` (Dev Story), `CA` (Create Architecture), `QD` (Quick Dev)
|
||||||
|
|
||||||
|
### Conversational triggers (arguments required)
|
||||||
|
|
||||||
|
Some triggers start a free-form conversation instead of a structured workflow. These expect you to describe what you need alongside the trigger code.
|
||||||
|
|
||||||
|
| Agent | Trigger | What to provide |
|
||||||
|
| --- | --- | --- |
|
||||||
|
| Technical Writer (Paige) | `WD` | Description of the document to write |
|
||||||
|
| Technical Writer (Paige) | `US` | Preferences or conventions to add to standards |
|
||||||
|
| Technical Writer (Paige) | `MG` | Diagram description and type (sequence, flowchart, etc.) |
|
||||||
|
| Technical Writer (Paige) | `VD` | Document to validate and focus areas |
|
||||||
|
| Technical Writer (Paige) | `EC` | Concept name to explain |
|
||||||
|
|
||||||
|
**Example:**
|
||||||
|
|
||||||
|
```text
|
||||||
|
WD Write a deployment guide for our Docker setup
|
||||||
|
MG Create a sequence diagram showing the auth flow
|
||||||
|
EC Explain how the module system works
|
||||||
|
```
|
||||||
|
|
|
||||||
|
|
@ -97,7 +97,7 @@ Workflow skills run a structured, multi-step process without loading an agent pe
|
||||||
| `bmad-create-epics-and-stories` | Create epics and stories |
|
| `bmad-create-epics-and-stories` | Create epics and stories |
|
||||||
| `bmad-dev-story` | Implement a story |
|
| `bmad-dev-story` | Implement a story |
|
||||||
| `bmad-code-review` | Run a code review |
|
| `bmad-code-review` | Run a code review |
|
||||||
| `bmad-quick-spec` | Define an ad-hoc change (Quick Flow) |
|
| `bmad-quick-dev` | Unified quick flow — clarify intent, plan, implement, review, present |
|
||||||
|
|
||||||
See [Workflow Map](./workflow-map.md) for the complete workflow reference organized by phase.
|
See [Workflow Map](./workflow-map.md) for the complete workflow reference organized by phase.
|
||||||
|
|
||||||
|
|
@ -105,32 +105,21 @@ See [Workflow Map](./workflow-map.md) for the complete workflow reference organi
|
||||||
|
|
||||||
Tasks and tools are standalone operations that do not require an agent or workflow context.
|
Tasks and tools are standalone operations that do not require an agent or workflow context.
|
||||||
|
|
||||||
#### BMad-Help: Your Intelligent Guide
|
**BMad-Help: Your Intelligent Guide**
|
||||||
|
|
||||||
**`bmad-help`** is your primary interface for discovering what to do next. It's not just a lookup tool — it's an intelligent assistant that:
|
`bmad-help` is your primary interface for discovering what to do next. It inspects your project, understands natural language queries, and recommends the next required or optional step based on your installed modules.
|
||||||
|
|
||||||
- **Inspects your project** to see what's already been done
|
|
||||||
- **Understands natural language queries** — ask questions in plain English
|
|
||||||
- **Varies by installed modules** — shows options based on what you have
|
|
||||||
- **Auto-invokes after workflows** — every workflow ends with clear next steps
|
|
||||||
- **Recommends the first required task** — no guessing where to start
|
|
||||||
|
|
||||||
**Examples:**
|
|
||||||
|
|
||||||
|
:::note[Example]
|
||||||
```
|
```
|
||||||
bmad-help
|
bmad-help
|
||||||
bmad-help I have a SaaS idea and know all the features. Where do I start?
|
bmad-help I have a SaaS idea and know all the features. Where do I start?
|
||||||
bmad-help What are my options for UX design?
|
bmad-help What are my options for UX design?
|
||||||
bmad-help I'm stuck on the PRD workflow
|
|
||||||
```
|
```
|
||||||
|
:::
|
||||||
|
|
||||||
#### Other Tasks and Tools
|
**Other Core Tasks and Tools**
|
||||||
|
|
||||||
| Example skill | Purpose |
|
The core module includes 11 built-in tools — reviews, compression, brainstorming, document management, and more. See [Core Tools](./core-tools.md) for the complete reference.
|
||||||
| --- | --- |
|
|
||||||
| `bmad-shard-doc` | Split a large markdown file into smaller sections |
|
|
||||||
| `bmad-index-docs` | Index project documentation |
|
|
||||||
| `bmad-editorial-review-prose` | Review document prose quality |
|
|
||||||
|
|
||||||
## Naming Convention
|
## Naming Convention
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -0,0 +1,293 @@
|
||||||
|
---
|
||||||
|
title: Core Tools
|
||||||
|
description: Reference for all built-in tasks and workflows available in every BMad installation without additional modules.
|
||||||
|
sidebar:
|
||||||
|
order: 2
|
||||||
|
---
|
||||||
|
|
||||||
|
Every BMad installation includes a set of core skills that can be used in conjunction with any anything you are doing — standalone tasks and workflows that work across all projects, all modules, and all phases. These are always available regardless of which optional modules you install.
|
||||||
|
|
||||||
|
:::tip[Quick Path]
|
||||||
|
Run any core tool by typing its skill name (e.g., `bmad-help`) in your IDE. No agent session required.
|
||||||
|
:::
|
||||||
|
|
||||||
|
## Overview
|
||||||
|
|
||||||
|
| Tool | Type | Purpose |
|
||||||
|
| --- | --- | --- |
|
||||||
|
| [`bmad-help`](#bmad-help) | Task | Get context-aware guidance on what to do next |
|
||||||
|
| [`bmad-brainstorming`](#bmad-brainstorming) | Workflow | Facilitate interactive brainstorming sessions |
|
||||||
|
| [`bmad-party-mode`](#bmad-party-mode) | Workflow | Orchestrate multi-agent group discussions |
|
||||||
|
| [`bmad-distillator`](#bmad-distillator) | Task | Lossless LLM-optimized compression of documents |
|
||||||
|
| [`bmad-advanced-elicitation`](#bmad-advanced-elicitation) | Task | Push LLM output through iterative refinement methods |
|
||||||
|
| [`bmad-review-adversarial-general`](#bmad-review-adversarial-general) | Task | Cynical review that finds what's missing and what's wrong |
|
||||||
|
| [`bmad-review-edge-case-hunter`](#bmad-review-edge-case-hunter) | Task | Exhaustive branching-path analysis for unhandled edge cases |
|
||||||
|
| [`bmad-editorial-review-prose`](#bmad-editorial-review-prose) | Task | Clinical copy-editing for communication clarity |
|
||||||
|
| [`bmad-editorial-review-structure`](#bmad-editorial-review-structure) | Task | Structural editing — cuts, merges, and reorganization |
|
||||||
|
| [`bmad-shard-doc`](#bmad-shard-doc) | Task | Split large markdown files into organized sections |
|
||||||
|
| [`bmad-index-docs`](#bmad-index-docs) | Task | Generate or update an index of all docs in a folder |
|
||||||
|
|
||||||
|
## bmad-help
|
||||||
|
|
||||||
|
**Your intelligent guide to what comes next.** — Inspects your project state, detects what's been done, and recommends the next required or optional step.
|
||||||
|
|
||||||
|
**Use it when:**
|
||||||
|
|
||||||
|
- You finished a workflow and want to know what's next
|
||||||
|
- You're new to BMad and need orientation
|
||||||
|
- You're stuck and want context-aware advice
|
||||||
|
- You installed new modules and want to see what's available
|
||||||
|
|
||||||
|
**How it works:**
|
||||||
|
|
||||||
|
1. Scans your project for existing artifacts (PRD, architecture, stories, etc.)
|
||||||
|
2. Detects which modules are installed and their available workflows
|
||||||
|
3. Recommends next steps in priority order — required steps first, then optional
|
||||||
|
4. Presents each recommendation with the skill command and a brief description
|
||||||
|
|
||||||
|
**Input:** Optional query in natural language (e.g., `bmad-help I have a SaaS idea, where do I start?`)
|
||||||
|
|
||||||
|
**Output:** Prioritized list of recommended next steps with skill commands
|
||||||
|
|
||||||
|
## bmad-brainstorming
|
||||||
|
|
||||||
|
**Generate diverse ideas through interactive creative techniques.** — A facilitated brainstorming session that loads proven ideation methods from a technique library and guides you toward 100+ ideas before organizing.
|
||||||
|
|
||||||
|
**Use it when:**
|
||||||
|
|
||||||
|
- You're starting a new project and need to explore the problem space
|
||||||
|
- You're stuck generating ideas and need structured creativity
|
||||||
|
- You want to use proven ideation frameworks (SCAMPER, reverse brainstorming, etc.)
|
||||||
|
|
||||||
|
**How it works:**
|
||||||
|
|
||||||
|
1. Sets up a brainstorming session with your topic
|
||||||
|
2. Loads creative techniques from a method library
|
||||||
|
3. Guides you through technique after technique, generating ideas
|
||||||
|
4. Applies anti-bias protocol — shifts creative domain every 10 ideas to prevent clustering
|
||||||
|
5. Produces an append-only session document with all ideas organized by technique
|
||||||
|
|
||||||
|
**Input:** Brainstorming topic or problem statement, optional context file
|
||||||
|
|
||||||
|
**Output:** `brainstorming-session-{date}.md` with all generated ideas
|
||||||
|
|
||||||
|
:::note[Quantity Target]
|
||||||
|
The magic happens in ideas 50–100. The workflow encourages generating 100+ ideas before organization.
|
||||||
|
:::
|
||||||
|
|
||||||
|
## bmad-party-mode
|
||||||
|
|
||||||
|
**Orchestrate multi-agent group discussions.** — Loads all installed BMad agents and facilitates a natural conversation where each agent contributes from their unique expertise and personality.
|
||||||
|
|
||||||
|
**Use it when:**
|
||||||
|
|
||||||
|
- You need multiple expert perspectives on a decision
|
||||||
|
- You want agents to challenge each other's assumptions
|
||||||
|
- You're exploring a complex topic that spans multiple domains
|
||||||
|
|
||||||
|
**How it works:**
|
||||||
|
|
||||||
|
1. Loads the agent manifest with all installed agent personalities
|
||||||
|
2. Analyzes your topic to select 2–3 most relevant agents
|
||||||
|
3. Agents take turns contributing, with natural cross-talk and disagreements
|
||||||
|
4. Rotates agent participation to ensure diverse perspectives over time
|
||||||
|
5. Exit with `goodbye`, `end party`, or `quit`
|
||||||
|
|
||||||
|
**Input:** Discussion topic or question, along with specification of personas you would like to participate (optional)
|
||||||
|
|
||||||
|
**Output:** Real-time multi-agent conversation with maintained agent personalities
|
||||||
|
|
||||||
|
## bmad-distillator
|
||||||
|
|
||||||
|
**Lossless LLM-optimized compression of source documents.** — Produces dense, token-efficient distillates that preserve all information for downstream LLM consumption. Verifiable through round-trip reconstruction.
|
||||||
|
|
||||||
|
**Use it when:**
|
||||||
|
|
||||||
|
- A document is too large for an LLM's context window
|
||||||
|
- You need token-efficient versions of research, specs, or planning artifacts
|
||||||
|
- You want to verify no information is lost during compression
|
||||||
|
- Agents will need to frequently reference and find information in it
|
||||||
|
|
||||||
|
**How it works:**
|
||||||
|
|
||||||
|
1. **Analyze** — Reads source documents, identifies information density and structure
|
||||||
|
2. **Compress** — Converts prose to dense bullet-point format, strips decorative formatting
|
||||||
|
3. **Verify** — Checks completeness to ensure all original information is preserved
|
||||||
|
4. **Validate** (optional) — Round-trip reconstruction test proves lossless compression
|
||||||
|
|
||||||
|
**Input:**
|
||||||
|
|
||||||
|
- `source_documents` (required) — File paths, folder paths, or glob patterns
|
||||||
|
- `downstream_consumer` (optional) — What consumes this (e.g., "PRD creation")
|
||||||
|
- `token_budget` (optional) — Approximate target size
|
||||||
|
- `--validate` (flag) — Run round-trip reconstruction test
|
||||||
|
|
||||||
|
**Output:** Distillate markdown file(s) with compression ratio report (e.g., "3.2:1")
|
||||||
|
|
||||||
|
## bmad-advanced-elicitation
|
||||||
|
|
||||||
|
**Push LLM output through iterative refinement methods.** — Selects from a library of elicitation techniques to systematically improve content through multiple passes.
|
||||||
|
|
||||||
|
**Use it when:**
|
||||||
|
|
||||||
|
- LLM output feels shallow or generic
|
||||||
|
- You want to explore a topic from multiple analytical angles
|
||||||
|
- You're refining a critical document and want deeper thinking
|
||||||
|
|
||||||
|
**How it works:**
|
||||||
|
|
||||||
|
1. Loads method registry with 5+ elicitation techniques
|
||||||
|
2. Selects 5 best-fit methods based on content type and complexity
|
||||||
|
3. Presents an interactive menu — pick a method, reshuffle, or list all
|
||||||
|
4. Applies the selected method to enhance the content
|
||||||
|
5. Re-presents options for iterative improvement until you select "Proceed"
|
||||||
|
|
||||||
|
**Input:** Content section to enhance
|
||||||
|
|
||||||
|
**Output:** Enhanced version of the content with improvements applied
|
||||||
|
|
||||||
|
## bmad-review-adversarial-general
|
||||||
|
|
||||||
|
**Cynical review that assumes problems exist and searches for them.** — Takes a skeptical, jaded reviewer perspective with zero patience for sloppy work. Looks for what's missing, not just what's wrong.
|
||||||
|
|
||||||
|
**Use it when:**
|
||||||
|
|
||||||
|
- You need quality assurance before finalizing a deliverable
|
||||||
|
- You want to stress-test a spec, story, or document
|
||||||
|
- You want to find gaps in coverage that optimistic reviews miss
|
||||||
|
|
||||||
|
**How it works:**
|
||||||
|
|
||||||
|
1. Reads the content with a cynical, critical perspective
|
||||||
|
2. Identifies issues across completeness, correctness, and quality
|
||||||
|
3. Searches specifically for what's missing — not just what's present and wrong
|
||||||
|
4. Must find a minimum of 10 issues or re-analyzes deeper
|
||||||
|
|
||||||
|
**Input:**
|
||||||
|
|
||||||
|
- `content` (required) — Diff, spec, story, doc, or any artifact
|
||||||
|
- `also_consider` (optional) — Additional areas to keep in mind
|
||||||
|
|
||||||
|
**Output:** Markdown list of 10+ findings with descriptions
|
||||||
|
|
||||||
|
## bmad-review-edge-case-hunter
|
||||||
|
|
||||||
|
**Walk every branching path and boundary condition, report only unhandled cases.** — Pure path-tracing methodology that mechanically derives edge classes. Orthogonal to adversarial review — method-driven, not attitude-driven.
|
||||||
|
|
||||||
|
**Use it when:**
|
||||||
|
|
||||||
|
- You want exhaustive edge case coverage for code or logic
|
||||||
|
- You need a complement to adversarial review (different methodology, different findings)
|
||||||
|
- You're reviewing a diff or function for boundary conditions
|
||||||
|
|
||||||
|
**How it works:**
|
||||||
|
|
||||||
|
1. Enumerates all branching paths in the content
|
||||||
|
2. Derives edge classes mechanically: missing else/default, unguarded inputs, off-by-one, arithmetic overflow, implicit type coercion, race conditions, timeout gaps
|
||||||
|
3. Tests each path against existing guards
|
||||||
|
4. Reports only unhandled paths — silently discards handled ones
|
||||||
|
|
||||||
|
**Input:**
|
||||||
|
|
||||||
|
- `content` (required) — Diff, full file, or function
|
||||||
|
- `also_consider` (optional) — Additional areas to keep in mind
|
||||||
|
|
||||||
|
**Output:** JSON array of findings, each with `location`, `trigger_condition`, `guard_snippet`, and `potential_consequence`
|
||||||
|
|
||||||
|
:::note[Complementary Reviews]
|
||||||
|
Run both `bmad-review-adversarial-general` and `bmad-review-edge-case-hunter` together for orthogonal coverage. The adversarial review catches quality and completeness issues; the edge case hunter catches unhandled paths.
|
||||||
|
:::
|
||||||
|
|
||||||
|
## bmad-editorial-review-prose
|
||||||
|
|
||||||
|
**Clinical copy-editing focused on communication clarity.** — Reviews text for issues that impede comprehension. Applies Microsoft Writing Style Guide baseline. Preserves author voice.
|
||||||
|
|
||||||
|
**Use it when:**
|
||||||
|
|
||||||
|
- You've drafted a document and want to polish the writing
|
||||||
|
- You need to ensure clarity for a specific audience
|
||||||
|
- You want communication fixes without style opinion changes
|
||||||
|
|
||||||
|
**How it works:**
|
||||||
|
|
||||||
|
1. Reads the content, skipping code blocks and frontmatter
|
||||||
|
2. Identifies communication issues (not style preferences)
|
||||||
|
3. Deduplicates same issues across multiple locations
|
||||||
|
4. Produces a three-column fix table
|
||||||
|
|
||||||
|
**Input:**
|
||||||
|
|
||||||
|
- `content` (required) — Markdown, plain text, or XML
|
||||||
|
- `style_guide` (optional) — Project-specific style guide
|
||||||
|
- `reader_type` (optional) — `humans` (default) for clarity/flow, or `llm` for precision/consistency
|
||||||
|
|
||||||
|
**Output:** Three-column markdown table: Original Text | Revised Text | Changes
|
||||||
|
|
||||||
|
## bmad-editorial-review-structure
|
||||||
|
|
||||||
|
**Structural editing — proposes cuts, merges, moves, and condensing.** — Reviews document organization and proposes substantive changes to improve clarity and flow before copy editing.
|
||||||
|
|
||||||
|
**Use it when:**
|
||||||
|
|
||||||
|
- A document was produced from multiple subprocesses and needs structural coherence
|
||||||
|
- You want to reduce document length while preserving comprehension
|
||||||
|
- You need to identify scope violations or buried critical information
|
||||||
|
|
||||||
|
**How it works:**
|
||||||
|
|
||||||
|
1. Analyzes document against 5 structure models (Tutorial, Reference, Explanation, Prompt, Strategic)
|
||||||
|
2. Identifies redundancies, scope violations, and buried information
|
||||||
|
3. Produces prioritized recommendations: CUT, MERGE, MOVE, CONDENSE, QUESTION, PRESERVE
|
||||||
|
4. Estimates total reduction in words and percentage
|
||||||
|
|
||||||
|
**Input:**
|
||||||
|
|
||||||
|
- `content` (required) — Document to review
|
||||||
|
- `purpose` (optional) — Intended purpose (e.g., "quickstart tutorial")
|
||||||
|
- `target_audience` (optional) — Who reads this
|
||||||
|
- `reader_type` (optional) — `humans` or `llm`
|
||||||
|
- `length_target` (optional) — Target reduction (e.g., "30% shorter")
|
||||||
|
|
||||||
|
**Output:** Document summary, prioritized recommendation list, and estimated reduction
|
||||||
|
|
||||||
|
## bmad-shard-doc
|
||||||
|
|
||||||
|
**Split large markdown files into organized section files.** — Uses level-2 headers as split points to create a folder of self-contained section files with an index.
|
||||||
|
|
||||||
|
**Use it when:**
|
||||||
|
|
||||||
|
- A markdown document has grown too large to manage effectively (500+ lines)
|
||||||
|
- You want to break a monolithic doc into navigable sections
|
||||||
|
- You need separate files for parallel editing or LLM context management
|
||||||
|
|
||||||
|
**How it works:**
|
||||||
|
|
||||||
|
1. Validates the source file exists and is markdown
|
||||||
|
2. Splits on level-2 (`##`) headers into numbered section files
|
||||||
|
3. Creates an `index.md` with section manifest and links
|
||||||
|
4. Prompts you to delete, archive, or keep the original
|
||||||
|
|
||||||
|
**Input:** Source markdown file path, optional destination folder
|
||||||
|
|
||||||
|
**Output:** Folder with `index.md` and `01-{section}.md`, `02-{section}.md`, etc.
|
||||||
|
|
||||||
|
## bmad-index-docs
|
||||||
|
|
||||||
|
**Generate or update an index of all documents in a folder.** — Scans a directory, reads each file to understand its purpose, and produces an organized `index.md` with links and descriptions.
|
||||||
|
|
||||||
|
**Use it when:**
|
||||||
|
|
||||||
|
- You need a lightweight index for quick LLM scanning of available docs
|
||||||
|
- A documentation folder has grown and needs an organized table of contents
|
||||||
|
- You want an auto-generated overview that stays current
|
||||||
|
|
||||||
|
**How it works:**
|
||||||
|
|
||||||
|
1. Scans the target directory for all non-hidden files
|
||||||
|
2. Reads each file to understand its actual purpose
|
||||||
|
3. Groups files by type, purpose, or subdirectory
|
||||||
|
4. Generates concise descriptions (3–10 words each)
|
||||||
|
|
||||||
|
**Input:** Target folder path
|
||||||
|
|
||||||
|
**Output:** `index.md` with organized file listings, relative links, and brief descriptions
|
||||||
|
|
@ -95,11 +95,11 @@ TEA also supports P0-P3 risk-based prioritization and optional integrations with
|
||||||
|
|
||||||
## How Testing Fits into Workflows
|
## How Testing Fits into Workflows
|
||||||
|
|
||||||
Quinn's Automate workflow appears in Phase 4 (Implementation) of the BMad Method workflow map. A typical sequence:
|
Quinn's Automate workflow appears in Phase 4 (Implementation) of the BMad Method workflow map. It is designed to run **after a full epic is complete** — once all stories in an epic have been implemented and code-reviewed. A typical sequence:
|
||||||
|
|
||||||
1. Implement a story with the Dev workflow (`DS`)
|
1. For each story in the epic: implement with Dev (`DS`), then validate with Code Review (`CR`)
|
||||||
2. Generate tests with Quinn (`QA`) or TEA's Automate workflow
|
2. After the epic is complete: generate tests with Quinn (`QA`) or TEA's Automate workflow
|
||||||
3. Validate implementation with Code Review (`CR`)
|
3. Run retrospective (`bmad-retrospective`) to capture lessons learned
|
||||||
|
|
||||||
Quinn works directly from source code without loading planning documents (PRD, architecture). TEA workflows can integrate with upstream planning artifacts for traceability.
|
Quinn works directly from source code without loading planning documents (PRD, architecture). TEA workflows can integrate with upstream planning artifacts for traceability.
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -66,10 +66,9 @@ Build it, one story at a time. Coming soon, full phase 4 automation!
|
||||||
|
|
||||||
Skip phases 1-3 for small, well-understood work.
|
Skip phases 1-3 for small, well-understood work.
|
||||||
|
|
||||||
| Workflow | Purpose | Produces |
|
| Workflow | Purpose | Produces |
|
||||||
| --------------------- | ------------------------------------------ | --------------------------------------------- |
|
| ------------------ | --------------------------------------------------------------------------- | ---------------------- |
|
||||||
| `bmad-quick-spec` | Define an ad-hoc change | `tech-spec.md` (story file for small changes) |
|
| `bmad-quick-dev` | Unified quick flow — clarify intent, plan, implement, review, and present | `tech-spec.md` + code |
|
||||||
| `bmad-quick-dev` | Implement from spec or direct instructions | Working code + tests |
|
|
||||||
|
|
||||||
## Context Management
|
## Context Management
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -22,7 +22,7 @@ Build software faster using AI-powered workflows with specialized agents that gu
|
||||||
|
|
||||||
:::tip[The Easiest Path]
|
:::tip[The Easiest Path]
|
||||||
**Install** → `npx bmad-method install`
|
**Install** → `npx bmad-method install`
|
||||||
**Ask** → `/bmad-help what should I do first?`
|
**Ask** → `bmad-help what should I do first?`
|
||||||
**Build** → Let BMad-Help guide you workflow by workflow
|
**Build** → Let BMad-Help guide you workflow by workflow
|
||||||
:::
|
:::
|
||||||
|
|
||||||
|
|
@ -59,7 +59,7 @@ BMad-Help will respond with:
|
||||||
BMad-Help doesn't just answer questions — **it automatically runs at the end of every workflow** to tell you exactly what to do next. No guessing, no searching docs — just clear guidance on the next required workflow.
|
BMad-Help doesn't just answer questions — **it automatically runs at the end of every workflow** to tell you exactly what to do next. No guessing, no searching docs — just clear guidance on the next required workflow.
|
||||||
|
|
||||||
:::tip[Start Here]
|
:::tip[Start Here]
|
||||||
After installing BMad, run `/bmad-help` immediately. It will detect what modules you have installed and guide you to the right starting point for your project.
|
After installing BMad, invoke the `bmad-help` skill immediately. It will detect what modules you have installed and guide you to the right starting point for your project.
|
||||||
:::
|
:::
|
||||||
|
|
||||||
## Understanding BMad
|
## Understanding BMad
|
||||||
|
|
@ -95,6 +95,8 @@ Open a terminal in your project directory and run:
|
||||||
npx bmad-method install
|
npx bmad-method install
|
||||||
```
|
```
|
||||||
|
|
||||||
|
If you want the newest prerelease build instead of the default release channel, use `npx bmad-method@next install`.
|
||||||
|
|
||||||
When prompted to select modules, choose **BMad Method**.
|
When prompted to select modules, choose **BMad Method**.
|
||||||
|
|
||||||
The installer creates two folders:
|
The installer creates two folders:
|
||||||
|
|
@ -105,14 +107,14 @@ The installer creates two folders:
|
||||||
Open your AI IDE in the project folder and run:
|
Open your AI IDE in the project folder and run:
|
||||||
|
|
||||||
```
|
```
|
||||||
/bmad-help
|
bmad-help
|
||||||
```
|
```
|
||||||
|
|
||||||
BMad-Help will detect what you've completed and recommend exactly what to do next. You can also ask it questions like "What are my options?" or "I have a SaaS idea, where should I start?"
|
BMad-Help will detect what you've completed and recommend exactly what to do next. You can also ask it questions like "What are my options?" or "I have a SaaS idea, where should I start?"
|
||||||
:::
|
:::
|
||||||
|
|
||||||
:::note[How to Load Agents and Run Workflows]
|
:::note[How to Load Agents and Run Workflows]
|
||||||
Each workflow has a **skill** you invoke in your IDE (e.g., `/bmad-create-prd`). Running a workflow skill automatically loads the appropriate agent — you don't need to load agents separately. You can also invoke an agent directly for general conversation (e.g., `/bmad-pm` for the PM agent).
|
Each workflow has a **skill** you invoke by name in your IDE (e.g., `bmad-create-prd`). Your AI tool will recognize the `bmad-*` name and run it — you don't need to load agents separately. You can also invoke an agent skill directly for general conversation (e.g., `bmad-pm` for the PM agent).
|
||||||
:::
|
:::
|
||||||
|
|
||||||
:::caution[Fresh Chats]
|
:::caution[Fresh Chats]
|
||||||
|
|
@ -126,35 +128,35 @@ Work through phases 1-3. **Use fresh chats for each workflow.**
|
||||||
:::tip[Project Context (Optional)]
|
:::tip[Project Context (Optional)]
|
||||||
Before starting, consider creating `project-context.md` to document your technical preferences and implementation rules. This ensures all AI agents follow your conventions throughout the project.
|
Before starting, consider creating `project-context.md` to document your technical preferences and implementation rules. This ensures all AI agents follow your conventions throughout the project.
|
||||||
|
|
||||||
Create it manually at `_bmad-output/project-context.md` or generate it after architecture using `/bmad-generate-project-context`. [Learn more](../explanation/project-context.md).
|
Create it manually at `_bmad-output/project-context.md` or generate it after architecture using `bmad-generate-project-context`. [Learn more](../explanation/project-context.md).
|
||||||
:::
|
:::
|
||||||
|
|
||||||
### Phase 1: Analysis (Optional)
|
### Phase 1: Analysis (Optional)
|
||||||
|
|
||||||
All workflows in this phase are optional:
|
All workflows in this phase are optional:
|
||||||
- **brainstorming** (`/bmad-brainstorming`) — Guided ideation
|
- **brainstorming** (`bmad-brainstorming`) — Guided ideation
|
||||||
- **research** (`/bmad-research`) — Market and technical research
|
- **research** (`bmad-research`) — Market and technical research
|
||||||
- **create-product-brief** (`/bmad-create-product-brief`) — Recommended foundation document
|
- **create-product-brief** (`bmad-create-product-brief`) — Recommended foundation document
|
||||||
|
|
||||||
### Phase 2: Planning (Required)
|
### Phase 2: Planning (Required)
|
||||||
|
|
||||||
**For BMad Method and Enterprise tracks:**
|
**For BMad Method and Enterprise tracks:**
|
||||||
1. Invoke the **PM agent** (`/bmad-pm`) in a new chat
|
1. Invoke the **PM agent** (`bmad-pm`) in a new chat
|
||||||
2. Run the `bmad-create-prd` workflow (`/bmad-create-prd`)
|
2. Run the `bmad-create-prd` workflow (`bmad-create-prd`)
|
||||||
3. Output: `PRD.md`
|
3. Output: `PRD.md`
|
||||||
|
|
||||||
**For Quick Flow track:**
|
**For Quick Flow track:**
|
||||||
- Use the `bmad-quick-spec` workflow (`/bmad-quick-spec`) instead of PRD, then skip to implementation
|
- Run `bmad-quick-dev` — it handles planning and implementation in a single workflow, skip to implementation
|
||||||
|
|
||||||
:::note[UX Design (Optional)]
|
:::note[UX Design (Optional)]
|
||||||
If your project has a user interface, invoke the **UX-Designer agent** (`/bmad-ux-designer`) and run the UX design workflow (`/bmad-create-ux-design`) after creating your PRD.
|
If your project has a user interface, invoke the **UX-Designer agent** (`bmad-ux-designer`) and run the UX design workflow (`bmad-create-ux-design`) after creating your PRD.
|
||||||
:::
|
:::
|
||||||
|
|
||||||
### Phase 3: Solutioning (BMad Method/Enterprise)
|
### Phase 3: Solutioning (BMad Method/Enterprise)
|
||||||
|
|
||||||
**Create Architecture**
|
**Create Architecture**
|
||||||
1. Invoke the **Architect agent** (`/bmad-architect`) in a new chat
|
1. Invoke the **Architect agent** (`bmad-architect`) in a new chat
|
||||||
2. Run `bmad-create-architecture` (`/bmad-create-architecture`)
|
2. Run `bmad-create-architecture` (`bmad-create-architecture`)
|
||||||
3. Output: Architecture document with technical decisions
|
3. Output: Architecture document with technical decisions
|
||||||
|
|
||||||
**Create Epics and Stories**
|
**Create Epics and Stories**
|
||||||
|
|
@ -163,13 +165,13 @@ If your project has a user interface, invoke the **UX-Designer agent** (`/bmad-u
|
||||||
Epics and stories are now created *after* architecture. This produces better quality stories because architecture decisions (database, API patterns, tech stack) directly affect how work should be broken down.
|
Epics and stories are now created *after* architecture. This produces better quality stories because architecture decisions (database, API patterns, tech stack) directly affect how work should be broken down.
|
||||||
:::
|
:::
|
||||||
|
|
||||||
1. Invoke the **PM agent** (`/bmad-pm`) in a new chat
|
1. Invoke the **PM agent** (`bmad-pm`) in a new chat
|
||||||
2. Run `bmad-create-epics-and-stories` (`/bmad-create-epics-and-stories`)
|
2. Run `bmad-create-epics-and-stories` (`bmad-create-epics-and-stories`)
|
||||||
3. The workflow uses both PRD and Architecture to create technically-informed stories
|
3. The workflow uses both PRD and Architecture to create technically-informed stories
|
||||||
|
|
||||||
**Implementation Readiness Check** *(Highly Recommended)*
|
**Implementation Readiness Check** *(Highly Recommended)*
|
||||||
1. Invoke the **Architect agent** (`/bmad-architect`) in a new chat
|
1. Invoke the **Architect agent** (`bmad-architect`) in a new chat
|
||||||
2. Run `bmad-check-implementation-readiness` (`/bmad-check-implementation-readiness`)
|
2. Run `bmad-check-implementation-readiness` (`bmad-check-implementation-readiness`)
|
||||||
3. Validates cohesion across all planning documents
|
3. Validates cohesion across all planning documents
|
||||||
|
|
||||||
## Step 2: Build Your Project
|
## Step 2: Build Your Project
|
||||||
|
|
@ -178,7 +180,7 @@ Once planning is complete, move to implementation. **Each workflow should run in
|
||||||
|
|
||||||
### Initialize Sprint Planning
|
### Initialize Sprint Planning
|
||||||
|
|
||||||
Invoke the **SM agent** (`/bmad-sm`) and run `bmad-sprint-planning` (`/bmad-sprint-planning`). This creates `sprint-status.yaml` to track all epics and stories.
|
Invoke the **SM agent** (`bmad-sm`) and run `bmad-sprint-planning` (`bmad-sprint-planning`). This creates `sprint-status.yaml` to track all epics and stories.
|
||||||
|
|
||||||
### The Build Cycle
|
### The Build Cycle
|
||||||
|
|
||||||
|
|
@ -186,11 +188,11 @@ For each story, repeat this cycle with fresh chats:
|
||||||
|
|
||||||
| Step | Agent | Workflow | Command | Purpose |
|
| Step | Agent | Workflow | Command | Purpose |
|
||||||
| ---- | ----- | -------------- | -------------------------- | ---------------------------------- |
|
| ---- | ----- | -------------- | -------------------------- | ---------------------------------- |
|
||||||
| 1 | SM | `bmad-create-story` | `/bmad-create-story` | Create story file from epic |
|
| 1 | SM | `bmad-create-story` | `bmad-create-story` | Create story file from epic |
|
||||||
| 2 | DEV | `bmad-dev-story` | `/bmad-dev-story` | Implement the story |
|
| 2 | DEV | `bmad-dev-story` | `bmad-dev-story` | Implement the story |
|
||||||
| 3 | DEV | `bmad-code-review` | `/bmad-code-review` | Quality validation *(recommended)* |
|
| 3 | DEV | `bmad-code-review` | `bmad-code-review` | Quality validation *(recommended)* |
|
||||||
|
|
||||||
After completing all stories in an epic, invoke the **SM agent** (`/bmad-sm`) and run `bmad-retrospective` (`/bmad-retrospective`).
|
After completing all stories in an epic, invoke the **SM agent** (`bmad-sm`) and run `bmad-retrospective` (`bmad-retrospective`).
|
||||||
|
|
||||||
## What You've Accomplished
|
## What You've Accomplished
|
||||||
|
|
||||||
|
|
@ -221,16 +223,16 @@ your-project/
|
||||||
|
|
||||||
| Workflow | Command | Agent | Purpose |
|
| Workflow | Command | Agent | Purpose |
|
||||||
| ------------------------------------- | ------------------------------------------ | --------- | ----------------------------------------------- |
|
| ------------------------------------- | ------------------------------------------ | --------- | ----------------------------------------------- |
|
||||||
| **`bmad-help`** ⭐ | `/bmad-help` | Any | **Your intelligent guide — ask anything!** |
|
| **`bmad-help`** ⭐ | `bmad-help` | Any | **Your intelligent guide — ask anything!** |
|
||||||
| `bmad-create-prd` | `/bmad-create-prd` | PM | Create Product Requirements Document |
|
| `bmad-create-prd` | `bmad-create-prd` | PM | Create Product Requirements Document |
|
||||||
| `bmad-create-architecture` | `/bmad-create-architecture` | Architect | Create architecture document |
|
| `bmad-create-architecture` | `bmad-create-architecture` | Architect | Create architecture document |
|
||||||
| `bmad-generate-project-context` | `/bmad-generate-project-context` | Analyst | Create project context file |
|
| `bmad-generate-project-context` | `bmad-generate-project-context` | Analyst | Create project context file |
|
||||||
| `bmad-create-epics-and-stories` | `/bmad-create-epics-and-stories` | PM | Break down PRD into epics |
|
| `bmad-create-epics-and-stories` | `bmad-create-epics-and-stories` | PM | Break down PRD into epics |
|
||||||
| `bmad-check-implementation-readiness` | `/bmad-check-implementation-readiness` | Architect | Validate planning cohesion |
|
| `bmad-check-implementation-readiness` | `bmad-check-implementation-readiness` | Architect | Validate planning cohesion |
|
||||||
| `bmad-sprint-planning` | `/bmad-sprint-planning` | SM | Initialize sprint tracking |
|
| `bmad-sprint-planning` | `bmad-sprint-planning` | SM | Initialize sprint tracking |
|
||||||
| `bmad-create-story` | `/bmad-create-story` | SM | Create a story file |
|
| `bmad-create-story` | `bmad-create-story` | SM | Create a story file |
|
||||||
| `bmad-dev-story` | `/bmad-dev-story` | DEV | Implement a story |
|
| `bmad-dev-story` | `bmad-dev-story` | DEV | Implement a story |
|
||||||
| `bmad-code-review` | `/bmad-code-review` | DEV | Review implemented code |
|
| `bmad-code-review` | `bmad-code-review` | DEV | Review implemented code |
|
||||||
|
|
||||||
## Common Questions
|
## Common Questions
|
||||||
|
|
||||||
|
|
@ -238,10 +240,10 @@ your-project/
|
||||||
Only for BMad Method and Enterprise tracks. Quick Flow skips from tech-spec to implementation.
|
Only for BMad Method and Enterprise tracks. Quick Flow skips from tech-spec to implementation.
|
||||||
|
|
||||||
**Can I change my plan later?**
|
**Can I change my plan later?**
|
||||||
Yes. The SM agent has a `bmad-correct-course` workflow (`/bmad-correct-course`) for handling scope changes.
|
Yes. The SM agent has a `bmad-correct-course` workflow (`bmad-correct-course`) for handling scope changes.
|
||||||
|
|
||||||
**What if I want to brainstorm first?**
|
**What if I want to brainstorm first?**
|
||||||
Invoke the Analyst agent (`/bmad-analyst`) and run `bmad-brainstorming` (`/bmad-brainstorming`) before starting your PRD.
|
Invoke the Analyst agent (`bmad-analyst`) and run `bmad-brainstorming` (`bmad-brainstorming`) before starting your PRD.
|
||||||
|
|
||||||
**Do I need to follow a strict order?**
|
**Do I need to follow a strict order?**
|
||||||
Not strictly. Once you learn the flow, you can run workflows directly using the Quick Reference above.
|
Not strictly. Once you learn the flow, you can run workflows directly using the Quick Reference above.
|
||||||
|
|
@ -249,7 +251,7 @@ Not strictly. Once you learn the flow, you can run workflows directly using the
|
||||||
## Getting Help
|
## Getting Help
|
||||||
|
|
||||||
:::tip[First Stop: BMad-Help]
|
:::tip[First Stop: BMad-Help]
|
||||||
**Run `/bmad-help` anytime** — it's the fastest way to get unstuck. Ask it anything:
|
**Invoke `bmad-help` anytime** — it's the fastest way to get unstuck. Ask it anything:
|
||||||
- "What should I do after installing?"
|
- "What should I do after installing?"
|
||||||
- "I'm stuck on workflow X"
|
- "I'm stuck on workflow X"
|
||||||
- "What are my options for Y?"
|
- "What are my options for Y?"
|
||||||
|
|
@ -264,10 +266,10 @@ BMad-Help inspects your project, detects what you've completed, and tells you ex
|
||||||
## Key Takeaways
|
## Key Takeaways
|
||||||
|
|
||||||
:::tip[Remember These]
|
:::tip[Remember These]
|
||||||
- **Start with `/bmad-help`** — Your intelligent guide that knows your project and options
|
- **Start with `bmad-help`** — Your intelligent guide that knows your project and options
|
||||||
- **Always use fresh chats** — Start a new chat for each workflow
|
- **Always use fresh chats** — Start a new chat for each workflow
|
||||||
- **Track matters** — Quick Flow uses quick-spec; Method/Enterprise need PRD and architecture
|
- **Track matters** — Quick Flow uses `bmad-quick-dev`; Method/Enterprise need PRD and architecture
|
||||||
- **BMad-Help runs automatically** — Every workflow ends with guidance on what's next
|
- **BMad-Help runs automatically** — Every workflow ends with guidance on what's next
|
||||||
:::
|
:::
|
||||||
|
|
||||||
Ready to start? Install BMad, run `/bmad-help`, and let your intelligent guide lead the way.
|
Ready to start? Install BMad, invoke `bmad-help`, and let your intelligent guide lead the way.
|
||||||
|
|
|
||||||
|
|
@ -148,7 +148,7 @@ your-project/
|
||||||
| ----------------- | ----------------------------- |
|
| ----------------- | ----------------------------- |
|
||||||
| **Index/Landing** | `core-concepts/index.md` |
|
| **Index/Landing** | `core-concepts/index.md` |
|
||||||
| **Concept** | `what-are-agents.md` |
|
| **Concept** | `what-are-agents.md` |
|
||||||
| **Feature** | `quick-flow.md` |
|
| **Feature** | `quick-dev.md` |
|
||||||
| **Philosophy** | `why-solutioning-matters.md` |
|
| **Philosophy** | `why-solutioning-matters.md` |
|
||||||
| **FAQ** | `established-projects-faq.md` |
|
| **FAQ** | `established-projects-faq.md` |
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -8,10 +8,10 @@ sidebar:
|
||||||
|
|
||||||
## 问题
|
## 问题
|
||||||
|
|
||||||
- [我必须先运行 document-project 吗?](#do-i-have-to-run-document-project-first)
|
- [我必须先运行 document-project 吗?](#我必须先运行-document-project-吗)
|
||||||
- [如果我忘记运行 document-project 怎么办?](#what-if-i-forget-to-run-document-project)
|
- [如果我忘记运行 document-project 怎么办?](#如果我忘记运行-document-project-怎么办)
|
||||||
- [我可以在既有项目上使用快速流程吗?](#can-i-use-quick-flow-for-established-projects)
|
- [我可以在既有项目上使用快速流程吗?](#我可以在既有项目上使用快速流程吗)
|
||||||
- [如果我的现有代码不遵循最佳实践怎么办?](#what-if-my-existing-code-doesnt-follow-best-practices)
|
- [如果我的现有代码不遵循最佳实践怎么办?](#如果我的现有代码不遵循最佳实践怎么办)
|
||||||
|
|
||||||
### 我必须先运行 document-project 吗?
|
### 我必须先运行 document-project 吗?
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -5,7 +5,7 @@ sidebar:
|
||||||
order: 7
|
order: 7
|
||||||
---
|
---
|
||||||
|
|
||||||
[`project-context.md`](project-context.md) 文件是您的项目面向 AI 智能体的实施指南。类似于其他开发系统中的"宪法",它记录了确保所有工作流中代码生成一致的规则、模式和偏好。
|
`project-context.md` 文件是您的项目面向 AI 智能体的实施指南。类似于其他开发系统中的"宪法",它记录了确保所有工作流中代码生成一致的规则、模式和偏好。
|
||||||
|
|
||||||
## 它的作用
|
## 它的作用
|
||||||
|
|
||||||
|
|
@ -14,11 +14,11 @@ AI 智能体不断做出实施决策——遵循哪些模式、如何组织代
|
||||||
- 在不同的用户故事中做出不一致的决策
|
- 在不同的用户故事中做出不一致的决策
|
||||||
- 错过项目特定的需求或约束
|
- 错过项目特定的需求或约束
|
||||||
|
|
||||||
[`project-context.md`](project-context.md) 文件通过以简洁、针对 LLM 优化的格式记录智能体需要了解的内容来解决这个问题。
|
`project-context.md` 文件通过以简洁、针对 LLM 优化的格式记录智能体需要了解的内容来解决这个问题。
|
||||||
|
|
||||||
## 它的工作原理
|
## 它的工作原理
|
||||||
|
|
||||||
每个实施工作流都会自动加载 [`project-context.md`](project-context.md)(如果存在)。架构师工作流也会加载它,以便在设计架构时尊重您的技术偏好。
|
每个实施工作流都会自动加载 `project-context.md`(如果存在)。架构师工作流也会加载它,以便在设计架构时尊重您的技术偏好。
|
||||||
|
|
||||||
**由以下工作流加载:**
|
**由以下工作流加载:**
|
||||||
- `create-architecture` — 在解决方案设计期间尊重技术偏好
|
- `create-architecture` — 在解决方案设计期间尊重技术偏好
|
||||||
|
|
@ -30,7 +30,7 @@ AI 智能体不断做出实施决策——遵循哪些模式、如何组织代
|
||||||
|
|
||||||
## 何时创建
|
## 何时创建
|
||||||
|
|
||||||
[`project-context.md`](project-context.md) 文件在项目的任何阶段都很有用:
|
`project-context.md` 文件在项目的任何阶段都很有用:
|
||||||
|
|
||||||
| 场景 | 何时创建 | 目的 |
|
| 场景 | 何时创建 | 目的 |
|
||||||
|----------|----------------|---------|
|
|----------|----------------|---------|
|
||||||
|
|
@ -127,7 +127,7 @@ touch _bmad-output/project-context.md
|
||||||
|
|
||||||
## 为什么重要
|
## 为什么重要
|
||||||
|
|
||||||
没有 [`project-context.md`](project-context.md),智能体会做出可能与您的项目不匹配的假设:
|
没有 `project-context.md`,智能体会做出可能与您的项目不匹配的假设:
|
||||||
|
|
||||||
| 没有上下文 | 有上下文 |
|
| 没有上下文 | 有上下文 |
|
||||||
|----------------|--------------|
|
|----------------|--------------|
|
||||||
|
|
@ -143,7 +143,7 @@ touch _bmad-output/project-context.md
|
||||||
|
|
||||||
## 编辑和更新
|
## 编辑和更新
|
||||||
|
|
||||||
[`project-context.md`](project-context.md) 文件是一个动态文档。在以下情况下更新它:
|
`project-context.md` 文件是一个动态文档。在以下情况下更新它:
|
||||||
|
|
||||||
- 架构决策发生变化
|
- 架构决策发生变化
|
||||||
- 建立了新的约定
|
- 建立了新的约定
|
||||||
|
|
|
||||||
|
|
@ -0,0 +1,73 @@
|
||||||
|
---
|
||||||
|
title: "快速开发"
|
||||||
|
description: 在不牺牲输出质量检查点的情况下减少人机交互的摩擦
|
||||||
|
sidebar:
|
||||||
|
order: 2
|
||||||
|
---
|
||||||
|
|
||||||
|
输入意图,输出代码变更,尽可能少的人机交互轮次——同时不牺牲质量。
|
||||||
|
|
||||||
|
它让模型在检查点之间运行更长时间,只有在任务无法在没有人类判断的情况下安全继续时,或者需要审查最终结果时,才会让人类介入。
|
||||||
|
|
||||||
|

|
||||||
|
|
||||||
|
## 为什么需要这个功能
|
||||||
|
|
||||||
|
人机交互轮次既必要又昂贵。
|
||||||
|
|
||||||
|
当前的 LLM 仍然会以可预测的方式失败:它们误读意图、用自信的猜测填补空白、偏离到不相关的工作中,并生成嘈杂的审查输出。与此同时,持续的人工干预限制了开发速度。人类注意力是瓶颈。
|
||||||
|
|
||||||
|
`bmad-quick-dev` 重新平衡了这种权衡。它信任模型在更长的时间段内无监督运行,但前提是工作流已经创建了足够强的边界来确保安全。
|
||||||
|
|
||||||
|
## 核心设计
|
||||||
|
|
||||||
|
### 1. 首先压缩意图
|
||||||
|
|
||||||
|
工作流首先让人类和模型将请求压缩成一个连贯的目标。输入可以从粗略的意图表达开始,但在工作流自主运行之前,它必须变得足够小、足够清晰、没有矛盾。
|
||||||
|
|
||||||
|
意图可以以多种形式出现:几句话、一个错误追踪器链接、计划模式的输出、从聊天会话复制的文本,甚至来自 BMAD 自己的 `epics.md` 的故事编号。在最后一种情况下,工作流不会理解 BMAD 故事跟踪语义,但它仍然可以获取故事本身并继续执行。
|
||||||
|
|
||||||
|
这个工作流并不会消除人类的控制。它将其重新定位到少数几个高价值时刻:
|
||||||
|
|
||||||
|
- **意图澄清** - 将混乱的请求转化为一个没有隐藏矛盾的连贯目标
|
||||||
|
- **规范审批** - 确认冻结的理解是正确要构建的东西
|
||||||
|
- **最终产品审查** - 主要检查点,人类在最后决定结果是否可接受
|
||||||
|
|
||||||
|
### 2. 路由到最小安全路径
|
||||||
|
|
||||||
|
一旦目标清晰,工作流就会决定这是一个真正的单次变更还是需要更完整的路径。小的、零爆炸半径的变更可以直接进入实现。其他所有内容都需要经过规划,这样模型在独自运行更长时间之前就有更强的边界。
|
||||||
|
|
||||||
|
### 3. 以更少的监督运行更长时间
|
||||||
|
|
||||||
|
在那个路由决策之后,模型可以自己承担更多工作。在更完整的路径上,批准的规范成为模型在较少监督下执行的边界,这正是设计的全部意义。
|
||||||
|
|
||||||
|
### 4. 在正确的层诊断失败
|
||||||
|
|
||||||
|
如果实现是错误的,因为意图是错误的,修补代码是错误的修复。如果代码是错误的,因为规范太弱,修补差异也是错误的修复。工作流旨在诊断失败从系统的哪个层面进入,回到那个层面,并从那里重新生成。
|
||||||
|
|
||||||
|
审查发现用于确定问题来自意图、规范生成还是本地实现。只有真正的本地问题才会在本地修补。
|
||||||
|
|
||||||
|
### 5. 只在需要时让人类回来
|
||||||
|
|
||||||
|
意图访谈是人机交互,但它不是与重复检查点相同类型的中断。工作流试图将那些重复检查点保持在最低限度。在初始意图塑造之后,人类主要在工作流无法在没有判断的情况下安全继续时,以及在最后需要审查结果时才回来。
|
||||||
|
|
||||||
|
- **意图差距解决** - 当审查证明工作流无法安全推断出原本意图时重新介入
|
||||||
|
|
||||||
|
其他一切都是更长自主执行的候选。这种权衡是经过深思熟虑的。旧模式在持续监督上花费更多的人类注意力。快速开发在模型上投入更多信任,但将人类注意力保留在人类推理具有最高杠杆作用的时刻。
|
||||||
|
|
||||||
|
## 为什么审查系统很重要
|
||||||
|
|
||||||
|
审查阶段不仅仅是为了发现错误。它是为了在不破坏动力的情况下路由修正。
|
||||||
|
|
||||||
|
这个工作流在能够生成子智能体的平台上效果最好,或者至少可以通过命令行调用另一个 LLM 并等待结果。如果你的平台本身不支持这一点,你可以添加一个技能来做。无上下文子智能体是审查设计的基石。
|
||||||
|
|
||||||
|
智能体审查经常以两种方式出错:
|
||||||
|
|
||||||
|
- 它们生成太多发现,迫使人类在噪音中筛选
|
||||||
|
- 它们通过提出不相关的问题并使每次运行变成临时清理项目来使当前变更脱轨
|
||||||
|
|
||||||
|
快速开发通过将审查视为分诊来解决这两个问题。
|
||||||
|
|
||||||
|
一些发现属于当前变更。一些不属于。如果一个发现是附带的而不是与当前工作有因果关系,工作流可以推迟它,而不是强迫人类立即处理它。这使运行保持专注,并防止随机的分支话题消耗注意力的预算。
|
||||||
|
|
||||||
|
那个分诊有时会不完美。这是可以接受的。通常,误判一些发现比用成千上万个低价值的审查评论淹没人类要好。系统正在优化信号质量,而不是详尽的召回率。
|
||||||
|
|
@ -1,93 +0,0 @@
|
||||||
---
|
|
||||||
title: "快速流程"
|
|
||||||
description: 小型变更的快速通道 - 跳过完整方法论
|
|
||||||
sidebar:
|
|
||||||
order: 1
|
|
||||||
---
|
|
||||||
|
|
||||||
跳过繁琐流程。快速流程通过两条命令将你从想法带到可运行的代码 - 无需产品简报、无需 PRD、无需架构文档。
|
|
||||||
|
|
||||||
## 何时使用
|
|
||||||
|
|
||||||
- Bug 修复和补丁
|
|
||||||
- 重构现有代码
|
|
||||||
- 小型、易于理解的功能
|
|
||||||
- 原型设计和探索性开发
|
|
||||||
- 单智能体工作,一名开发者可以掌控完整范围
|
|
||||||
|
|
||||||
## 何时不使用
|
|
||||||
|
|
||||||
- 需要利益相关者对齐的新产品或平台
|
|
||||||
- 跨越多个组件或团队的主要功能
|
|
||||||
- 需要架构决策的工作(数据库架构、API 契约、服务边界)
|
|
||||||
- 需求不明确或有争议的任何工作
|
|
||||||
|
|
||||||
:::caution[Scope Creep]
|
|
||||||
如果你启动快速流程后发现范围超出预期,`quick-dev` 会检测到并提供升级选项。你可以在任何时间切换到完整的 PRD 工作流程,而不会丢失你的工作。
|
|
||||||
:::
|
|
||||||
|
|
||||||
## 工作原理
|
|
||||||
|
|
||||||
快速流程有两条命令,每条都由结构化的工作流程支持。你可以一起运行它们,也可以独立运行。
|
|
||||||
|
|
||||||
### quick-spec:规划
|
|
||||||
|
|
||||||
运行 `quick-spec`,Barry(Quick Flow 智能体)会引导你完成对话式发现过程:
|
|
||||||
|
|
||||||
1. **理解** - 你描述想要构建的内容。Barry 扫描代码库以提出有针对性的问题,然后捕获问题陈述、解决方案方法和范围边界。
|
|
||||||
2. **调查** - Barry 读取相关文件,映射代码模式,识别需要修改的文件,并记录技术上下文。
|
|
||||||
3. **生成** - 生成完整的技术规范,包含有序的实现任务(具体文件路径和操作)、Given/When/Then 格式的验收标准、测试策略和依赖项。
|
|
||||||
4. **审查** - 展示完整规范供你确认。你可以在最终定稿前进行编辑、提问、运行对抗性审查或使用高级启发式方法进行优化。
|
|
||||||
|
|
||||||
输出是一个 `tech-spec-{slug}.md` 文件,保存到项目的实现工件文件夹中。它包含新智能体实现功能所需的一切 - 无需对话历史。
|
|
||||||
|
|
||||||
### quick-dev:构建
|
|
||||||
|
|
||||||
运行 `quick-dev`,Barry 实现工作。它以两种模式运行:
|
|
||||||
|
|
||||||
- **技术规范模式** - 指向规范文件(`quick-dev tech-spec-auth.md`),它按顺序执行每个任务,编写测试,并验证验收标准。
|
|
||||||
- **直接模式** - 直接给出指令(`quick-dev "refactor the auth middleware"`),它收集上下文,构建心智计划,并执行。
|
|
||||||
|
|
||||||
实现后,`quick-dev` 针对所有任务和验收标准运行自检审计,然后触发差异的对抗性代码审查。发现的问题会呈现给你,以便在收尾前解决。
|
|
||||||
|
|
||||||
:::tip[Fresh Context]
|
|
||||||
为获得最佳效果,在完成 `quick-spec` 后,在新对话中运行 `quick-dev`。这为实现智能体提供了专注于构建的干净上下文。
|
|
||||||
:::
|
|
||||||
|
|
||||||
## 快速流程跳过的内容
|
|
||||||
|
|
||||||
完整的 BMad 方法在编写任何代码之前会生成产品简报、PRD、架构文档和 Epic/Story 分解。Quick Flow 用单个技术规范替代所有这些。这之所以有效,是因为 Quick Flow 针对以下变更:
|
|
||||||
|
|
||||||
- 产品方向已确立
|
|
||||||
- 架构决策已做出
|
|
||||||
- 单个开发者可以推理完整范围
|
|
||||||
- 需求可以在一次对话中涵盖
|
|
||||||
|
|
||||||
## 升级到完整 BMad 方法
|
|
||||||
|
|
||||||
快速流程包含内置的范围检测护栏。当你使用直接请求运行 `quick-dev` 时,它会评估多组件提及、系统级语言和方法不确定性等信号。如果检测到工作超出快速流程范围:
|
|
||||||
|
|
||||||
- **轻度升级** - 建议先运行 `quick-spec` 创建计划
|
|
||||||
- **重度升级** - 建议切换到完整的 BMad 方法 PRD 流程
|
|
||||||
|
|
||||||
你也可以随时手动升级。你的技术规范工作会继续推进 - 它将成为更广泛规划过程的输入,而不是被丢弃。
|
|
||||||
|
|
||||||
---
|
|
||||||
## 术语说明
|
|
||||||
|
|
||||||
- **Quick Flow**:快速流程。BMad 方法中用于小型变更的简化工作流程,跳过完整的产品规划和架构文档阶段。
|
|
||||||
- **PRD**:Product Requirements Document,产品需求文档。详细描述产品功能、需求和验收标准的文档。
|
|
||||||
- **Product Brief**:产品简报。概述产品愿景、目标和范围的高层文档。
|
|
||||||
- **Architecture doc**:架构文档。描述系统架构、组件设计和技术决策的文档。
|
|
||||||
- **Epic/Story**:史诗/故事。敏捷开发中的工作单元,Epic 是大型功能集合,Story 是具体用户故事。
|
|
||||||
- **agent**:智能体。在人工智能与编程文档中,指具备自主决策或执行能力的单元。
|
|
||||||
- **Scope Creep**:范围蔓延。项目范围在开发过程中逐渐扩大,超出原始计划的现象。
|
|
||||||
- **tech-spec**:技术规范。详细描述技术实现方案、任务分解和验收标准的文档。
|
|
||||||
- **slug**:短标识符。用于生成 URL 或文件名的简短、唯一的字符串标识。
|
|
||||||
- **Given/When/Then**:一种行为驱动开发(BDD)的测试场景描述格式,用于定义验收标准。
|
|
||||||
- **adversarial review**:对抗性审查。一种代码审查方法,模拟攻击者视角以发现潜在问题和漏洞。
|
|
||||||
- **elicitation**:启发式方法。通过提问和对话引导来获取信息、澄清需求的技术。
|
|
||||||
- **stakeholder**:利益相关者。对项目有利益或影响的个人或组织。
|
|
||||||
- **API contracts**:API 契约。定义 API 接口规范、请求/响应格式和行为约定的文档。
|
|
||||||
- **service boundaries**:服务边界。定义服务职责范围和边界的架构概念。
|
|
||||||
- **spikes**:探索性开发。用于探索技术可行性或解决方案的短期研究活动。
|
|
||||||
|
|
@ -128,7 +128,7 @@ prompts:
|
||||||
|
|
||||||
### 3. 应用您的更改
|
### 3. 应用您的更改
|
||||||
|
|
||||||
编辑后,重新编译智能体以应用更改:
|
编辑后,重新安装以应用更改:
|
||||||
|
|
||||||
```bash
|
```bash
|
||||||
npx bmad-method install
|
npx bmad-method install
|
||||||
|
|
@ -138,17 +138,16 @@ npx bmad-method install
|
||||||
|
|
||||||
| Option | What It Does |
|
| Option | What It Does |
|
||||||
| ---------------------------- | ------------------------------------------------------------------- |
|
| ---------------------------- | ------------------------------------------------------------------- |
|
||||||
| **Quick Update** | 将所有模块更新到最新版本并重新编译所有智能体 |
|
| **Quick Update** | 将所有模块更新到最新版本并应用自定义配置 |
|
||||||
| **Recompile Agents** | 仅应用自定义配置,不更新模块文件 |
|
|
||||||
| **Modify BMad Installation** | 用于添加或删除模块的完整安装流程 |
|
| **Modify BMad Installation** | 用于添加或删除模块的完整安装流程 |
|
||||||
|
|
||||||
对于仅自定义配置的更改,**Recompile Agents** 是最快的选项。
|
对于仅自定义配置的更改,**Quick Update** 是最快的选项。
|
||||||
|
|
||||||
## 故障排除
|
## 故障排除
|
||||||
|
|
||||||
**更改未生效?**
|
**更改未生效?**
|
||||||
|
|
||||||
- 运行 `npx bmad-method install` 并选择 **Recompile Agents** 以应用更改
|
- 运行 `npx bmad-method install` 并选择 **Quick Update** 以应用更改
|
||||||
- 检查您的 YAML 语法是否有效(缩进很重要)
|
- 检查您的 YAML 语法是否有效(缩进很重要)
|
||||||
- 验证您编辑的是该智能体正确的 `.customize.yaml` 文件
|
- 验证您编辑的是该智能体正确的 `.customize.yaml` 文件
|
||||||
|
|
||||||
|
|
@ -161,7 +160,7 @@ npx bmad-method install
|
||||||
**需要重置智能体?**
|
**需要重置智能体?**
|
||||||
|
|
||||||
- 清空或删除智能体的 `.customize.yaml` 文件
|
- 清空或删除智能体的 `.customize.yaml` 文件
|
||||||
- 运行 `npx bmad-method install` 并选择 **Recompile Agents** 以恢复默认设置
|
- 运行 `npx bmad-method install` 并选择 **Quick Update** 以恢复默认设置
|
||||||
|
|
||||||
## 工作流自定义
|
## 工作流自定义
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -61,16 +61,16 @@ sidebar:
|
||||||
|
|
||||||
### BMad-Help:你的起点
|
### BMad-Help:你的起点
|
||||||
|
|
||||||
**随时运行 `/bmad-help`,当你不确定下一步该做什么时。** 这个智能指南:
|
**随时运行 `bmad-help`,当你不确定下一步该做什么时。** 这个智能指南:
|
||||||
|
|
||||||
- 检查你的项目以查看已经完成了什么
|
- 检查你的项目以查看已经完成了什么
|
||||||
- 根据你安装的模块显示选项
|
- 根据你安装的模块显示选项
|
||||||
- 理解自然语言查询
|
- 理解自然语言查询
|
||||||
|
|
||||||
```
|
```
|
||||||
/bmad-help 我有一个现有的 Rails 应用,我应该从哪里开始?
|
bmad-help 我有一个现有的 Rails 应用,我应该从哪里开始?
|
||||||
/bmad-help quick-flow 和完整方法有什么区别?
|
bmad-help quick-flow 和完整方法有什么区别?
|
||||||
/bmad-help 显示我有哪些可用的工作流程
|
bmad-help 显示我有哪些可用的工作流程
|
||||||
```
|
```
|
||||||
|
|
||||||
BMad-Help 还会在**每个工作流程结束时自动运行**,提供关于下一步该做什么的清晰指导。
|
BMad-Help 还会在**每个工作流程结束时自动运行**,提供关于下一步该做什么的清晰指导。
|
||||||
|
|
@ -81,7 +81,7 @@ BMad-Help 还会在**每个工作流程结束时自动运行**,提供关于下
|
||||||
|
|
||||||
| 范围 | 推荐方法 |
|
| 范围 | 推荐方法 |
|
||||||
| ------------------------------ | ----------------------------------------------------------------------------------------------------------------- |
|
| ------------------------------ | ----------------------------------------------------------------------------------------------------------------- |
|
||||||
| **小型更新或添加** | 使用 `quick-flow-solo-dev` 创建技术规范并实施变更。完整的四阶段 BMad Method 可能有些过度。 |
|
| **小型更新或添加** | 运行 `bmad-quick-dev` 在单个工作流中澄清意图、规划、实现和审查。完整的四阶段 BMad Method 可能有些过度。 |
|
||||||
| **重大变更或添加** | 从 BMad Method 开始,根据需要应用或多或少的严谨性。 |
|
| **重大变更或添加** | 从 BMad Method 开始,根据需要应用或多或少的严谨性。 |
|
||||||
|
|
||||||
### 在创建 PRD 期间
|
### 在创建 PRD 期间
|
||||||
|
|
|
||||||
|
|
@ -7,7 +7,7 @@ sidebar:
|
||||||
|
|
||||||
## 从这里开始:BMad-Help
|
## 从这里开始:BMad-Help
|
||||||
|
|
||||||
**获取关于 BMad 答案的最快方式是 `/bmad-help`。** 这个智能指南可以回答超过 80% 的问题,并且直接在您的 IDE 中可用,方便您工作时使用。
|
**获取关于 BMad 答案的最快方式是 `bmad-help`。** 这个智能指南可以回答超过 80% 的问题,并且直接在您的 IDE 中可用,方便您工作时使用。
|
||||||
|
|
||||||
BMad-Help 不仅仅是一个查询工具——它:
|
BMad-Help 不仅仅是一个查询工具——它:
|
||||||
- **检查您的项目**以查看已完成的内容
|
- **检查您的项目**以查看已完成的内容
|
||||||
|
|
@ -21,16 +21,16 @@ BMad-Help 不仅仅是一个查询工具——它:
|
||||||
只需使用斜杠命令运行它:
|
只需使用斜杠命令运行它:
|
||||||
|
|
||||||
```
|
```
|
||||||
/bmad-help
|
bmad-help
|
||||||
```
|
```
|
||||||
|
|
||||||
或者结合自然语言查询:
|
或者结合自然语言查询:
|
||||||
|
|
||||||
```
|
```
|
||||||
/bmad-help 我有一个 SaaS 想法并且知道所有功能。我应该从哪里开始?
|
bmad-help 我有一个 SaaS 想法并且知道所有功能。我应该从哪里开始?
|
||||||
/bmad-help 我在 UX 设计方面有哪些选择?
|
bmad-help 我在 UX 设计方面有哪些选择?
|
||||||
/bmad-help 我在 PRD 工作流上卡住了
|
bmad-help 我在 PRD 工作流上卡住了
|
||||||
/bmad-help 向我展示到目前为止已完成的内容
|
bmad-help 向我展示到目前为止已完成的内容
|
||||||
```
|
```
|
||||||
|
|
||||||
BMad-Help 会回应:
|
BMad-Help 会回应:
|
||||||
|
|
@ -81,7 +81,7 @@ https://bmad-code-org.github.io/BMAD-METHOD/llms-full.txt
|
||||||
:::note[示例]
|
:::note[示例]
|
||||||
**问:** "告诉我用 BMad 构建某物的最快方式"
|
**问:** "告诉我用 BMad 构建某物的最快方式"
|
||||||
|
|
||||||
**答:** 使用快速流程:运行 `quick-spec` 编写技术规范,然后运行 `quick-dev` 实现它——跳过完整的规划阶段。
|
**答:** 使用快速流程:运行 `bmad-quick-dev` — 它在单个工作流中澄清意图、规划、实现、审查和呈现结果,跳过完整的规划阶段。
|
||||||
:::
|
:::
|
||||||
|
|
||||||
## 您将获得什么
|
## 您将获得什么
|
||||||
|
|
|
||||||
|
|
@ -77,7 +77,7 @@ your-project/
|
||||||
|
|
||||||
## 验证安装
|
## 验证安装
|
||||||
|
|
||||||
运行 `/bmad-help` 来验证一切正常并查看下一步操作。
|
运行 `bmad-help` 来验证一切正常并查看下一步操作。
|
||||||
|
|
||||||
**BMad-Help 是你的智能向导**,它会:
|
**BMad-Help 是你的智能向导**,它会:
|
||||||
- 确认你的安装正常工作
|
- 确认你的安装正常工作
|
||||||
|
|
@ -86,8 +86,8 @@ your-project/
|
||||||
|
|
||||||
你也可以向它提问:
|
你也可以向它提问:
|
||||||
```
|
```
|
||||||
/bmad-help 我刚安装完成,应该先做什么?
|
bmad-help 我刚安装完成,应该先做什么?
|
||||||
/bmad-help 对于 SaaS 项目我有哪些选项?
|
bmad-help 对于 SaaS 项目我有哪些选项?
|
||||||
```
|
```
|
||||||
|
|
||||||
## 故障排除
|
## 故障排除
|
||||||
|
|
|
||||||
|
|
@ -28,7 +28,7 @@ sidebar:
|
||||||
| `--modules <modules>` | 逗号分隔的模块 ID | `--modules bmm,bmb` |
|
| `--modules <modules>` | 逗号分隔的模块 ID | `--modules bmm,bmb` |
|
||||||
| `--tools <tools>` | 逗号分隔的工具/IDE ID(使用 `none` 跳过) | `--tools claude-code,cursor` 或 `--tools none` |
|
| `--tools <tools>` | 逗号分隔的工具/IDE ID(使用 `none` 跳过) | `--tools claude-code,cursor` 或 `--tools none` |
|
||||||
| `--custom-content <paths>` | 逗号分隔的自定义模块路径 | `--custom-content ~/my-module,~/another-module` |
|
| `--custom-content <paths>` | 逗号分隔的自定义模块路径 | `--custom-content ~/my-module,~/another-module` |
|
||||||
| `--action <type>` | 对现有安装的操作:`install`(默认)、`update`、`quick-update` 或 `compile-agents` | `--action quick-update` |
|
| `--action <type>` | 对现有安装的操作:`install`(默认)、`update` 或 `quick-update` | `--action quick-update` |
|
||||||
|
|
||||||
### 核心配置
|
### 核心配置
|
||||||
|
|
||||||
|
|
@ -121,7 +121,7 @@ npx bmad-method install \
|
||||||
## 安装结果
|
## 安装结果
|
||||||
|
|
||||||
- 项目中完全配置的 `_bmad/` 目录
|
- 项目中完全配置的 `_bmad/` 目录
|
||||||
- 为所选模块和工具编译的智能体和工作流
|
- 为所选模块和工具配置的智能体和工作流
|
||||||
- 用于生成产物的 `_bmad-output/` 文件夹
|
- 用于生成产物的 `_bmad-output/` 文件夹
|
||||||
|
|
||||||
## 验证和错误处理
|
## 验证和错误处理
|
||||||
|
|
@ -132,7 +132,7 @@ BMad 会验证所有提供的标志:
|
||||||
- **模块** — 对无效的模块 ID 发出警告(但不会失败)
|
- **模块** — 对无效的模块 ID 发出警告(但不会失败)
|
||||||
- **工具** — 对无效的工具 ID 发出警告(但不会失败)
|
- **工具** — 对无效的工具 ID 发出警告(但不会失败)
|
||||||
- **自定义内容** — 每个路径必须包含有效的 `module.yaml` 文件
|
- **自定义内容** — 每个路径必须包含有效的 `module.yaml` 文件
|
||||||
- **操作** — 必须是以下之一:`install`、`update`、`quick-update`、`compile-agents`
|
- **操作** — 必须是以下之一:`install`、`update`、`quick-update`
|
||||||
|
|
||||||
无效值将:
|
无效值将:
|
||||||
1. 显示错误并退出(对于目录等关键选项)
|
1. 显示错误并退出(对于目录等关键选项)
|
||||||
|
|
|
||||||
|
|
@ -2,7 +2,7 @@
|
||||||
title: "管理项目上下文"
|
title: "管理项目上下文"
|
||||||
description: 创建并维护 project-context.md 以指导 AI 智能体
|
description: 创建并维护 project-context.md 以指导 AI 智能体
|
||||||
sidebar:
|
sidebar:
|
||||||
order: 7
|
order: 8
|
||||||
---
|
---
|
||||||
|
|
||||||
使用 `project-context.md` 文件确保 AI 智能体在所有工作流程中遵循项目的技术偏好和实现规则。
|
使用 `project-context.md` 文件确保 AI 智能体在所有工作流程中遵循项目的技术偏好和实现规则。
|
||||||
|
|
|
||||||
|
|
@ -5,136 +5,103 @@ sidebar:
|
||||||
order: 5
|
order: 5
|
||||||
---
|
---
|
||||||
|
|
||||||
直接使用 **DEV 智能体**进行 bug 修复、重构或小型针对性更改,这些操作不需要完整的 BMad Method 或 Quick Flow。
|
使用 **Quick Dev** 进行 bug 修复、重构或小型针对性更改,这些操作不需要完整的 BMad Method。
|
||||||
|
|
||||||
## 何时使用此方法
|
## 何时使用此方法
|
||||||
|
|
||||||
- 原因明确且已知的 bug 修复
|
- 原因明确且已知的 bug 修复
|
||||||
- 包含在少数文件中的小型重构(重命名、提取、重组)
|
- 包含在少数文件中的小型重构(重命名、提取、重组)
|
||||||
- 次要功能调整或配置更改
|
- 次要功能调整或配置更改
|
||||||
- 探索性工作,以了解不熟悉的代码库
|
- 依赖更新
|
||||||
|
|
||||||
:::note[前置条件]
|
:::note[前置条件]
|
||||||
- 已安装 BMad Method(`npx bmad-method install`)
|
- 已安装 BMad Method(`npx bmad-method install`)
|
||||||
- AI 驱动的 IDE(Claude Code、Cursor 或类似工具)
|
- AI 驱动的 IDE(Claude Code、Cursor 或类似工具)
|
||||||
:::
|
:::
|
||||||
|
|
||||||
## 选择你的方法
|
|
||||||
|
|
||||||
| 情况 | 智能体 | 原因 |
|
|
||||||
| --- | --- | --- |
|
|
||||||
| 修复特定 bug 或进行小型、范围明确的更改 | **DEV agent** | 直接进入实现,无需规划开销 |
|
|
||||||
| 更改涉及多个文件,或希望先有书面计划 | **Quick Flow Solo Dev** | 在实现前创建 quick-spec,使智能体与你的标准保持一致 |
|
|
||||||
|
|
||||||
如果不确定,请从 DEV 智能体开始。如果更改范围扩大,你始终可以升级到 Quick Flow。
|
|
||||||
|
|
||||||
## 步骤
|
## 步骤
|
||||||
|
|
||||||
### 1. 加载 DEV 智能体
|
### 1. 启动新的聊天
|
||||||
|
|
||||||
在 AI IDE 中启动一个**新的聊天**,并使用斜杠命令加载 DEV 智能体:
|
在 AI IDE 中打开一个**新的聊天会话**。重用之前工作流的会话可能导致上下文冲突。
|
||||||
|
|
||||||
|
### 2. 提供你的意图
|
||||||
|
|
||||||
|
Quick Dev 接受自由形式的意图——可以在调用之前、同时或之后提供。示例:
|
||||||
|
|
||||||
```text
|
```text
|
||||||
/bmad-agent-bmm-dev
|
run quick-dev — 修复允许空密码的登录验证 bug。
|
||||||
```
|
```
|
||||||
|
|
||||||
这会将智能体的角色和能力加载到会话中。如果你决定需要 Quick Flow,请在新的聊天中加载 **Quick Flow Solo Dev** 智能体:
|
|
||||||
|
|
||||||
```text
|
```text
|
||||||
/bmad-agent-bmm-quick-flow-solo-dev
|
run quick-dev — fix https://github.com/org/repo/issues/42
|
||||||
```
|
```
|
||||||
|
|
||||||
加载 Solo Dev 智能体后,描述你的更改并要求它创建一个 **quick-spec**。智能体会起草一个轻量级规范,捕获你想要更改的内容和方式。批准 quick-spec 后,告诉智能体开始 **Quick Flow 开发周期**——它将实现更改、运行测试并执行自我审查,所有这些都由你刚刚批准的规范指导。
|
```text
|
||||||
|
run quick-dev — 实现 _bmad-output/implementation-artifacts/my-intent.md 中的意图
|
||||||
|
```
|
||||||
|
|
||||||
:::tip[新聊天]
|
```text
|
||||||
加载智能体时始终启动新的聊天会话。重用之前工作流的会话可能导致上下文冲突。
|
我觉得问题在 auth 中间件,它没有检查 token 过期。
|
||||||
:::
|
让我看看... 是的,src/auth/middleware.ts 第 47 行完全跳过了
|
||||||
|
exp 检查。run quick-dev
|
||||||
|
```
|
||||||
|
|
||||||
### 2. 描述更改
|
```text
|
||||||
|
run quick-dev
|
||||||
|
> 你想做什么?
|
||||||
|
重构 UserService 以使用 async/await 而不是回调。
|
||||||
|
```
|
||||||
|
|
||||||
用通俗语言告诉智能体你需要什么。具体说明问题,如果你知道相关代码的位置,也请说明。
|
纯文本、文件路径、GitHub issue URL、bug 跟踪器链接——任何 LLM 能解析为具体意图的内容都可以。
|
||||||
|
|
||||||
:::note[示例提示词]
|
### 3. 回答问题并批准
|
||||||
**Bug 修复** -- "修复允许空密码的登录验证 bug。验证逻辑位于 `src/auth/validate.ts`。"
|
|
||||||
|
|
||||||
**重构** -- "重构 UserService 以使用 async/await 而不是回调。"
|
Quick Dev 可能会提出澄清问题,或在实现之前呈现简短的规范供你批准。回答它的问题,并在你对计划满意时批准。
|
||||||
|
|
||||||
**配置更改** -- "更新 CI 流水线以在运行之间缓存 node_modules。"
|
### 4. 审查和推送
|
||||||
|
|
||||||
**依赖更新** -- "将 express 依赖升级到最新的 v5 版本并修复任何破坏性更改。"
|
Quick Dev 实现更改、审查自己的工作、修复问题,并在本地提交。完成后,它会在编辑器中打开受影响的文件。
|
||||||
:::
|
|
||||||
|
|
||||||
你不需要提供每个细节。智能体会读取相关的源文件,并在需要时提出澄清问题。
|
- 浏览 diff 以确认更改符合你的意图
|
||||||
|
|
||||||
### 3. 让智能体工作
|
|
||||||
|
|
||||||
智能体将:
|
|
||||||
|
|
||||||
- 读取并分析相关的源文件
|
|
||||||
- 提出解决方案并解释其推理
|
|
||||||
- 在受影响的文件中实现更改
|
|
||||||
- 如果存在测试套件,则运行项目的测试套件
|
|
||||||
|
|
||||||
如果你的项目有测试,智能体会在进行更改后自动运行它们,并迭代直到测试通过。对于没有测试套件的项目,请手动验证更改(运行应用、访问端点、检查输出)。
|
|
||||||
|
|
||||||
### 4. 审查和验证
|
|
||||||
|
|
||||||
在提交之前,审查更改内容:
|
|
||||||
|
|
||||||
- 通读 diff 以确认更改符合你的意图
|
|
||||||
- 自己运行应用程序或测试以再次检查
|
|
||||||
- 如果看起来有问题,告诉智能体需要修复什么——它可以在同一会话中迭代
|
- 如果看起来有问题,告诉智能体需要修复什么——它可以在同一会话中迭代
|
||||||
|
|
||||||
满意后,使用描述修复的清晰消息提交更改。
|
满意后,推送提交。Quick Dev 会提供推送和创建 PR 的选项。
|
||||||
|
|
||||||
:::caution[如果出现问题]
|
:::caution[如果出现问题]
|
||||||
如果提交的更改导致意外问题,请使用 `git revert HEAD` 干净地撤销最后一次提交。然后启动与 DEV 智能体的新聊天以尝试不同的方法。
|
如果推送的更改导致意外问题,请使用 `git revert HEAD` 干净地撤销最后一次提交。然后启动新聊天并再次运行 Quick Dev 以尝试不同的方法。
|
||||||
:::
|
:::
|
||||||
|
|
||||||
## 学习你的代码库
|
|
||||||
|
|
||||||
DEV 智能体也适用于探索不熟悉的代码。在新的聊天中加载它并提出问题:
|
|
||||||
|
|
||||||
:::note[示例提示词]
|
|
||||||
"解释此代码库中的身份验证系统是如何工作的。"
|
|
||||||
|
|
||||||
"向我展示 API 层中的错误处理发生在哪里。"
|
|
||||||
|
|
||||||
"`ProcessOrder` 函数的作用是什么,什么调用了它?"
|
|
||||||
:::
|
|
||||||
|
|
||||||
使用智能体了解你的项目,理解组件如何连接,并在进行更改之前探索不熟悉的区域。
|
|
||||||
|
|
||||||
## 你将获得
|
## 你将获得
|
||||||
|
|
||||||
- 已应用修复或重构的修改后的源文件
|
- 已应用修复或重构的修改后的源文件
|
||||||
- 通过的测试(如果你的项目有测试套件)
|
- 通过的测试(如果你的项目有测试套件)
|
||||||
- 描述更改的干净提交
|
- 带有约定式提交消息的准备推送的提交
|
||||||
|
|
||||||
不会生成规划产物——这就是这种方法的意义所在。
|
## 延迟工作
|
||||||
|
|
||||||
|
Quick Dev 保持每次运行聚焦于单一目标。如果你的请求包含多个独立目标,或者审查发现了与你的更改无关的已有问题,Quick Dev 会将它们延迟到一个文件中(实现产物目录中的 `deferred-work.md`),而不是试图一次解决所有问题。
|
||||||
|
|
||||||
|
运行后检查此文件——它是你的待办事项积压。每个延迟项目都可以稍后输入到新的 Quick Dev 运行中。
|
||||||
|
|
||||||
## 何时升级到正式规划
|
## 何时升级到正式规划
|
||||||
|
|
||||||
在以下情况下考虑使用 [Quick Flow](../explanation/quick-flow.md) 或完整的 BMad Method:
|
在以下情况下考虑使用完整的 BMad Method:
|
||||||
|
|
||||||
- 更改影响多个系统或需要在许多文件中进行协调更新
|
- 更改影响多个系统或需要在许多文件中进行协调更新
|
||||||
- 你不确定范围,需要规范来理清思路
|
- 你不确定范围,需要先进行需求发现
|
||||||
- 修复在工作过程中变得越来越复杂
|
|
||||||
- 你需要为团队记录文档或架构决策
|
- 你需要为团队记录文档或架构决策
|
||||||
|
|
||||||
|
参见 [Quick Dev](../explanation/quick-dev.md) 了解 Quick Dev 如何融入 BMad Method。
|
||||||
|
|
||||||
---
|
---
|
||||||
## 术语说明
|
## 术语说明
|
||||||
|
|
||||||
- **agent**:智能体。在人工智能与编程文档中,指具备自主决策或执行能力的单元。
|
- **Quick Dev**:快速开发。BMad Method 中的快速工作流,用于小型更改的完整实现周期。
|
||||||
- **quick-spec**:快速规范。一种轻量级的规范文档,用于快速捕获和描述更改的内容和方式。
|
|
||||||
- **Quick Flow**:快速流程。BMad Method 中的一种工作流程,用于快速实现小型更改。
|
|
||||||
- **refactoring**:重构。在不改变代码外部行为的情况下改进其内部结构的过程。
|
- **refactoring**:重构。在不改变代码外部行为的情况下改进其内部结构的过程。
|
||||||
- **breaking changes**:破坏性更改。可能导致现有代码或功能不再正常工作的更改。
|
- **breaking changes**:破坏性更改。可能导致现有代码或功能不再正常工作的更改。
|
||||||
- **test suite**:测试套件。一组用于验证软件功能的测试用例集合。
|
- **test suite**:测试套件。一组用于验证软件功能的测试用例集合。
|
||||||
- **CI pipeline**:CI 流水线。持续集成流水线,用于自动化构建、测试和部署代码。
|
- **CI pipeline**:CI 流水线。持续集成流水线,用于自动化构建、测试和部署代码。
|
||||||
- **async/await**:异步编程语法。JavaScript/TypeScript 中用于处理异步操作的语法糖。
|
|
||||||
- **callbacks**:回调函数。作为参数传递给其他函数并在适当时候被调用的函数。
|
|
||||||
- **endpoint**:端点。API 中可访问的特定 URL 路径。
|
|
||||||
- **diff**:差异。文件或代码更改前后的对比。
|
- **diff**:差异。文件或代码更改前后的对比。
|
||||||
- **commit**:提交。将更改保存到版本控制系统的操作。
|
- **commit**:提交。将更改保存到版本控制系统的操作。
|
||||||
- **git revert HEAD**:Git 命令,用于撤销最后一次提交。
|
- **conventional commit**:约定式提交。遵循标准格式的提交消息。
|
||||||
|
|
|
||||||
|
|
@ -2,7 +2,7 @@
|
||||||
title: "文档分片指南"
|
title: "文档分片指南"
|
||||||
description: 将大型 Markdown 文件拆分为更小的组织化文件,以更好地管理上下文
|
description: 将大型 Markdown 文件拆分为更小的组织化文件,以更好地管理上下文
|
||||||
sidebar:
|
sidebar:
|
||||||
order: 8
|
order: 9
|
||||||
---
|
---
|
||||||
|
|
||||||
如果需要将大型 Markdown 文件拆分为更小、组织良好的文件以更好地管理上下文,请使用 `shard-doc` 工具。
|
如果需要将大型 Markdown 文件拆分为更小、组织良好的文件以更好地管理上下文,请使用 `shard-doc` 工具。
|
||||||
|
|
|
||||||
|
|
@ -8,7 +8,7 @@ BMad 方法(**B**reakthrough **M**ethod of **A**gile AI **D**riven Development
|
||||||
如果您熟悉使用 Claude、Cursor 或 GitHub Copilot 等 AI 编码助手,就可以开始使用了。
|
如果您熟悉使用 Claude、Cursor 或 GitHub Copilot 等 AI 编码助手,就可以开始使用了。
|
||||||
|
|
||||||
:::note[🚀 V6 已发布,我们才刚刚起步!]
|
:::note[🚀 V6 已发布,我们才刚刚起步!]
|
||||||
技能架构、BMad Builder v1、开发循环自动化以及更多功能正在开发中。**[查看路线图 →](/roadmap/)**
|
技能架构、BMad Builder v1、开发循环自动化以及更多功能正在开发中。**[查看路线图 →](/zh-cn/roadmap/)**
|
||||||
:::
|
:::
|
||||||
|
|
||||||
## 新手入门?从教程开始
|
## 新手入门?从教程开始
|
||||||
|
|
@ -19,7 +19,7 @@ BMad 方法(**B**reakthrough **M**ethod of **A**gile AI **D**riven Development
|
||||||
- **[工作流地图](./reference/workflow-map.md)** — BMM 阶段、工作流和上下文管理的可视化概览
|
- **[工作流地图](./reference/workflow-map.md)** — BMM 阶段、工作流和上下文管理的可视化概览
|
||||||
|
|
||||||
:::tip[只想直接上手?]
|
:::tip[只想直接上手?]
|
||||||
安装 BMad 并运行 `/bmad-help` — 它会根据您的项目和已安装的模块引导您完成所有操作。
|
安装 BMad 并运行 `bmad-help` — 它会根据您的项目和已安装的模块引导您完成所有操作。
|
||||||
:::
|
:::
|
||||||
|
|
||||||
## 如何使用本文档
|
## 如何使用本文档
|
||||||
|
|
@ -35,7 +35,7 @@ BMad 方法(**B**reakthrough **M**ethod of **A**gile AI **D**riven Development
|
||||||
|
|
||||||
## 扩展和自定义
|
## 扩展和自定义
|
||||||
|
|
||||||
想要使用自己的智能体、工作流或模块来扩展 BMad 吗?**[BMad Builder](https://bmad-builder-docs.bmad-method.org/)** 提供了创建自定义扩展的框架和工具,无论是为 BMad 添加新功能还是从头开始构建全新的模块。
|
想要使用自己的智能体、工作流或模块来扩展 BMad 吗?**[BMad Builder(英文)](https://bmad-builder-docs.bmad-method.org/)** 提供了创建自定义扩展的框架和工具,无论是为 BMad 添加新功能还是从头开始构建全新的模块。
|
||||||
|
|
||||||
## 您需要什么
|
## 您需要什么
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -23,7 +23,7 @@ sidebar:
|
||||||
| Scrum Master (Bob) | `SP`, `CS`, `ER`, `CC` | 冲刺规划、创建用户故事、史诗回顾、纠正方向 |
|
| Scrum Master (Bob) | `SP`, `CS`, `ER`, `CC` | 冲刺规划、创建用户故事、史诗回顾、纠正方向 |
|
||||||
| Developer (Amelia) | `DS`, `CR` | 开发用户故事、代码评审 |
|
| Developer (Amelia) | `DS`, `CR` | 开发用户故事、代码评审 |
|
||||||
| QA Engineer (Quinn) | `QA` | 自动化(为现有功能生成测试) |
|
| QA Engineer (Quinn) | `QA` | 自动化(为现有功能生成测试) |
|
||||||
| Quick Flow Solo Dev (Barry) | `QS`, `QD`, `CR` | 快速规格、快速开发、代码评审 |
|
| Quick Flow Solo Dev (Barry) | `QD`, `CR` | 快速开发、代码评审 |
|
||||||
| UX Designer (Sally) | `CU` | 创建 UX 设计 |
|
| UX Designer (Sally) | `CU` | 创建 UX 设计 |
|
||||||
| Technical Writer (Paige) | `DP`, `WD`, `US`, `MG`, `VD`, `EC` | 文档化项目、撰写文档、更新标准、Mermaid 生成、验证文档、解释概念 |
|
| Technical Writer (Paige) | `DP`, `WD`, `US`, `MG`, `VD`, `EC` | 文档化项目、撰写文档、更新标准、Mermaid 生成、验证文档、解释概念 |
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -13,7 +13,7 @@ BMad 提供两种开始工作的方式,它们服务于不同的目的。
|
||||||
|
|
||||||
| 机制 | 调用方式 | 发生什么 |
|
| 机制 | 调用方式 | 发生什么 |
|
||||||
| --- | --- | --- |
|
| --- | --- | --- |
|
||||||
| **斜杠命令** | 在 IDE 中输入 `/bmad-...` | 直接加载智能体、运行工作流或执行任务 |
|
| **斜杠命令** | 在 IDE 中输入 `bmad-...` | 直接加载智能体、运行工作流或执行任务 |
|
||||||
| **智能体菜单触发器** | 先加载智能体,然后输入简短代码(例如 `DS`) | 智能体解释代码并启动匹配的工作流,同时保持角色设定 |
|
| **智能体菜单触发器** | 先加载智能体,然后输入简短代码(例如 `DS`) | 智能体解释代码并启动匹配的工作流,同时保持角色设定 |
|
||||||
|
|
||||||
智能体菜单触发器需要活动的智能体会话。当您知道要使用哪个工作流时,使用斜杠命令。当您已经与智能体一起工作并希望在不离开对话的情况下切换任务时,使用触发器。
|
智能体菜单触发器需要活动的智能体会话。当您知道要使用哪个工作流时,使用斜杠命令。当您已经与智能体一起工作并希望在不离开对话的情况下切换任务时,使用触发器。
|
||||||
|
|
@ -58,13 +58,13 @@ BMad 提供两种开始工作的方式,它们服务于不同的目的。
|
||||||
└── ...
|
└── ...
|
||||||
```
|
```
|
||||||
|
|
||||||
文件名决定了 IDE 中的斜杠命令名称。例如,文件 `bmad-agent-bmm-dev.md` 注册命令 `/bmad-agent-bmm-dev`。
|
文件名决定了 IDE 中的技能名称。例如,文件 `bmad-agent-bmm-dev.md` 注册技能 `bmad-agent-bmm-dev`。
|
||||||
|
|
||||||
## 如何发现您的命令
|
## 如何发现您的命令
|
||||||
|
|
||||||
在 IDE 中输入 `/bmad` 并使用自动完成功能浏览可用命令。
|
在 IDE 中输入 `/bmad` 并使用自动完成功能浏览可用命令。
|
||||||
|
|
||||||
运行 `/bmad-help` 获取关于下一步的上下文感知指导。
|
运行 `bmad-help` 获取关于下一步的上下文感知指导。
|
||||||
|
|
||||||
:::tip[快速发现]
|
:::tip[快速发现]
|
||||||
项目中生成的命令文件夹是权威列表。在文件资源管理器中打开它们以查看每个命令及其描述。
|
项目中生成的命令文件夹是权威列表。在文件资源管理器中打开它们以查看每个命令及其描述。
|
||||||
|
|
@ -78,10 +78,10 @@ BMad 提供两种开始工作的方式,它们服务于不同的目的。
|
||||||
|
|
||||||
| 示例命令 | 智能体 | 角色 |
|
| 示例命令 | 智能体 | 角色 |
|
||||||
| --- | --- | --- |
|
| --- | --- | --- |
|
||||||
| `/bmad-agent-bmm-dev` | Amelia(开发者) | 严格按照规范实现故事 |
|
| `bmad-agent-bmm-dev` | Amelia(开发者) | 严格按照规范实现故事 |
|
||||||
| `/bmad-agent-bmm-pm` | John(产品经理) | 创建和验证 PRD |
|
| `bmad-agent-bmm-pm` | John(产品经理) | 创建和验证 PRD |
|
||||||
| `/bmad-agent-bmm-architect` | Winston(架构师) | 设计系统架构 |
|
| `bmad-agent-bmm-architect` | Winston(架构师) | 设计系统架构 |
|
||||||
| `/bmad-agent-bmm-sm` | Bob(Scrum Master) | 管理冲刺和故事 |
|
| `bmad-agent-bmm-sm` | Bob(Scrum Master) | 管理冲刺和故事 |
|
||||||
|
|
||||||
参见[智能体](./agents.md)获取默认智能体及其触发器的完整列表。
|
参见[智能体](./agents.md)获取默认智能体及其触发器的完整列表。
|
||||||
|
|
||||||
|
|
@ -91,11 +91,11 @@ BMad 提供两种开始工作的方式,它们服务于不同的目的。
|
||||||
|
|
||||||
| 示例命令 | 目的 |
|
| 示例命令 | 目的 |
|
||||||
| --- | --- |
|
| --- | --- |
|
||||||
| `/bmad-bmm-create-prd` | 创建产品需求文档 |
|
| `bmad-bmm-create-prd` | 创建产品需求文档 |
|
||||||
| `/bmad-bmm-create-architecture` | 设计系统架构 |
|
| `bmad-bmm-create-architecture` | 设计系统架构 |
|
||||||
| `/bmad-bmm-dev-story` | 实现故事 |
|
| `bmad-bmm-dev-story` | 实现故事 |
|
||||||
| `/bmad-bmm-code-review` | 运行代码审查 |
|
| `bmad-bmm-code-review` | 运行代码审查 |
|
||||||
| `/bmad-bmm-quick-spec` | 定义临时更改(快速流程) |
|
| `bmad-bmm-quick-dev` | 统一快速流程 — 澄清意图、规划、实现、审查、呈现 |
|
||||||
|
|
||||||
参见[工作流地图](./workflow-map.md)获取按阶段组织的完整工作流参考。
|
参见[工作流地图](./workflow-map.md)获取按阶段组织的完整工作流参考。
|
||||||
|
|
||||||
|
|
@ -105,7 +105,7 @@ BMad 提供两种开始工作的方式,它们服务于不同的目的。
|
||||||
|
|
||||||
#### BMad-Help:您的智能向导
|
#### BMad-Help:您的智能向导
|
||||||
|
|
||||||
**`/bmad-help`** 是您发现下一步操作的主要界面。它不仅仅是一个查找工具——它是一个智能助手,可以:
|
**`bmad-help`** 是您发现下一步操作的主要界面。它不仅仅是一个查找工具——它是一个智能助手,可以:
|
||||||
|
|
||||||
- **检查您的项目**以查看已经完成的工作
|
- **检查您的项目**以查看已经完成的工作
|
||||||
- **理解自然语言查询**——用简单的英语提问
|
- **理解自然语言查询**——用简单的英语提问
|
||||||
|
|
@ -116,19 +116,19 @@ BMad 提供两种开始工作的方式,它们服务于不同的目的。
|
||||||
**示例:**
|
**示例:**
|
||||||
|
|
||||||
```
|
```
|
||||||
/bmad-help
|
bmad-help
|
||||||
/bmad-help 我有一个 SaaS 想法并且知道所有功能。我应该从哪里开始?
|
bmad-help 我有一个 SaaS 想法并且知道所有功能。我应该从哪里开始?
|
||||||
/bmad-help 我在 UX 设计方面有哪些选择?
|
bmad-help 我在 UX 设计方面有哪些选择?
|
||||||
/bmad-help 我在 PRD 工作流上卡住了
|
bmad-help 我在 PRD 工作流上卡住了
|
||||||
```
|
```
|
||||||
|
|
||||||
#### 其他任务和工具
|
#### 其他任务和工具
|
||||||
|
|
||||||
| 示例命令 | 目的 |
|
| 示例命令 | 目的 |
|
||||||
| --- | --- |
|
| --- | --- |
|
||||||
| `/bmad-shard-doc` | 将大型 Markdown 文件拆分为较小的部分 |
|
| `bmad-shard-doc` | 将大型 Markdown 文件拆分为较小的部分 |
|
||||||
| `/bmad-index-docs` | 索引项目文档 |
|
| `bmad-index-docs` | 索引项目文档 |
|
||||||
| `/bmad-editorial-review-prose` | 审查文档散文质量 |
|
| `bmad-editorial-review-prose` | 审查文档散文质量 |
|
||||||
|
|
||||||
## 命名约定
|
## 命名约定
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -0,0 +1,293 @@
|
||||||
|
---
|
||||||
|
title: "核心工具"
|
||||||
|
description: 每个 BMad 安装都自带的内置任务和工作流参考。
|
||||||
|
sidebar:
|
||||||
|
order: 2
|
||||||
|
---
|
||||||
|
|
||||||
|
每个 BMad 安装都包含一组核心技能,可以配合你正在做的任何事情使用——跨项目、跨模块、跨阶段的独立任务和工作流。无论安装了哪些可选模块,这些工具始终可用。
|
||||||
|
|
||||||
|
:::tip[快速上手]
|
||||||
|
在 IDE 中输入技能名称(如 `bmad-help`)即可运行任意核心工具,无需启动智能体会话。
|
||||||
|
:::
|
||||||
|
|
||||||
|
## 概览
|
||||||
|
|
||||||
|
| 工具 | 类型 | 用途 |
|
||||||
|
| --- | --- | --- |
|
||||||
|
| [`bmad-help`](#bmad-help) | 任务 | 根据上下文给出下一步建议 |
|
||||||
|
| [`bmad-brainstorming`](#bmad-brainstorming) | 工作流 | 引导交互式头脑风暴 |
|
||||||
|
| [`bmad-party-mode`](#bmad-party-mode) | 工作流 | 编排多智能体群组讨论 |
|
||||||
|
| [`bmad-distillator`](#bmad-distillator) | 任务 | 无损的 LLM 优化文档压缩 |
|
||||||
|
| [`bmad-advanced-elicitation`](#bmad-advanced-elicitation) | 任务 | 通过迭代精炼方法提升 LLM 输出质量 |
|
||||||
|
| [`bmad-review-adversarial-general`](#bmad-review-adversarial-general) | 任务 | 挑刺式审查——找出遗漏和问题 |
|
||||||
|
| [`bmad-review-edge-case-hunter`](#bmad-review-edge-case-hunter) | 任务 | 穷举分支路径分析,找出未处理的边界情况 |
|
||||||
|
| [`bmad-editorial-review-prose`](#bmad-editorial-review-prose) | 任务 | 临床式文案编辑,聚焦表达清晰度 |
|
||||||
|
| [`bmad-editorial-review-structure`](#bmad-editorial-review-structure) | 任务 | 结构编辑——裁剪、合并与重组 |
|
||||||
|
| [`bmad-shard-doc`](#bmad-shard-doc) | 任务 | 将大型 Markdown 文件拆分为有序章节 |
|
||||||
|
| [`bmad-index-docs`](#bmad-index-docs) | 任务 | 生成或更新文件夹的文档索引 |
|
||||||
|
|
||||||
|
## bmad-help
|
||||||
|
|
||||||
|
**你的智能向导,告诉你下一步该做什么。** — 检查项目状态,识别已完成的内容,推荐下一个必需或可选步骤。
|
||||||
|
|
||||||
|
**适用场景:**
|
||||||
|
|
||||||
|
- 完成了一个工作流,想知道接下来做什么
|
||||||
|
- 刚接触 BMad,需要快速了解全貌
|
||||||
|
- 卡住了,想要根据当前上下文获取建议
|
||||||
|
- 安装了新模块,想看看有哪些可用功能
|
||||||
|
|
||||||
|
**工作原理:**
|
||||||
|
|
||||||
|
1. 扫描项目中已有的产出物(PRD、架构文档、用户故事等)
|
||||||
|
2. 检测已安装的模块及其可用工作流
|
||||||
|
3. 按优先级推荐下一步——必需步骤优先,可选步骤其次
|
||||||
|
4. 每条推荐都附带技能命令和简要说明
|
||||||
|
|
||||||
|
**输入:** 可选的自然语言查询(如 `bmad-help I have a SaaS idea, where do I start?`)
|
||||||
|
|
||||||
|
**输出:** 按优先级排列的下一步推荐列表,附带技能命令
|
||||||
|
|
||||||
|
## bmad-brainstorming
|
||||||
|
|
||||||
|
**通过交互式创意技法激发多样想法。** — 引导式头脑风暴会话,从技法库中加载经过验证的创意方法,引导你在整理之前先产出 100+ 个想法。
|
||||||
|
|
||||||
|
**适用场景:**
|
||||||
|
|
||||||
|
- 启动新项目,需要探索问题空间
|
||||||
|
- 想法枯竭,需要结构化的创意引导
|
||||||
|
- 想使用成熟的创意框架(SCAMPER、反向头脑风暴等)
|
||||||
|
|
||||||
|
**工作原理:**
|
||||||
|
|
||||||
|
1. 围绕你的主题建立头脑风暴会话
|
||||||
|
2. 从方法库中加载创意技法
|
||||||
|
3. 逐个技法引导你产出想法
|
||||||
|
4. 应用反偏差协议——每产出 10 个想法切换一次创意领域,防止想法扎堆
|
||||||
|
5. 生成一份只追加的会话文档,所有想法按技法分类整理
|
||||||
|
|
||||||
|
**输入:** 头脑风暴主题或问题陈述,可选上下文文件
|
||||||
|
|
||||||
|
**输出:** `brainstorming-session-{date}.md`,包含所有产出的想法
|
||||||
|
|
||||||
|
:::note[数量目标]
|
||||||
|
真正的好点子往往出现在第 50-100 个想法之间。工作流鼓励在整理之前先产出 100+ 个想法。
|
||||||
|
:::
|
||||||
|
|
||||||
|
## bmad-party-mode
|
||||||
|
|
||||||
|
**编排多智能体群组讨论。** — 加载所有已安装的 BMad 智能体,引导一场自然对话,每个智能体从各自的专业领域和角色特征出发发言。
|
||||||
|
|
||||||
|
**适用场景:**
|
||||||
|
|
||||||
|
- 需要多个专家视角来评估一个决策
|
||||||
|
- 希望智能体互相质疑彼此的假设
|
||||||
|
- 正在探索一个横跨多个领域的复杂话题
|
||||||
|
|
||||||
|
**工作原理:**
|
||||||
|
|
||||||
|
1. 加载智能体清单及所有已安装的智能体角色
|
||||||
|
2. 分析你的话题,选出 2-3 个最相关的智能体
|
||||||
|
3. 智能体轮流发言,自然地交叉讨论甚至争论
|
||||||
|
4. 轮换参与的智能体,确保随时间推移覆盖多样视角
|
||||||
|
5. 输入 `goodbye`、`end party` 或 `quit` 退出
|
||||||
|
|
||||||
|
**输入:** 讨论话题或问题,以及你希望参与的角色(可选)
|
||||||
|
|
||||||
|
**输出:** 实时多智能体对话,各智能体保持各自角色特征
|
||||||
|
|
||||||
|
## bmad-distillator
|
||||||
|
|
||||||
|
**无损的 LLM 优化文档压缩。** — 生成信息密度高、token 高效的精馏文档,保留全部信息供下游 LLM 消费。可通过往返重构验证无损性。
|
||||||
|
|
||||||
|
**适用场景:**
|
||||||
|
|
||||||
|
- 文档太大,超出 LLM 的上下文窗口
|
||||||
|
- 需要研究资料、规格或规划产出物的 token 高效版本
|
||||||
|
- 想验证压缩过程中没有丢失信息
|
||||||
|
- 智能体需要频繁引用和检索其中的信息
|
||||||
|
|
||||||
|
**工作原理:**
|
||||||
|
|
||||||
|
1. **分析** — 读取源文档,识别信息密度和结构
|
||||||
|
2. **压缩** — 将散文转为密集的要点格式,剥离装饰性排版
|
||||||
|
3. **校验** — 检查完整性,确保原始信息全部保留
|
||||||
|
4. **验证**(可选)— 往返重构测试,证明压缩无损
|
||||||
|
|
||||||
|
**输入:**
|
||||||
|
|
||||||
|
- `source_documents`(必填)— 文件路径、文件夹路径或 glob 模式
|
||||||
|
- `downstream_consumer`(可选)— 消费方是什么(如 "PRD creation")
|
||||||
|
- `token_budget`(可选)— 大致目标大小
|
||||||
|
- `--validate`(标志)— 运行往返重构测试
|
||||||
|
|
||||||
|
**输出:** 精馏 Markdown 文件,附带压缩比报告(如 "3.2:1")
|
||||||
|
|
||||||
|
## bmad-advanced-elicitation
|
||||||
|
|
||||||
|
**通过迭代精炼方法提升 LLM 输出质量。** — 从启发技法库中选取合适的方法,通过多轮迭代系统性地改进内容。
|
||||||
|
|
||||||
|
**适用场景:**
|
||||||
|
|
||||||
|
- LLM 输出感觉浅薄或千篇一律
|
||||||
|
- 想从多个分析角度深挖一个话题
|
||||||
|
- 正在打磨关键文档,需要更深层的思考
|
||||||
|
|
||||||
|
**工作原理:**
|
||||||
|
|
||||||
|
1. 加载包含 5+ 种启发技法的方法注册表
|
||||||
|
2. 根据内容类型和复杂度选出 5 个最匹配的方法
|
||||||
|
3. 呈现交互菜单——选一个方法、重新洗牌或列出全部
|
||||||
|
4. 将选中的方法应用到内容上进行增强
|
||||||
|
5. 重新呈现选项,反复迭代改进,直到你选择"继续"
|
||||||
|
|
||||||
|
**输入:** 待增强的内容段落
|
||||||
|
|
||||||
|
**输出:** 应用改进后的增强版内容
|
||||||
|
|
||||||
|
## bmad-review-adversarial-general
|
||||||
|
|
||||||
|
**预设问题存在,然后去找出来的挑刺式审查。** — 以怀疑、挑剔的审查者视角,对粗糙工作零容忍。重点找遗漏,而不只是找错误。
|
||||||
|
|
||||||
|
**适用场景:**
|
||||||
|
|
||||||
|
- 在交付物定稿前需要质量保证
|
||||||
|
- 想对规格、用户故事或文档进行压力测试
|
||||||
|
- 想找到乐观审查容易忽略的覆盖盲区
|
||||||
|
|
||||||
|
**工作原理:**
|
||||||
|
|
||||||
|
1. 以挑剔、批判的视角阅读内容
|
||||||
|
2. 从完整性、正确性和质量三个维度识别问题
|
||||||
|
3. 专门寻找遗漏的内容——不只是已有内容中的错误
|
||||||
|
4. 至少找出 10 个问题,否则进行更深层分析
|
||||||
|
|
||||||
|
**输入:**
|
||||||
|
|
||||||
|
- `content`(必填)— diff、规格、用户故事、文档或任意产出物
|
||||||
|
- `also_consider`(可选)— 需要额外关注的领域
|
||||||
|
|
||||||
|
**输出:** 包含 10+ 条发现及描述的 Markdown 列表
|
||||||
|
|
||||||
|
## bmad-review-edge-case-hunter
|
||||||
|
|
||||||
|
**遍历每条分支路径和边界条件,只报告未处理的情况。** — 纯路径追踪方法论,机械地推导边界类别。与对抗式审查正交——靠方法驱动,而非靠态度驱动。
|
||||||
|
|
||||||
|
**适用场景:**
|
||||||
|
|
||||||
|
- 想对代码或逻辑做穷举式边界覆盖
|
||||||
|
- 需要与对抗式审查互补(不同方法论,不同发现)
|
||||||
|
- 正在审查 diff 或函数的边界条件
|
||||||
|
|
||||||
|
**工作原理:**
|
||||||
|
|
||||||
|
1. 枚举内容中所有分支路径
|
||||||
|
2. 机械推导边界类别:缺失的 else/default、未防护的输入、差一错误、算术溢出、隐式类型转换、竞态条件、超时间隙
|
||||||
|
3. 逐条路径检查现有防护
|
||||||
|
4. 只报告未处理的路径——已处理的静默丢弃
|
||||||
|
|
||||||
|
**输入:**
|
||||||
|
|
||||||
|
- `content`(必填)— diff、完整文件或函数
|
||||||
|
- `also_consider`(可选)— 需要额外关注的领域
|
||||||
|
|
||||||
|
**输出:** JSON 数组,每条发现包含 `location`、`trigger_condition`、`guard_snippet` 和 `potential_consequence`
|
||||||
|
|
||||||
|
:::note[互补审查]
|
||||||
|
同时运行 `bmad-review-adversarial-general` 和 `bmad-review-edge-case-hunter` 可获得正交覆盖。对抗式审查捕捉质量和完整性问题;边界猎手捕捉未处理的路径。
|
||||||
|
:::
|
||||||
|
|
||||||
|
## bmad-editorial-review-prose
|
||||||
|
|
||||||
|
**聚焦表达清晰度的临床式文案编辑。** — 审查文本中阻碍理解的问题,以 Microsoft 写作风格指南为基准,保留作者个人风格。
|
||||||
|
|
||||||
|
**适用场景:**
|
||||||
|
|
||||||
|
- 写完初稿想打磨文字
|
||||||
|
- 需要确保内容对特定受众足够清晰
|
||||||
|
- 只想修表达问题,不想改写风格偏好
|
||||||
|
|
||||||
|
**工作原理:**
|
||||||
|
|
||||||
|
1. 阅读内容,跳过代码块和 frontmatter
|
||||||
|
2. 识别表达问题(不是风格偏好)
|
||||||
|
3. 对多处出现的相同问题去重
|
||||||
|
4. 生成三列修改表
|
||||||
|
|
||||||
|
**输入:**
|
||||||
|
|
||||||
|
- `content`(必填)— Markdown、纯文本或 XML
|
||||||
|
- `style_guide`(可选)— 项目特定的写作风格指南
|
||||||
|
- `reader_type`(可选)— `humans`(默认)注重清晰流畅,`llm` 注重精确一致
|
||||||
|
|
||||||
|
**输出:** 三列 Markdown 表格:原文 | 修改后 | 变更说明
|
||||||
|
|
||||||
|
## bmad-editorial-review-structure
|
||||||
|
|
||||||
|
**结构编辑——提出裁剪、合并、移动和精简建议。** — 审查文档组织结构,在文案编辑之前提出实质性调整建议,以改善清晰度和阅读流畅性。
|
||||||
|
|
||||||
|
**适用场景:**
|
||||||
|
|
||||||
|
- 文档由多个子流程产出,需要结构上的连贯性
|
||||||
|
- 想在保持可读性的前提下缩减文档篇幅
|
||||||
|
- 需要识别范围越界或关键信息被埋没的情况
|
||||||
|
|
||||||
|
**工作原理:**
|
||||||
|
|
||||||
|
1. 将文档与 5 种结构模型对照分析(教程、参考、解释、提示词、战略)
|
||||||
|
2. 识别冗余、范围越界和被埋没的信息
|
||||||
|
3. 生成优先级排序的建议:裁剪、合并、移动、精简、质疑、保留
|
||||||
|
4. 估算总缩减字数和百分比
|
||||||
|
|
||||||
|
**输入:**
|
||||||
|
|
||||||
|
- `content`(必填)— 待审查的文档
|
||||||
|
- `purpose`(可选)— 预期用途(如 "quickstart tutorial")
|
||||||
|
- `target_audience`(可选)— 目标读者
|
||||||
|
- `reader_type`(可选)— `humans` 或 `llm`
|
||||||
|
- `length_target`(可选)— 目标缩减量(如 "30% shorter")
|
||||||
|
|
||||||
|
**输出:** 文档摘要、优先级排序的建议列表,以及预估缩减量
|
||||||
|
|
||||||
|
## bmad-shard-doc
|
||||||
|
|
||||||
|
**将大型 Markdown 文件拆分为有序的章节文件。** — 以二级标题为分割点,创建一个包含独立章节文件和索引的文件夹。
|
||||||
|
|
||||||
|
**适用场景:**
|
||||||
|
|
||||||
|
- Markdown 文档过大,难以有效管理(500+ 行)
|
||||||
|
- 想把单体文档拆分成可导航的章节
|
||||||
|
- 需要独立文件以支持并行编辑或 LLM 上下文管理
|
||||||
|
|
||||||
|
**工作原理:**
|
||||||
|
|
||||||
|
1. 验证源文件存在且是 Markdown 格式
|
||||||
|
2. 按二级(`##`)标题分割为编号章节文件
|
||||||
|
3. 创建 `index.md`,包含章节清单和链接
|
||||||
|
4. 提示你选择删除、归档还是保留原文件
|
||||||
|
|
||||||
|
**输入:** 源 Markdown 文件路径,可选目标文件夹
|
||||||
|
|
||||||
|
**输出:** 包含 `index.md` 和 `01-{section}.md`、`02-{section}.md` 等文件的文件夹
|
||||||
|
|
||||||
|
## bmad-index-docs
|
||||||
|
|
||||||
|
**生成或更新文件夹中所有文档的索引。** — 扫描目录,读取每个文件以理解其用途,生成一份带链接和描述的有序 `index.md`。
|
||||||
|
|
||||||
|
**适用场景:**
|
||||||
|
|
||||||
|
- 需要一个轻量索引供 LLM 快速扫描可用文档
|
||||||
|
- 文档文件夹不断增长,需要一个有序的目录
|
||||||
|
- 想要一份自动生成、能持续保持最新的概览
|
||||||
|
|
||||||
|
**工作原理:**
|
||||||
|
|
||||||
|
1. 扫描目标目录中所有非隐藏文件
|
||||||
|
2. 读取每个文件以理解其实际用途
|
||||||
|
3. 按类型、用途或子目录分组
|
||||||
|
4. 生成简洁描述(每条 3-10 个词)
|
||||||
|
|
||||||
|
**输入:** 目标文件夹路径
|
||||||
|
|
||||||
|
**输出:** `index.md`,包含有序的文件列表、相对链接和简要描述
|
||||||
|
|
@ -65,7 +65,7 @@ Quinn 仅生成测试。如需代码审查和故事验证,请改用代码审
|
||||||
|
|
||||||
TEA 是一个独立模块,提供专家智能体(Murat)和九个结构化工作流,用于企业级测试。它超越了测试生成,涵盖测试策略、基于风险的规划、质量门控和需求可追溯性。
|
TEA 是一个独立模块,提供专家智能体(Murat)和九个结构化工作流,用于企业级测试。它超越了测试生成,涵盖测试策略、基于风险的规划、质量门控和需求可追溯性。
|
||||||
|
|
||||||
- **文档:** [TEA 模块文档](https://bmad-code-org.github.io/bmad-method-test-architecture-enterprise/)
|
- **文档:** [TEA 模块文档(英文)](https://bmad-code-org.github.io/bmad-method-test-architecture-enterprise/)
|
||||||
- **安装:** `npx bmad-method install` 并选择 TEA 模块
|
- **安装:** `npx bmad-method install` 并选择 TEA 模块
|
||||||
- **npm:** [`bmad-method-test-architecture-enterprise`](https://www.npmjs.com/package/bmad-method-test-architecture-enterprise)
|
- **npm:** [`bmad-method-test-architecture-enterprise`](https://www.npmjs.com/package/bmad-method-test-architecture-enterprise)
|
||||||
|
|
||||||
|
|
|
||||||
Some files were not shown because too many files have changed in this diff Show More
Loading…
Reference in New Issue