wizz-method 1.0.0 → 1.0.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (709) hide show
  1. package/.claude/settings.local.json +7 -0
  2. package/.claude-plugin/marketplace.json +45 -45
  3. package/build/artifacts/llms-full.txt +476 -476
  4. package/build/site/404.html +3 -3
  5. package/build/site/explanation/advanced-elicitation/index.html +4 -4
  6. package/build/site/explanation/adversarial-review/index.html +5 -5
  7. package/build/site/explanation/analysis-phase/index.html +5 -5
  8. package/build/site/explanation/brainstorming/index.html +5 -5
  9. package/build/site/explanation/checkpoint-preview/index.html +6 -6
  10. package/build/site/explanation/established-projects-faq/index.html +5 -5
  11. package/build/site/explanation/forensic-investigation/index.html +6 -6
  12. package/build/site/explanation/named-agents/index.html +16 -16
  13. package/build/site/explanation/party-mode/index.html +9 -9
  14. package/build/site/explanation/preventing-agent-conflicts/index.html +5 -5
  15. package/build/site/explanation/project-context/index.html +19 -19
  16. package/build/site/explanation/quick-dev/index.html +6 -6
  17. package/build/site/explanation/web-bundles/index.html +10 -10
  18. package/build/site/explanation/why-solutioning-matters/index.html +5 -5
  19. package/build/site/how-to/customize-bmad/index.html +48 -48
  20. package/build/site/how-to/established-projects/index.html +17 -17
  21. package/build/site/how-to/expand-bmad-for-your-org/index.html +43 -43
  22. package/build/site/how-to/get-answers-about-bmad/index.html +14 -14
  23. package/build/site/how-to/install-bmad/index.html +23 -23
  24. package/build/site/how-to/install-custom-modules/index.html +17 -17
  25. package/build/site/how-to/non-interactive-installation/index.html +4 -4
  26. package/build/site/how-to/project-context/index.html +10 -10
  27. package/build/site/how-to/quick-fixes/index.html +8 -8
  28. package/build/site/how-to/shard-large-documents/index.html +8 -8
  29. package/build/site/how-to/upgrade-to-v6/index.html +11 -11
  30. package/build/site/how-to/use-web-bundles/index.html +6 -6
  31. package/build/site/index.html +28 -28
  32. package/build/site/llms-full.txt +476 -476
  33. package/build/site/pagefind/fragment/en_175de32.pf_fragment +0 -0
  34. package/build/site/pagefind/fragment/en_24258fb.pf_fragment +0 -0
  35. package/build/site/pagefind/fragment/en_24f53a6.pf_fragment +0 -0
  36. package/build/site/pagefind/fragment/en_27ba8f9.pf_fragment +0 -0
  37. package/build/site/pagefind/fragment/en_2b5aa5c.pf_fragment +0 -0
  38. package/build/site/pagefind/fragment/en_41cab15.pf_fragment +0 -0
  39. package/build/site/pagefind/fragment/en_49047e0.pf_fragment +0 -0
  40. package/build/site/pagefind/fragment/en_4a187d2.pf_fragment +0 -0
  41. package/build/site/pagefind/fragment/{en_22b33a0.pf_fragment → en_514725b.pf_fragment} +0 -0
  42. package/build/site/pagefind/fragment/en_56b1635.pf_fragment +0 -0
  43. package/build/site/pagefind/fragment/en_5ad92a9.pf_fragment +0 -0
  44. package/build/site/pagefind/fragment/en_7aea5bc.pf_fragment +0 -0
  45. package/build/site/pagefind/fragment/en_81bcd7f.pf_fragment +0 -0
  46. package/build/site/pagefind/fragment/en_82aec61.pf_fragment +0 -0
  47. package/build/site/pagefind/fragment/en_85dcebf.pf_fragment +0 -0
  48. package/build/site/pagefind/fragment/en_89a1a7a.pf_fragment +0 -0
  49. package/build/site/pagefind/fragment/en_8ade291.pf_fragment +0 -0
  50. package/build/site/pagefind/fragment/en_8c11f8a.pf_fragment +0 -0
  51. package/build/site/pagefind/fragment/en_8c1bde3.pf_fragment +0 -0
  52. package/build/site/pagefind/fragment/en_938e9c4.pf_fragment +0 -0
  53. package/build/site/pagefind/fragment/en_94bfc21.pf_fragment +0 -0
  54. package/build/site/pagefind/fragment/en_ab62b53.pf_fragment +0 -0
  55. package/build/site/pagefind/fragment/en_b0d23ee.pf_fragment +0 -0
  56. package/build/site/pagefind/fragment/en_b51d75b.pf_fragment +0 -0
  57. package/build/site/pagefind/fragment/en_bb113eb.pf_fragment +0 -0
  58. package/build/site/pagefind/fragment/en_c9fea21.pf_fragment +0 -0
  59. package/build/site/pagefind/fragment/en_cdd772f.pf_fragment +0 -0
  60. package/build/site/pagefind/fragment/en_cefed6a.pf_fragment +0 -0
  61. package/build/site/pagefind/fragment/en_da351b7.pf_fragment +0 -0
  62. package/build/site/pagefind/fragment/en_e07e982.pf_fragment +0 -0
  63. package/build/site/pagefind/fragment/en_ea289f9.pf_fragment +0 -0
  64. package/build/site/pagefind/fragment/en_f1c3711.pf_fragment +0 -0
  65. package/build/site/pagefind/fragment/en_f4389af.pf_fragment +0 -0
  66. package/build/site/pagefind/fragment/en_f52c9f9.pf_fragment +0 -0
  67. package/build/site/pagefind/index/en_82c64dc.pf_index +0 -0
  68. package/build/site/pagefind/index/en_d0dd3c7.pf_index +0 -0
  69. package/build/site/pagefind/index/en_e890f88.pf_index +0 -0
  70. package/build/site/pagefind/pagefind-entry.json +1 -1
  71. package/build/site/pagefind/pagefind.en_ee1b8a17c8.pf_meta +0 -0
  72. package/build/site/reference/agents/index.html +8 -8
  73. package/build/site/reference/commands/index.html +17 -17
  74. package/build/site/reference/core-tools/index.html +28 -28
  75. package/build/site/reference/modules/index.html +8 -8
  76. package/build/site/reference/testing/index.html +10 -10
  77. package/build/site/reference/workflow-map/index.html +18 -18
  78. package/build/site/roadmap/index.html +8 -8
  79. package/build/site/sitemap-0.xml +1 -1
  80. package/build/site/tutorials/getting-started/index.html +61 -61
  81. package/build/site/workflow-map-diagram.html +2 -2
  82. package/evals/bmm-skills/{bmad-product-brief → wizz-product-brief}/evals.json +31 -31
  83. package/package.json +1 -1
  84. package/src/bmm-skills/1-analysis/research/{bmad-domain-research → wizz-domain-research}/SKILL.md +5 -5
  85. package/src/bmm-skills/1-analysis/research/{bmad-domain-research → wizz-domain-research}/customize.toml +1 -1
  86. package/src/bmm-skills/1-analysis/research/{bmad-domain-research → wizz-domain-research}/domain-steps/step-06-research-synthesis.md +1 -1
  87. package/src/bmm-skills/1-analysis/research/{bmad-market-research → wizz-market-research}/SKILL.md +5 -5
  88. package/src/bmm-skills/1-analysis/research/{bmad-market-research → wizz-market-research}/customize.toml +1 -1
  89. package/src/bmm-skills/1-analysis/research/{bmad-market-research → wizz-market-research}/steps/step-06-research-completion.md +1 -1
  90. package/src/bmm-skills/1-analysis/research/{bmad-technical-research → wizz-technical-research}/SKILL.md +5 -5
  91. package/src/bmm-skills/1-analysis/research/{bmad-technical-research → wizz-technical-research}/customize.toml +1 -1
  92. package/src/bmm-skills/1-analysis/research/{bmad-technical-research → wizz-technical-research}/technical-steps/step-06-research-synthesis.md +1 -1
  93. package/src/bmm-skills/1-analysis/{bmad-agent-analyst → wizz-agent-analyst}/SKILL.md +7 -7
  94. package/src/bmm-skills/1-analysis/{bmad-agent-analyst → wizz-agent-analyst}/customize.toml +13 -7
  95. package/src/bmm-skills/1-analysis/{bmad-agent-tech-writer → wizz-agent-tech-writer}/SKILL.md +7 -7
  96. package/src/bmm-skills/1-analysis/{bmad-agent-tech-writer → wizz-agent-tech-writer}/customize.toml +1 -1
  97. package/src/bmm-skills/1-analysis/{bmad-document-project → wizz-document-project}/SKILL.md +5 -5
  98. package/src/bmm-skills/1-analysis/{bmad-document-project → wizz-document-project}/customize.toml +1 -1
  99. package/src/bmm-skills/1-analysis/{bmad-document-project → wizz-document-project}/workflows/deep-dive-instructions.md +1 -1
  100. package/src/bmm-skills/1-analysis/{bmad-document-project → wizz-document-project}/workflows/deep-dive-workflow.md +1 -1
  101. package/src/bmm-skills/1-analysis/{bmad-document-project → wizz-document-project}/workflows/full-scan-instructions.md +1 -1
  102. package/src/bmm-skills/1-analysis/{bmad-document-project → wizz-document-project}/workflows/full-scan-workflow.md +1 -1
  103. package/src/bmm-skills/1-analysis/{bmad-prfaq → wizz-prfaq}/SKILL.md +6 -6
  104. package/src/bmm-skills/1-analysis/{bmad-prfaq → wizz-prfaq}/customize.toml +1 -1
  105. package/src/bmm-skills/1-analysis/{bmad-prfaq → wizz-prfaq}/references/verdict.md +1 -1
  106. package/src/bmm-skills/1-analysis/{bmad-product-brief → wizz-product-brief}/SKILL.md +6 -6
  107. package/src/bmm-skills/1-analysis/{bmad-product-brief → wizz-product-brief}/customize.toml +8 -8
  108. package/src/bmm-skills/1-analysis/wizz-set-feature/SKILL.md +74 -0
  109. package/src/bmm-skills/2-plan-workflows/{bmad-agent-pm → wizz-agent-pm}/SKILL.md +7 -7
  110. package/src/bmm-skills/2-plan-workflows/{bmad-agent-pm → wizz-agent-pm}/customize.toml +5 -4
  111. package/src/bmm-skills/2-plan-workflows/{bmad-agent-ux-designer → wizz-agent-ux-designer}/SKILL.md +7 -7
  112. package/src/bmm-skills/2-plan-workflows/{bmad-agent-ux-designer → wizz-agent-ux-designer}/customize.toml +2 -1
  113. package/src/bmm-skills/2-plan-workflows/{bmad-create-prd → wizz-create-prd}/SKILL.md +11 -11
  114. package/src/bmm-skills/2-plan-workflows/{bmad-create-prd → wizz-create-prd}/customize.toml +1 -1
  115. package/src/bmm-skills/2-plan-workflows/wizz-edit-prd/SKILL.md +30 -0
  116. package/src/bmm-skills/2-plan-workflows/{bmad-edit-prd → wizz-edit-prd}/customize.toml +2 -2
  117. package/src/bmm-skills/2-plan-workflows/{bmad-prd → wizz-prd}/SKILL.md +5 -5
  118. package/src/bmm-skills/2-plan-workflows/{bmad-prd → wizz-prd}/assets/prd-template.md +1 -1
  119. package/src/bmm-skills/2-plan-workflows/{bmad-prd → wizz-prd}/customize.toml +8 -8
  120. package/src/bmm-skills/2-plan-workflows/{bmad-prd → wizz-prd}/references/headless.md +1 -1
  121. package/src/bmm-skills/2-plan-workflows/{bmad-ux → wizz-ux}/SKILL.md +5 -5
  122. package/src/bmm-skills/2-plan-workflows/{bmad-ux → wizz-ux}/customize.toml +5 -5
  123. package/src/bmm-skills/2-plan-workflows/{bmad-validate-prd → wizz-validate-prd}/SKILL.md +11 -11
  124. package/src/bmm-skills/2-plan-workflows/{bmad-validate-prd → wizz-validate-prd}/customize.toml +2 -2
  125. package/src/bmm-skills/3-solutioning/{bmad-agent-architect → wizz-agent-architect}/SKILL.md +7 -7
  126. package/src/bmm-skills/3-solutioning/{bmad-agent-architect → wizz-agent-architect}/customize.toml +3 -2
  127. package/src/bmm-skills/3-solutioning/{bmad-architecture → wizz-architecture}/SKILL.md +11 -11
  128. package/src/bmm-skills/3-solutioning/{bmad-architecture → wizz-architecture}/customize.toml +6 -6
  129. package/src/bmm-skills/3-solutioning/{bmad-architecture → wizz-architecture}/references/headless.md +1 -1
  130. package/src/bmm-skills/3-solutioning/{bmad-check-implementation-readiness → wizz-check-implementation-readiness}/SKILL.md +5 -5
  131. package/src/bmm-skills/3-solutioning/{bmad-check-implementation-readiness → wizz-check-implementation-readiness}/customize.toml +1 -1
  132. package/src/bmm-skills/3-solutioning/{bmad-check-implementation-readiness → wizz-check-implementation-readiness}/steps/step-06-final-assessment.md +2 -2
  133. package/src/bmm-skills/3-solutioning/{bmad-create-architecture → wizz-create-architecture}/SKILL.md +11 -11
  134. package/src/bmm-skills/3-solutioning/{bmad-create-architecture → wizz-create-architecture}/customize.toml +1 -1
  135. package/src/bmm-skills/3-solutioning/{bmad-create-epics-and-stories → wizz-create-epics-and-stories}/SKILL.md +5 -5
  136. package/src/bmm-skills/3-solutioning/{bmad-create-epics-and-stories → wizz-create-epics-and-stories}/customize.toml +2 -2
  137. package/src/bmm-skills/3-solutioning/{bmad-create-epics-and-stories → wizz-create-epics-and-stories}/steps/step-01-validate-prerequisites.md +3 -3
  138. package/src/bmm-skills/3-solutioning/{bmad-create-epics-and-stories → wizz-create-epics-and-stories}/steps/step-02-design-epics.md +2 -2
  139. package/src/bmm-skills/3-solutioning/{bmad-create-epics-and-stories → wizz-create-epics-and-stories}/steps/step-03-create-stories.md +2 -2
  140. package/src/bmm-skills/3-solutioning/{bmad-create-epics-and-stories → wizz-create-epics-and-stories}/steps/step-04-final-validation.md +2 -2
  141. package/src/bmm-skills/3-solutioning/{bmad-generate-project-context → wizz-generate-project-context}/SKILL.md +5 -5
  142. package/src/bmm-skills/3-solutioning/{bmad-generate-project-context → wizz-generate-project-context}/customize.toml +1 -1
  143. package/src/bmm-skills/3-solutioning/{bmad-generate-project-context → wizz-generate-project-context}/steps/step-02-generate.md +4 -4
  144. package/src/bmm-skills/3-solutioning/{bmad-generate-project-context → wizz-generate-project-context}/steps/step-03-complete.md +1 -1
  145. package/src/bmm-skills/4-implementation/{bmad-agent-dev → wizz-agent-dev}/SKILL.md +7 -7
  146. package/src/bmm-skills/4-implementation/{bmad-agent-dev → wizz-agent-dev}/customize.toml +9 -8
  147. package/src/bmm-skills/4-implementation/{bmad-checkpoint-preview → wizz-checkpoint-preview}/SKILL.md +5 -5
  148. package/src/bmm-skills/4-implementation/{bmad-checkpoint-preview → wizz-checkpoint-preview}/customize.toml +1 -1
  149. package/src/bmm-skills/4-implementation/{bmad-checkpoint-preview → wizz-checkpoint-preview}/step-05-wrapup.md +1 -1
  150. package/src/bmm-skills/4-implementation/{bmad-code-review → wizz-code-review}/SKILL.md +5 -5
  151. package/src/bmm-skills/4-implementation/{bmad-code-review → wizz-code-review}/customize.toml +1 -1
  152. package/src/bmm-skills/4-implementation/{bmad-code-review → wizz-code-review}/steps/step-02-review.md +2 -2
  153. package/src/bmm-skills/4-implementation/{bmad-code-review → wizz-code-review}/steps/step-04-present.md +1 -1
  154. package/src/bmm-skills/4-implementation/{bmad-correct-course → wizz-correct-course}/SKILL.md +6 -6
  155. package/src/bmm-skills/4-implementation/{bmad-correct-course → wizz-correct-course}/customize.toml +1 -1
  156. package/src/bmm-skills/4-implementation/{bmad-create-story → wizz-create-story}/SKILL.md +6 -6
  157. package/src/bmm-skills/4-implementation/{bmad-create-story → wizz-create-story}/customize.toml +1 -1
  158. package/src/bmm-skills/4-implementation/{bmad-dev-story → wizz-dev-story}/SKILL.md +7 -6
  159. package/src/bmm-skills/4-implementation/{bmad-dev-story → wizz-dev-story}/customize.toml +1 -1
  160. package/src/bmm-skills/4-implementation/{bmad-investigate → wizz-investigate}/SKILL.md +5 -5
  161. package/src/bmm-skills/4-implementation/{bmad-investigate → wizz-investigate}/customize.toml +1 -1
  162. package/src/bmm-skills/4-implementation/{bmad-qa-generate-e2e-tests → wizz-qa-generate-e2e-tests}/SKILL.md +7 -7
  163. package/src/bmm-skills/4-implementation/{bmad-qa-generate-e2e-tests → wizz-qa-generate-e2e-tests}/customize.toml +1 -1
  164. package/src/bmm-skills/4-implementation/{bmad-quick-dev → wizz-quick-dev}/SKILL.md +7 -5
  165. package/src/bmm-skills/4-implementation/{bmad-quick-dev → wizz-quick-dev}/customize.toml +1 -1
  166. package/src/bmm-skills/4-implementation/{bmad-quick-dev → wizz-quick-dev}/step-02-plan.md +1 -1
  167. package/src/bmm-skills/4-implementation/{bmad-quick-dev → wizz-quick-dev}/step-04-review.md +2 -2
  168. package/src/bmm-skills/4-implementation/{bmad-quick-dev → wizz-quick-dev}/step-05-present.md +1 -1
  169. package/src/bmm-skills/4-implementation/{bmad-quick-dev → wizz-quick-dev}/step-oneshot.md +2 -2
  170. package/src/bmm-skills/4-implementation/{bmad-retrospective → wizz-retrospective}/SKILL.md +7 -7
  171. package/src/bmm-skills/4-implementation/{bmad-retrospective → wizz-retrospective}/customize.toml +1 -1
  172. package/src/bmm-skills/4-implementation/{bmad-sprint-planning → wizz-sprint-planning}/SKILL.md +6 -6
  173. package/src/bmm-skills/4-implementation/{bmad-sprint-planning → wizz-sprint-planning}/customize.toml +1 -1
  174. package/src/bmm-skills/4-implementation/{bmad-sprint-status → wizz-sprint-status}/SKILL.md +7 -7
  175. package/src/bmm-skills/4-implementation/{bmad-sprint-status → wizz-sprint-status}/customize.toml +1 -1
  176. package/src/bmm-skills/module-help.csv +31 -30
  177. package/src/bmm-skills/module.yaml +12 -7
  178. package/src/core-skills/module-help.csv +11 -11
  179. package/src/core-skills/module.yaml +1 -1
  180. package/src/core-skills/{bmad-advanced-elicitation → wizz-advanced-elicitation}/SKILL.md +3 -3
  181. package/src/core-skills/{bmad-brainstorming → wizz-brainstorming}/SKILL.md +4 -4
  182. package/src/core-skills/{bmad-brainstorming → wizz-brainstorming}/customize.toml +4 -4
  183. package/src/core-skills/{bmad-brainstorming → wizz-brainstorming}/references/finalize.md +3 -3
  184. package/src/core-skills/{bmad-brainstorming → wizz-brainstorming}/references/headless.md +1 -1
  185. package/src/core-skills/{bmad-brainstorming → wizz-brainstorming}/references/in-chat-techniques.md +1 -1
  186. package/src/core-skills/{bmad-customize → wizz-customize}/SKILL.md +14 -14
  187. package/src/core-skills/{bmad-customize → wizz-customize}/scripts/list_customizable_skills.py +5 -5
  188. package/src/core-skills/{bmad-customize → wizz-customize}/scripts/tests/test_list_customizable_skills.py +21 -21
  189. package/src/core-skills/{bmad-editorial-review-prose → wizz-editorial-review-prose}/SKILL.md +1 -1
  190. package/src/core-skills/{bmad-editorial-review-structure → wizz-editorial-review-structure}/SKILL.md +1 -1
  191. package/src/core-skills/{bmad-help → wizz-help}/SKILL.md +4 -4
  192. package/src/core-skills/{bmad-index-docs → wizz-index-docs}/SKILL.md +1 -1
  193. package/src/core-skills/{bmad-party-mode → wizz-party-mode}/SKILL.md +4 -4
  194. package/src/core-skills/{bmad-party-mode → wizz-party-mode}/customize.toml +3 -3
  195. package/src/core-skills/{bmad-party-mode → wizz-party-mode}/references/create-party.md +5 -5
  196. package/src/core-skills/{bmad-party-mode → wizz-party-mode}/scripts/resolve_party.py +4 -4
  197. package/src/core-skills/{bmad-party-mode → wizz-party-mode}/scripts/tests/test-resolve_party.py +15 -15
  198. package/src/core-skills/{bmad-review-adversarial-general → wizz-review-adversarial-general}/SKILL.md +1 -1
  199. package/src/core-skills/{bmad-review-edge-case-hunter → wizz-review-edge-case-hunter}/SKILL.md +1 -1
  200. package/src/core-skills/{bmad-shard-doc → wizz-shard-doc}/SKILL.md +1 -1
  201. package/src/core-skills/{bmad-spec → wizz-spec}/SKILL.md +13 -13
  202. package/src/core-skills/{bmad-spec → wizz-spec}/assets/headless-schemas.md +4 -4
  203. package/src/core-skills/{bmad-spec → wizz-spec}/customize.toml +5 -5
  204. package/src/modules/wizz/README.md +2 -2
  205. package/src/modules/wizz/agents/wizz-ads/SKILL.md +2 -2
  206. package/src/modules/wizz/agents/wizz-copy/SKILL.md +2 -2
  207. package/src/modules/wizz/agents/wizz-designer/SKILL.md +2 -2
  208. package/src/modules/wizz/agents/wizz-growth/SKILL.md +2 -2
  209. package/src/modules/wizz/agents/wizz-maestro/SKILL.md +10 -10
  210. package/src/modules/wizz/agents/wizz-maestro/customize.toml +2 -2
  211. package/src/modules/wizz/agents/wizz-memoria/SKILL.md +2 -2
  212. package/src/modules/wizz/agents/wizz-qa/SKILL.md +4 -4
  213. package/src/modules/wizz/agents/wizz-qa/customize.toml +1 -1
  214. package/src/modules/wizz/agents/wizz-seo/SKILL.md +2 -2
  215. package/src/modules/wizz/overrides/bmad-agent-analyst.toml +1 -1
  216. package/src/modules/wizz/overrides/bmad-agent-architect.toml +1 -1
  217. package/src/modules/wizz/overrides/bmad-agent-dev.toml +1 -1
  218. package/src/modules/wizz/overrides/bmad-agent-pm.toml +1 -1
  219. package/src/modules/wizz/overrides/bmad-agent-tech-writer.toml +1 -1
  220. package/src/modules/wizz/overrides/bmad-agent-ux-designer.toml +1 -1
  221. package/src/modules/wizz/scripts/wizz-init.mjs +8 -8
  222. package/src/scripts/resolve_config.py +6 -6
  223. package/src/scripts/resolve_customization.py +5 -5
  224. package/tools/installer/README.md +3 -3
  225. package/tools/installer/bmad-cli.js +3 -3
  226. package/tools/installer/cli-utils.js +15 -15
  227. package/tools/installer/commands/install.js +2 -2
  228. package/tools/installer/commands/status.js +5 -5
  229. package/tools/installer/commands/uninstall.js +9 -9
  230. package/tools/installer/core/install-paths.js +2 -2
  231. package/tools/installer/core/installer.js +28 -28
  232. package/tools/installer/core/manifest-generator.js +12 -12
  233. package/tools/installer/core/python-check.js +6 -6
  234. package/tools/installer/ide/_config-driven.js +2 -2
  235. package/tools/installer/ide/platform-codes.js +1 -1
  236. package/tools/installer/ide/shared/installed-skills.js +1 -1
  237. package/tools/installer/ide/shared/path-utils.js +4 -4
  238. package/tools/installer/install-messages.yaml +7 -11
  239. package/tools/installer/modules/external-manager.js +1 -1
  240. package/tools/installer/modules/official-modules.js +3 -3
  241. package/tools/installer/set-overrides.js +10 -10
  242. package/tools/installer/ui.js +8 -8
  243. package/tools/migrate-custom-module-paths.js +1 -1
  244. package/tools/skill-validator.md +3 -3
  245. package/web-bundles/prd-coach/prd-template.md +1 -1
  246. package/build/site/cs/404/index.html +0 -42
  247. package/build/site/cs/explanation/advanced-elicitation/index.html +0 -105
  248. package/build/site/cs/explanation/adversarial-review/index.html +0 -109
  249. package/build/site/cs/explanation/analysis-phase/index.html +0 -129
  250. package/build/site/cs/explanation/brainstorming/index.html +0 -92
  251. package/build/site/cs/explanation/checkpoint-preview/index.html +0 -121
  252. package/build/site/cs/explanation/established-projects-faq/index.html +0 -107
  253. package/build/site/cs/explanation/forensic-investigation/index.html +0 -167
  254. package/build/site/cs/explanation/named-agents/index.html +0 -187
  255. package/build/site/cs/explanation/party-mode/index.html +0 -101
  256. package/build/site/cs/explanation/preventing-agent-conflicts/index.html +0 -185
  257. package/build/site/cs/explanation/project-context/index.html +0 -198
  258. package/build/site/cs/explanation/quick-dev/index.html +0 -113
  259. package/build/site/cs/explanation/web-bundles/index.html +0 -178
  260. package/build/site/cs/explanation/why-solutioning-matters/index.html +0 -168
  261. package/build/site/cs/how-to/customize-bmad/index.html +0 -197
  262. package/build/site/cs/how-to/established-projects/index.html +0 -165
  263. package/build/site/cs/how-to/expand-bmad-for-your-org/index.html +0 -245
  264. package/build/site/cs/how-to/get-answers-about-bmad/index.html +0 -179
  265. package/build/site/cs/how-to/install-bmad/index.html +0 -124
  266. package/build/site/cs/how-to/install-custom-modules/index.html +0 -197
  267. package/build/site/cs/how-to/non-interactive-installation/index.html +0 -255
  268. package/build/site/cs/how-to/project-context/index.html +0 -138
  269. package/build/site/cs/how-to/quick-fixes/index.html +0 -122
  270. package/build/site/cs/how-to/shard-large-documents/index.html +0 -103
  271. package/build/site/cs/how-to/upgrade-to-v6/index.html +0 -185
  272. package/build/site/cs/how-to/use-web-bundles/index.html +0 -99
  273. package/build/site/cs/index.html +0 -129
  274. package/build/site/cs/reference/agents/index.html +0 -173
  275. package/build/site/cs/reference/commands/index.html +0 -250
  276. package/build/site/cs/reference/core-tools/index.html +0 -337
  277. package/build/site/cs/reference/modules/index.html +0 -132
  278. package/build/site/cs/reference/testing/index.html +0 -218
  279. package/build/site/cs/reference/workflow-map/index.html +0 -240
  280. package/build/site/cs/roadmap/index.html +0 -77
  281. package/build/site/cs/tutorials/getting-started/index.html +0 -382
  282. package/build/site/fr/404/index.html +0 -42
  283. package/build/site/fr/explanation/advanced-elicitation/index.html +0 -105
  284. package/build/site/fr/explanation/adversarial-review/index.html +0 -126
  285. package/build/site/fr/explanation/analysis-phase/index.html +0 -137
  286. package/build/site/fr/explanation/brainstorming/index.html +0 -92
  287. package/build/site/fr/explanation/checkpoint-preview/index.html +0 -121
  288. package/build/site/fr/explanation/established-projects-faq/index.html +0 -107
  289. package/build/site/fr/explanation/forensic-investigation/index.html +0 -194
  290. package/build/site/fr/explanation/named-agents/index.html +0 -187
  291. package/build/site/fr/explanation/party-mode/index.html +0 -112
  292. package/build/site/fr/explanation/preventing-agent-conflicts/index.html +0 -196
  293. package/build/site/fr/explanation/project-context/index.html +0 -198
  294. package/build/site/fr/explanation/quick-dev/index.html +0 -127
  295. package/build/site/fr/explanation/web-bundles/index.html +0 -198
  296. package/build/site/fr/explanation/why-solutioning-matters/index.html +0 -191
  297. package/build/site/fr/how-to/customize-bmad/index.html +0 -277
  298. package/build/site/fr/how-to/established-projects/index.html +0 -176
  299. package/build/site/fr/how-to/expand-bmad-for-your-org/index.html +0 -245
  300. package/build/site/fr/how-to/get-answers-about-bmad/index.html +0 -129
  301. package/build/site/fr/how-to/install-bmad/index.html +0 -330
  302. package/build/site/fr/how-to/install-custom-modules/index.html +0 -197
  303. package/build/site/fr/how-to/non-interactive-installation/index.html +0 -73
  304. package/build/site/fr/how-to/project-context/index.html +0 -138
  305. package/build/site/fr/how-to/quick-fixes/index.html +0 -130
  306. package/build/site/fr/how-to/shard-large-documents/index.html +0 -103
  307. package/build/site/fr/how-to/upgrade-to-v6/index.html +0 -202
  308. package/build/site/fr/how-to/use-web-bundles/index.html +0 -99
  309. package/build/site/fr/index.html +0 -144
  310. package/build/site/fr/reference/agents/index.html +0 -179
  311. package/build/site/fr/reference/commands/index.html +0 -264
  312. package/build/site/fr/reference/core-tools/index.html +0 -392
  313. package/build/site/fr/reference/modules/index.html +0 -146
  314. package/build/site/fr/reference/testing/index.html +0 -229
  315. package/build/site/fr/reference/workflow-map/index.html +0 -282
  316. package/build/site/fr/roadmap/index.html +0 -77
  317. package/build/site/fr/tutorials/getting-started/index.html +0 -406
  318. package/build/site/pagefind/fragment/cs-cz_178b946.pf_fragment +0 -0
  319. package/build/site/pagefind/fragment/cs-cz_19e1744.pf_fragment +0 -0
  320. package/build/site/pagefind/fragment/cs-cz_1b81518.pf_fragment +0 -0
  321. package/build/site/pagefind/fragment/cs-cz_24fd94a.pf_fragment +0 -0
  322. package/build/site/pagefind/fragment/cs-cz_25c5ff1.pf_fragment +0 -0
  323. package/build/site/pagefind/fragment/cs-cz_2a7d8c4.pf_fragment +0 -0
  324. package/build/site/pagefind/fragment/cs-cz_2b14d1f.pf_fragment +0 -0
  325. package/build/site/pagefind/fragment/cs-cz_34d3775.pf_fragment +0 -0
  326. package/build/site/pagefind/fragment/cs-cz_366f93d.pf_fragment +0 -0
  327. package/build/site/pagefind/fragment/cs-cz_4761b65.pf_fragment +0 -0
  328. package/build/site/pagefind/fragment/cs-cz_4d1a40a.pf_fragment +0 -0
  329. package/build/site/pagefind/fragment/cs-cz_57dfabb.pf_fragment +0 -0
  330. package/build/site/pagefind/fragment/cs-cz_5c68f33.pf_fragment +0 -0
  331. package/build/site/pagefind/fragment/cs-cz_5efaba9.pf_fragment +0 -0
  332. package/build/site/pagefind/fragment/cs-cz_5f63a83.pf_fragment +0 -0
  333. package/build/site/pagefind/fragment/cs-cz_73bbdce.pf_fragment +0 -0
  334. package/build/site/pagefind/fragment/cs-cz_7b6af37.pf_fragment +0 -0
  335. package/build/site/pagefind/fragment/cs-cz_7d51fe5.pf_fragment +0 -0
  336. package/build/site/pagefind/fragment/cs-cz_7db5922.pf_fragment +0 -0
  337. package/build/site/pagefind/fragment/cs-cz_83e7116.pf_fragment +0 -0
  338. package/build/site/pagefind/fragment/cs-cz_83fec4e.pf_fragment +0 -0
  339. package/build/site/pagefind/fragment/cs-cz_84972ee.pf_fragment +0 -0
  340. package/build/site/pagefind/fragment/cs-cz_94e9289.pf_fragment +0 -0
  341. package/build/site/pagefind/fragment/cs-cz_a0a122c.pf_fragment +0 -0
  342. package/build/site/pagefind/fragment/cs-cz_a3e7fad.pf_fragment +0 -0
  343. package/build/site/pagefind/fragment/cs-cz_af43e66.pf_fragment +0 -0
  344. package/build/site/pagefind/fragment/cs-cz_b4f4e0a.pf_fragment +0 -0
  345. package/build/site/pagefind/fragment/cs-cz_b51b8b3.pf_fragment +0 -0
  346. package/build/site/pagefind/fragment/cs-cz_ba705d5.pf_fragment +0 -0
  347. package/build/site/pagefind/fragment/cs-cz_c315625.pf_fragment +0 -0
  348. package/build/site/pagefind/fragment/cs-cz_cf5138a.pf_fragment +0 -0
  349. package/build/site/pagefind/fragment/cs-cz_df8bdfe.pf_fragment +0 -0
  350. package/build/site/pagefind/fragment/cs-cz_e1b56f8.pf_fragment +0 -0
  351. package/build/site/pagefind/fragment/cs-cz_e3e33bb.pf_fragment +0 -0
  352. package/build/site/pagefind/fragment/cs-cz_f9d07b3.pf_fragment +0 -0
  353. package/build/site/pagefind/fragment/en_026af96.pf_fragment +0 -0
  354. package/build/site/pagefind/fragment/en_132ea1f.pf_fragment +0 -0
  355. package/build/site/pagefind/fragment/en_15ee460.pf_fragment +0 -0
  356. package/build/site/pagefind/fragment/en_171773c.pf_fragment +0 -0
  357. package/build/site/pagefind/fragment/en_1a7ec42.pf_fragment +0 -0
  358. package/build/site/pagefind/fragment/en_1bb5ebb.pf_fragment +0 -0
  359. package/build/site/pagefind/fragment/en_229434b.pf_fragment +0 -0
  360. package/build/site/pagefind/fragment/en_38efcf3.pf_fragment +0 -0
  361. package/build/site/pagefind/fragment/en_3d17cef.pf_fragment +0 -0
  362. package/build/site/pagefind/fragment/en_426a8fd.pf_fragment +0 -0
  363. package/build/site/pagefind/fragment/en_446b27a.pf_fragment +0 -0
  364. package/build/site/pagefind/fragment/en_582ecad.pf_fragment +0 -0
  365. package/build/site/pagefind/fragment/en_5d6b1f1.pf_fragment +0 -0
  366. package/build/site/pagefind/fragment/en_66f3f7a.pf_fragment +0 -0
  367. package/build/site/pagefind/fragment/en_68872f8.pf_fragment +0 -0
  368. package/build/site/pagefind/fragment/en_6e9deef.pf_fragment +0 -0
  369. package/build/site/pagefind/fragment/en_70a6a7e.pf_fragment +0 -0
  370. package/build/site/pagefind/fragment/en_73f0b1e.pf_fragment +0 -0
  371. package/build/site/pagefind/fragment/en_768fd99.pf_fragment +0 -0
  372. package/build/site/pagefind/fragment/en_7e52baa.pf_fragment +0 -0
  373. package/build/site/pagefind/fragment/en_8068cdc.pf_fragment +0 -0
  374. package/build/site/pagefind/fragment/en_9385c94.pf_fragment +0 -0
  375. package/build/site/pagefind/fragment/en_95b9c04.pf_fragment +0 -0
  376. package/build/site/pagefind/fragment/en_9a95e82.pf_fragment +0 -0
  377. package/build/site/pagefind/fragment/en_a66c4ef.pf_fragment +0 -0
  378. package/build/site/pagefind/fragment/en_ac6318c.pf_fragment +0 -0
  379. package/build/site/pagefind/fragment/en_bba8f66.pf_fragment +0 -0
  380. package/build/site/pagefind/fragment/en_d9f7193.pf_fragment +0 -0
  381. package/build/site/pagefind/fragment/en_e0e52b1.pf_fragment +0 -0
  382. package/build/site/pagefind/fragment/en_ece4cbe.pf_fragment +0 -0
  383. package/build/site/pagefind/fragment/en_ed6969c.pf_fragment +0 -0
  384. package/build/site/pagefind/fragment/en_f12187d.pf_fragment +0 -0
  385. package/build/site/pagefind/fragment/en_f643df1.pf_fragment +0 -0
  386. package/build/site/pagefind/fragment/fr-fr_10fdc25.pf_fragment +0 -0
  387. package/build/site/pagefind/fragment/fr-fr_132e2e0.pf_fragment +0 -0
  388. package/build/site/pagefind/fragment/fr-fr_1529d31.pf_fragment +0 -0
  389. package/build/site/pagefind/fragment/fr-fr_1531e2c.pf_fragment +0 -0
  390. package/build/site/pagefind/fragment/fr-fr_1d51fb7.pf_fragment +0 -0
  391. package/build/site/pagefind/fragment/fr-fr_27d0aaf.pf_fragment +0 -0
  392. package/build/site/pagefind/fragment/fr-fr_583aea8.pf_fragment +0 -0
  393. package/build/site/pagefind/fragment/fr-fr_5c4f14f.pf_fragment +0 -0
  394. package/build/site/pagefind/fragment/fr-fr_654bb96.pf_fragment +0 -0
  395. package/build/site/pagefind/fragment/fr-fr_65e37ae.pf_fragment +0 -0
  396. package/build/site/pagefind/fragment/fr-fr_6898afa.pf_fragment +0 -0
  397. package/build/site/pagefind/fragment/fr-fr_68d0a0b.pf_fragment +0 -0
  398. package/build/site/pagefind/fragment/fr-fr_6ce4bc1.pf_fragment +0 -0
  399. package/build/site/pagefind/fragment/fr-fr_7ddd126.pf_fragment +0 -0
  400. package/build/site/pagefind/fragment/fr-fr_7f50a2e.pf_fragment +0 -0
  401. package/build/site/pagefind/fragment/fr-fr_8d2df1b.pf_fragment +0 -0
  402. package/build/site/pagefind/fragment/fr-fr_9b8d33d.pf_fragment +0 -0
  403. package/build/site/pagefind/fragment/fr-fr_9c7f851.pf_fragment +0 -0
  404. package/build/site/pagefind/fragment/fr-fr_9cf6892.pf_fragment +0 -0
  405. package/build/site/pagefind/fragment/fr-fr_a512e53.pf_fragment +0 -0
  406. package/build/site/pagefind/fragment/fr-fr_a7ad3f6.pf_fragment +0 -0
  407. package/build/site/pagefind/fragment/fr-fr_afeac81.pf_fragment +0 -0
  408. package/build/site/pagefind/fragment/fr-fr_b364826.pf_fragment +0 -0
  409. package/build/site/pagefind/fragment/fr-fr_bdb3e1e.pf_fragment +0 -0
  410. package/build/site/pagefind/fragment/fr-fr_c4884c3.pf_fragment +0 -0
  411. package/build/site/pagefind/fragment/fr-fr_c54c827.pf_fragment +0 -0
  412. package/build/site/pagefind/fragment/fr-fr_ca664c2.pf_fragment +0 -0
  413. package/build/site/pagefind/fragment/fr-fr_ce3562d.pf_fragment +0 -0
  414. package/build/site/pagefind/fragment/fr-fr_d086476.pf_fragment +0 -0
  415. package/build/site/pagefind/fragment/fr-fr_d0b4e62.pf_fragment +0 -0
  416. package/build/site/pagefind/fragment/fr-fr_df4c57f.pf_fragment +0 -0
  417. package/build/site/pagefind/fragment/fr-fr_e1c2fa8.pf_fragment +0 -0
  418. package/build/site/pagefind/fragment/fr-fr_eaa1363.pf_fragment +0 -0
  419. package/build/site/pagefind/fragment/fr-fr_f456c69.pf_fragment +0 -0
  420. package/build/site/pagefind/fragment/fr-fr_fe8d783.pf_fragment +0 -0
  421. package/build/site/pagefind/fragment/vi-vn_1e5b1da.pf_fragment +0 -0
  422. package/build/site/pagefind/fragment/vi-vn_3268948.pf_fragment +0 -0
  423. package/build/site/pagefind/fragment/vi-vn_37f0bf6.pf_fragment +0 -0
  424. package/build/site/pagefind/fragment/vi-vn_485232c.pf_fragment +0 -0
  425. package/build/site/pagefind/fragment/vi-vn_4d3bd13.pf_fragment +0 -0
  426. package/build/site/pagefind/fragment/vi-vn_4e578d2.pf_fragment +0 -0
  427. package/build/site/pagefind/fragment/vi-vn_4ed2533.pf_fragment +0 -0
  428. package/build/site/pagefind/fragment/vi-vn_533743c.pf_fragment +0 -0
  429. package/build/site/pagefind/fragment/vi-vn_5ffd258.pf_fragment +0 -0
  430. package/build/site/pagefind/fragment/vi-vn_6bfed03.pf_fragment +0 -0
  431. package/build/site/pagefind/fragment/vi-vn_6f2ed6d.pf_fragment +0 -0
  432. package/build/site/pagefind/fragment/vi-vn_71aa305.pf_fragment +0 -0
  433. package/build/site/pagefind/fragment/vi-vn_7577c2c.pf_fragment +0 -0
  434. package/build/site/pagefind/fragment/vi-vn_7883435.pf_fragment +0 -0
  435. package/build/site/pagefind/fragment/vi-vn_7f2e496.pf_fragment +0 -0
  436. package/build/site/pagefind/fragment/vi-vn_7fce614.pf_fragment +0 -0
  437. package/build/site/pagefind/fragment/vi-vn_86274a6.pf_fragment +0 -0
  438. package/build/site/pagefind/fragment/vi-vn_8c4fd62.pf_fragment +0 -0
  439. package/build/site/pagefind/fragment/vi-vn_a06c773.pf_fragment +0 -0
  440. package/build/site/pagefind/fragment/vi-vn_a2e535b.pf_fragment +0 -0
  441. package/build/site/pagefind/fragment/vi-vn_a4b9dbc.pf_fragment +0 -0
  442. package/build/site/pagefind/fragment/vi-vn_b2d8e01.pf_fragment +0 -0
  443. package/build/site/pagefind/fragment/vi-vn_b631cf6.pf_fragment +0 -0
  444. package/build/site/pagefind/fragment/vi-vn_c970ebb.pf_fragment +0 -0
  445. package/build/site/pagefind/fragment/vi-vn_d229f2a.pf_fragment +0 -0
  446. package/build/site/pagefind/fragment/vi-vn_d685e88.pf_fragment +0 -0
  447. package/build/site/pagefind/fragment/vi-vn_dab2c52.pf_fragment +0 -0
  448. package/build/site/pagefind/fragment/vi-vn_df5a829.pf_fragment +0 -0
  449. package/build/site/pagefind/fragment/vi-vn_dfcf280.pf_fragment +0 -0
  450. package/build/site/pagefind/fragment/vi-vn_e8ec8cf.pf_fragment +0 -0
  451. package/build/site/pagefind/fragment/vi-vn_e9f3439.pf_fragment +0 -0
  452. package/build/site/pagefind/fragment/vi-vn_f0bfe83.pf_fragment +0 -0
  453. package/build/site/pagefind/fragment/vi-vn_f5462f7.pf_fragment +0 -0
  454. package/build/site/pagefind/fragment/vi-vn_fcc9bb7.pf_fragment +0 -0
  455. package/build/site/pagefind/fragment/vi-vn_fd55264.pf_fragment +0 -0
  456. package/build/site/pagefind/fragment/vi-vn_ffd39df.pf_fragment +0 -0
  457. package/build/site/pagefind/fragment/zh-cn_119c5bb.pf_fragment +0 -0
  458. package/build/site/pagefind/fragment/zh-cn_198e8ce.pf_fragment +0 -0
  459. package/build/site/pagefind/fragment/zh-cn_19b87a8.pf_fragment +0 -0
  460. package/build/site/pagefind/fragment/zh-cn_1edc3a5.pf_fragment +0 -0
  461. package/build/site/pagefind/fragment/zh-cn_36ae67a.pf_fragment +0 -0
  462. package/build/site/pagefind/fragment/zh-cn_37ab313.pf_fragment +0 -0
  463. package/build/site/pagefind/fragment/zh-cn_3b56778.pf_fragment +0 -0
  464. package/build/site/pagefind/fragment/zh-cn_5735cd4.pf_fragment +0 -0
  465. package/build/site/pagefind/fragment/zh-cn_6110769.pf_fragment +0 -0
  466. package/build/site/pagefind/fragment/zh-cn_6d66d9e.pf_fragment +0 -0
  467. package/build/site/pagefind/fragment/zh-cn_731b3f5.pf_fragment +0 -0
  468. package/build/site/pagefind/fragment/zh-cn_82885ff.pf_fragment +0 -0
  469. package/build/site/pagefind/fragment/zh-cn_8be7aac.pf_fragment +0 -0
  470. package/build/site/pagefind/fragment/zh-cn_8c3fa9e.pf_fragment +0 -0
  471. package/build/site/pagefind/fragment/zh-cn_8f452f7.pf_fragment +0 -0
  472. package/build/site/pagefind/fragment/zh-cn_96ccc61.pf_fragment +0 -0
  473. package/build/site/pagefind/fragment/zh-cn_9f29932.pf_fragment +0 -0
  474. package/build/site/pagefind/fragment/zh-cn_a24d786.pf_fragment +0 -0
  475. package/build/site/pagefind/fragment/zh-cn_a598178.pf_fragment +0 -0
  476. package/build/site/pagefind/fragment/zh-cn_a603f17.pf_fragment +0 -0
  477. package/build/site/pagefind/fragment/zh-cn_a9cffcf.pf_fragment +0 -0
  478. package/build/site/pagefind/fragment/zh-cn_c1bebbd.pf_fragment +0 -0
  479. package/build/site/pagefind/fragment/zh-cn_c38cf84.pf_fragment +0 -0
  480. package/build/site/pagefind/fragment/zh-cn_c42a851.pf_fragment +0 -0
  481. package/build/site/pagefind/fragment/zh-cn_ce57c6e.pf_fragment +0 -0
  482. package/build/site/pagefind/fragment/zh-cn_d4b5cd5.pf_fragment +0 -0
  483. package/build/site/pagefind/fragment/zh-cn_da40e6b.pf_fragment +0 -0
  484. package/build/site/pagefind/fragment/zh-cn_da777ec.pf_fragment +0 -0
  485. package/build/site/pagefind/fragment/zh-cn_de145f9.pf_fragment +0 -0
  486. package/build/site/pagefind/fragment/zh-cn_e376bf7.pf_fragment +0 -0
  487. package/build/site/pagefind/fragment/zh-cn_e663978.pf_fragment +0 -0
  488. package/build/site/pagefind/fragment/zh-cn_e97a13b.pf_fragment +0 -0
  489. package/build/site/pagefind/fragment/zh-cn_f13873d.pf_fragment +0 -0
  490. package/build/site/pagefind/fragment/zh-cn_f25fad4.pf_fragment +0 -0
  491. package/build/site/pagefind/fragment/zh-cn_f7edf48.pf_fragment +0 -0
  492. package/build/site/pagefind/index/cs-cz_24147b6.pf_index +0 -0
  493. package/build/site/pagefind/index/cs-cz_82fc657.pf_index +0 -0
  494. package/build/site/pagefind/index/cs-cz_8f6a83c.pf_index +0 -0
  495. package/build/site/pagefind/index/en_432f933.pf_index +0 -0
  496. package/build/site/pagefind/index/en_70c744a.pf_index +0 -0
  497. package/build/site/pagefind/index/en_fd84991.pf_index +0 -0
  498. package/build/site/pagefind/index/fr-fr_7275484.pf_index +0 -0
  499. package/build/site/pagefind/index/fr-fr_8096dd3.pf_index +0 -0
  500. package/build/site/pagefind/index/fr-fr_b34df12.pf_index +0 -0
  501. package/build/site/pagefind/index/fr-fr_e6ad665.pf_index +0 -0
  502. package/build/site/pagefind/index/vi-vn_129cf7e.pf_index +0 -0
  503. package/build/site/pagefind/index/vi-vn_7f54472.pf_index +0 -0
  504. package/build/site/pagefind/index/vi-vn_c1f31ce.pf_index +0 -0
  505. package/build/site/pagefind/index/vi-vn_c56f634.pf_index +0 -0
  506. package/build/site/pagefind/index/zh-cn_5ed0486.pf_index +0 -0
  507. package/build/site/pagefind/index/zh-cn_ad4d724.pf_index +0 -0
  508. package/build/site/pagefind/index/zh-cn_bc9f7b6.pf_index +0 -0
  509. package/build/site/pagefind/pagefind.cs-cz_cd39a8505eabf.pf_meta +0 -0
  510. package/build/site/pagefind/pagefind.en_8ae84a1b9c.pf_meta +0 -0
  511. package/build/site/pagefind/pagefind.fr-fr_20fca6f342d9a.pf_meta +0 -0
  512. package/build/site/pagefind/pagefind.vi-vn_6a45d08c2bbc8.pf_meta +0 -0
  513. package/build/site/pagefind/pagefind.zh-cn_ae911ac338eae.pf_meta +0 -0
  514. package/build/site/pagefind/wasm.fr-fr.pagefind +0 -0
  515. package/build/site/vi-vn/404/index.html +0 -42
  516. package/build/site/vi-vn/bmad-developer-guide/index.html +0 -794
  517. package/build/site/vi-vn/explanation/advanced-elicitation/index.html +0 -105
  518. package/build/site/vi-vn/explanation/adversarial-review/index.html +0 -109
  519. package/build/site/vi-vn/explanation/analysis-phase/index.html +0 -129
  520. package/build/site/vi-vn/explanation/brainstorming/index.html +0 -92
  521. package/build/site/vi-vn/explanation/checkpoint-preview/index.html +0 -121
  522. package/build/site/vi-vn/explanation/established-projects-faq/index.html +0 -107
  523. package/build/site/vi-vn/explanation/forensic-investigation/index.html +0 -167
  524. package/build/site/vi-vn/explanation/named-agents/index.html +0 -187
  525. package/build/site/vi-vn/explanation/party-mode/index.html +0 -101
  526. package/build/site/vi-vn/explanation/preventing-agent-conflicts/index.html +0 -185
  527. package/build/site/vi-vn/explanation/project-context/index.html +0 -198
  528. package/build/site/vi-vn/explanation/quick-dev/index.html +0 -113
  529. package/build/site/vi-vn/explanation/web-bundles/index.html +0 -178
  530. package/build/site/vi-vn/explanation/why-solutioning-matters/index.html +0 -168
  531. package/build/site/vi-vn/how-to/customize-bmad/index.html +0 -277
  532. package/build/site/vi-vn/how-to/established-projects/index.html +0 -165
  533. package/build/site/vi-vn/how-to/expand-bmad-for-your-org/index.html +0 -228
  534. package/build/site/vi-vn/how-to/get-answers-about-bmad/index.html +0 -129
  535. package/build/site/vi-vn/how-to/install-bmad/index.html +0 -124
  536. package/build/site/vi-vn/how-to/install-custom-modules/index.html +0 -197
  537. package/build/site/vi-vn/how-to/non-interactive-installation/index.html +0 -300
  538. package/build/site/vi-vn/how-to/project-context/index.html +0 -138
  539. package/build/site/vi-vn/how-to/quick-fixes/index.html +0 -122
  540. package/build/site/vi-vn/how-to/shard-large-documents/index.html +0 -103
  541. package/build/site/vi-vn/how-to/upgrade-to-v6/index.html +0 -185
  542. package/build/site/vi-vn/how-to/use-web-bundles/index.html +0 -99
  543. package/build/site/vi-vn/index.html +0 -129
  544. package/build/site/vi-vn/reference/agents/index.html +0 -173
  545. package/build/site/vi-vn/reference/commands/index.html +0 -250
  546. package/build/site/vi-vn/reference/core-tools/index.html +0 -337
  547. package/build/site/vi-vn/reference/modules/index.html +0 -132
  548. package/build/site/vi-vn/reference/testing/index.html +0 -218
  549. package/build/site/vi-vn/reference/workflow-map/index.html +0 -240
  550. package/build/site/vi-vn/roadmap/index.html +0 -77
  551. package/build/site/vi-vn/tutorials/getting-started/index.html +0 -382
  552. package/build/site/zh-cn/404/index.html +0 -42
  553. package/build/site/zh-cn/explanation/advanced-elicitation/index.html +0 -142
  554. package/build/site/zh-cn/explanation/adversarial-review/index.html +0 -132
  555. package/build/site/zh-cn/explanation/analysis-phase/index.html +0 -129
  556. package/build/site/zh-cn/explanation/brainstorming/index.html +0 -147
  557. package/build/site/zh-cn/explanation/checkpoint-preview/index.html +0 -121
  558. package/build/site/zh-cn/explanation/established-projects-faq/index.html +0 -122
  559. package/build/site/zh-cn/explanation/forensic-investigation/index.html +0 -167
  560. package/build/site/zh-cn/explanation/named-agents/index.html +0 -187
  561. package/build/site/zh-cn/explanation/party-mode/index.html +0 -144
  562. package/build/site/zh-cn/explanation/preventing-agent-conflicts/index.html +0 -191
  563. package/build/site/zh-cn/explanation/project-context/index.html +0 -153
  564. package/build/site/zh-cn/explanation/quick-dev/index.html +0 -139
  565. package/build/site/zh-cn/explanation/web-bundles/index.html +0 -178
  566. package/build/site/zh-cn/explanation/why-solutioning-matters/index.html +0 -175
  567. package/build/site/zh-cn/how-to/customize-bmad/index.html +0 -202
  568. package/build/site/zh-cn/how-to/established-projects/index.html +0 -166
  569. package/build/site/zh-cn/how-to/expand-bmad-for-your-org/index.html +0 -223
  570. package/build/site/zh-cn/how-to/get-answers-about-bmad/index.html +0 -198
  571. package/build/site/zh-cn/how-to/install-bmad/index.html +0 -126
  572. package/build/site/zh-cn/how-to/install-custom-modules/index.html +0 -197
  573. package/build/site/zh-cn/how-to/non-interactive-installation/index.html +0 -254
  574. package/build/site/zh-cn/how-to/project-context/index.html +0 -143
  575. package/build/site/zh-cn/how-to/quick-fixes/index.html +0 -122
  576. package/build/site/zh-cn/how-to/shard-large-documents/index.html +0 -110
  577. package/build/site/zh-cn/how-to/upgrade-to-v6/index.html +0 -198
  578. package/build/site/zh-cn/how-to/use-web-bundles/index.html +0 -99
  579. package/build/site/zh-cn/index.html +0 -129
  580. package/build/site/zh-cn/reference/agents/index.html +0 -178
  581. package/build/site/zh-cn/reference/commands/index.html +0 -245
  582. package/build/site/zh-cn/reference/core-tools/index.html +0 -313
  583. package/build/site/zh-cn/reference/modules/index.html +0 -181
  584. package/build/site/zh-cn/reference/testing/index.html +0 -226
  585. package/build/site/zh-cn/reference/workflow-map/index.html +0 -238
  586. package/build/site/zh-cn/roadmap/index.html +0 -77
  587. package/build/site/zh-cn/tutorials/getting-started/index.html +0 -381
  588. package/src/bmm-skills/2-plan-workflows/bmad-edit-prd/SKILL.md +0 -30
  589. /package/evals/bmm-skills/{bmad-product-brief → wizz-product-brief}/files/branfield-memo.md +0 -0
  590. /package/evals/bmm-skills/{bmad-product-brief → wizz-product-brief}/files/forkbird-brief/addendum.md +0 -0
  591. /package/evals/bmm-skills/{bmad-product-brief → wizz-product-brief}/files/forkbird-brief/brief.md +0 -0
  592. /package/evals/bmm-skills/{bmad-product-brief → wizz-product-brief}/files/forkbird-brief/decision-log.md +0 -0
  593. /package/evals/bmm-skills/{bmad-product-brief → wizz-product-brief}/files/meridian-mobility-report.md +0 -0
  594. /package/evals/bmm-skills/{bmad-product-brief → wizz-product-brief}/files/mossridge-brief/addendum.md +0 -0
  595. /package/evals/bmm-skills/{bmad-product-brief → wizz-product-brief}/files/mossridge-brief/brief.md +0 -0
  596. /package/evals/bmm-skills/{bmad-product-brief → wizz-product-brief}/files/mossridge-brief/decision-log.md +0 -0
  597. /package/evals/bmm-skills/{bmad-product-brief → wizz-product-brief}/files/pantry-bridge-interviews.md +0 -0
  598. /package/evals/bmm-skills/{bmad-product-brief → wizz-product-brief}/files/q2-brainstorm.md +0 -0
  599. /package/evals/bmm-skills/{bmad-product-brief → wizz-product-brief}/triggers.json +0 -0
  600. /package/src/bmm-skills/1-analysis/research/{bmad-domain-research → wizz-domain-research}/domain-steps/step-01-init.md +0 -0
  601. /package/src/bmm-skills/1-analysis/research/{bmad-domain-research → wizz-domain-research}/domain-steps/step-02-domain-analysis.md +0 -0
  602. /package/src/bmm-skills/1-analysis/research/{bmad-domain-research → wizz-domain-research}/domain-steps/step-03-competitive-landscape.md +0 -0
  603. /package/src/bmm-skills/1-analysis/research/{bmad-domain-research → wizz-domain-research}/domain-steps/step-04-regulatory-focus.md +0 -0
  604. /package/src/bmm-skills/1-analysis/research/{bmad-domain-research → wizz-domain-research}/domain-steps/step-05-technical-trends.md +0 -0
  605. /package/src/bmm-skills/1-analysis/research/{bmad-domain-research → wizz-domain-research}/research.template.md +0 -0
  606. /package/src/bmm-skills/1-analysis/research/{bmad-market-research → wizz-market-research}/research.template.md +0 -0
  607. /package/src/bmm-skills/1-analysis/research/{bmad-market-research → wizz-market-research}/steps/step-01-init.md +0 -0
  608. /package/src/bmm-skills/1-analysis/research/{bmad-market-research → wizz-market-research}/steps/step-02-customer-behavior.md +0 -0
  609. /package/src/bmm-skills/1-analysis/research/{bmad-market-research → wizz-market-research}/steps/step-03-customer-pain-points.md +0 -0
  610. /package/src/bmm-skills/1-analysis/research/{bmad-market-research → wizz-market-research}/steps/step-04-customer-decisions.md +0 -0
  611. /package/src/bmm-skills/1-analysis/research/{bmad-market-research → wizz-market-research}/steps/step-05-competitive-analysis.md +0 -0
  612. /package/src/bmm-skills/1-analysis/research/{bmad-technical-research → wizz-technical-research}/research.template.md +0 -0
  613. /package/src/bmm-skills/1-analysis/research/{bmad-technical-research → wizz-technical-research}/technical-steps/step-01-init.md +0 -0
  614. /package/src/bmm-skills/1-analysis/research/{bmad-technical-research → wizz-technical-research}/technical-steps/step-02-technical-overview.md +0 -0
  615. /package/src/bmm-skills/1-analysis/research/{bmad-technical-research → wizz-technical-research}/technical-steps/step-03-integration-patterns.md +0 -0
  616. /package/src/bmm-skills/1-analysis/research/{bmad-technical-research → wizz-technical-research}/technical-steps/step-04-architectural-patterns.md +0 -0
  617. /package/src/bmm-skills/1-analysis/research/{bmad-technical-research → wizz-technical-research}/technical-steps/step-05-implementation-research.md +0 -0
  618. /package/src/bmm-skills/1-analysis/{bmad-agent-tech-writer → wizz-agent-tech-writer}/explain-concept.md +0 -0
  619. /package/src/bmm-skills/1-analysis/{bmad-agent-tech-writer → wizz-agent-tech-writer}/mermaid-gen.md +0 -0
  620. /package/src/bmm-skills/1-analysis/{bmad-agent-tech-writer → wizz-agent-tech-writer}/validate-doc.md +0 -0
  621. /package/src/bmm-skills/1-analysis/{bmad-agent-tech-writer → wizz-agent-tech-writer}/write-document.md +0 -0
  622. /package/src/bmm-skills/1-analysis/{bmad-document-project → wizz-document-project}/checklist.md +0 -0
  623. /package/src/bmm-skills/1-analysis/{bmad-document-project → wizz-document-project}/documentation-requirements.csv +0 -0
  624. /package/src/bmm-skills/1-analysis/{bmad-document-project → wizz-document-project}/instructions.md +0 -0
  625. /package/src/bmm-skills/1-analysis/{bmad-document-project → wizz-document-project}/templates/deep-dive-template.md +0 -0
  626. /package/src/bmm-skills/1-analysis/{bmad-document-project → wizz-document-project}/templates/index-template.md +0 -0
  627. /package/src/bmm-skills/1-analysis/{bmad-document-project → wizz-document-project}/templates/project-overview-template.md +0 -0
  628. /package/src/bmm-skills/1-analysis/{bmad-document-project → wizz-document-project}/templates/project-scan-report-schema.json +0 -0
  629. /package/src/bmm-skills/1-analysis/{bmad-document-project → wizz-document-project}/templates/source-tree-template.md +0 -0
  630. /package/src/bmm-skills/1-analysis/{bmad-prfaq → wizz-prfaq}/agents/artifact-analyzer.md +0 -0
  631. /package/src/bmm-skills/1-analysis/{bmad-prfaq → wizz-prfaq}/agents/web-researcher.md +0 -0
  632. /package/src/bmm-skills/1-analysis/{bmad-prfaq → wizz-prfaq}/assets/prfaq-template.md +0 -0
  633. /package/src/bmm-skills/1-analysis/{bmad-prfaq → wizz-prfaq}/bmad-manifest.json +0 -0
  634. /package/src/bmm-skills/1-analysis/{bmad-prfaq → wizz-prfaq}/references/customer-faq.md +0 -0
  635. /package/src/bmm-skills/1-analysis/{bmad-prfaq → wizz-prfaq}/references/internal-faq.md +0 -0
  636. /package/src/bmm-skills/1-analysis/{bmad-prfaq → wizz-prfaq}/references/press-release.md +0 -0
  637. /package/src/bmm-skills/1-analysis/{bmad-product-brief → wizz-product-brief}/assets/brief-template.md +0 -0
  638. /package/src/bmm-skills/2-plan-workflows/{bmad-prd → wizz-prd}/assets/headless-schemas.md +0 -0
  639. /package/src/bmm-skills/2-plan-workflows/{bmad-prd → wizz-prd}/assets/prd-validation-checklist.md +0 -0
  640. /package/src/bmm-skills/2-plan-workflows/{bmad-prd → wizz-prd}/assets/validation-report-template.html +0 -0
  641. /package/src/bmm-skills/2-plan-workflows/{bmad-prd → wizz-prd}/references/validate.md +0 -0
  642. /package/src/bmm-skills/2-plan-workflows/{bmad-ux → wizz-ux}/assets/color-themes.md +0 -0
  643. /package/src/bmm-skills/2-plan-workflows/{bmad-ux → wizz-ux}/assets/design-directions.md +0 -0
  644. /package/src/bmm-skills/2-plan-workflows/{bmad-ux → wizz-ux}/assets/design-example-editorial.md +0 -0
  645. /package/src/bmm-skills/2-plan-workflows/{bmad-ux → wizz-ux}/assets/design-example-mobile.md +0 -0
  646. /package/src/bmm-skills/2-plan-workflows/{bmad-ux → wizz-ux}/assets/design-example-shadcn.md +0 -0
  647. /package/src/bmm-skills/2-plan-workflows/{bmad-ux → wizz-ux}/assets/excalidraw-wireframe.md +0 -0
  648. /package/src/bmm-skills/2-plan-workflows/{bmad-ux → wizz-ux}/assets/experience-example-mobile.md +0 -0
  649. /package/src/bmm-skills/2-plan-workflows/{bmad-ux → wizz-ux}/assets/experience-example-shadcn.md +0 -0
  650. /package/src/bmm-skills/2-plan-workflows/{bmad-ux → wizz-ux}/assets/headless-schemas.md +0 -0
  651. /package/src/bmm-skills/2-plan-workflows/{bmad-ux → wizz-ux}/assets/key-screens.md +0 -0
  652. /package/src/bmm-skills/2-plan-workflows/{bmad-ux → wizz-ux}/assets/validation-report-template.html +0 -0
  653. /package/src/bmm-skills/2-plan-workflows/{bmad-ux → wizz-ux}/references/creative-tools.md +0 -0
  654. /package/src/bmm-skills/2-plan-workflows/{bmad-ux → wizz-ux}/references/design-md-spec.md +0 -0
  655. /package/src/bmm-skills/2-plan-workflows/{bmad-ux → wizz-ux}/references/headless.md +0 -0
  656. /package/src/bmm-skills/2-plan-workflows/{bmad-ux → wizz-ux}/references/validate.md +0 -0
  657. /package/src/bmm-skills/3-solutioning/{bmad-architecture → wizz-architecture}/assets/spine-template.md +0 -0
  658. /package/src/bmm-skills/3-solutioning/{bmad-architecture → wizz-architecture}/references/reviewer-gate.md +0 -0
  659. /package/src/bmm-skills/3-solutioning/{bmad-architecture → wizz-architecture}/scripts/lint_spine.py +0 -0
  660. /package/src/bmm-skills/3-solutioning/{bmad-architecture → wizz-architecture}/scripts/tests/test_lint_spine.py +0 -0
  661. /package/src/bmm-skills/3-solutioning/{bmad-check-implementation-readiness → wizz-check-implementation-readiness}/steps/step-01-document-discovery.md +0 -0
  662. /package/src/bmm-skills/3-solutioning/{bmad-check-implementation-readiness → wizz-check-implementation-readiness}/steps/step-02-prd-analysis.md +0 -0
  663. /package/src/bmm-skills/3-solutioning/{bmad-check-implementation-readiness → wizz-check-implementation-readiness}/steps/step-03-epic-coverage-validation.md +0 -0
  664. /package/src/bmm-skills/3-solutioning/{bmad-check-implementation-readiness → wizz-check-implementation-readiness}/steps/step-04-ux-alignment.md +0 -0
  665. /package/src/bmm-skills/3-solutioning/{bmad-check-implementation-readiness → wizz-check-implementation-readiness}/steps/step-05-epic-quality-review.md +0 -0
  666. /package/src/bmm-skills/3-solutioning/{bmad-check-implementation-readiness → wizz-check-implementation-readiness}/templates/readiness-report-template.md +0 -0
  667. /package/src/bmm-skills/3-solutioning/{bmad-create-epics-and-stories → wizz-create-epics-and-stories}/templates/epics-template.md +0 -0
  668. /package/src/bmm-skills/3-solutioning/{bmad-generate-project-context → wizz-generate-project-context}/project-context-template.md +0 -0
  669. /package/src/bmm-skills/3-solutioning/{bmad-generate-project-context → wizz-generate-project-context}/steps/step-01-discover.md +0 -0
  670. /package/src/bmm-skills/4-implementation/{bmad-checkpoint-preview → wizz-checkpoint-preview}/generate-trail.md +0 -0
  671. /package/src/bmm-skills/4-implementation/{bmad-checkpoint-preview → wizz-checkpoint-preview}/step-01-orientation.md +0 -0
  672. /package/src/bmm-skills/4-implementation/{bmad-checkpoint-preview → wizz-checkpoint-preview}/step-02-walkthrough.md +0 -0
  673. /package/src/bmm-skills/4-implementation/{bmad-checkpoint-preview → wizz-checkpoint-preview}/step-03-detail-pass.md +0 -0
  674. /package/src/bmm-skills/4-implementation/{bmad-checkpoint-preview → wizz-checkpoint-preview}/step-04-testing.md +0 -0
  675. /package/src/bmm-skills/4-implementation/{bmad-code-review → wizz-code-review}/steps/step-01-gather-context.md +0 -0
  676. /package/src/bmm-skills/4-implementation/{bmad-code-review → wizz-code-review}/steps/step-03-triage.md +0 -0
  677. /package/src/bmm-skills/4-implementation/{bmad-correct-course → wizz-correct-course}/checklist.md +0 -0
  678. /package/src/bmm-skills/4-implementation/{bmad-create-story → wizz-create-story}/checklist.md +0 -0
  679. /package/src/bmm-skills/4-implementation/{bmad-create-story → wizz-create-story}/discover-inputs.md +0 -0
  680. /package/src/bmm-skills/4-implementation/{bmad-create-story → wizz-create-story}/template.md +0 -0
  681. /package/src/bmm-skills/4-implementation/{bmad-dev-story → wizz-dev-story}/checklist.md +0 -0
  682. /package/src/bmm-skills/4-implementation/{bmad-investigate → wizz-investigate}/references/case-file-template.md +0 -0
  683. /package/src/bmm-skills/4-implementation/{bmad-qa-generate-e2e-tests → wizz-qa-generate-e2e-tests}/checklist.md +0 -0
  684. /package/src/bmm-skills/4-implementation/{bmad-quick-dev → wizz-quick-dev}/compile-epic-context.md +0 -0
  685. /package/src/bmm-skills/4-implementation/{bmad-quick-dev → wizz-quick-dev}/spec-template.md +0 -0
  686. /package/src/bmm-skills/4-implementation/{bmad-quick-dev → wizz-quick-dev}/step-01-clarify-and-route.md +0 -0
  687. /package/src/bmm-skills/4-implementation/{bmad-quick-dev → wizz-quick-dev}/step-03-implement.md +0 -0
  688. /package/src/bmm-skills/4-implementation/{bmad-quick-dev → wizz-quick-dev}/sync-sprint-status.md +0 -0
  689. /package/src/bmm-skills/4-implementation/{bmad-sprint-planning → wizz-sprint-planning}/checklist.md +0 -0
  690. /package/src/bmm-skills/4-implementation/{bmad-sprint-planning → wizz-sprint-planning}/sprint-status-template.yaml +0 -0
  691. /package/src/core-skills/{bmad-advanced-elicitation → wizz-advanced-elicitation}/methods.csv +0 -0
  692. /package/src/core-skills/{bmad-brainstorming → wizz-brainstorming}/analysis/catalog-analysis.md +0 -0
  693. /package/src/core-skills/{bmad-brainstorming → wizz-brainstorming}/analysis/method-matrix.csv +0 -0
  694. /package/src/core-skills/{bmad-brainstorming → wizz-brainstorming}/assets/brain-icons.json +0 -0
  695. /package/src/core-skills/{bmad-brainstorming → wizz-brainstorming}/assets/brain-methods.csv +0 -0
  696. /package/src/core-skills/{bmad-brainstorming → wizz-brainstorming}/assets/brain-selector.html +0 -0
  697. /package/src/core-skills/{bmad-brainstorming → wizz-brainstorming}/references/converge.md +0 -0
  698. /package/src/core-skills/{bmad-brainstorming → wizz-brainstorming}/references/mode-autonomous.md +0 -0
  699. /package/src/core-skills/{bmad-brainstorming → wizz-brainstorming}/references/mode-facilitator.md +0 -0
  700. /package/src/core-skills/{bmad-brainstorming → wizz-brainstorming}/references/mode-partner.md +0 -0
  701. /package/src/core-skills/{bmad-brainstorming → wizz-brainstorming}/references/resume.md +0 -0
  702. /package/src/core-skills/{bmad-brainstorming → wizz-brainstorming}/scripts/brain.py +0 -0
  703. /package/src/core-skills/{bmad-brainstorming → wizz-brainstorming}/scripts/memlog.py +0 -0
  704. /package/src/core-skills/{bmad-brainstorming → wizz-brainstorming}/scripts/tests/test_brain.py +0 -0
  705. /package/src/core-skills/{bmad-brainstorming → wizz-brainstorming}/scripts/tests/test_memlog.py +0 -0
  706. /package/src/core-skills/{bmad-party-mode → wizz-party-mode}/references/mode-agent-team.md +0 -0
  707. /package/src/core-skills/{bmad-party-mode → wizz-party-mode}/references/mode-auto.md +0 -0
  708. /package/src/core-skills/{bmad-party-mode → wizz-party-mode}/references/mode-subagent.md +0 -0
  709. /package/src/core-skills/{bmad-spec → wizz-spec}/assets/spec-template.md +0 -0
@@ -1,277 +0,0 @@
1
- <!DOCTYPE html><html lang="fr-FR" dir="ltr" data-theme="dark" data-has-toc data-has-sidebar class="astro-uxe7q6yi"> <head><meta charset="utf-8"/><meta name="viewport" content="width=device-width, initial-scale=1"/><title>Comment personnaliser BMad | Wizz Method</title><link rel="canonical" href="http://localhost:3000/fr/how-to/customize-bmad/"/><link rel="alternate" hreflang="en" href="http://localhost:3000/how-to/customize-bmad/"/><link rel="alternate" hreflang="vi-VN" href="http://localhost:3000/vi-vn/how-to/customize-bmad/"/><link rel="alternate" hreflang="zh-CN" href="http://localhost:3000/zh-cn/how-to/customize-bmad/"/><link rel="alternate" hreflang="fr-FR" href="http://localhost:3000/fr/how-to/customize-bmad/"/><link rel="alternate" hreflang="cs-CZ" href="http://localhost:3000/cs/how-to/customize-bmad/"/><link rel="sitemap" href="/sitemap-index.xml"/><link rel="shortcut icon" href="/wizz-icon-orange.svg" type="image/svg+xml"/><meta name="generator" content="Astro v5.18.1"/><meta name="generator" content="Starlight v0.37.5"/><meta property="og:title" content="Comment personnaliser BMad"/><meta property="og:type" content="article"/><meta property="og:url" content="http://localhost:3000/fr/how-to/customize-bmad/"/><meta property="og:locale" content="fr-FR"/><meta property="og:description" content="Personnalisez les agents et les workflows tout en préservant la compatibilité avec les mises à jour"/><meta property="og:site_name" content="Wizz Method"/><meta name="twitter:card" content="summary_large_image"/><meta name="description" content="Personnalisez les agents et les workflows tout en préservant la compatibilité avec les mises à jour"/><meta name="ai-terms" content="AI-optimized documentation: http://localhost:3000/llms-full.txt (plain text, ~100k tokens, complete Wizz Method reference). Index: http://localhost:3000/llms.txt"/><meta name="llms-full" content="http://localhost:3000/llms-full.txt"/><meta name="llms" content="http://localhost:3000/llms.txt"/><script>
2
- window.StarlightThemeProvider = (() => {
3
- const storedTheme =
4
- typeof localStorage !== 'undefined' && localStorage.getItem('starlight-theme');
5
- const theme =
6
- storedTheme ||
7
- (window.matchMedia('(prefers-color-scheme: light)').matches ? 'light' : 'dark');
8
- document.documentElement.dataset.theme = theme === 'light' ? 'light' : 'dark';
9
- return {
10
- updatePickers(theme = storedTheme || 'auto') {
11
- document.querySelectorAll('starlight-theme-select').forEach((picker) => {
12
- const select = picker.querySelector('select');
13
- if (select) select.value = theme;
14
- /** @type {HTMLTemplateElement | null} */
15
- const tmpl = document.querySelector(`#theme-icons`);
16
- const newIcon = tmpl && tmpl.content.querySelector('.' + theme);
17
- if (newIcon) {
18
- const oldIcon = picker.querySelector('svg.label-icon');
19
- if (oldIcon) {
20
- oldIcon.replaceChildren(...newIcon.cloneNode(true).childNodes);
21
- }
22
- }
23
- });
24
- },
25
- };
26
- })();
27
- </script><template id="theme-icons"><svg aria-hidden="true" class="light astro-zf5byosl" width="16" height="16" viewBox="0 0 24 24" fill="currentColor" style="--sl-icon-size: 1em;"><path d="M5 12a1 1 0 0 0-1-1H3a1 1 0 0 0 0 2h1a1 1 0 0 0 1-1Zm.64 5-.71.71a1 1 0 0 0 0 1.41 1 1 0 0 0 1.41 0l.71-.71A1 1 0 0 0 5.64 17ZM12 5a1 1 0 0 0 1-1V3a1 1 0 0 0-2 0v1a1 1 0 0 0 1 1Zm5.66 2.34a1 1 0 0 0 .7-.29l.71-.71a1 1 0 1 0-1.41-1.41l-.66.71a1 1 0 0 0 0 1.41 1 1 0 0 0 .66.29Zm-12-.29a1 1 0 0 0 1.41 0 1 1 0 0 0 0-1.41l-.71-.71a1.004 1.004 0 1 0-1.43 1.41l.73.71ZM21 11h-1a1 1 0 0 0 0 2h1a1 1 0 0 0 0-2Zm-2.64 6A1 1 0 0 0 17 18.36l.71.71a1 1 0 0 0 1.41 0 1 1 0 0 0 0-1.41l-.76-.66ZM12 6.5a5.5 5.5 0 1 0 5.5 5.5A5.51 5.51 0 0 0 12 6.5Zm0 9a3.5 3.5 0 1 1 0-7 3.5 3.5 0 0 1 0 7Zm0 3.5a1 1 0 0 0-1 1v1a1 1 0 0 0 2 0v-1a1 1 0 0 0-1-1Z"/></svg><svg aria-hidden="true" class="dark astro-zf5byosl" width="16" height="16" viewBox="0 0 24 24" fill="currentColor" style="--sl-icon-size: 1em;"><path d="M21.64 13a1 1 0 0 0-1.05-.14 8.049 8.049 0 0 1-3.37.73 8.15 8.15 0 0 1-8.14-8.1 8.59 8.59 0 0 1 .25-2A1 1 0 0 0 8 2.36a10.14 10.14 0 1 0 14 11.69 1 1 0 0 0-.36-1.05Zm-9.5 6.69A8.14 8.14 0 0 1 7.08 5.22v.27a10.15 10.15 0 0 0 10.14 10.14 9.784 9.784 0 0 0 2.1-.22 8.11 8.11 0 0 1-7.18 4.32v-.04Z"/></svg><svg aria-hidden="true" class="auto astro-zf5byosl" width="16" height="16" viewBox="0 0 24 24" fill="currentColor" style="--sl-icon-size: 1em;"><path d="M21 14h-1V7a3 3 0 0 0-3-3H7a3 3 0 0 0-3 3v7H3a1 1 0 0 0-1 1v2a3 3 0 0 0 3 3h14a3 3 0 0 0 3-3v-2a1 1 0 0 0-1-1ZM6 7a1 1 0 0 1 1-1h10a1 1 0 0 1 1 1v7H6V7Zm14 10a1 1 0 0 1-1 1H5a1 1 0 0 1-1-1v-1h16v1Z"/></svg></template><link rel="stylesheet" href="/_astro/print.DNXP8c50.css" media="print"><link rel="stylesheet" href="/_astro/index.DdjI3lF_.css"><script type="module" src="/_astro/page.B1D-nYk3.js"></script></head> <body class="astro-uxe7q6yi"> <a href="#_top" class="astro-7lpm5qv4">Aller au contenu</a> <div class="page sl-flex astro-2xv6dk2n"> <header class="header astro-2xv6dk2n"><div class="ai-banner astro-kggsjsm4" role="note" aria-label="AI documentation notice"> <span class="astro-kggsjsm4">🤖 Consolidated, AI-optimized Wizz Method docs: <a href="http://localhost:3000/llms-full.txt" class="astro-kggsjsm4">llms-full.txt</a>. Fetch this plain text file for complete context.</span> </div> <div class="header sl-flex astro-3ef6ksr2"> <div class="title-wrapper sl-flex astro-3ef6ksr2"> <a href="/fr" class="site-title sl-flex astro-sv76zpkw"> <span class="astro-sv76zpkw" translate="no"> Wizz Method </span> </a> </div> <div class="sl-flex print:hidden astro-3ef6ksr2"> <site-search class="astro-3ef6ksr2 astro-kbzrce66" data-translations="{&#34;placeholder&#34;:&#34;Rechercher&#34;}"> <button data-open-modal disabled aria-label="Rechercher" aria-keyshortcuts="Control+K" class="astro-kbzrce66"> <svg aria-hidden="true" class="astro-kbzrce66 astro-zf5byosl" width="16" height="16" viewBox="0 0 24 24" fill="currentColor" style="--sl-icon-size: 1em;"><path d="M21.71 20.29 18 16.61A9 9 0 1 0 16.61 18l3.68 3.68a.999.999 0 0 0 1.42 0 1 1 0 0 0 0-1.39ZM11 18a7 7 0 1 1 0-14 7 7 0 0 1 0 14Z"/></svg> <span class="sl-hidden md:sl-block astro-kbzrce66" aria-hidden="true">Rechercher</span> <kbd class="sl-hidden md:sl-flex astro-kbzrce66" style="display: none;"> <kbd class="astro-kbzrce66">Ctrl</kbd><kbd class="astro-kbzrce66">K</kbd> </kbd> </button> <dialog style="padding:0" aria-label="Rechercher" class="astro-kbzrce66"> <div class="dialog-frame sl-flex astro-kbzrce66"> <button data-close-modal class="sl-flex md:sl-hidden astro-kbzrce66"> Annuler </button> <div class="search-container astro-kbzrce66"> <div id="starlight__search" class="astro-kbzrce66"></div> </div> </div> </dialog> </site-search> <script>
28
- (() => {
29
- const openBtn = document.querySelector('button[data-open-modal]');
30
- const shortcut = openBtn?.querySelector('kbd');
31
- if (!openBtn || !(shortcut instanceof HTMLElement)) return;
32
- const platformKey = shortcut.querySelector('kbd');
33
- if (platformKey && /(Mac|iPhone|iPod|iPad)/i.test(navigator.platform)) {
34
- platformKey.textContent = '⌘';
35
- openBtn.setAttribute('aria-keyshortcuts', 'Meta+K');
36
- }
37
- shortcut.style.display = '';
38
- })();
39
- </script> <script type="module" src="/_astro/Search.astro_astro_type_script_index_0_lang.cjYDvRdi.js"></script> </div> <div class="sl-hidden md:sl-flex print:hidden right-group astro-3ef6ksr2"> <div class="sl-flex social-icons astro-3ef6ksr2"> <a href="https://github.com/wizzcomms/wizz-method" rel="me" class="sl-flex astro-bgmygzip"><span class="sr-only astro-bgmygzip">GitHub</span><svg aria-hidden="true" class="astro-bgmygzip astro-zf5byosl" width="16" height="16" viewBox="0 0 24 24" fill="currentColor" style="--sl-icon-size: 1em;"><path d="M12 .3a12 12 0 0 0-3.8 23.38c.6.12.83-.26.83-.57L9 21.07c-3.34.72-4.04-1.61-4.04-1.61-.55-1.39-1.34-1.76-1.34-1.76-1.08-.74.09-.73.09-.73 1.2.09 1.83 1.24 1.83 1.24 1.08 1.83 2.81 1.3 3.5 1 .1-.78.42-1.31.76-1.61-2.67-.3-5.47-1.33-5.47-5.93 0-1.31.47-2.38 1.24-3.22-.14-.3-.54-1.52.1-3.18 0 0 1-.32 3.3 1.23a11.5 11.5 0 0 1 6 0c2.28-1.55 3.29-1.23 3.29-1.23.64 1.66.24 2.88.12 3.18a4.65 4.65 0 0 1 1.23 3.22c0 4.61-2.8 5.63-5.48 5.92.42.36.81 1.1.81 2.22l-.01 3.29c0 .31.2.69.82.57A12 12 0 0 0 12 .3Z"/></svg></a> </div> <starlight-theme-select> <label style="--sl-select-width: 6.25em" class="astro-nmwkdvwx"> <span class="sr-only astro-nmwkdvwx">Choisir le thème</span> <svg aria-hidden="true" class="icon label-icon astro-nmwkdvwx astro-zf5byosl" width="16" height="16" viewBox="0 0 24 24" fill="currentColor" style="--sl-icon-size: 1em;"><path d="M21 14h-1V7a3 3 0 0 0-3-3H7a3 3 0 0 0-3 3v7H3a1 1 0 0 0-1 1v2a3 3 0 0 0 3 3h14a3 3 0 0 0 3-3v-2a1 1 0 0 0-1-1ZM6 7a1 1 0 0 1 1-1h10a1 1 0 0 1 1 1v7H6V7Zm14 10a1 1 0 0 1-1 1H5a1 1 0 0 1-1-1v-1h16v1Z"/></svg> <select autocomplete="off" class="astro-nmwkdvwx"> <option value="dark" class="astro-nmwkdvwx">Sombre</option><option value="light" class="astro-nmwkdvwx">Clair</option><option value="auto" selected class="astro-nmwkdvwx">Automatique</option> </select> <svg aria-hidden="true" class="icon caret astro-nmwkdvwx astro-zf5byosl" width="16" height="16" viewBox="0 0 24 24" fill="currentColor" style="--sl-icon-size: 1em;"><path d="M17 9.17a1 1 0 0 0-1.41 0L12 12.71 8.46 9.17a1 1 0 1 0-1.41 1.42l4.24 4.24a1.002 1.002 0 0 0 1.42 0L17 10.59a1.002 1.002 0 0 0 0-1.42Z"/></svg> </label> </starlight-theme-select> <script>
40
- StarlightThemeProvider.updatePickers();
41
- </script> <script type="module">const r="starlight-theme",o=e=>e==="auto"||e==="dark"||e==="light"?e:"auto",c=()=>o(typeof localStorage<"u"&&localStorage.getItem(r));function n(e){typeof localStorage<"u"&&localStorage.setItem(r,e==="light"||e==="dark"?e:"")}const l=()=>matchMedia("(prefers-color-scheme: light)").matches?"light":"dark";function t(e){StarlightThemeProvider.updatePickers(e),document.documentElement.dataset.theme=e==="auto"?l():e,n(e)}matchMedia("(prefers-color-scheme: light)").addEventListener("change",()=>{c()==="auto"&&t("auto")});class s extends HTMLElement{constructor(){super(),t(c()),this.querySelector("select")?.addEventListener("change",a=>{a.currentTarget instanceof HTMLSelectElement&&t(o(a.currentTarget.value))})}}customElements.define("starlight-theme-select",s);</script> <starlight-lang-select><label style="--sl-select-width: 7em" class="astro-nmwkdvwx"> <span class="sr-only astro-nmwkdvwx">Choisir la langue</span> <svg aria-hidden="true" class="icon label-icon astro-nmwkdvwx astro-zf5byosl" width="16" height="16" viewBox="0 0 24 24" fill="currentColor" style="--sl-icon-size: 1em;"><path fill-rule="evenodd" d="M8.516 3a.94.94 0 0 0-.941.94v1.15H2.94a.94.94 0 1 0 0 1.882h7.362a7.422 7.422 0 0 1-1.787 3.958 7.42 7.42 0 0 1-1.422-2.425.94.94 0 1 0-1.774.627 9.303 9.303 0 0 0 1.785 3.043 7.422 7.422 0 0 1-4.164 1.278.94.94 0 1 0 0 1.881 9.303 9.303 0 0 0 5.575-1.855 9.303 9.303 0 0 0 4.11 1.74l-.763 1.525a.968.968 0 0 0-.016.034l-1.385 2.77a.94.94 0 1 0 1.683.841l1.133-2.267h5.806l1.134 2.267a.94.94 0 0 0 1.683-.841l-1.385-2.769a.95.95 0 0 0-.018-.036l-3.476-6.951a.94.94 0 0 0-1.682 0l-1.82 3.639a7.423 7.423 0 0 1-3.593-1.256 9.303 9.303 0 0 0 2.27-5.203h1.894a.94.94 0 0 0 0-1.881H9.456V3.94A.94.94 0 0 0 8.516 3Zm6.426 11.794a1.068 1.068 0 0 1-.02.039l-.703 1.407h3.924l-1.962-3.924-1.24 2.478Z" clip-rule="evenodd"/></svg> <select autocomplete="off" class="astro-nmwkdvwx"> <option value="/how-to/customize-bmad/" class="astro-nmwkdvwx">English</option><option value="/vi-vn/how-to/customize-bmad/" class="astro-nmwkdvwx">Tiếng Việt</option><option value="/zh-cn/how-to/customize-bmad/" class="astro-nmwkdvwx">简体中文</option><option value="/fr/how-to/customize-bmad/" selected class="astro-nmwkdvwx">Français</option><option value="/cs/how-to/customize-bmad/" class="astro-nmwkdvwx">Čeština</option> </select> <svg aria-hidden="true" class="icon caret astro-nmwkdvwx astro-zf5byosl" width="16" height="16" viewBox="0 0 24 24" fill="currentColor" style="--sl-icon-size: 1em;"><path d="M17 9.17a1 1 0 0 0-1.41 0L12 12.71 8.46 9.17a1 1 0 1 0-1.41 1.42l4.24 4.24a1.002 1.002 0 0 0 1.42 0L17 10.59a1.002 1.002 0 0 0 0-1.42Z"/></svg> </label> </starlight-lang-select><script type="module">class s extends HTMLElement{constructor(){super();const e=this.querySelector("select");e&&(e.addEventListener("change",t=>{t.currentTarget instanceof HTMLSelectElement&&(window.location.pathname=t.currentTarget.value)}),window.addEventListener("pageshow",t=>{if(!t.persisted)return;const n=e.querySelector("option[selected]")?.index;n!==e.selectedIndex&&(e.selectedIndex=n??0)}))}}customElements.define("starlight-lang-select",s);</script> </div> </div> </header> <nav class="sidebar print:hidden astro-2xv6dk2n" aria-label="Navigation principale"> <starlight-menu-button class="print:hidden astro-rcmu22v7"> <button aria-expanded="false" aria-label="Menu" aria-controls="starlight__sidebar" class="sl-flex md:sl-hidden astro-rcmu22v7"> <svg aria-hidden="true" class="open-menu astro-rcmu22v7 astro-zf5byosl" width="16" height="16" viewBox="0 0 24 24" fill="currentColor" style="--sl-icon-size: 1em;"><path d="M3 8h18a1 1 0 1 0 0-2H3a1 1 0 0 0 0 2Zm18 8H3a1 1 0 0 0 0 2h18a1 1 0 0 0 0-2Zm0-5H3a1 1 0 0 0 0 2h18a1 1 0 0 0 0-2Z"/></svg> <svg aria-hidden="true" class="close-menu astro-rcmu22v7 astro-zf5byosl" width="16" height="16" viewBox="0 0 24 24" fill="currentColor" style="--sl-icon-size: 1em;"><path d="m13.41 12 6.3-6.29a1.004 1.004 0 1 0-1.42-1.42L12 10.59l-6.29-6.3a1.004 1.004 0 0 0-1.42 1.42l6.3 6.29-6.3 6.29a1 1 0 0 0 0 1.42.998.998 0 0 0 1.42 0l6.29-6.3 6.29 6.3a.999.999 0 0 0 1.42 0 1 1 0 0 0 0-1.42L13.41 12Z"/></svg> </button> </starlight-menu-button> <script type="module">class s extends HTMLElement{constructor(){super(),this.btn=this.querySelector("button"),this.btn.addEventListener("click",()=>this.toggleExpanded());const t=this.closest("nav");t&&t.addEventListener("keyup",e=>this.closeOnEscape(e))}setExpanded(t){this.setAttribute("aria-expanded",String(t)),document.body.toggleAttribute("data-mobile-menu-expanded",t)}toggleExpanded(){this.setExpanded(this.getAttribute("aria-expanded")!=="true")}closeOnEscape(t){t.code==="Escape"&&(this.setExpanded(!1),this.btn.focus())}}customElements.define("starlight-menu-button",s);</script> <div id="starlight__sidebar" class="sidebar-pane astro-2xv6dk2n"> <div class="sidebar-content sl-flex astro-2xv6dk2n"> <sl-sidebar-state-persist data-hash="1pcwe7r" class="astro-t57j3vat"> <script aria-hidden="true">
42
- (() => {
43
- try {
44
- if (!matchMedia('(min-width: 50em)').matches) return;
45
- /** @type {HTMLElement | null} */
46
- const target = document.querySelector('sl-sidebar-state-persist');
47
- const state = JSON.parse(sessionStorage.getItem('sl-sidebar-state') || '0');
48
- if (!target || !state || target.dataset.hash !== state.hash) return;
49
- window._starlightScrollRestore = state.scroll;
50
- customElements.define(
51
- 'sl-sidebar-restore',
52
- class SidebarRestore extends HTMLElement {
53
- connectedCallback() {
54
- try {
55
- const idx = parseInt(this.dataset.index || '');
56
- const details = this.closest('details');
57
- if (details && typeof state.open[idx] === 'boolean') details.open = state.open[idx];
58
- } catch {}
59
- }
60
- }
61
- );
62
- } catch {}
63
- })();
64
- </script> <ul class="top-level astro-yhouv36n"> <li class="astro-yhouv36n"> <a href="/fr/" class="large astro-yhouv36n"> <span class="astro-yhouv36n">Bienvenue</span> </a> </li><li class="astro-yhouv36n"> <a href="/fr/roadmap/" class="large astro-yhouv36n"> <span class="astro-yhouv36n">Feuille de route</span> </a> </li><li class="astro-yhouv36n"> <details open class="astro-yhouv36n"> <summary class="astro-yhouv36n"> <span class="group-label astro-yhouv36n"> <span class="large astro-yhouv36n">Tutoriels</span> </span> <svg aria-hidden="true" class="caret astro-yhouv36n astro-zf5byosl" width="16" height="16" viewBox="0 0 24 24" fill="currentColor" style="--sl-icon-size: 1.25rem;"><path d="m14.83 11.29-4.24-4.24a1 1 0 1 0-1.42 1.41L12.71 12l-3.54 3.54a1 1 0 0 0 0 1.41 1 1 0 0 0 .71.29 1 1 0 0 0 .71-.29l4.24-4.24a1.002 1.002 0 0 0 0-1.42Z"/></svg> </summary> <sl-sidebar-restore data-index="0"></sl-sidebar-restore> <ul class="astro-yhouv36n"> <li class="astro-yhouv36n"> <a href="/fr/tutorials/getting-started/" class="astro-yhouv36n"> <span class="astro-yhouv36n">Premiers pas</span> </a> </li> </ul> </details> </li><li class="astro-yhouv36n"> <details open class="astro-yhouv36n"> <summary class="astro-yhouv36n"> <span class="group-label astro-yhouv36n"> <span class="large astro-yhouv36n">Guides pratiques</span> </span> <svg aria-hidden="true" class="caret astro-yhouv36n astro-zf5byosl" width="16" height="16" viewBox="0 0 24 24" fill="currentColor" style="--sl-icon-size: 1.25rem;"><path d="m14.83 11.29-4.24-4.24a1 1 0 1 0-1.42 1.41L12.71 12l-3.54 3.54a1 1 0 0 0 0 1.41 1 1 0 0 0 .71.29 1 1 0 0 0 .71-.29l4.24-4.24a1.002 1.002 0 0 0 0-1.42Z"/></svg> </summary> <sl-sidebar-restore data-index="1"></sl-sidebar-restore> <ul class="astro-yhouv36n"> <li class="astro-yhouv36n"> <a href="/fr/how-to/install-bmad/" class="astro-yhouv36n"> <span class="astro-yhouv36n">Comment installer BMad</span> </a> </li><li class="astro-yhouv36n"> <a href="/fr/how-to/non-interactive-installation/" class="astro-yhouv36n"> <span class="astro-yhouv36n">Installation non-interactive</span> </a> </li><li class="astro-yhouv36n"> <a href="/fr/how-to/install-custom-modules/" class="astro-yhouv36n"> <span class="astro-yhouv36n">Installer des modules personnalisés et communautaires</span> </a> </li><li class="astro-yhouv36n"> <a href="/fr/how-to/upgrade-to-v6/" class="astro-yhouv36n"> <span class="astro-yhouv36n">Comment passer à la v6</span> </a> </li><li class="astro-yhouv36n"> <a href="/fr/how-to/get-answers-about-bmad/" class="astro-yhouv36n"> <span class="astro-yhouv36n">Comment obtenir des réponses à propos de BMad</span> </a> </li><li class="astro-yhouv36n"> <a href="/fr/how-to/quick-fixes/" class="astro-yhouv36n"> <span class="astro-yhouv36n">Corrections Rapides</span> </a> </li><li class="astro-yhouv36n"> <a href="/fr/how-to/established-projects/" class="astro-yhouv36n"> <span class="astro-yhouv36n">Projets existants</span> </a> </li><li class="astro-yhouv36n"> <a href="/fr/how-to/customize-bmad/" aria-current="page" class="astro-yhouv36n"> <span class="astro-yhouv36n">Comment personnaliser BMad</span> </a> </li><li class="astro-yhouv36n"> <a href="/fr/how-to/project-context/" class="astro-yhouv36n"> <span class="astro-yhouv36n">Gérer le contexte du projet</span> </a> </li><li class="astro-yhouv36n"> <a href="/fr/how-to/shard-large-documents/" class="astro-yhouv36n"> <span class="astro-yhouv36n">Guide de Division de Documents</span> </a> </li><li class="astro-yhouv36n"> <a href="/fr/how-to/expand-bmad-for-your-org/" class="astro-yhouv36n"> <span class="astro-yhouv36n">Comment étendre BMad pour votre organisation</span> </a> </li><li class="astro-yhouv36n"> <a href="/fr/how-to/use-web-bundles/" class="astro-yhouv36n"> <span class="astro-yhouv36n">Utiliser les Web Bundles</span> </a> </li> </ul> </details> </li><li class="astro-yhouv36n"> <details class="astro-yhouv36n"> <summary class="astro-yhouv36n"> <span class="group-label astro-yhouv36n"> <span class="large astro-yhouv36n">Explications</span> </span> <svg aria-hidden="true" class="caret astro-yhouv36n astro-zf5byosl" width="16" height="16" viewBox="0 0 24 24" fill="currentColor" style="--sl-icon-size: 1.25rem;"><path d="m14.83 11.29-4.24-4.24a1 1 0 1 0-1.42 1.41L12.71 12l-3.54 3.54a1 1 0 0 0 0 1.41 1 1 0 0 0 .71.29 1 1 0 0 0 .71-.29l4.24-4.24a1.002 1.002 0 0 0 0-1.42Z"/></svg> </summary> <sl-sidebar-restore data-index="2"></sl-sidebar-restore> <ul class="astro-yhouv36n"> <li class="astro-yhouv36n"> <a href="/fr/explanation/named-agents/" class="astro-yhouv36n"> <span class="astro-yhouv36n">Agents nommés</span> </a> </li><li class="astro-yhouv36n"> <a href="/fr/explanation/analysis-phase/" class="astro-yhouv36n"> <span class="astro-yhouv36n">Phase d’analyse : de l’Idée aux Fondations</span> </a> </li><li class="astro-yhouv36n"> <a href="/fr/explanation/brainstorming/" class="astro-yhouv36n"> <span class="astro-yhouv36n">Brainstorming</span> </a> </li><li class="astro-yhouv36n"> <a href="/fr/explanation/advanced-elicitation/" class="astro-yhouv36n"> <span class="astro-yhouv36n">Élicitation Avancée</span> </a> </li><li class="astro-yhouv36n"> <a href="/fr/explanation/why-solutioning-matters/" class="astro-yhouv36n"> <span class="astro-yhouv36n">Pourquoi le Solutioning est Important</span> </a> </li><li class="astro-yhouv36n"> <a href="/fr/explanation/preventing-agent-conflicts/" class="astro-yhouv36n"> <span class="astro-yhouv36n">Prévention des conflits entre agents</span> </a> </li><li class="astro-yhouv36n"> <a href="/fr/explanation/quick-dev/" class="astro-yhouv36n"> <span class="astro-yhouv36n">Quick Dev</span> </a> </li><li class="astro-yhouv36n"> <a href="/fr/explanation/checkpoint-preview/" class="astro-yhouv36n"> <span class="astro-yhouv36n">Checkpoint Preview</span> </a> </li><li class="astro-yhouv36n"> <a href="/fr/explanation/adversarial-review/" class="astro-yhouv36n"> <span class="astro-yhouv36n">Revue Contradictoire</span> </a> </li><li class="astro-yhouv36n"> <a href="/fr/explanation/forensic-investigation/" class="astro-yhouv36n"> <span class="astro-yhouv36n">Enquête de code</span> </a> </li><li class="astro-yhouv36n"> <a href="/fr/explanation/party-mode/" class="astro-yhouv36n"> <span class="astro-yhouv36n">Party Mode</span> </a> </li><li class="astro-yhouv36n"> <a href="/fr/explanation/project-context/" class="astro-yhouv36n"> <span class="astro-yhouv36n">Contexte du Projet</span> </a> </li><li class="astro-yhouv36n"> <a href="/fr/explanation/established-projects-faq/" class="astro-yhouv36n"> <span class="astro-yhouv36n">FAQ Projets Existants</span> </a> </li><li class="astro-yhouv36n"> <a href="/fr/explanation/web-bundles/" class="astro-yhouv36n"> <span class="astro-yhouv36n">Web Bundles</span> </a> </li> </ul> </details> </li><li class="astro-yhouv36n"> <details class="astro-yhouv36n"> <summary class="astro-yhouv36n"> <span class="group-label astro-yhouv36n"> <span class="large astro-yhouv36n">Référence</span> </span> <svg aria-hidden="true" class="caret astro-yhouv36n astro-zf5byosl" width="16" height="16" viewBox="0 0 24 24" fill="currentColor" style="--sl-icon-size: 1.25rem;"><path d="m14.83 11.29-4.24-4.24a1 1 0 1 0-1.42 1.41L12.71 12l-3.54 3.54a1 1 0 0 0 0 1.41 1 1 0 0 0 .71.29 1 1 0 0 0 .71-.29l4.24-4.24a1.002 1.002 0 0 0 0-1.42Z"/></svg> </summary> <sl-sidebar-restore data-index="3"></sl-sidebar-restore> <ul class="astro-yhouv36n"> <li class="astro-yhouv36n"> <a href="/fr/reference/workflow-map/" class="astro-yhouv36n"> <span class="astro-yhouv36n">Carte des Workflows</span> </a> </li><li class="astro-yhouv36n"> <a href="/fr/reference/agents/" class="astro-yhouv36n"> <span class="astro-yhouv36n">Agents</span> </a> </li><li class="astro-yhouv36n"> <a href="/fr/reference/core-tools/" class="astro-yhouv36n"> <span class="astro-yhouv36n">Outils Principaux</span> </a> </li><li class="astro-yhouv36n"> <a href="/fr/reference/commands/" class="astro-yhouv36n"> <span class="astro-yhouv36n">Skills</span> </a> </li><li class="astro-yhouv36n"> <a href="/fr/reference/modules/" class="astro-yhouv36n"> <span class="astro-yhouv36n">Modules Officiels</span> </a> </li><li class="astro-yhouv36n"> <a href="/fr/reference/testing/" class="astro-yhouv36n"> <span class="astro-yhouv36n">Options de Testing</span> </a> </li> </ul> </details> </li> </ul> <script aria-hidden="true">
65
- (() => {
66
- const scroller = document.getElementById('starlight__sidebar');
67
- if (!window._starlightScrollRestore || !scroller) return;
68
- scroller.scrollTop = window._starlightScrollRestore;
69
- delete window._starlightScrollRestore;
70
- })();
71
- </script> </sl-sidebar-state-persist> <div class="md:sl-hidden"> <div class="mobile-preferences sl-flex astro-lbnvevm2"> <div class="sl-flex social-icons astro-lbnvevm2"> <a href="https://github.com/wizzcomms/wizz-method" rel="me" class="sl-flex astro-bgmygzip"><span class="sr-only astro-bgmygzip">GitHub</span><svg aria-hidden="true" class="astro-bgmygzip astro-zf5byosl" width="16" height="16" viewBox="0 0 24 24" fill="currentColor" style="--sl-icon-size: 1em;"><path d="M12 .3a12 12 0 0 0-3.8 23.38c.6.12.83-.26.83-.57L9 21.07c-3.34.72-4.04-1.61-4.04-1.61-.55-1.39-1.34-1.76-1.34-1.76-1.08-.74.09-.73.09-.73 1.2.09 1.83 1.24 1.83 1.24 1.08 1.83 2.81 1.3 3.5 1 .1-.78.42-1.31.76-1.61-2.67-.3-5.47-1.33-5.47-5.93 0-1.31.47-2.38 1.24-3.22-.14-.3-.54-1.52.1-3.18 0 0 1-.32 3.3 1.23a11.5 11.5 0 0 1 6 0c2.28-1.55 3.29-1.23 3.29-1.23.64 1.66.24 2.88.12 3.18a4.65 4.65 0 0 1 1.23 3.22c0 4.61-2.8 5.63-5.48 5.92.42.36.81 1.1.81 2.22l-.01 3.29c0 .31.2.69.82.57A12 12 0 0 0 12 .3Z"/></svg></a> </div> <starlight-theme-select> <label style="--sl-select-width: 6.25em" class="astro-nmwkdvwx"> <span class="sr-only astro-nmwkdvwx">Choisir le thème</span> <svg aria-hidden="true" class="icon label-icon astro-nmwkdvwx astro-zf5byosl" width="16" height="16" viewBox="0 0 24 24" fill="currentColor" style="--sl-icon-size: 1em;"><path d="M21 14h-1V7a3 3 0 0 0-3-3H7a3 3 0 0 0-3 3v7H3a1 1 0 0 0-1 1v2a3 3 0 0 0 3 3h14a3 3 0 0 0 3-3v-2a1 1 0 0 0-1-1ZM6 7a1 1 0 0 1 1-1h10a1 1 0 0 1 1 1v7H6V7Zm14 10a1 1 0 0 1-1 1H5a1 1 0 0 1-1-1v-1h16v1Z"/></svg> <select autocomplete="off" class="astro-nmwkdvwx"> <option value="dark" class="astro-nmwkdvwx">Sombre</option><option value="light" class="astro-nmwkdvwx">Clair</option><option value="auto" selected class="astro-nmwkdvwx">Automatique</option> </select> <svg aria-hidden="true" class="icon caret astro-nmwkdvwx astro-zf5byosl" width="16" height="16" viewBox="0 0 24 24" fill="currentColor" style="--sl-icon-size: 1em;"><path d="M17 9.17a1 1 0 0 0-1.41 0L12 12.71 8.46 9.17a1 1 0 1 0-1.41 1.42l4.24 4.24a1.002 1.002 0 0 0 1.42 0L17 10.59a1.002 1.002 0 0 0 0-1.42Z"/></svg> </label> </starlight-theme-select> <script>
72
- StarlightThemeProvider.updatePickers();
73
- </script> <starlight-lang-select><label style="--sl-select-width: 7em" class="astro-nmwkdvwx"> <span class="sr-only astro-nmwkdvwx">Choisir la langue</span> <svg aria-hidden="true" class="icon label-icon astro-nmwkdvwx astro-zf5byosl" width="16" height="16" viewBox="0 0 24 24" fill="currentColor" style="--sl-icon-size: 1em;"><path fill-rule="evenodd" d="M8.516 3a.94.94 0 0 0-.941.94v1.15H2.94a.94.94 0 1 0 0 1.882h7.362a7.422 7.422 0 0 1-1.787 3.958 7.42 7.42 0 0 1-1.422-2.425.94.94 0 1 0-1.774.627 9.303 9.303 0 0 0 1.785 3.043 7.422 7.422 0 0 1-4.164 1.278.94.94 0 1 0 0 1.881 9.303 9.303 0 0 0 5.575-1.855 9.303 9.303 0 0 0 4.11 1.74l-.763 1.525a.968.968 0 0 0-.016.034l-1.385 2.77a.94.94 0 1 0 1.683.841l1.133-2.267h5.806l1.134 2.267a.94.94 0 0 0 1.683-.841l-1.385-2.769a.95.95 0 0 0-.018-.036l-3.476-6.951a.94.94 0 0 0-1.682 0l-1.82 3.639a7.423 7.423 0 0 1-3.593-1.256 9.303 9.303 0 0 0 2.27-5.203h1.894a.94.94 0 0 0 0-1.881H9.456V3.94A.94.94 0 0 0 8.516 3Zm6.426 11.794a1.068 1.068 0 0 1-.02.039l-.703 1.407h3.924l-1.962-3.924-1.24 2.478Z" clip-rule="evenodd"/></svg> <select autocomplete="off" class="astro-nmwkdvwx"> <option value="/how-to/customize-bmad/" class="astro-nmwkdvwx">English</option><option value="/vi-vn/how-to/customize-bmad/" class="astro-nmwkdvwx">Tiếng Việt</option><option value="/zh-cn/how-to/customize-bmad/" class="astro-nmwkdvwx">简体中文</option><option value="/fr/how-to/customize-bmad/" selected class="astro-nmwkdvwx">Français</option><option value="/cs/how-to/customize-bmad/" class="astro-nmwkdvwx">Čeština</option> </select> <svg aria-hidden="true" class="icon caret astro-nmwkdvwx astro-zf5byosl" width="16" height="16" viewBox="0 0 24 24" fill="currentColor" style="--sl-icon-size: 1em;"><path d="M17 9.17a1 1 0 0 0-1.41 0L12 12.71 8.46 9.17a1 1 0 1 0-1.41 1.42l4.24 4.24a1.002 1.002 0 0 0 1.42 0L17 10.59a1.002 1.002 0 0 0 0-1.42Z"/></svg> </label> </starlight-lang-select> </div> </div> </div> </div> </nav> <div class="main-frame astro-2xv6dk2n"> <script type="module">const a=document.getElementById("starlight__sidebar"),n=a?.querySelector("sl-sidebar-state-persist"),o="sl-sidebar-state",i=()=>{let t=[];const e=n?.dataset.hash||"";try{const s=sessionStorage.getItem(o),r=JSON.parse(s||"{}");Array.isArray(r.open)&&r.hash===e&&(t=r.open)}catch{}return{hash:e,open:t,scroll:a?.scrollTop||0}},c=t=>{try{sessionStorage.setItem(o,JSON.stringify(t))}catch{}},d=()=>c(i()),l=(t,e)=>{const s=i();s.open[e]=t,c(s)};n?.addEventListener("click",t=>{if(!(t.target instanceof Element))return;const e=t.target.closest("summary")?.closest("details");if(!e)return;const s=e.querySelector("sl-sidebar-restore"),r=parseInt(s?.dataset.index||"");isNaN(r)||l(!e.open,r)});addEventListener("visibilitychange",()=>{document.visibilityState==="hidden"&&d()});addEventListener("pageHide",d);</script> <div class="lg:sl-flex astro-ppt5ty36"> <aside class="right-sidebar-container print:hidden astro-ppt5ty36"> <div class="right-sidebar astro-ppt5ty36"> <script type="module" src="/_astro/MobileTableOfContents.astro_astro_type_script_index_0_lang.hwBsy0Mo.js"></script><script type="module" src="/_astro/TableOfContents.astro_astro_type_script_index_0_lang.FuRcXuRY.js"></script><div class="lg:sl-hidden astro-se4agvxv"><mobile-starlight-toc data-min-h="2" data-max-h="3" class="astro-c5ccmeve"><nav aria-labelledby="starlight__on-this-page--mobile" class="astro-c5ccmeve"><details id="starlight__mobile-toc" class="astro-c5ccmeve"><summary id="starlight__on-this-page--mobile" class="sl-flex astro-c5ccmeve"><span class="toggle sl-flex astro-c5ccmeve">Sur cette page<svg aria-hidden="true" class="caret astro-c5ccmeve astro-zf5byosl" width="16" height="16" viewBox="0 0 24 24" fill="currentColor" style="--sl-icon-size: 1rem;"><path d="m14.83 11.29-4.24-4.24a1 1 0 1 0-1.42 1.41L12.71 12l-3.54 3.54a1 1 0 0 0 0 1.41 1 1 0 0 0 .71.29 1 1 0 0 0 .71-.29l4.24-4.24a1.002 1.002 0 0 0 0-1.42Z"/></svg></span><span class="display-current astro-c5ccmeve"></span></summary><div class="dropdown astro-c5ccmeve"><ul class="isMobile astro-xsqhb6qp" style="--depth: 0;"> <li class="astro-xsqhb6qp" style="--depth: 0;"> <a href="#_top" class="astro-xsqhb6qp" style="--depth: 0;"> <span class="astro-xsqhb6qp" style="--depth: 0;">Aperçu</span> </a> </li><li class="astro-xsqhb6qp" style="--depth: 0;"> <a href="#quand-utiliser-cette-fonctionnalité" class="astro-xsqhb6qp" style="--depth: 0;"> <span class="astro-xsqhb6qp" style="--depth: 0;">Quand utiliser cette fonctionnalité</span> </a> </li><li class="astro-xsqhb6qp" style="--depth: 0;"> <a href="#comment-ça-marche" class="astro-xsqhb6qp" style="--depth: 0;"> <span class="astro-xsqhb6qp" style="--depth: 0;">Comment ça marche</span> </a> <ul class="isMobile astro-xsqhb6qp" style="--depth: 1;"> <li class="astro-xsqhb6qp" style="--depth: 1;"> <a href="#modèle-doverride-à-trois-couches" class="astro-xsqhb6qp" style="--depth: 1;"> <span class="astro-xsqhb6qp" style="--depth: 1;">Modèle d’override à trois couches</span> </a> </li><li class="astro-xsqhb6qp" style="--depth: 1;"> <a href="#règles-de-fusion-par-forme-pas-par-nom-de-champ" class="astro-xsqhb6qp" style="--depth: 1;"> <span class="astro-xsqhb6qp" style="--depth: 1;">Règles de fusion (par forme, pas par nom de champ)</span> </a> </li><li class="astro-xsqhb6qp" style="--depth: 1;"> <a href="#certains-champs-dagent-sont-en-lecture-seule" class="astro-xsqhb6qp" style="--depth: 1;"> <span class="astro-xsqhb6qp" style="--depth: 1;">Certains champs d’agent sont en lecture seule</span> </a> </li> </ul> </li><li class="astro-xsqhb6qp" style="--depth: 0;"> <a href="#étapes" class="astro-xsqhb6qp" style="--depth: 0;"> <span class="astro-xsqhb6qp" style="--depth: 0;">Étapes</span> </a> <ul class="isMobile astro-xsqhb6qp" style="--depth: 1;"> <li class="astro-xsqhb6qp" style="--depth: 1;"> <a href="#1-trouver-la-surface-de-personnalisation-du-skill" class="astro-xsqhb6qp" style="--depth: 1;"> <span class="astro-xsqhb6qp" style="--depth: 1;">1. Trouver la surface de personnalisation du skill</span> </a> </li><li class="astro-xsqhb6qp" style="--depth: 1;"> <a href="#2-créer-votre-fichier-doverride" class="astro-xsqhb6qp" style="--depth: 1;"> <span class="astro-xsqhb6qp" style="--depth: 1;">2. Créer votre fichier d’override</span> </a> </li><li class="astro-xsqhb6qp" style="--depth: 1;"> <a href="#3-personnaliser-selon-vos-besoins" class="astro-xsqhb6qp" style="--depth: 1;"> <span class="astro-xsqhb6qp" style="--depth: 1;">3. Personnaliser selon vos besoins</span> </a> </li><li class="astro-xsqhb6qp" style="--depth: 1;"> <a href="#4-personnel-vs-équipe" class="astro-xsqhb6qp" style="--depth: 1;"> <span class="astro-xsqhb6qp" style="--depth: 1;">4. Personnel vs Équipe</span> </a> </li> </ul> </li><li class="astro-xsqhb6qp" style="--depth: 0;"> <a href="#comment-fonctionne-la-résolution" class="astro-xsqhb6qp" style="--depth: 0;"> <span class="astro-xsqhb6qp" style="--depth: 0;">Comment fonctionne la résolution</span> </a> </li><li class="astro-xsqhb6qp" style="--depth: 0;"> <a href="#personnalisation-des-workflows" class="astro-xsqhb6qp" style="--depth: 0;"> <span class="astro-xsqhb6qp" style="--depth: 0;">Personnalisation des workflows</span> </a> <ul class="isMobile astro-xsqhb6qp" style="--depth: 1;"> <li class="astro-xsqhb6qp" style="--depth: 1;"> <a href="#ordre-dactivation" class="astro-xsqhb6qp" style="--depth: 1;"> <span class="astro-xsqhb6qp" style="--depth: 1;">Ordre d’activation</span> </a> </li><li class="astro-xsqhb6qp" style="--depth: 1;"> <a href="#périmètre-de-cette-première-passe" class="astro-xsqhb6qp" style="--depth: 1;"> <span class="astro-xsqhb6qp" style="--depth: 1;">Périmètre de cette première passe</span> </a> </li> </ul> </li><li class="astro-xsqhb6qp" style="--depth: 0;"> <a href="#configuration-centrale" class="astro-xsqhb6qp" style="--depth: 0;"> <span class="astro-xsqhb6qp" style="--depth: 0;">Configuration centrale</span> </a> <ul class="isMobile astro-xsqhb6qp" style="--depth: 1;"> <li class="astro-xsqhb6qp" style="--depth: 1;"> <a href="#fusion-à-quatre-couches" class="astro-xsqhb6qp" style="--depth: 1;"> <span class="astro-xsqhb6qp" style="--depth: 1;">Fusion à quatre couches</span> </a> </li><li class="astro-xsqhb6qp" style="--depth: 1;"> <a href="#répartition-du-contenu" class="astro-xsqhb6qp" style="--depth: 1;"> <span class="astro-xsqhb6qp" style="--depth: 1;">Répartition du contenu</span> </a> </li><li class="astro-xsqhb6qp" style="--depth: 1;"> <a href="#règles-de-modification" class="astro-xsqhb6qp" style="--depth: 1;"> <span class="astro-xsqhb6qp" style="--depth: 1;">Règles de modification</span> </a> </li><li class="astro-xsqhb6qp" style="--depth: 1;"> <a href="#exemple--renommer-un-agent" class="astro-xsqhb6qp" style="--depth: 1;"> <span class="astro-xsqhb6qp" style="--depth: 1;">Exemple — Renommer un agent</span> </a> </li><li class="astro-xsqhb6qp" style="--depth: 1;"> <a href="#exemple--ajouter-un-agent-fictif" class="astro-xsqhb6qp" style="--depth: 1;"> <span class="astro-xsqhb6qp" style="--depth: 1;">Exemple — Ajouter un agent fictif</span> </a> </li><li class="astro-xsqhb6qp" style="--depth: 1;"> <a href="#exemple--override-des-paramètres-dinstallation-du-module" class="astro-xsqhb6qp" style="--depth: 1;"> <span class="astro-xsqhb6qp" style="--depth: 1;">Exemple — Override des paramètres d’installation du module</span> </a> </li><li class="astro-xsqhb6qp" style="--depth: 1;"> <a href="#quelle-surface-utiliser-pour-quel-besoin" class="astro-xsqhb6qp" style="--depth: 1;"> <span class="astro-xsqhb6qp" style="--depth: 1;">Quelle surface utiliser pour quel besoin</span> </a> </li> </ul> </li><li class="astro-xsqhb6qp" style="--depth: 0;"> <a href="#exemples-concrets" class="astro-xsqhb6qp" style="--depth: 0;"> <span class="astro-xsqhb6qp" style="--depth: 0;">Exemples concrets</span> </a> </li><li class="astro-xsqhb6qp" style="--depth: 0;"> <a href="#dépannage" class="astro-xsqhb6qp" style="--depth: 0;"> <span class="astro-xsqhb6qp" style="--depth: 0;">Dépannage</span> </a> </li> </ul> </div></details></nav></mobile-starlight-toc></div><div class="right-sidebar-panel sl-hidden lg:sl-block astro-se4agvxv"><div class="sl-container astro-se4agvxv"><starlight-toc data-min-h="2" data-max-h="3"><nav aria-labelledby="starlight__on-this-page"><h2 id="starlight__on-this-page">Sur cette page</h2><ul class="astro-xsqhb6qp" style="--depth: 0;"> <li class="astro-xsqhb6qp" style="--depth: 0;"> <a href="#_top" class="astro-xsqhb6qp" style="--depth: 0;"> <span class="astro-xsqhb6qp" style="--depth: 0;">Aperçu</span> </a> </li><li class="astro-xsqhb6qp" style="--depth: 0;"> <a href="#quand-utiliser-cette-fonctionnalité" class="astro-xsqhb6qp" style="--depth: 0;"> <span class="astro-xsqhb6qp" style="--depth: 0;">Quand utiliser cette fonctionnalité</span> </a> </li><li class="astro-xsqhb6qp" style="--depth: 0;"> <a href="#comment-ça-marche" class="astro-xsqhb6qp" style="--depth: 0;"> <span class="astro-xsqhb6qp" style="--depth: 0;">Comment ça marche</span> </a> <ul class="astro-xsqhb6qp" style="--depth: 1;"> <li class="astro-xsqhb6qp" style="--depth: 1;"> <a href="#modèle-doverride-à-trois-couches" class="astro-xsqhb6qp" style="--depth: 1;"> <span class="astro-xsqhb6qp" style="--depth: 1;">Modèle d’override à trois couches</span> </a> </li><li class="astro-xsqhb6qp" style="--depth: 1;"> <a href="#règles-de-fusion-par-forme-pas-par-nom-de-champ" class="astro-xsqhb6qp" style="--depth: 1;"> <span class="astro-xsqhb6qp" style="--depth: 1;">Règles de fusion (par forme, pas par nom de champ)</span> </a> </li><li class="astro-xsqhb6qp" style="--depth: 1;"> <a href="#certains-champs-dagent-sont-en-lecture-seule" class="astro-xsqhb6qp" style="--depth: 1;"> <span class="astro-xsqhb6qp" style="--depth: 1;">Certains champs d’agent sont en lecture seule</span> </a> </li> </ul> </li><li class="astro-xsqhb6qp" style="--depth: 0;"> <a href="#étapes" class="astro-xsqhb6qp" style="--depth: 0;"> <span class="astro-xsqhb6qp" style="--depth: 0;">Étapes</span> </a> <ul class="astro-xsqhb6qp" style="--depth: 1;"> <li class="astro-xsqhb6qp" style="--depth: 1;"> <a href="#1-trouver-la-surface-de-personnalisation-du-skill" class="astro-xsqhb6qp" style="--depth: 1;"> <span class="astro-xsqhb6qp" style="--depth: 1;">1. Trouver la surface de personnalisation du skill</span> </a> </li><li class="astro-xsqhb6qp" style="--depth: 1;"> <a href="#2-créer-votre-fichier-doverride" class="astro-xsqhb6qp" style="--depth: 1;"> <span class="astro-xsqhb6qp" style="--depth: 1;">2. Créer votre fichier d’override</span> </a> </li><li class="astro-xsqhb6qp" style="--depth: 1;"> <a href="#3-personnaliser-selon-vos-besoins" class="astro-xsqhb6qp" style="--depth: 1;"> <span class="astro-xsqhb6qp" style="--depth: 1;">3. Personnaliser selon vos besoins</span> </a> </li><li class="astro-xsqhb6qp" style="--depth: 1;"> <a href="#4-personnel-vs-équipe" class="astro-xsqhb6qp" style="--depth: 1;"> <span class="astro-xsqhb6qp" style="--depth: 1;">4. Personnel vs Équipe</span> </a> </li> </ul> </li><li class="astro-xsqhb6qp" style="--depth: 0;"> <a href="#comment-fonctionne-la-résolution" class="astro-xsqhb6qp" style="--depth: 0;"> <span class="astro-xsqhb6qp" style="--depth: 0;">Comment fonctionne la résolution</span> </a> </li><li class="astro-xsqhb6qp" style="--depth: 0;"> <a href="#personnalisation-des-workflows" class="astro-xsqhb6qp" style="--depth: 0;"> <span class="astro-xsqhb6qp" style="--depth: 0;">Personnalisation des workflows</span> </a> <ul class="astro-xsqhb6qp" style="--depth: 1;"> <li class="astro-xsqhb6qp" style="--depth: 1;"> <a href="#ordre-dactivation" class="astro-xsqhb6qp" style="--depth: 1;"> <span class="astro-xsqhb6qp" style="--depth: 1;">Ordre d’activation</span> </a> </li><li class="astro-xsqhb6qp" style="--depth: 1;"> <a href="#périmètre-de-cette-première-passe" class="astro-xsqhb6qp" style="--depth: 1;"> <span class="astro-xsqhb6qp" style="--depth: 1;">Périmètre de cette première passe</span> </a> </li> </ul> </li><li class="astro-xsqhb6qp" style="--depth: 0;"> <a href="#configuration-centrale" class="astro-xsqhb6qp" style="--depth: 0;"> <span class="astro-xsqhb6qp" style="--depth: 0;">Configuration centrale</span> </a> <ul class="astro-xsqhb6qp" style="--depth: 1;"> <li class="astro-xsqhb6qp" style="--depth: 1;"> <a href="#fusion-à-quatre-couches" class="astro-xsqhb6qp" style="--depth: 1;"> <span class="astro-xsqhb6qp" style="--depth: 1;">Fusion à quatre couches</span> </a> </li><li class="astro-xsqhb6qp" style="--depth: 1;"> <a href="#répartition-du-contenu" class="astro-xsqhb6qp" style="--depth: 1;"> <span class="astro-xsqhb6qp" style="--depth: 1;">Répartition du contenu</span> </a> </li><li class="astro-xsqhb6qp" style="--depth: 1;"> <a href="#règles-de-modification" class="astro-xsqhb6qp" style="--depth: 1;"> <span class="astro-xsqhb6qp" style="--depth: 1;">Règles de modification</span> </a> </li><li class="astro-xsqhb6qp" style="--depth: 1;"> <a href="#exemple--renommer-un-agent" class="astro-xsqhb6qp" style="--depth: 1;"> <span class="astro-xsqhb6qp" style="--depth: 1;">Exemple — Renommer un agent</span> </a> </li><li class="astro-xsqhb6qp" style="--depth: 1;"> <a href="#exemple--ajouter-un-agent-fictif" class="astro-xsqhb6qp" style="--depth: 1;"> <span class="astro-xsqhb6qp" style="--depth: 1;">Exemple — Ajouter un agent fictif</span> </a> </li><li class="astro-xsqhb6qp" style="--depth: 1;"> <a href="#exemple--override-des-paramètres-dinstallation-du-module" class="astro-xsqhb6qp" style="--depth: 1;"> <span class="astro-xsqhb6qp" style="--depth: 1;">Exemple — Override des paramètres d’installation du module</span> </a> </li><li class="astro-xsqhb6qp" style="--depth: 1;"> <a href="#quelle-surface-utiliser-pour-quel-besoin" class="astro-xsqhb6qp" style="--depth: 1;"> <span class="astro-xsqhb6qp" style="--depth: 1;">Quelle surface utiliser pour quel besoin</span> </a> </li> </ul> </li><li class="astro-xsqhb6qp" style="--depth: 0;"> <a href="#exemples-concrets" class="astro-xsqhb6qp" style="--depth: 0;"> <span class="astro-xsqhb6qp" style="--depth: 0;">Exemples concrets</span> </a> </li><li class="astro-xsqhb6qp" style="--depth: 0;"> <a href="#dépannage" class="astro-xsqhb6qp" style="--depth: 0;"> <span class="astro-xsqhb6qp" style="--depth: 0;">Dépannage</span> </a> </li> </ul> </nav></starlight-toc></div></div> </div> </aside> <div class="main-pane astro-ppt5ty36"> <main data-pagefind-body class="astro-uxe7q6yi" lang="fr-FR" dir="ltr"> <div class="content-panel astro-aoj46c3a"> <div class="sl-container astro-aoj46c3a"> <h1 id="_top" class="astro-obdi53jg">Comment personnaliser BMad</h1> </div> </div> <div class="content-panel astro-aoj46c3a"> <div class="sl-container astro-aoj46c3a"> <div class="sl-markdown-content"> <p>Adaptez les personas d’agents, injectez du contexte métier, ajoutez des capacités et configurez le comportement des workflows — le tout sans modifier les fichiers installés. Vos personnalisations sont préservées à chaque mise à jour.</p>
74
- <aside aria-label="Vous ne voulez pas rédiger du TOML à la main ? Utilisez bmad-customize" class="starlight-aside starlight-aside--tip"><p class="starlight-aside__title" aria-hidden="true"><svg viewBox="0 0 24 24" width="16" height="16" fill="currentColor" class="starlight-aside__icon"><path fill-rule="evenodd" clip-rule="evenodd" d="M1.43909 8.85483L1.44039 8.85354L4.96668 5.33815C5.30653 4.99386 5.7685 4.79662 6.2524 4.78972L6.26553 4.78963L12.9014 4.78962L13.8479 3.84308C16.9187 0.772319 20.0546 0.770617 21.4678 0.975145C21.8617 1.02914 22.2271 1.21053 22.5083 1.4917C22.7894 1.77284 22.9708 2.13821 23.0248 2.53199C23.2294 3.94517 23.2278 7.08119 20.1569 10.1521L19.2107 11.0983V17.7338L19.2106 17.7469C19.2037 18.2308 19.0067 18.6933 18.6624 19.0331L15.1456 22.5608C14.9095 22.7966 14.6137 22.964 14.29 23.0449C13.9663 23.1259 13.6267 23.1174 13.3074 23.0204C12.9881 22.9235 12.7011 22.7417 12.4771 22.4944C12.2533 22.2473 12.1006 21.9441 12.0355 21.6171L11.1783 17.3417L6.65869 12.822L4.34847 12.3589L2.38351 11.965C2.05664 11.8998 1.75272 11.747 1.50564 11.5232C1.25835 11.2992 1.07653 11.0122 0.979561 10.6929C0.882595 10.3736 0.874125 10.034 0.955057 9.7103C1.03599 9.38659 1.20328 9.09092 1.43909 8.85483ZM6.8186 10.8724L2.94619 10.096L6.32006 6.73268H10.9583L6.8186 10.8724ZM15.2219 5.21703C17.681 2.75787 20.0783 2.75376 21.1124 2.8876C21.2462 3.92172 21.2421 6.31895 18.783 8.77812L12.0728 15.4883L8.51172 11.9272L15.2219 5.21703ZM13.9042 21.0538L13.1279 17.1811L17.2676 13.0414V17.68L13.9042 21.0538Z"></path><path d="M9.31827 18.3446C9.45046 17.8529 9.17864 17.3369 8.68945 17.1724C8.56178 17.1294 8.43145 17.1145 8.30512 17.1243C8.10513 17.1398 7.91519 17.2172 7.76181 17.3434C7.62613 17.455 7.51905 17.6048 7.45893 17.7835C6.97634 19.2186 5.77062 19.9878 4.52406 20.4029C4.08525 20.549 3.6605 20.644 3.29471 20.7053C3.35607 20.3395 3.45098 19.9148 3.59711 19.476C4.01221 18.2294 4.78141 17.0237 6.21648 16.5411C6.39528 16.481 6.54504 16.3739 6.65665 16.2382C6.85126 16.0016 6.92988 15.678 6.84417 15.3647C6.83922 15.3466 6.83373 15.3286 6.82767 15.3106C6.74106 15.053 6.55701 14.8557 6.33037 14.7459C6.10949 14.6389 5.84816 14.615 5.59715 14.6994C5.47743 14.7397 5.36103 14.7831 5.24786 14.8294C3.22626 15.6569 2.2347 17.4173 1.75357 18.8621C1.49662 19.6337 1.36993 20.3554 1.30679 20.8818C1.27505 21.1464 1.25893 21.3654 1.25072 21.5213C1.24662 21.5993 1.24448 21.6618 1.24337 21.7066L1.243 21.7226L1.24235 21.7605L1.2422 21.7771L1.24217 21.7827L1.24217 21.7856C1.24217 22.3221 1.67703 22.7579 2.2137 22.7579L2.2155 22.7579L2.22337 22.7578L2.23956 22.7577C2.25293 22.7575 2.27096 22.7572 2.29338 22.7567C2.33821 22.7555 2.40073 22.7534 2.47876 22.7493C2.63466 22.7411 2.85361 22.725 3.11822 22.6932C3.64462 22.6301 4.36636 22.5034 5.13797 22.2464C6.58274 21.7653 8.3431 20.7738 9.17063 18.7522C9.21696 18.639 9.26037 18.5226 9.30064 18.4029C9.30716 18.3835 9.31304 18.364 9.31827 18.3446Z"></path></svg>Vous ne voulez pas rédiger du TOML à la main ? Utilisez <code dir="auto">bmad-customize</code></p><div class="starlight-aside__content"><p>Le skill <code dir="auto">bmad-customize</code> est un assistant de rédaction guidée pour les <strong>options de personnalisation par skill (agent/workflow)</strong> décrite dans ce document. Il scanne ce qui est personnalisable dans votre installation, vous aide à choisir la bonne surface (agent ou workflow) pour votre intention, écrit le fichier d’override pour vous et vérifie que la fusion a fonctionné. Les overrides de la configuration centrale (<code dir="auto">_bmad/custom/config.toml</code>) ne sont pas couverts par la v1 du skill — rédigez-les manuellement en vous référant à la section Configuration centrale ci-dessous. Exécutez le skill chaque fois que vous souhaitez modifier un skill spécifique ; ce document est la référence sur <em>ce que</em> chaque surface expose et comment fonctionne la fusion.</p></div></aside>
75
- <div class="sl-heading-wrapper level-h2"><h2 id="quand-utiliser-cette-fonctionnalité">Quand utiliser cette fonctionnalité</h2><a class="sl-anchor-link" href="#quand-utiliser-cette-fonctionnalité"><span aria-hidden="true" class="sl-anchor-icon"><svg width="16" height="16" viewBox="0 0 24 24"><path fill="currentcolor" d="m12.11 15.39-3.88 3.88a2.52 2.52 0 0 1-3.5 0 2.47 2.47 0 0 1 0-3.5l3.88-3.88a1 1 0 0 0-1.42-1.42l-3.88 3.89a4.48 4.48 0 0 0 6.33 6.33l3.89-3.88a1 1 0 1 0-1.42-1.42Zm8.58-12.08a4.49 4.49 0 0 0-6.33 0l-3.89 3.88a1 1 0 0 0 1.42 1.42l3.88-3.88a2.52 2.52 0 0 1 3.5 0 2.47 2.47 0 0 1 0 3.5l-3.88 3.88a1 1 0 1 0 1.42 1.42l3.88-3.89a4.49 4.49 0 0 0 0-6.33ZM8.83 15.17a1 1 0 0 0 1.1.22 1 1 0 0 0 .32-.22l4.92-4.92a1 1 0 0 0-1.42-1.42l-4.92 4.92a1 1 0 0 0 0 1.42Z"></path></svg></span><span class="sr-only" data-pagefind-ignore="">Section intitulée « Quand utiliser cette fonctionnalité »</span></a></div>
76
- <ul>
77
- <li>Vous souhaitez changer la personnalité ou le style de communication d’un agent</li>
78
- <li>Vous devez fournir à un agent des faits persistants qu’il devra retenir (ex. « notre org est 100 % AWS »)</li>
79
- <li>Vous souhaitez ajouter des étapes procédurales de démarrage que l’agent doit exécuter à chaque session</li>
80
- <li>Vous souhaitez ajouter des éléments de menu personnalisés qui déclenchent vos propres skills ou prompts</li>
81
- <li>Votre équipe a besoin de personnalisations partagées versionnées dans git, avec des préférences personnelles ajoutées par-dessus</li>
82
- </ul>
83
- <aside aria-label="Prérequis" class="starlight-aside starlight-aside--note"><p class="starlight-aside__title" aria-hidden="true"><svg viewBox="0 0 24 24" width="16" height="16" fill="currentColor" class="starlight-aside__icon"><path d="M12 11C11.7348 11 11.4804 11.1054 11.2929 11.2929C11.1054 11.4804 11 11.7348 11 12V16C11 16.2652 11.1054 16.5196 11.2929 16.7071C11.4804 16.8946 11.7348 17 12 17C12.2652 17 12.5196 16.8946 12.7071 16.7071C12.8946 16.5196 13 16.2652 13 16V12C13 11.7348 12.8946 11.4804 12.7071 11.2929C12.5196 11.1054 12.2652 11 12 11ZM12.38 7.08C12.1365 6.97998 11.8635 6.97998 11.62 7.08C11.4973 7.12759 11.3851 7.19896 11.29 7.29C11.2017 7.3872 11.1306 7.49882 11.08 7.62C11.024 7.73868 10.9966 7.86882 11 8C10.9992 8.13161 11.0245 8.26207 11.0742 8.38391C11.124 8.50574 11.1973 8.61656 11.29 8.71C11.3872 8.79833 11.4988 8.86936 11.62 8.92C11.7715 8.98224 11.936 9.00632 12.099 8.99011C12.2619 8.97391 12.4184 8.91792 12.5547 8.82707C12.691 8.73622 12.8029 8.61328 12.8805 8.46907C12.9582 8.32486 12.9992 8.16378 13 8C12.9963 7.73523 12.8927 7.48163 12.71 7.29C12.6149 7.19896 12.5028 7.12759 12.38 7.08ZM12 2C10.0222 2 8.08879 2.58649 6.4443 3.6853C4.79981 4.78412 3.51809 6.3459 2.76121 8.17317C2.00433 10.0004 1.8063 12.0111 2.19215 13.9509C2.578 15.8907 3.53041 17.6725 4.92894 19.0711C6.32746 20.4696 8.10929 21.422 10.0491 21.8079C11.9889 22.1937 13.9996 21.9957 15.8268 21.2388C17.6541 20.4819 19.2159 19.2002 20.3147 17.5557C21.4135 15.9112 22 13.9778 22 12C22 10.6868 21.7413 9.38642 21.2388 8.17317C20.7363 6.95991 19.9997 5.85752 19.0711 4.92893C18.1425 4.00035 17.0401 3.26375 15.8268 2.7612C14.6136 2.25866 13.3132 2 12 2ZM12 20C10.4178 20 8.87104 19.5308 7.55544 18.6518C6.23985 17.7727 5.21447 16.5233 4.60897 15.0615C4.00347 13.5997 3.84504 11.9911 4.15372 10.4393C4.4624 8.88743 5.22433 7.46197 6.34315 6.34315C7.46197 5.22433 8.88743 4.4624 10.4393 4.15372C11.9911 3.84504 13.5997 4.00346 15.0615 4.60896C16.5233 5.21447 17.7727 6.23984 18.6518 7.55544C19.5308 8.87103 20 10.4177 20 12C20 14.1217 19.1572 16.1566 17.6569 17.6569C16.1566 19.1571 14.1217 20 12 20Z"></path></svg>Prérequis</p><div class="starlight-aside__content"><ul>
84
- <li>BMad installé dans votre projet (voir <a href="/fr/how-to/install-bmad/">Comment installer BMad</a>)</li>
85
- <li>Python 3.11+ sur votre PATH (pour le script de résolution — utilise <code dir="auto">tomllib</code> de la bibliothèque standard, pas de <code dir="auto">pip install</code>, pas de <code dir="auto">uv</code>, pas de virtualenv)</li>
86
- <li>Un éditeur de texte pour les fichiers TOML</li>
87
- </ul></div></aside>
88
- <div class="sl-heading-wrapper level-h2"><h2 id="comment-ça-marche">Comment ça marche</h2><a class="sl-anchor-link" href="#comment-ça-marche"><span aria-hidden="true" class="sl-anchor-icon"><svg width="16" height="16" viewBox="0 0 24 24"><path fill="currentcolor" d="m12.11 15.39-3.88 3.88a2.52 2.52 0 0 1-3.5 0 2.47 2.47 0 0 1 0-3.5l3.88-3.88a1 1 0 0 0-1.42-1.42l-3.88 3.89a4.48 4.48 0 0 0 6.33 6.33l3.89-3.88a1 1 0 1 0-1.42-1.42Zm8.58-12.08a4.49 4.49 0 0 0-6.33 0l-3.89 3.88a1 1 0 0 0 1.42 1.42l3.88-3.88a2.52 2.52 0 0 1 3.5 0 2.47 2.47 0 0 1 0 3.5l-3.88 3.88a1 1 0 1 0 1.42 1.42l3.88-3.89a4.49 4.49 0 0 0 0-6.33ZM8.83 15.17a1 1 0 0 0 1.1.22 1 1 0 0 0 .32-.22l4.92-4.92a1 1 0 0 0-1.42-1.42l-4.92 4.92a1 1 0 0 0 0 1.42Z"></path></svg></span><span class="sr-only" data-pagefind-ignore="">Section intitulée « Comment ça marche »</span></a></div>
89
- <p>Chaque skill personnalisable embarque un fichier <code dir="auto">customize.toml</code> avec ses valeurs par défaut. Ce fichier définit la surface de personnalisation complète du skill — lisez-le pour voir ce qui est personnalisable. Ne modifiez jamais ce fichier. À la place, créez des fichiers d’override allégés contenant uniquement les champs que vous souhaitez changer.</p>
90
- <div class="sl-heading-wrapper level-h3"><h3 id="modèle-doverride-à-trois-couches">Modèle d’override à trois couches</h3><a class="sl-anchor-link" href="#modèle-doverride-à-trois-couches"><span aria-hidden="true" class="sl-anchor-icon"><svg width="16" height="16" viewBox="0 0 24 24"><path fill="currentcolor" d="m12.11 15.39-3.88 3.88a2.52 2.52 0 0 1-3.5 0 2.47 2.47 0 0 1 0-3.5l3.88-3.88a1 1 0 0 0-1.42-1.42l-3.88 3.89a4.48 4.48 0 0 0 6.33 6.33l3.89-3.88a1 1 0 1 0-1.42-1.42Zm8.58-12.08a4.49 4.49 0 0 0-6.33 0l-3.89 3.88a1 1 0 0 0 1.42 1.42l3.88-3.88a2.52 2.52 0 0 1 3.5 0 2.47 2.47 0 0 1 0 3.5l-3.88 3.88a1 1 0 1 0 1.42 1.42l3.88-3.89a4.49 4.49 0 0 0 0-6.33ZM8.83 15.17a1 1 0 0 0 1.1.22 1 1 0 0 0 .32-.22l4.92-4.92a1 1 0 0 0-1.42-1.42l-4.92 4.92a1 1 0 0 0 0 1.42Z"></path></svg></span><span class="sr-only" data-pagefind-ignore="">Section intitulée « Modèle d’override à trois couches »</span></a></div>
91
- <div class="expressive-code"><link rel="stylesheet" href="/_astro/ec.v4551.css"><script type="module" src="/_astro/ec.0vx5m.js"></script><figure class="frame not-content"><figcaption class="header"></figcaption><pre data-language="text"><code><div class="ec-line"><div class="code"><span style="--0:#d6deeb;--1:#403f53">Priorité 1 (gagne) : _bmad/custom/{skill-name}.user.toml (personnel, ignoré par git)</span></div></div><div class="ec-line"><div class="code"><span style="--0:#d6deeb;--1:#403f53">Priorité 2 : _bmad/custom/{skill-name}.toml (équipe/org, versionné dans git)</span></div></div><div class="ec-line"><div class="code"><span style="--0:#d6deeb;--1:#403f53">Priorité 3 (base) : customize.toml du skill (valeurs par défaut)</span></div></div></code></pre><div class="copy"><div aria-live="polite"></div><button title="Copier dans le presse-papiers" data-copied="Copié !" data-code="Priorité 1 (gagne) : _bmad/custom/{skill-name}.user.toml (personnel, ignoré par git)Priorité 2 : _bmad/custom/{skill-name}.toml (équipe/org, versionné dans git)Priorité 3 (base) : customize.toml du skill (valeurs par défaut)"><div></div></button></div></figure></div>
92
- <p>Le dossier <code dir="auto">_bmad/custom/</code> est initialement vide. Les fichiers n’apparaissent que lorsqu’un utilisateur commence à personnaliser.</p>
93
- <div class="sl-heading-wrapper level-h3"><h3 id="règles-de-fusion-par-forme-pas-par-nom-de-champ">Règles de fusion (par forme, pas par nom de champ)</h3><a class="sl-anchor-link" href="#règles-de-fusion-par-forme-pas-par-nom-de-champ"><span aria-hidden="true" class="sl-anchor-icon"><svg width="16" height="16" viewBox="0 0 24 24"><path fill="currentcolor" d="m12.11 15.39-3.88 3.88a2.52 2.52 0 0 1-3.5 0 2.47 2.47 0 0 1 0-3.5l3.88-3.88a1 1 0 0 0-1.42-1.42l-3.88 3.89a4.48 4.48 0 0 0 6.33 6.33l3.89-3.88a1 1 0 1 0-1.42-1.42Zm8.58-12.08a4.49 4.49 0 0 0-6.33 0l-3.89 3.88a1 1 0 0 0 1.42 1.42l3.88-3.88a2.52 2.52 0 0 1 3.5 0 2.47 2.47 0 0 1 0 3.5l-3.88 3.88a1 1 0 1 0 1.42 1.42l3.88-3.89a4.49 4.49 0 0 0 0-6.33ZM8.83 15.17a1 1 0 0 0 1.1.22 1 1 0 0 0 .32-.22l4.92-4.92a1 1 0 0 0-1.42-1.42l-4.92 4.92a1 1 0 0 0 0 1.42Z"></path></svg></span><span class="sr-only" data-pagefind-ignore="">Section intitulée « Règles de fusion (par forme, pas par nom de champ) »</span></a></div>
94
- <p>Le résolveur applique quatre règles structurelles. Les noms de champ n’ont pas de traitement particulier — le comportement est déterminé uniquement par la forme de la valeur :</p>
95
-
96
-
97
-
98
-
99
-
100
-
101
-
102
-
103
-
104
-
105
-
106
-
107
-
108
-
109
-
110
-
111
-
112
-
113
-
114
-
115
-
116
-
117
-
118
-
119
-
120
- <table><thead><tr><th>Forme</th><th>Règle</th></tr></thead><tbody><tr><td>Scalaire (chaîne, entier, booléen, flottant)</td><td>L’override prévaut</td></tr><tr><td>Table</td><td>Fusion profonde (application récursive des mêmes règles)</td></tr><tr><td>Tableau de tables où chaque élément partage le <strong>même</strong> champ identifiant (chaque élément a <code dir="auto">code</code>, ou chaque élément a <code dir="auto">id</code>)</td><td>Fusionner par cette clé — les clés correspondantes <strong>remplacent sur place</strong>, les nouvelles clés <strong>s’ajoutent</strong></td></tr><tr><td>Tout autre tableau (scalaires ; tables sans identifiant ; tableaux qui mélangent <code dir="auto">code</code> et <code dir="auto">id</code> entre les éléments)</td><td><strong>Ajouter</strong> — éléments de base en premier, puis éléments d’équipe, puis éléments utilisateur</td></tr></tbody></table>
121
- <p><strong>Pas de mécanisme de suppression.</strong> Les overrides ne peuvent pas effacer les éléments de base. Si vous devez supprimer un élément de menu par défaut, surchargez-le via son <code dir="auto">code</code> avec une description ou un prompt sans effet. Si vous devez restructurer un tableau plus en profondeur, forkez le skill.</p>
122
- <p><strong>La convention <code dir="auto">code</code> / <code dir="auto">id</code>.</strong> BMad utilise <code dir="auto">code</code> (code court comme <code dir="auto">"BP"</code> ou <code dir="auto">"R1"</code>) et <code dir="auto">id</code> (identifiant stable plus long) comme clés de fusion dans les tableaux de tables. Si vous rédigez un tableau de tables personnalisé destiné à être fusionné par clé plutôt que par simple ajout, choisissez <strong>une</strong> convention (soit <code dir="auto">code</code> sur chaque élément, soit <code dir="auto">id</code> sur chaque élément) et respectez-la dans tout le tableau. Mélanger <code dir="auto">code</code> sur certains éléments et <code dir="auto">id</code> sur d’autres revient à un simple ajout — le résolveur ne devinera pas quelle clé utiliser pour la fusion.</p>
123
- <div class="sl-heading-wrapper level-h3"><h3 id="certains-champs-dagent-sont-en-lecture-seule">Certains champs d’agent sont en lecture seule</h3><a class="sl-anchor-link" href="#certains-champs-dagent-sont-en-lecture-seule"><span aria-hidden="true" class="sl-anchor-icon"><svg width="16" height="16" viewBox="0 0 24 24"><path fill="currentcolor" d="m12.11 15.39-3.88 3.88a2.52 2.52 0 0 1-3.5 0 2.47 2.47 0 0 1 0-3.5l3.88-3.88a1 1 0 0 0-1.42-1.42l-3.88 3.89a4.48 4.48 0 0 0 6.33 6.33l3.89-3.88a1 1 0 1 0-1.42-1.42Zm8.58-12.08a4.49 4.49 0 0 0-6.33 0l-3.89 3.88a1 1 0 0 0 1.42 1.42l3.88-3.88a2.52 2.52 0 0 1 3.5 0 2.47 2.47 0 0 1 0 3.5l-3.88 3.88a1 1 0 1 0 1.42 1.42l3.88-3.89a4.49 4.49 0 0 0 0-6.33ZM8.83 15.17a1 1 0 0 0 1.1.22 1 1 0 0 0 .32-.22l4.92-4.92a1 1 0 0 0-1.42-1.42l-4.92 4.92a1 1 0 0 0 0 1.42Z"></path></svg></span><span class="sr-only" data-pagefind-ignore="">Section intitulée « Certains champs d’agent sont en lecture seule »</span></a></div>
124
- <p><code dir="auto">agent.name</code> et <code dir="auto">agent.title</code> sont présents dans <code dir="auto">customize.toml</code> comme source de vérité, mais le SKILL.md de l’agent ne les lit pas à l’exécution — leur identité est codée en dur. Mettre <code dir="auto">name = "Bob"</code> dans un fichier d’override n’a aucun effet. Si vous avez vraiment besoin d’un agent avec un nom différent, copiez le dossier du skill, renommez-le et distribuez-le comme skill personnalisé.</p>
125
- <div class="sl-heading-wrapper level-h2"><h2 id="étapes">Étapes</h2><a class="sl-anchor-link" href="#étapes"><span aria-hidden="true" class="sl-anchor-icon"><svg width="16" height="16" viewBox="0 0 24 24"><path fill="currentcolor" d="m12.11 15.39-3.88 3.88a2.52 2.52 0 0 1-3.5 0 2.47 2.47 0 0 1 0-3.5l3.88-3.88a1 1 0 0 0-1.42-1.42l-3.88 3.89a4.48 4.48 0 0 0 6.33 6.33l3.89-3.88a1 1 0 1 0-1.42-1.42Zm8.58-12.08a4.49 4.49 0 0 0-6.33 0l-3.89 3.88a1 1 0 0 0 1.42 1.42l3.88-3.88a2.52 2.52 0 0 1 3.5 0 2.47 2.47 0 0 1 0 3.5l-3.88 3.88a1 1 0 1 0 1.42 1.42l3.88-3.89a4.49 4.49 0 0 0 0-6.33ZM8.83 15.17a1 1 0 0 0 1.1.22 1 1 0 0 0 .32-.22l4.92-4.92a1 1 0 0 0-1.42-1.42l-4.92 4.92a1 1 0 0 0 0 1.42Z"></path></svg></span><span class="sr-only" data-pagefind-ignore="">Section intitulée « Étapes »</span></a></div>
126
- <div class="sl-heading-wrapper level-h3"><h3 id="1-trouver-la-surface-de-personnalisation-du-skill">1. Trouver la surface de personnalisation du skill</h3><a class="sl-anchor-link" href="#1-trouver-la-surface-de-personnalisation-du-skill"><span aria-hidden="true" class="sl-anchor-icon"><svg width="16" height="16" viewBox="0 0 24 24"><path fill="currentcolor" d="m12.11 15.39-3.88 3.88a2.52 2.52 0 0 1-3.5 0 2.47 2.47 0 0 1 0-3.5l3.88-3.88a1 1 0 0 0-1.42-1.42l-3.88 3.89a4.48 4.48 0 0 0 6.33 6.33l3.89-3.88a1 1 0 1 0-1.42-1.42Zm8.58-12.08a4.49 4.49 0 0 0-6.33 0l-3.89 3.88a1 1 0 0 0 1.42 1.42l3.88-3.88a2.52 2.52 0 0 1 3.5 0 2.47 2.47 0 0 1 0 3.5l-3.88 3.88a1 1 0 1 0 1.42 1.42l3.88-3.89a4.49 4.49 0 0 0 0-6.33ZM8.83 15.17a1 1 0 0 0 1.1.22 1 1 0 0 0 .32-.22l4.92-4.92a1 1 0 0 0-1.42-1.42l-4.92 4.92a1 1 0 0 0 0 1.42Z"></path></svg></span><span class="sr-only" data-pagefind-ignore="">Section intitulée « 1. Trouver la surface de personnalisation du skill »</span></a></div>
127
- <p>Consultez le <code dir="auto">customize.toml</code> du skill dans son répertoire d’installation. Par exemple, l’agent PM :</p>
128
- <div class="expressive-code"><figure class="frame not-content"><figcaption class="header"></figcaption><pre data-language="text"><code><div class="ec-line"><div class="code"><span style="--0:#d6deeb;--1:#403f53">.claude/skills/bmad-agent-pm/customize.toml</span></div></div></code></pre><div class="copy"><div aria-live="polite"></div><button title="Copier dans le presse-papiers" data-copied="Copié !" data-code=".claude/skills/bmad-agent-pm/customize.toml"><div></div></button></div></figure></div>
129
- <p>(Le chemin varie selon l’IDE — Cursor utilise <code dir="auto">.cursor/skills/</code>, Cline utilise <code dir="auto">.cline/skills/</code>, etc.)</p>
130
- <p>Ce fichier est le schéma canonique. Chaque champ que vous voyez est personnalisable (à l’exception des champs d’identité en lecture seule mentionnés ci-dessus).</p>
131
- <div class="sl-heading-wrapper level-h3"><h3 id="2-créer-votre-fichier-doverride">2. Créer votre fichier d’override</h3><a class="sl-anchor-link" href="#2-créer-votre-fichier-doverride"><span aria-hidden="true" class="sl-anchor-icon"><svg width="16" height="16" viewBox="0 0 24 24"><path fill="currentcolor" d="m12.11 15.39-3.88 3.88a2.52 2.52 0 0 1-3.5 0 2.47 2.47 0 0 1 0-3.5l3.88-3.88a1 1 0 0 0-1.42-1.42l-3.88 3.89a4.48 4.48 0 0 0 6.33 6.33l3.89-3.88a1 1 0 1 0-1.42-1.42Zm8.58-12.08a4.49 4.49 0 0 0-6.33 0l-3.89 3.88a1 1 0 0 0 1.42 1.42l3.88-3.88a2.52 2.52 0 0 1 3.5 0 2.47 2.47 0 0 1 0 3.5l-3.88 3.88a1 1 0 1 0 1.42 1.42l3.88-3.89a4.49 4.49 0 0 0 0-6.33ZM8.83 15.17a1 1 0 0 0 1.1.22 1 1 0 0 0 .32-.22l4.92-4.92a1 1 0 0 0-1.42-1.42l-4.92 4.92a1 1 0 0 0 0 1.42Z"></path></svg></span><span class="sr-only" data-pagefind-ignore="">Section intitulée « 2. Créer votre fichier d’override »</span></a></div>
132
- <p>Créez le répertoire <code dir="auto">_bmad/custom/</code> à la racine de votre projet s’il n’existe pas. Puis créez un fichier portant le même nom que le skill :</p>
133
- <div class="expressive-code"><figure class="frame not-content"><figcaption class="header"></figcaption><pre data-language="text"><code><div class="ec-line"><div class="code"><span style="--0:#d6deeb;--1:#403f53">_bmad/custom/</span></div></div><div class="ec-line"><div class="code"><span class="indent"><span style="--0:#d6deeb;--1:#403f53"> </span></span><span style="--0:#d6deeb;--1:#403f53">bmad-agent-pm.toml # overrides d'équipe (versionnés dans git)</span></div></div><div class="ec-line"><div class="code"><span class="indent"><span style="--0:#d6deeb;--1:#403f53"> </span></span><span style="--0:#d6deeb;--1:#403f53">bmad-agent-pm.user.toml # préférences personnelles (ignoré par git)</span></div></div></code></pre><div class="copy"><div aria-live="polite"></div><button title="Copier dans le presse-papiers" data-copied="Copié !" data-code="_bmad/custom/ bmad-agent-pm.toml # overrides d&#x27;équipe (versionnés dans git) bmad-agent-pm.user.toml # préférences personnelles (ignoré par git)"><div></div></button></div></figure></div>
134
- <aside aria-label="Ne copiez PAS le customize.toml complet" class="starlight-aside starlight-aside--caution"><p class="starlight-aside__title" aria-hidden="true"><svg viewBox="0 0 24 24" width="16" height="16" fill="currentColor" class="starlight-aside__icon"><path d="M12 16C11.8022 16 11.6089 16.0587 11.4444 16.1686C11.28 16.2784 11.1518 16.4346 11.0761 16.6173C11.0004 16.8001 10.9806 17.0011 11.0192 17.1951C11.0578 17.3891 11.153 17.5673 11.2929 17.7071C11.4327 17.847 11.6109 17.9422 11.8049 17.9808C11.9989 18.0194 12.2 17.9996 12.3827 17.9239C12.5654 17.8482 12.7216 17.72 12.8315 17.5556C12.9413 17.3911 13 17.1978 13 17C13 16.7348 12.8946 16.4805 12.7071 16.2929C12.5196 16.1054 12.2652 16 12 16ZM22.67 17.47L14.62 3.47003C14.3598 3.00354 13.9798 2.61498 13.5192 2.3445C13.0586 2.07401 12.5341 1.9314 12 1.9314C11.4659 1.9314 10.9414 2.07401 10.4808 2.3445C10.0202 2.61498 9.64019 3.00354 9.38 3.47003L1.38 17.47C1.11079 17.924 0.966141 18.441 0.960643 18.9688C0.955144 19.4966 1.089 20.0166 1.34868 20.4761C1.60837 20.9356 1.9847 21.3185 2.43968 21.5861C2.89466 21.8536 3.41218 21.9964 3.94 22H20.06C20.5921 22.0053 21.1159 21.8689 21.5779 21.6049C22.0399 21.341 22.4234 20.9589 22.689 20.4978C22.9546 20.0368 23.0928 19.5134 23.0895 18.9814C23.0862 18.4493 22.9414 17.9277 22.67 17.47ZM20.94 19.47C20.8523 19.626 20.7245 19.7556 20.5697 19.8453C20.4149 19.935 20.2389 19.9815 20.06 19.98H3.94C3.76111 19.9815 3.5851 19.935 3.43032 19.8453C3.27553 19.7556 3.14765 19.626 3.06 19.47C2.97223 19.318 2.92602 19.1456 2.92602 18.97C2.92602 18.7945 2.97223 18.622 3.06 18.47L11.06 4.47003C11.1439 4.30623 11.2714 4.16876 11.4284 4.07277C11.5855 3.97678 11.766 3.92599 11.95 3.92599C12.134 3.92599 12.3145 3.97678 12.4716 4.07277C12.6286 4.16876 12.7561 4.30623 12.84 4.47003L20.89 18.47C20.9892 18.6199 21.0462 18.7937 21.055 18.9732C21.0638 19.1527 21.0241 19.3312 20.94 19.49V19.47ZM12 8.00003C11.7348 8.00003 11.4804 8.10538 11.2929 8.29292C11.1054 8.48046 11 8.73481 11 9.00003V13C11 13.2652 11.1054 13.5196 11.2929 13.7071C11.4804 13.8947 11.7348 14 12 14C12.2652 14 12.5196 13.8947 12.7071 13.7071C12.8946 13.5196 13 13.2652 13 13V9.00003C13 8.73481 12.8946 8.48046 12.7071 8.29292C12.5196 8.10538 12.2652 8.00003 12 8.00003Z"></path></svg>Ne copiez PAS le <code dir="auto">customize.toml</code> complet</p><div class="starlight-aside__content"><p>Les fichiers d’override sont <strong>allégés</strong>. Incluez uniquement les champs que vous modifiez — rien d’autre. Chaque champ omis est hérité automatiquement de la couche inférieure (l’équipe hérite des valeurs par défaut, l’utilisateur de l’équipe ou des valeurs par défaut).</p><p>Copier le <code dir="auto">customize.toml</code> complet dans un override est contre-productif : la prochaine mise à jour livrera de nouvelles valeurs par défaut, mais votre fichier d’override figera les anciennes valeurs. Votre configuration s’éloignera silencieusement des valeurs par défaut à chaque mise à jour.</p></div></aside>
135
- <p><strong>Exemple — changer l’icône et ajouter un principe :</strong></p>
136
- <div class="expressive-code"><figure class="frame has-title not-content"><figcaption class="header"><span class="title">_bmad/custom/bmad-agent-pm.toml</span></figcaption><pre data-language="toml"><code><div class="ec-line"><div class="code"><span style="--0:#919F9F;--1:#5F636F"># Uniquement les champs que je modifie. Tout le reste est hérité.</span></div></div><div class="ec-line"><div class="code">
137
- </div></div><div class="ec-line"><div class="code"><span style="--0:#D6DEEB;--1:#403F53">[agent]</span></div></div><div class="ec-line"><div class="code"><span style="--0:#C5E478;--1:#3B61B0">icon</span><span style="--0:#D6DEEB;--1:#403F53"> = </span><span style="--0:#D9F5DD;--1:#111111">"</span><span style="--0:#ECC48D;--1:#984E4D">🏥</span><span style="--0:#D9F5DD;--1:#111111">"</span></div></div><div class="ec-line"><div class="code"><span style="--0:#C5E478;--1:#3B61B0">principles</span><span style="--0:#D6DEEB;--1:#403F53"> = [</span></div></div><div class="ec-line"><div class="code"><span class="indent"> </span><span style="--0:#D9F5DD;--1:#111111">"</span><span style="--0:#ECC48D;--1:#984E4D">Ne rien livrer qui ne puisse passer un audit FDA.</span><span style="--0:#D9F5DD;--1:#111111">"</span><span style="--0:#D6DEEB;--1:#403F53">,</span></div></div><div class="ec-line"><div class="code"><span style="--0:#D6DEEB;--1:#403F53">]</span></div></div></code></pre><div class="copy"><div aria-live="polite"></div><button title="Copier dans le presse-papiers" data-copied="Copié !" data-code="# Uniquement les champs que je modifie. Tout le reste est hérité.[agent]icon = &#x22;🏥&#x22;principles = [ &#x22;Ne rien livrer qui ne puisse passer un audit FDA.&#x22;,]"><div></div></button></div></figure></div>
138
- <p>Ceci ajoute le nouveau principe aux valeurs par défaut (en laissant les principes existants intacts) et remplace l’icône. Tous les autres champs restent inchangés.</p>
139
- <div class="sl-heading-wrapper level-h3"><h3 id="3-personnaliser-selon-vos-besoins">3. Personnaliser selon vos besoins</h3><a class="sl-anchor-link" href="#3-personnaliser-selon-vos-besoins"><span aria-hidden="true" class="sl-anchor-icon"><svg width="16" height="16" viewBox="0 0 24 24"><path fill="currentcolor" d="m12.11 15.39-3.88 3.88a2.52 2.52 0 0 1-3.5 0 2.47 2.47 0 0 1 0-3.5l3.88-3.88a1 1 0 0 0-1.42-1.42l-3.88 3.89a4.48 4.48 0 0 0 6.33 6.33l3.89-3.88a1 1 0 1 0-1.42-1.42Zm8.58-12.08a4.49 4.49 0 0 0-6.33 0l-3.89 3.88a1 1 0 0 0 1.42 1.42l3.88-3.88a2.52 2.52 0 0 1 3.5 0 2.47 2.47 0 0 1 0 3.5l-3.88 3.88a1 1 0 1 0 1.42 1.42l3.88-3.89a4.49 4.49 0 0 0 0-6.33ZM8.83 15.17a1 1 0 0 0 1.1.22 1 1 0 0 0 .32-.22l4.92-4.92a1 1 0 0 0-1.42-1.42l-4.92 4.92a1 1 0 0 0 0 1.42Z"></path></svg></span><span class="sr-only" data-pagefind-ignore="">Section intitulée « 3. Personnaliser selon vos besoins »</span></a></div>
140
- <p>Tous les exemples ci-dessous supposent le schéma d’agent plat de BMad. Les champs se trouvent directement sous <code dir="auto">[agent]</code> — pas de sous-tables <code dir="auto">metadata</code> ou <code dir="auto">persona</code> imbriquées.</p>
141
- <p><strong>Scalaires (icon, role, identity, communication_style).</strong> Les overrides scalaires prévalent. Vous n’avez besoin de définir que les champs que vous modifiez :</p>
142
- <div class="expressive-code"><figure class="frame has-title not-content"><figcaption class="header"><span class="title">_bmad/custom/bmad-agent-pm.toml</span></figcaption><pre data-language="toml"><code><div class="ec-line"><div class="code"><span style="--0:#D6DEEB;--1:#403F53">[agent]</span></div></div><div class="ec-line"><div class="code"><span style="--0:#C5E478;--1:#3B61B0">icon</span><span style="--0:#D6DEEB;--1:#403F53"> = </span><span style="--0:#D9F5DD;--1:#111111">"</span><span style="--0:#ECC48D;--1:#984E4D">🏥</span><span style="--0:#D9F5DD;--1:#111111">"</span></div></div><div class="ec-line"><div class="code"><span style="--0:#C5E478;--1:#3B61B0">role</span><span style="--0:#D6DEEB;--1:#403F53"> = </span><span style="--0:#D9F5DD;--1:#111111">"</span><span style="--0:#ECC48D;--1:#984E4D">Pilote la découverte produit pour un domaine de santé réglementé.</span><span style="--0:#D9F5DD;--1:#111111">"</span></div></div><div class="ec-line"><div class="code"><span style="--0:#C5E478;--1:#3B61B0">communication_style</span><span style="--0:#D6DEEB;--1:#403F53"> = </span><span style="--0:#D9F5DD;--1:#111111">"</span><span style="--0:#ECC48D;--1:#984E4D">Précis, sensible à la réglementation, pose des questions orientées conformité tôt.</span><span style="--0:#D9F5DD;--1:#111111">"</span></div></div></code></pre><div class="copy"><div aria-live="polite"></div><button title="Copier dans le presse-papiers" data-copied="Copié !" data-code="[agent]icon = &#x22;🏥&#x22;role = &#x22;Pilote la découverte produit pour un domaine de santé réglementé.&#x22;communication_style = &#x22;Précis, sensible à la réglementation, pose des questions orientées conformité tôt.&#x22;"><div></div></button></div></figure></div>
143
- <p><strong>Faits persistants, principes, hooks d’activation (tableaux en mode ajout).</strong> Les quatre tableaux ci-dessous sont en ajout uniquement. Les éléments d’équipe s’exécutent après les valeurs par défaut, les éléments utilisateur s’exécutent en dernier.</p>
144
- <div class="expressive-code"><figure class="frame not-content"><figcaption class="header"></figcaption><pre data-language="toml"><code><div class="ec-line"><div class="code"><span style="--0:#D6DEEB;--1:#403F53">[agent]</span></div></div><div class="ec-line"><div class="code"><span style="--0:#919F9F;--1:#5F636F"># Faits statiques que l'agent garde en tête pendant toute la session — règles d'org,</span></div></div><div class="ec-line"><div class="code"><span style="--0:#919F9F;--1:#5F636F"># constantes de domaine, préférences utilisateur. Distinct du sidecar de mémoire runtime.</span></div></div><div class="ec-line"><div class="code"><span style="--0:#919F9F;--1:#5F636F">#</span></div></div><div class="ec-line"><div class="code"><span style="--0:#919F9F;--1:#5F636F"># Chaque entrée est soit une phrase littérale, soit une référence `file:` dont le</span></div></div><div class="ec-line"><div class="code"><span style="--0:#919F9F;--1:#5F636F"># contenu est chargé comme des faits (patterns glob supportés).</span></div></div><div class="ec-line"><div class="code"><span style="--0:#C5E478;--1:#3B61B0">persistent_facts</span><span style="--0:#D6DEEB;--1:#403F53"> = [</span></div></div><div class="ec-line"><div class="code"><span class="indent"> </span><span style="--0:#D9F5DD;--1:#111111">"</span><span style="--0:#ECC48D;--1:#984E4D">Notre org est 100 % AWS — ne pas proposer GCP ni Azure.</span><span style="--0:#D9F5DD;--1:#111111">"</span><span style="--0:#D6DEEB;--1:#403F53">,</span></div></div><div class="ec-line"><div class="code"><span class="indent"> </span><span style="--0:#D9F5DD;--1:#111111">"</span><span style="--0:#ECC48D;--1:#984E4D">Tous les PRD nécessitent une validation légale avant le démarrage de l'ingénierie.</span><span style="--0:#D9F5DD;--1:#111111">"</span><span style="--0:#D6DEEB;--1:#403F53">,</span></div></div><div class="ec-line"><div class="code"><span class="indent"> </span><span style="--0:#D9F5DD;--1:#111111">"</span><span style="--0:#ECC48D;--1:#984E4D">Les utilisateurs cibles sont des cliniciens, pas des patients — formuler les exemples en conséquence.</span><span style="--0:#D9F5DD;--1:#111111">"</span><span style="--0:#D6DEEB;--1:#403F53">,</span></div></div><div class="ec-line"><div class="code"><span class="indent"> </span><span style="--0:#D9F5DD;--1:#111111">"</span><span style="--0:#ECC48D;--1:#984E4D">file:{project-root}/docs/compliance/hipaa-overview.md</span><span style="--0:#D9F5DD;--1:#111111">"</span><span style="--0:#D6DEEB;--1:#403F53">,</span></div></div><div class="ec-line"><div class="code"><span class="indent"> </span><span style="--0:#D9F5DD;--1:#111111">"</span><span style="--0:#ECC48D;--1:#984E4D">file:{project-root}/_bmad/custom/company-glossary.md</span><span style="--0:#D9F5DD;--1:#111111">"</span><span style="--0:#D6DEEB;--1:#403F53">,</span></div></div><div class="ec-line"><div class="code"><span style="--0:#D6DEEB;--1:#403F53">]</span></div></div><div class="ec-line"><div class="code">
145
- </div></div><div class="ec-line"><div class="code"><span style="--0:#919F9F;--1:#5F636F"># S'ajoute au système de valeurs de l'agent</span></div></div><div class="ec-line"><div class="code"><span style="--0:#C5E478;--1:#3B61B0">principles</span><span style="--0:#D6DEEB;--1:#403F53"> = [</span></div></div><div class="ec-line"><div class="code"><span class="indent"> </span><span style="--0:#D9F5DD;--1:#111111">"</span><span style="--0:#ECC48D;--1:#984E4D">Ne rien livrer qui ne puisse passer un audit FDA.</span><span style="--0:#D9F5DD;--1:#111111">"</span><span style="--0:#D6DEEB;--1:#403F53">,</span></div></div><div class="ec-line"><div class="code"><span class="indent"> </span><span style="--0:#D9F5DD;--1:#111111">"</span><span style="--0:#ECC48D;--1:#984E4D">Valeur utilisateur d'abord, conformité toujours.</span><span style="--0:#D9F5DD;--1:#111111">"</span><span style="--0:#D6DEEB;--1:#403F53">,</span></div></div><div class="ec-line"><div class="code"><span style="--0:#D6DEEB;--1:#403F53">]</span></div></div><div class="ec-line"><div class="code">
146
- </div></div><div class="ec-line"><div class="code"><span style="--0:#919F9F;--1:#5F636F"># S'exécute AVANT l'activation standard (persona, persistent_facts, config, salutation).</span></div></div><div class="ec-line"><div class="code"><span style="--0:#919F9F;--1:#5F636F"># À utiliser pour les préchargements, vérifications de conformité, tout ce qui doit être</span></div></div><div class="ec-line"><div class="code"><span style="--0:#919F9F;--1:#5F636F"># en contexte avant que l'agent ne se présente.</span></div></div><div class="ec-line"><div class="code"><span style="--0:#C5E478;--1:#3B61B0">activation_steps_prepend</span><span style="--0:#D6DEEB;--1:#403F53"> = [</span></div></div><div class="ec-line"><div class="code"><span class="indent"> </span><span style="--0:#D9F5DD;--1:#111111">"</span><span style="--0:#ECC48D;--1:#984E4D">Scanner {project-root}/docs/compliance/ et charger tout document lié à HIPAA comme contexte.</span><span style="--0:#D9F5DD;--1:#111111">"</span><span style="--0:#D6DEEB;--1:#403F53">,</span></div></div><div class="ec-line"><div class="code"><span style="--0:#D6DEEB;--1:#403F53">]</span></div></div><div class="ec-line"><div class="code">
147
- </div></div><div class="ec-line"><div class="code"><span style="--0:#919F9F;--1:#5F636F"># S'exécute APRÈS la salutation, AVANT le menu. Utiliser pour le chargement de contexte</span></div></div><div class="ec-line"><div class="code"><span style="--0:#919F9F;--1:#5F636F"># qui doit intervenir après le message d'accueil.</span></div></div><div class="ec-line"><div class="code"><span style="--0:#C5E478;--1:#3B61B0">activation_steps_append</span><span style="--0:#D6DEEB;--1:#403F53"> = [</span></div></div><div class="ec-line"><div class="code"><span class="indent"> </span><span style="--0:#D9F5DD;--1:#111111">"</span><span style="--0:#ECC48D;--1:#984E4D">Lire {project-root}/_bmad/custom/company-glossary.md s'il existe.</span><span style="--0:#D9F5DD;--1:#111111">"</span><span style="--0:#D6DEEB;--1:#403F53">,</span></div></div><div class="ec-line"><div class="code"><span style="--0:#D6DEEB;--1:#403F53">]</span></div></div></code></pre><div class="copy"><div aria-live="polite"></div><button title="Copier dans le presse-papiers" data-copied="Copié !" data-code="[agent]# Faits statiques que l&#x27;agent garde en tête pendant toute la session — règles d&#x27;org,# constantes de domaine, préférences utilisateur. Distinct du sidecar de mémoire runtime.## Chaque entrée est soit une phrase littérale, soit une référence &#x60;file:&#x60; dont le# contenu est chargé comme des faits (patterns glob supportés).persistent_facts = [ &#x22;Notre org est 100 % AWS — ne pas proposer GCP ni Azure.&#x22;, &#x22;Tous les PRD nécessitent une validation légale avant le démarrage de l&#x27;ingénierie.&#x22;, &#x22;Les utilisateurs cibles sont des cliniciens, pas des patients — formuler les exemples en conséquence.&#x22;, &#x22;file:{project-root}/docs/compliance/hipaa-overview.md&#x22;, &#x22;file:{project-root}/_bmad/custom/company-glossary.md&#x22;,]# S&#x27;ajoute au système de valeurs de l&#x27;agentprinciples = [ &#x22;Ne rien livrer qui ne puisse passer un audit FDA.&#x22;, &#x22;Valeur utilisateur d&#x27;abord, conformité toujours.&#x22;,]# S&#x27;exécute AVANT l&#x27;activation standard (persona, persistent_facts, config, salutation).# À utiliser pour les préchargements, vérifications de conformité, tout ce qui doit être# en contexte avant que l&#x27;agent ne se présente.activation_steps_prepend = [ &#x22;Scanner {project-root}/docs/compliance/ et charger tout document lié à HIPAA comme contexte.&#x22;,]# S&#x27;exécute APRÈS la salutation, AVANT le menu. Utiliser pour le chargement de contexte# qui doit intervenir après le message d&#x27;accueil.activation_steps_append = [ &#x22;Lire {project-root}/_bmad/custom/company-glossary.md s&#x27;il existe.&#x22;,]"><div></div></button></div></figure></div>
148
- <p><strong>Pourquoi deux hooks ?</strong> Le préfixe s’exécute avant la salutation pour que l’agent puisse charger le contexte dont il a besoin pour personnaliser la salutation elle-même. Le suffixe s’exécute après la salutation pour que l’utilisateur ne reste pas devant un terminal vide pendant les scans lourds.</p>
149
- <p><strong>Personnalisation du menu (fusion par <code dir="auto">code</code>).</strong> Le menu est un tableau de tables. Chaque élément possède un champ <code dir="auto">code</code> (convention BMad). Le résolveur fusionne donc par code : les codes correspondants remplacent sur place, les nouveaux codes s’ajoutent.</p>
150
- <p>La syntaxe TOML pour les tableaux de tables utilise <code dir="auto">[[agent.menu]]</code> pour chaque élément :</p>
151
- <div class="expressive-code"><figure class="frame not-content"><figcaption class="header"></figcaption><pre data-language="toml"><code><div class="ec-line"><div class="code"><span style="--0:#919F9F;--1:#5F636F"># Remplacer l'élément CE existant par un skill personnalisé</span></div></div><div class="ec-line"><div class="code"><span style="--0:#D6DEEB;--1:#403F53">[[agent.menu]]</span></div></div><div class="ec-line"><div class="code"><span style="--0:#C5E478;--1:#3B61B0">code</span><span style="--0:#D6DEEB;--1:#403F53"> = </span><span style="--0:#D9F5DD;--1:#111111">"</span><span style="--0:#ECC48D;--1:#984E4D">CE</span><span style="--0:#D9F5DD;--1:#111111">"</span></div></div><div class="ec-line"><div class="code"><span style="--0:#C5E478;--1:#3B61B0">description</span><span style="--0:#D6DEEB;--1:#403F53"> = </span><span style="--0:#D9F5DD;--1:#111111">"</span><span style="--0:#ECC48D;--1:#984E4D">Créer des Epics avec notre framework de livraison</span><span style="--0:#D9F5DD;--1:#111111">"</span></div></div><div class="ec-line"><div class="code"><span style="--0:#C5E478;--1:#3B61B0">skill</span><span style="--0:#D6DEEB;--1:#403F53"> = </span><span style="--0:#D9F5DD;--1:#111111">"</span><span style="--0:#ECC48D;--1:#984E4D">custom-create-epics</span><span style="--0:#D9F5DD;--1:#111111">"</span></div></div><div class="ec-line"><div class="code">
152
- </div></div><div class="ec-line"><div class="code"><span style="--0:#919F9F;--1:#5F636F"># Ajouter un nouvel élément (le code RC n'existe pas dans les valeurs par défaut)</span></div></div><div class="ec-line"><div class="code"><span style="--0:#D6DEEB;--1:#403F53">[[agent.menu]]</span></div></div><div class="ec-line"><div class="code"><span style="--0:#C5E478;--1:#3B61B0">code</span><span style="--0:#D6DEEB;--1:#403F53"> = </span><span style="--0:#D9F5DD;--1:#111111">"</span><span style="--0:#ECC48D;--1:#984E4D">RC</span><span style="--0:#D9F5DD;--1:#111111">"</span></div></div><div class="ec-line"><div class="code"><span style="--0:#C5E478;--1:#3B61B0">description</span><span style="--0:#D6DEEB;--1:#403F53"> = </span><span style="--0:#D9F5DD;--1:#111111">"</span><span style="--0:#ECC48D;--1:#984E4D">Exécuter une pré-vérification de conformité</span><span style="--0:#D9F5DD;--1:#111111">"</span></div></div><div class="ec-line"><div class="code"><span style="--0:#C5E478;--1:#3B61B0">prompt</span><span style="--0:#D6DEEB;--1:#403F53"> = </span><span style="--0:#D9F5DD;--1:#111111">"""</span></div></div><div class="ec-line"><div class="code"><span style="--0:#ECC48D;--1:#984E4D">Lire {project-root}/_bmad/custom/compliance-checklist.md</span></div></div><div class="ec-line"><div class="code"><span style="--0:#ECC48D;--1:#984E4D">et scanner tous les documents dans {planning_artifacts} en les comparant à celui-ci.</span></div></div><div class="ec-line"><div class="code"><span style="--0:#ECC48D;--1:#984E4D">Signaler tout écart et citer la section réglementaire pertinente.</span></div></div><div class="ec-line"><div class="code"><span style="--0:#D9F5DD;--1:#111111">"""</span></div></div></code></pre><div class="copy"><div aria-live="polite"></div><button title="Copier dans le presse-papiers" data-copied="Copié !" data-code="# Remplacer l&#x27;élément CE existant par un skill personnalisé[[agent.menu]]code = &#x22;CE&#x22;description = &#x22;Créer des Epics avec notre framework de livraison&#x22;skill = &#x22;custom-create-epics&#x22;# Ajouter un nouvel élément (le code RC n&#x27;existe pas dans les valeurs par défaut)[[agent.menu]]code = &#x22;RC&#x22;description = &#x22;Exécuter une pré-vérification de conformité&#x22;prompt = &#x22;&#x22;&#x22;Lire {project-root}/_bmad/custom/compliance-checklist.mdet scanner tous les documents dans {planning_artifacts} en les comparant à celui-ci.Signaler tout écart et citer la section réglementaire pertinente.&#x22;&#x22;&#x22;"><div></div></button></div></figure></div>
153
- <p>Chaque élément de menu possède exactement un <code dir="auto">skill</code> (invoque un skill enregistré) ou <code dir="auto">prompt</code> (exécute le texte directement). Les éléments non listés dans votre override conservent leurs valeurs par défaut.</p>
154
- <p><strong>Référencer des fichiers.</strong> Quand le texte d’un champ doit pointer vers un fichier (dans <code dir="auto">persistent_facts</code>, <code dir="auto">activation_steps_prepend</code>/<code dir="auto">activation_steps_append</code>, ou le <code dir="auto">prompt</code> d’un élément de menu), utilisez un chemin complet partant de <code dir="auto">{project-root}</code>. Même si le fichier se trouve à côté de votre override dans <code dir="auto">_bmad/custom/</code>, écrivez le chemin complet : <code dir="auto">{project-root}/_bmad/custom/info.md</code>. L’agent résout <code dir="auto">{project-root}</code> à l’exécution.</p>
155
- <div class="sl-heading-wrapper level-h3"><h3 id="4-personnel-vs-équipe">4. Personnel vs Équipe</h3><a class="sl-anchor-link" href="#4-personnel-vs-équipe"><span aria-hidden="true" class="sl-anchor-icon"><svg width="16" height="16" viewBox="0 0 24 24"><path fill="currentcolor" d="m12.11 15.39-3.88 3.88a2.52 2.52 0 0 1-3.5 0 2.47 2.47 0 0 1 0-3.5l3.88-3.88a1 1 0 0 0-1.42-1.42l-3.88 3.89a4.48 4.48 0 0 0 6.33 6.33l3.89-3.88a1 1 0 1 0-1.42-1.42Zm8.58-12.08a4.49 4.49 0 0 0-6.33 0l-3.89 3.88a1 1 0 0 0 1.42 1.42l3.88-3.88a2.52 2.52 0 0 1 3.5 0 2.47 2.47 0 0 1 0 3.5l-3.88 3.88a1 1 0 1 0 1.42 1.42l3.88-3.89a4.49 4.49 0 0 0 0-6.33ZM8.83 15.17a1 1 0 0 0 1.1.22 1 1 0 0 0 .32-.22l4.92-4.92a1 1 0 0 0-1.42-1.42l-4.92 4.92a1 1 0 0 0 0 1.42Z"></path></svg></span><span class="sr-only" data-pagefind-ignore="">Section intitulée « 4. Personnel vs Équipe »</span></a></div>
156
- <p><strong>Fichier d’équipe</strong> (<code dir="auto">bmad-agent-pm.toml</code>) : Versionné dans git. Partagé au sein de l’organisation. À utiliser pour les règles de conformité, le persona de l’entreprise, les capacités personnalisées.</p>
157
- <p><strong>Fichier personnel</strong> (<code dir="auto">bmad-agent-pm.user.toml</code>) : Automatiquement ignoré par git. À utiliser pour les ajustements de ton, les préférences de workflow personnelles et les faits privés que l’agent doit garder en tête.</p>
158
- <div class="expressive-code"><figure class="frame has-title not-content"><figcaption class="header"><span class="title">_bmad/custom/bmad-agent-pm.user.toml</span></figcaption><pre data-language="toml"><code><div class="ec-line"><div class="code"><span style="--0:#D6DEEB;--1:#403F53">[agent]</span></div></div><div class="ec-line"><div class="code"><span style="--0:#C5E478;--1:#3B61B0">persistent_facts</span><span style="--0:#D6DEEB;--1:#403F53"> = [</span></div></div><div class="ec-line"><div class="code"><span class="indent"> </span><span style="--0:#D9F5DD;--1:#111111">"</span><span style="--0:#ECC48D;--1:#984E4D">Toujours inclure une estimation approximative de complexité (faible/moyenne/élevée) en présentant les options.</span><span style="--0:#D9F5DD;--1:#111111">"</span><span style="--0:#D6DEEB;--1:#403F53">,</span></div></div><div class="ec-line"><div class="code"><span style="--0:#D6DEEB;--1:#403F53">]</span></div></div></code></pre><div class="copy"><div aria-live="polite"></div><button title="Copier dans le presse-papiers" data-copied="Copié !" data-code="[agent]persistent_facts = [ &#x22;Toujours inclure une estimation approximative de complexité (faible/moyenne/élevée) en présentant les options.&#x22;,]"><div></div></button></div></figure></div>
159
- <div class="sl-heading-wrapper level-h2"><h2 id="comment-fonctionne-la-résolution">Comment fonctionne la résolution</h2><a class="sl-anchor-link" href="#comment-fonctionne-la-résolution"><span aria-hidden="true" class="sl-anchor-icon"><svg width="16" height="16" viewBox="0 0 24 24"><path fill="currentcolor" d="m12.11 15.39-3.88 3.88a2.52 2.52 0 0 1-3.5 0 2.47 2.47 0 0 1 0-3.5l3.88-3.88a1 1 0 0 0-1.42-1.42l-3.88 3.89a4.48 4.48 0 0 0 6.33 6.33l3.89-3.88a1 1 0 1 0-1.42-1.42Zm8.58-12.08a4.49 4.49 0 0 0-6.33 0l-3.89 3.88a1 1 0 0 0 1.42 1.42l3.88-3.88a2.52 2.52 0 0 1 3.5 0 2.47 2.47 0 0 1 0 3.5l-3.88 3.88a1 1 0 1 0 1.42 1.42l3.88-3.89a4.49 4.49 0 0 0 0-6.33ZM8.83 15.17a1 1 0 0 0 1.1.22 1 1 0 0 0 .32-.22l4.92-4.92a1 1 0 0 0-1.42-1.42l-4.92 4.92a1 1 0 0 0 0 1.42Z"></path></svg></span><span class="sr-only" data-pagefind-ignore="">Section intitulée « Comment fonctionne la résolution »</span></a></div>
160
- <p>À l’activation, le SKILL.md de l’agent exécute un script Python partagé qui effectue la fusion à trois couches et renvoie le bloc résolu en JSON. Le script utilise le module <code dir="auto">tomllib</code> de la bibliothèque standard Python (aucune dépendance externe), donc <code dir="auto">python3</code> suffit :</p>
161
- <div class="expressive-code"><figure class="frame is-terminal not-content"><figcaption class="header"><span class="title"></span><span class="sr-only">Fenêtre de terminal</span></figcaption><pre data-language="bash"><code><div class="ec-line"><div class="code"><span style="--0:#82AAFF;--1:#3B61B0">python3</span><span style="--0:#D6DEEB;--1:#403F53"> </span><span style="--0:#ECC48D;--1:#3B61B0">{project-root}/_bmad/scripts/resolve_customization.py</span><span style="--0:#D6DEEB;--1:#403F53"> </span><span style="--0:#F78C6C;--1:#AA0982">\</span></div></div><div class="ec-line"><div class="code"><span class="indent"> </span><span style="--0:#82AAFF;--1:#3B61B0">--skill</span><span style="--0:#D6DEEB;--1:#403F53"> </span><span style="--0:#ECC48D;--1:#3B61B0">{skill-root}</span><span style="--0:#D6DEEB;--1:#403F53"> </span><span style="--0:#F78C6C;--1:#AA0982">\</span></div></div><div class="ec-line"><div class="code"><span class="indent"> </span><span style="--0:#82AAFF;--1:#3B61B0">--key</span><span style="--0:#D6DEEB;--1:#403F53"> </span><span style="--0:#ECC48D;--1:#3B61B0">agent</span></div></div></code></pre><div class="copy"><div aria-live="polite"></div><button title="Copier dans le presse-papiers" data-copied="Copié !" data-code="python3 {project-root}/_bmad/scripts/resolve_customization.py \ --skill {skill-root} \ --key agent"><div></div></button></div></figure></div>
162
- <p><strong>Prérequis</strong> : Python 3.11+ (les versions antérieures n’incluent pas <code dir="auto">tomllib</code>). Pas de <code dir="auto">pip install</code>, pas de <code dir="auto">uv</code>, pas de virtualenv. Vérifiez avec <code dir="auto">python3 --version</code>. Certaines plateformes (macOS sans Homebrew, Ubuntu 22.04) ont <code dir="auto">python3</code> par défaut en 3.10 ou antérieur, vous devrez peut-être installer 3.11+ séparément.</p>
163
- <p><code dir="auto">--skill</code> pointe vers le répertoire installé du skill (où se trouve <code dir="auto">customize.toml</code>). Le nom du skill est déduit du basename du répertoire, et le script cherche automatiquement <code dir="auto">_bmad/custom/{skill-name}.toml</code> et <code dir="auto">{skill-name}.user.toml</code>.</p>
164
- <p>Exemples d’utilisation :</p>
165
- <div class="expressive-code"><figure class="frame is-terminal not-content"><figcaption class="header"><span class="title"></span><span class="sr-only">Fenêtre de terminal</span></figcaption><pre data-language="bash"><code><div class="ec-line"><div class="code"><span style="--0:#919F9F;--1:#5F636F"># Résoudre le bloc agent complet</span></div></div><div class="ec-line"><div class="code"><span style="--0:#82AAFF;--1:#3B61B0">python3</span><span style="--0:#D6DEEB;--1:#403F53"> </span><span style="--0:#ECC48D;--1:#3B61B0">{project-root}/_bmad/scripts/resolve_customization.py</span><span style="--0:#D6DEEB;--1:#403F53"> </span><span style="--0:#F78C6C;--1:#AA0982">\</span></div></div><div class="ec-line"><div class="code"><span class="indent"> </span><span style="--0:#82AAFF;--1:#3B61B0">--skill</span><span style="--0:#D6DEEB;--1:#403F53"> </span><span style="--0:#ECC48D;--1:#3B61B0">/chemin/absolu/vers/bmad-agent-pm</span><span style="--0:#D6DEEB;--1:#403F53"> </span><span style="--0:#F78C6C;--1:#AA0982">\</span></div></div><div class="ec-line"><div class="code"><span class="indent"> </span><span style="--0:#82AAFF;--1:#3B61B0">--key</span><span style="--0:#D6DEEB;--1:#403F53"> </span><span style="--0:#ECC48D;--1:#3B61B0">agent</span></div></div><div class="ec-line"><div class="code">
166
- </div></div><div class="ec-line"><div class="code"><span style="--0:#919F9F;--1:#5F636F"># Résoudre un seul champ</span></div></div><div class="ec-line"><div class="code"><span style="--0:#82AAFF;--1:#3B61B0">python3</span><span style="--0:#D6DEEB;--1:#403F53"> </span><span style="--0:#ECC48D;--1:#3B61B0">{project-root}/_bmad/scripts/resolve_customization.py</span><span style="--0:#D6DEEB;--1:#403F53"> </span><span style="--0:#F78C6C;--1:#AA0982">\</span></div></div><div class="ec-line"><div class="code"><span class="indent"> </span><span style="--0:#82AAFF;--1:#3B61B0">--skill</span><span style="--0:#D6DEEB;--1:#403F53"> </span><span style="--0:#ECC48D;--1:#3B61B0">/chemin/absolu/vers/bmad-agent-pm</span><span style="--0:#D6DEEB;--1:#403F53"> </span><span style="--0:#F78C6C;--1:#AA0982">\</span></div></div><div class="ec-line"><div class="code"><span class="indent"> </span><span style="--0:#82AAFF;--1:#3B61B0">--key</span><span style="--0:#D6DEEB;--1:#403F53"> </span><span style="--0:#ECC48D;--1:#3B61B0">agent.icon</span></div></div><div class="ec-line"><div class="code">
167
- </div></div><div class="ec-line"><div class="code"><span style="--0:#919F9F;--1:#5F636F"># Dump complet</span></div></div><div class="ec-line"><div class="code"><span style="--0:#82AAFF;--1:#3B61B0">python3</span><span style="--0:#D6DEEB;--1:#403F53"> </span><span style="--0:#ECC48D;--1:#3B61B0">{project-root}/_bmad/scripts/resolve_customization.py</span><span style="--0:#D6DEEB;--1:#403F53"> </span><span style="--0:#F78C6C;--1:#AA0982">\</span></div></div><div class="ec-line"><div class="code"><span class="indent"> </span><span style="--0:#82AAFF;--1:#3B61B0">--skill</span><span style="--0:#D6DEEB;--1:#403F53"> </span><span style="--0:#ECC48D;--1:#3B61B0">/chemin/absolu/vers/bmad-agent-pm</span></div></div></code></pre><div class="copy"><div aria-live="polite"></div><button title="Copier dans le presse-papiers" data-copied="Copié !" data-code="python3 {project-root}/_bmad/scripts/resolve_customization.py \ --skill /chemin/absolu/vers/bmad-agent-pm \ --key agentpython3 {project-root}/_bmad/scripts/resolve_customization.py \ --skill /chemin/absolu/vers/bmad-agent-pm \ --key agent.iconpython3 {project-root}/_bmad/scripts/resolve_customization.py \ --skill /chemin/absolu/vers/bmad-agent-pm"><div></div></button></div></figure></div>
168
- <p>La sortie est toujours en JSON. Si le script n’est pas disponible sur une plateforme donnée, le SKILL.md demande à l’agent de lire les trois fichiers TOML directement et d’appliquer les mêmes règles de fusion.</p>
169
- <div class="sl-heading-wrapper level-h2"><h2 id="personnalisation-des-workflows">Personnalisation des workflows</h2><a class="sl-anchor-link" href="#personnalisation-des-workflows"><span aria-hidden="true" class="sl-anchor-icon"><svg width="16" height="16" viewBox="0 0 24 24"><path fill="currentcolor" d="m12.11 15.39-3.88 3.88a2.52 2.52 0 0 1-3.5 0 2.47 2.47 0 0 1 0-3.5l3.88-3.88a1 1 0 0 0-1.42-1.42l-3.88 3.89a4.48 4.48 0 0 0 6.33 6.33l3.89-3.88a1 1 0 1 0-1.42-1.42Zm8.58-12.08a4.49 4.49 0 0 0-6.33 0l-3.89 3.88a1 1 0 0 0 1.42 1.42l3.88-3.88a2.52 2.52 0 0 1 3.5 0 2.47 2.47 0 0 1 0 3.5l-3.88 3.88a1 1 0 1 0 1.42 1.42l3.88-3.89a4.49 4.49 0 0 0 0-6.33ZM8.83 15.17a1 1 0 0 0 1.1.22 1 1 0 0 0 .32-.22l4.92-4.92a1 1 0 0 0-1.42-1.42l-4.92 4.92a1 1 0 0 0 0 1.42Z"></path></svg></span><span class="sr-only" data-pagefind-ignore="">Section intitulée « Personnalisation des workflows »</span></a></div>
170
- <p>Les workflows (skills qui pilotent des processus multi-étapes comme <code dir="auto">bmad-product-brief</code>) partagent le même mécanisme d’override que les agents. Leur surface personnalisable se trouve sous <code dir="auto">[workflow]</code> au lieu de <code dir="auto">[agent]</code> :</p>
171
- <div class="expressive-code"><figure class="frame has-title not-content"><figcaption class="header"><span class="title">_bmad/custom/bmad-product-brief.toml</span></figcaption><pre data-language="toml"><code><div class="ec-line"><div class="code"><span style="--0:#D6DEEB;--1:#403F53">[workflow]</span></div></div><div class="ec-line"><div class="code"><span style="--0:#919F9F;--1:#5F636F"># Même sémantique préfixe/suffixe que les agents — s'exécute avant et après les étapes</span></div></div><div class="ec-line"><div class="code"><span style="--0:#919F9F;--1:#5F636F"># d'activation propres au workflow. Les overrides s'ajoutent aux valeurs par défaut.</span></div></div><div class="ec-line"><div class="code"><span style="--0:#C5E478;--1:#3B61B0">activation_steps_prepend</span><span style="--0:#D6DEEB;--1:#403F53"> = [</span></div></div><div class="ec-line"><div class="code"><span class="indent"> </span><span style="--0:#D9F5DD;--1:#111111">"</span><span style="--0:#ECC48D;--1:#984E4D">Charger {project-root}/docs/product/north-star-principles.md comme contexte.</span><span style="--0:#D9F5DD;--1:#111111">"</span><span style="--0:#D6DEEB;--1:#403F53">,</span></div></div><div class="ec-line"><div class="code"><span style="--0:#D6DEEB;--1:#403F53">]</span></div></div><div class="ec-line"><div class="code">
172
- </div></div><div class="ec-line"><div class="code"><span style="--0:#C5E478;--1:#3B61B0">activation_steps_append</span><span style="--0:#D6DEEB;--1:#403F53"> = []</span></div></div><div class="ec-line"><div class="code">
173
- </div></div><div class="ec-line"><div class="code"><span style="--0:#919F9F;--1:#5F636F"># Même sémantique littéral ou fichier que pour la variante agent. Chargé comme contexte</span></div></div><div class="ec-line"><div class="code"><span style="--0:#919F9F;--1:#5F636F"># fondamental pour la durée de l'exécution du workflow.</span></div></div><div class="ec-line"><div class="code"><span style="--0:#C5E478;--1:#3B61B0">persistent_facts</span><span style="--0:#D6DEEB;--1:#403F53"> = [</span></div></div><div class="ec-line"><div class="code"><span class="indent"> </span><span style="--0:#D9F5DD;--1:#111111">"</span><span style="--0:#ECC48D;--1:#984E4D">Tous les briefs doivent inclure une section explicite de risque réglementaire.</span><span style="--0:#D9F5DD;--1:#111111">"</span><span style="--0:#D6DEEB;--1:#403F53">,</span></div></div><div class="ec-line"><div class="code"><span class="indent"> </span><span style="--0:#D9F5DD;--1:#111111">"</span><span style="--0:#ECC48D;--1:#984E4D">file:{project-root}/docs/compliance/product-brief-checklist.md</span><span style="--0:#D9F5DD;--1:#111111">"</span><span style="--0:#D6DEEB;--1:#403F53">,</span></div></div><div class="ec-line"><div class="code"><span style="--0:#D6DEEB;--1:#403F53">]</span></div></div><div class="ec-line"><div class="code">
174
- </div></div><div class="ec-line"><div class="code"><span style="--0:#919F9F;--1:#5F636F"># Scalaire : s'exécute une fois que le workflow a terminé son livrable principal. L'override prévaut.</span></div></div><div class="ec-line"><div class="code"><span style="--0:#C5E478;--1:#3B61B0">on_complete</span><span style="--0:#D6DEEB;--1:#403F53"> = </span><span style="--0:#D9F5DD;--1:#111111">"</span><span style="--0:#ECC48D;--1:#984E4D">Résumer le brief en trois points et proposer de l'envoyer par email via le skill gws-gmail-send.</span><span style="--0:#D9F5DD;--1:#111111">"</span></div></div></code></pre><div class="copy"><div aria-live="polite"></div><button title="Copier dans le presse-papiers" data-copied="Copié !" data-code="[workflow]# Même sémantique préfixe/suffixe que les agents — s&#x27;exécute avant et après les étapes# d&#x27;activation propres au workflow. Les overrides s&#x27;ajoutent aux valeurs par défaut.activation_steps_prepend = [ &#x22;Charger {project-root}/docs/product/north-star-principles.md comme contexte.&#x22;,]activation_steps_append = []# Même sémantique littéral ou fichier que pour la variante agent. Chargé comme contexte# fondamental pour la durée de l&#x27;exécution du workflow.persistent_facts = [ &#x22;Tous les briefs doivent inclure une section explicite de risque réglementaire.&#x22;, &#x22;file:{project-root}/docs/compliance/product-brief-checklist.md&#x22;,]# Scalaire : s&#x27;exécute une fois que le workflow a terminé son livrable principal. L&#x27;override prévaut.on_complete = &#x22;Résumer le brief en trois points et proposer de l&#x27;envoyer par email via le skill gws-gmail-send.&#x22;"><div></div></button></div></figure></div>
175
- <p>Les mêmes conventions de champs s’appliquent indifféremment aux agents et aux workflows : <code dir="auto">activation_steps_prepend</code>/<code dir="auto">activation_steps_append</code>, <code dir="auto">persistent_facts</code> (avec refs <code dir="auto">file:</code>) et les tables <code dir="auto">[[…]]</code> de style menu avec <code dir="auto">code</code>/<code dir="auto">id</code> pour la fusion par clé. Le résolveur applique les mêmes quatre règles structurelles quelle que soit la clé de premier niveau. Les références dans SKILL.md suivent l’espace de noms : <code dir="auto">{workflow.activation_steps_prepend}</code>, <code dir="auto">{workflow.persistent_facts}</code>, <code dir="auto">{workflow.on_complete}</code>. Tout champ supplémentaire qu’un workflow expose (chemins de sortie, bascules, paramètres de revue, drapeaux d’étape) suit les mêmes règles de fusion basées sur la forme. Lisez le <code dir="auto">customize.toml</code> du workflow pour voir ce qui est personnalisable.</p>
176
- <div class="sl-heading-wrapper level-h3"><h3 id="ordre-dactivation">Ordre d’activation</h3><a class="sl-anchor-link" href="#ordre-dactivation"><span aria-hidden="true" class="sl-anchor-icon"><svg width="16" height="16" viewBox="0 0 24 24"><path fill="currentcolor" d="m12.11 15.39-3.88 3.88a2.52 2.52 0 0 1-3.5 0 2.47 2.47 0 0 1 0-3.5l3.88-3.88a1 1 0 0 0-1.42-1.42l-3.88 3.89a4.48 4.48 0 0 0 6.33 6.33l3.89-3.88a1 1 0 1 0-1.42-1.42Zm8.58-12.08a4.49 4.49 0 0 0-6.33 0l-3.89 3.88a1 1 0 0 0 1.42 1.42l3.88-3.88a2.52 2.52 0 0 1 3.5 0 2.47 2.47 0 0 1 0 3.5l-3.88 3.88a1 1 0 1 0 1.42 1.42l3.88-3.89a4.49 4.49 0 0 0 0-6.33ZM8.83 15.17a1 1 0 0 0 1.1.22 1 1 0 0 0 .32-.22l4.92-4.92a1 1 0 0 0-1.42-1.42l-4.92 4.92a1 1 0 0 0 0 1.42Z"></path></svg></span><span class="sr-only" data-pagefind-ignore="">Section intitulée « Ordre d’activation »</span></a></div>
177
- <p>Les workflows personnalisables exécutent leur activation dans une séquence fixe pour que vous sachiez exactement quand vos hooks se déclenchent :</p>
178
- <ol>
179
- <li>Résoudre le bloc <code dir="auto">[workflow]</code> (fusion base → équipe → utilisateur)</li>
180
- <li>Exécuter <code dir="auto">activation_steps_prepend</code> dans l’ordre</li>
181
- <li>Charger <code dir="auto">persistent_facts</code> comme contexte fondamental pour l’exécution</li>
182
- <li>Charger la configuration (<code dir="auto">_bmad/bmm/config.yaml</code>) et résoudre les variables standard (nom du projet, langues, chemins, date)</li>
183
- <li>Saluer l’utilisateur</li>
184
- <li>Exécuter <code dir="auto">activation_steps_append</code> dans l’ordre</li>
185
- </ol>
186
- <p>Après l’étape 6, le corps du workflow commence. Utilisez <code dir="auto">activation_steps_prepend</code> quand vous avez besoin de contexte chargé avant que la salutation puisse être personnalisée ; utilisez <code dir="auto">activation_steps_append</code> quand le chargement est lourd et que vous préférez que l’utilisateur voie la salutation d’abord.</p>
187
- <div class="sl-heading-wrapper level-h3"><h3 id="périmètre-de-cette-première-passe">Périmètre de cette première passe</h3><a class="sl-anchor-link" href="#périmètre-de-cette-première-passe"><span aria-hidden="true" class="sl-anchor-icon"><svg width="16" height="16" viewBox="0 0 24 24"><path fill="currentcolor" d="m12.11 15.39-3.88 3.88a2.52 2.52 0 0 1-3.5 0 2.47 2.47 0 0 1 0-3.5l3.88-3.88a1 1 0 0 0-1.42-1.42l-3.88 3.89a4.48 4.48 0 0 0 6.33 6.33l3.89-3.88a1 1 0 1 0-1.42-1.42Zm8.58-12.08a4.49 4.49 0 0 0-6.33 0l-3.89 3.88a1 1 0 0 0 1.42 1.42l3.88-3.88a2.52 2.52 0 0 1 3.5 0 2.47 2.47 0 0 1 0 3.5l-3.88 3.88a1 1 0 1 0 1.42 1.42l3.88-3.89a4.49 4.49 0 0 0 0-6.33ZM8.83 15.17a1 1 0 0 0 1.1.22 1 1 0 0 0 .32-.22l4.92-4.92a1 1 0 0 0-1.42-1.42l-4.92 4.92a1 1 0 0 0 0 1.42Z"></path></svg></span><span class="sr-only" data-pagefind-ignore="">Section intitulée « Périmètre de cette première passe »</span></a></div>
188
- <p>La personnalisation est déployée de manière incrémentale. Les champs documentés ci-dessus — <code dir="auto">activation_steps_prepend</code>, <code dir="auto">activation_steps_append</code>, <code dir="auto">persistent_facts</code>, <code dir="auto">on_complete</code> — sont la <strong>surface de base</strong> que chaque workflow personnalisable expose, et ils resteront stables d’une version à l’autre. Ils vous donnent un contrôle à grands traits dès aujourd’hui : injecter des étapes pré/post, épingler du contexte fondamental, déclencher des actions de suivi.</p>
189
- <p>Au fil du temps, les workflows individuels exposeront des <strong>points de personnalisation plus ciblés</strong> adaptés à ce que le workflow fait réellement — par exemple des bascules par étape, des drapeaux d’étape, des chemins de templates de sortie ou des jalons de revue. Quand ils arriveront, ils viendront s’ajouter aux champs de base plutôt que de les remplacer, pour que les personnalisations que vous rédigez aujourd’hui continuent de fonctionner.</p>
190
- <p>Si vous avez besoin d’un réglage précis qui n’est pas encore exposé, utilisez <code dir="auto">activation_steps_*</code> et <code dir="auto">persistent_facts</code> pour orienter le comportement, ou ouvrez une issue décrivant le point de personnalisation spécifique que vous souhaitez — ces demandes déterminent quels champs ciblés seront ajoutés ensuite.</p>
191
- <div class="sl-heading-wrapper level-h2"><h2 id="configuration-centrale">Configuration centrale</h2><a class="sl-anchor-link" href="#configuration-centrale"><span aria-hidden="true" class="sl-anchor-icon"><svg width="16" height="16" viewBox="0 0 24 24"><path fill="currentcolor" d="m12.11 15.39-3.88 3.88a2.52 2.52 0 0 1-3.5 0 2.47 2.47 0 0 1 0-3.5l3.88-3.88a1 1 0 0 0-1.42-1.42l-3.88 3.89a4.48 4.48 0 0 0 6.33 6.33l3.89-3.88a1 1 0 1 0-1.42-1.42Zm8.58-12.08a4.49 4.49 0 0 0-6.33 0l-3.89 3.88a1 1 0 0 0 1.42 1.42l3.88-3.88a2.52 2.52 0 0 1 3.5 0 2.47 2.47 0 0 1 0 3.5l-3.88 3.88a1 1 0 1 0 1.42 1.42l3.88-3.89a4.49 4.49 0 0 0 0-6.33ZM8.83 15.17a1 1 0 0 0 1.1.22 1 1 0 0 0 .32-.22l4.92-4.92a1 1 0 0 0-1.42-1.42l-4.92 4.92a1 1 0 0 0 0 1.42Z"></path></svg></span><span class="sr-only" data-pagefind-ignore="">Section intitulée « Configuration centrale »</span></a></div>
192
- <p>Le <code dir="auto">customize.toml</code> par skill couvre le <strong>comportement profond</strong> (hooks, menus, persistent_facts, overrides de persona pour un seul agent ou workflow). Une surface séparée couvre l’<strong>état transversal</strong> — les réponses d’installation et le registre des agents que les skills externes comme <code dir="auto">bmad-party-mode</code>, <code dir="auto">bmad-retrospective</code> et <code dir="auto">bmad-advanced-elicitation</code> consomment. Cette surface se trouve dans quatre fichiers TOML à la racine du projet :</p>
193
- <div class="expressive-code"><figure class="frame not-content"><figcaption class="header"></figcaption><pre data-language="text"><code><div class="ec-line"><div class="code"><span style="--0:#d6deeb;--1:#403f53">_bmad/config.toml (géré par l'installateur) périmètre équipe : réponses d'installation + registre des agents</span></div></div><div class="ec-line"><div class="code"><span style="--0:#d6deeb;--1:#403f53">_bmad/config.user.toml (géré par l'installateur) périmètre utilisateur : user_name, langue, niveau de skill</span></div></div><div class="ec-line"><div class="code"><span style="--0:#d6deeb;--1:#403f53">_bmad/custom/config.toml (rédigé manuellement) overrides d'équipe (versionnés dans git)</span></div></div><div class="ec-line"><div class="code"><span style="--0:#d6deeb;--1:#403f53">_bmad/custom/config.user.toml (rédigé manuellement) overrides personnels (ignoré par git)</span></div></div></code></pre><div class="copy"><div aria-live="polite"></div><button title="Copier dans le presse-papiers" data-copied="Copié !" data-code="_bmad/config.toml (géré par l&#x27;installateur) périmètre équipe : réponses d&#x27;installation + registre des agents_bmad/config.user.toml (géré par l&#x27;installateur) périmètre utilisateur : user_name, langue, niveau de skill_bmad/custom/config.toml (rédigé manuellement) overrides d&#x27;équipe (versionnés dans git)_bmad/custom/config.user.toml (rédigé manuellement) overrides personnels (ignoré par git)"><div></div></button></div></figure></div>
194
- <div class="sl-heading-wrapper level-h3"><h3 id="fusion-à-quatre-couches">Fusion à quatre couches</h3><a class="sl-anchor-link" href="#fusion-à-quatre-couches"><span aria-hidden="true" class="sl-anchor-icon"><svg width="16" height="16" viewBox="0 0 24 24"><path fill="currentcolor" d="m12.11 15.39-3.88 3.88a2.52 2.52 0 0 1-3.5 0 2.47 2.47 0 0 1 0-3.5l3.88-3.88a1 1 0 0 0-1.42-1.42l-3.88 3.89a4.48 4.48 0 0 0 6.33 6.33l3.89-3.88a1 1 0 1 0-1.42-1.42Zm8.58-12.08a4.49 4.49 0 0 0-6.33 0l-3.89 3.88a1 1 0 0 0 1.42 1.42l3.88-3.88a2.52 2.52 0 0 1 3.5 0 2.47 2.47 0 0 1 0 3.5l-3.88 3.88a1 1 0 1 0 1.42 1.42l3.88-3.89a4.49 4.49 0 0 0 0-6.33ZM8.83 15.17a1 1 0 0 0 1.1.22 1 1 0 0 0 .32-.22l4.92-4.92a1 1 0 0 0-1.42-1.42l-4.92 4.92a1 1 0 0 0 0 1.42Z"></path></svg></span><span class="sr-only" data-pagefind-ignore="">Section intitulée « Fusion à quatre couches »</span></a></div>
195
- <div class="expressive-code"><figure class="frame not-content"><figcaption class="header"></figcaption><pre data-language="text"><code><div class="ec-line"><div class="code"><span style="--0:#d6deeb;--1:#403f53">Priorité 1 (gagne) : _bmad/custom/config.user.toml</span></div></div><div class="ec-line"><div class="code"><span style="--0:#d6deeb;--1:#403f53">Priorité 2 : _bmad/custom/config.toml</span></div></div><div class="ec-line"><div class="code"><span style="--0:#d6deeb;--1:#403f53">Priorité 3 : _bmad/config.user.toml</span></div></div><div class="ec-line"><div class="code"><span style="--0:#d6deeb;--1:#403f53">Priorité 4 (base) : _bmad/config.toml</span></div></div></code></pre><div class="copy"><div aria-live="polite"></div><button title="Copier dans le presse-papiers" data-copied="Copié !" data-code="Priorité 1 (gagne) : _bmad/custom/config.user.tomlPriorité 2 : _bmad/custom/config.tomlPriorité 3 : _bmad/config.user.tomlPriorité 4 (base) : _bmad/config.toml"><div></div></button></div></figure></div>
196
- <p>Mêmes règles structurelles que la personnalisation par skill (scalaires prévalent, tables fusionnent en profondeur, tableaux à clé <code dir="auto">code</code>/<code dir="auto">id</code> fusionnent par clé, autres tableaux s’ajoutent).</p>
197
- <div class="sl-heading-wrapper level-h3"><h3 id="répartition-du-contenu">Répartition du contenu</h3><a class="sl-anchor-link" href="#répartition-du-contenu"><span aria-hidden="true" class="sl-anchor-icon"><svg width="16" height="16" viewBox="0 0 24 24"><path fill="currentcolor" d="m12.11 15.39-3.88 3.88a2.52 2.52 0 0 1-3.5 0 2.47 2.47 0 0 1 0-3.5l3.88-3.88a1 1 0 0 0-1.42-1.42l-3.88 3.89a4.48 4.48 0 0 0 6.33 6.33l3.89-3.88a1 1 0 1 0-1.42-1.42Zm8.58-12.08a4.49 4.49 0 0 0-6.33 0l-3.89 3.88a1 1 0 0 0 1.42 1.42l3.88-3.88a2.52 2.52 0 0 1 3.5 0 2.47 2.47 0 0 1 0 3.5l-3.88 3.88a1 1 0 1 0 1.42 1.42l3.88-3.89a4.49 4.49 0 0 0 0-6.33ZM8.83 15.17a1 1 0 0 0 1.1.22 1 1 0 0 0 .32-.22l4.92-4.92a1 1 0 0 0-1.42-1.42l-4.92 4.92a1 1 0 0 0 0 1.42Z"></path></svg></span><span class="sr-only" data-pagefind-ignore="">Section intitulée « Répartition du contenu »</span></a></div>
198
- <p>L’installateur répartit les réponses selon le <code dir="auto">scope:</code> déclaré sur chaque prompt dans <code dir="auto">module.yaml</code> :</p>
199
- <ul>
200
- <li>Les sections <code dir="auto">[core]</code> et <code dir="auto">[modules.&#x3C;code>]</code> — réponses d’installation. Le scope <code dir="auto">team</code> figure dans <code dir="auto">_bmad/config.toml</code> ; le scope <code dir="auto">user</code> figure dans <code dir="auto">_bmad/config.user.toml</code>.</li>
201
- <li><code dir="auto">[agents.&#x3C;code>]</code> — descripteur de l’agent (code, name, title, icon, description, team) extrait du bloc <code dir="auto">agents:</code> de chaque <code dir="auto">module.yaml</code>. Toujours de scope équipe.</li>
202
- </ul>
203
- <div class="sl-heading-wrapper level-h3"><h3 id="règles-de-modification">Règles de modification</h3><a class="sl-anchor-link" href="#règles-de-modification"><span aria-hidden="true" class="sl-anchor-icon"><svg width="16" height="16" viewBox="0 0 24 24"><path fill="currentcolor" d="m12.11 15.39-3.88 3.88a2.52 2.52 0 0 1-3.5 0 2.47 2.47 0 0 1 0-3.5l3.88-3.88a1 1 0 0 0-1.42-1.42l-3.88 3.89a4.48 4.48 0 0 0 6.33 6.33l3.89-3.88a1 1 0 1 0-1.42-1.42Zm8.58-12.08a4.49 4.49 0 0 0-6.33 0l-3.89 3.88a1 1 0 0 0 1.42 1.42l3.88-3.88a2.52 2.52 0 0 1 3.5 0 2.47 2.47 0 0 1 0 3.5l-3.88 3.88a1 1 0 1 0 1.42 1.42l3.88-3.89a4.49 4.49 0 0 0 0-6.33ZM8.83 15.17a1 1 0 0 0 1.1.22 1 1 0 0 0 .32-.22l4.92-4.92a1 1 0 0 0-1.42-1.42l-4.92 4.92a1 1 0 0 0 0 1.42Z"></path></svg></span><span class="sr-only" data-pagefind-ignore="">Section intitulée « Règles de modification »</span></a></div>
204
- <ul>
205
- <li><code dir="auto">_bmad/config.toml</code> et <code dir="auto">_bmad/config.user.toml</code> sont <strong>régénérés à chaque installation</strong> à partir des réponses collectées pendant le processus d’installation. Traitez-les comme des sorties en lecture seule — les modifications directes seront écrasées à la prochaine installation. Pour changer une réponse d’installation de manière durable, relancez l’installateur (il se souvient de vos réponses précédentes comme valeurs par défaut) ou surchargez la valeur dans <code dir="auto">_bmad/custom/config.toml</code>.</li>
206
- <li><code dir="auto">_bmad/custom/config.toml</code> et <code dir="auto">_bmad/custom/config.user.toml</code> ne sont <strong>jamais modifiés</strong> par l’installateur. C’est l’espace approprié pour les agents personnalisés, les overrides de descripteur d’agent, les paramètres imposés par l’équipe et toute valeur que vous souhaitez figer indépendamment des réponses d’installation.</li>
207
- </ul>
208
- <div class="sl-heading-wrapper level-h3"><h3 id="exemple--renommer-un-agent">Exemple — Renommer un agent</h3><a class="sl-anchor-link" href="#exemple--renommer-un-agent"><span aria-hidden="true" class="sl-anchor-icon"><svg width="16" height="16" viewBox="0 0 24 24"><path fill="currentcolor" d="m12.11 15.39-3.88 3.88a2.52 2.52 0 0 1-3.5 0 2.47 2.47 0 0 1 0-3.5l3.88-3.88a1 1 0 0 0-1.42-1.42l-3.88 3.89a4.48 4.48 0 0 0 6.33 6.33l3.89-3.88a1 1 0 1 0-1.42-1.42Zm8.58-12.08a4.49 4.49 0 0 0-6.33 0l-3.89 3.88a1 1 0 0 0 1.42 1.42l3.88-3.88a2.52 2.52 0 0 1 3.5 0 2.47 2.47 0 0 1 0 3.5l-3.88 3.88a1 1 0 1 0 1.42 1.42l3.88-3.89a4.49 4.49 0 0 0 0-6.33ZM8.83 15.17a1 1 0 0 0 1.1.22 1 1 0 0 0 .32-.22l4.92-4.92a1 1 0 0 0-1.42-1.42l-4.92 4.92a1 1 0 0 0 0 1.42Z"></path></svg></span><span class="sr-only" data-pagefind-ignore="">Section intitulée « Exemple — Renommer un agent »</span></a></div>
209
- <div class="expressive-code"><figure class="frame not-content"><figcaption class="header"></figcaption><pre data-language="toml"><code><div class="ec-line"><div class="code"><span style="--0:#919F9F;--1:#5F636F"># _bmad/custom/config.toml (versionné dans git, s'applique à tous les développeurs)</span></div></div><div class="ec-line"><div class="code">
210
- </div></div><div class="ec-line"><div class="code"><span style="--0:#D6DEEB;--1:#403F53">[agents.bmad-agent-pm]</span></div></div><div class="ec-line"><div class="code"><span style="--0:#C5E478;--1:#3B61B0">description</span><span style="--0:#D6DEEB;--1:#403F53"> = </span><span style="--0:#D9F5DD;--1:#111111">"</span><span style="--0:#ECC48D;--1:#984E4D">PM Santé — sensible à la réglementation, orienté parties prenantes, questions orientées FDA en premier.</span><span style="--0:#D9F5DD;--1:#111111">"</span></div></div><div class="ec-line"><div class="code"><span style="--0:#C5E478;--1:#3B61B0">icon</span><span style="--0:#D6DEEB;--1:#403F53"> = </span><span style="--0:#D9F5DD;--1:#111111">"</span><span style="--0:#ECC48D;--1:#984E4D">🏥</span><span style="--0:#D9F5DD;--1:#111111">"</span></div></div></code></pre><div class="copy"><div aria-live="polite"></div><button title="Copier dans le presse-papiers" data-copied="Copié !" data-code="# _bmad/custom/config.toml (versionné dans git, s&#x27;applique à tous les développeurs)[agents.bmad-agent-pm]description = &#x22;PM Santé — sensible à la réglementation, orienté parties prenantes, questions orientées FDA en premier.&#x22;icon = &#x22;🏥&#x22;"><div></div></button></div></figure></div>
211
- <p>Le résolveur fusionne par-dessus le <code dir="auto">[agents.bmad-agent-pm]</code> écrit par l’installateur. <code dir="auto">bmad-party-mode</code> et tout autre utilisateur du registre récupèrent automatiquement la nouvelle description.</p>
212
- <div class="sl-heading-wrapper level-h3"><h3 id="exemple--ajouter-un-agent-fictif">Exemple — Ajouter un agent fictif</h3><a class="sl-anchor-link" href="#exemple--ajouter-un-agent-fictif"><span aria-hidden="true" class="sl-anchor-icon"><svg width="16" height="16" viewBox="0 0 24 24"><path fill="currentcolor" d="m12.11 15.39-3.88 3.88a2.52 2.52 0 0 1-3.5 0 2.47 2.47 0 0 1 0-3.5l3.88-3.88a1 1 0 0 0-1.42-1.42l-3.88 3.89a4.48 4.48 0 0 0 6.33 6.33l3.89-3.88a1 1 0 1 0-1.42-1.42Zm8.58-12.08a4.49 4.49 0 0 0-6.33 0l-3.89 3.88a1 1 0 0 0 1.42 1.42l3.88-3.88a2.52 2.52 0 0 1 3.5 0 2.47 2.47 0 0 1 0 3.5l-3.88 3.88a1 1 0 1 0 1.42 1.42l3.88-3.89a4.49 4.49 0 0 0 0-6.33ZM8.83 15.17a1 1 0 0 0 1.1.22 1 1 0 0 0 .32-.22l4.92-4.92a1 1 0 0 0-1.42-1.42l-4.92 4.92a1 1 0 0 0 0 1.42Z"></path></svg></span><span class="sr-only" data-pagefind-ignore="">Section intitulée « Exemple — Ajouter un agent fictif »</span></a></div>
213
- <div class="expressive-code"><figure class="frame not-content"><figcaption class="header"></figcaption><pre data-language="toml"><code><div class="ec-line"><div class="code"><span style="--0:#919F9F;--1:#5F636F"># _bmad/custom/config.user.toml (personnel, ignoré par git)</span></div></div><div class="ec-line"><div class="code">
214
- </div></div><div class="ec-line"><div class="code"><span style="--0:#D6DEEB;--1:#403F53">[agents.kirk]</span></div></div><div class="ec-line"><div class="code"><span style="--0:#C5E478;--1:#3B61B0">team</span><span style="--0:#D6DEEB;--1:#403F53"> = </span><span style="--0:#D9F5DD;--1:#111111">"</span><span style="--0:#ECC48D;--1:#984E4D">startrek</span><span style="--0:#D9F5DD;--1:#111111">"</span></div></div><div class="ec-line"><div class="code"><span style="--0:#C5E478;--1:#3B61B0">name</span><span style="--0:#D6DEEB;--1:#403F53"> = </span><span style="--0:#D9F5DD;--1:#111111">"</span><span style="--0:#ECC48D;--1:#984E4D">Captain James T. Kirk</span><span style="--0:#D9F5DD;--1:#111111">"</span></div></div><div class="ec-line"><div class="code"><span style="--0:#C5E478;--1:#3B61B0">title</span><span style="--0:#D6DEEB;--1:#403F53"> = </span><span style="--0:#D9F5DD;--1:#111111">"</span><span style="--0:#ECC48D;--1:#984E4D">Starship Captain</span><span style="--0:#D9F5DD;--1:#111111">"</span></div></div><div class="ec-line"><div class="code"><span style="--0:#C5E478;--1:#3B61B0">icon</span><span style="--0:#D6DEEB;--1:#403F53"> = </span><span style="--0:#D9F5DD;--1:#111111">"</span><span style="--0:#ECC48D;--1:#984E4D">🖖</span><span style="--0:#D9F5DD;--1:#111111">"</span></div></div><div class="ec-line"><div class="code"><span style="--0:#C5E478;--1:#3B61B0">description</span><span style="--0:#D6DEEB;--1:#403F53"> = </span><span style="--0:#D9F5DD;--1:#111111">"</span><span style="--0:#ECC48D;--1:#984E4D">Commandant audacieux, enfreignant les règles. Parle en pauses dramatiques. Pense à voix haute sur le poids du commandement.</span><span style="--0:#D9F5DD;--1:#111111">"</span></div></div></code></pre><div class="copy"><div aria-live="polite"></div><button title="Copier dans le presse-papiers" data-copied="Copié !" data-code="# _bmad/custom/config.user.toml (personnel, ignoré par git)[agents.kirk]team = &#x22;startrek&#x22;name = &#x22;Captain James T. Kirk&#x22;title = &#x22;Starship Captain&#x22;icon = &#x22;🖖&#x22;description = &#x22;Commandant audacieux, enfreignant les règles. Parle en pauses dramatiques. Pense à voix haute sur le poids du commandement.&#x22;"><div></div></button></div></figure></div>
215
- <p>Pas de dossier de skill requis — le descripteur seul suffit pour que party-mode instancie Kirk comme voix. Filtrez par le champ <code dir="auto">team</code> pour inviter uniquement l’équipage de l’Enterprise à une table ronde.</p>
216
- <div class="sl-heading-wrapper level-h3"><h3 id="exemple--override-des-paramètres-dinstallation-du-module">Exemple — Override des paramètres d’installation du module</h3><a class="sl-anchor-link" href="#exemple--override-des-paramètres-dinstallation-du-module"><span aria-hidden="true" class="sl-anchor-icon"><svg width="16" height="16" viewBox="0 0 24 24"><path fill="currentcolor" d="m12.11 15.39-3.88 3.88a2.52 2.52 0 0 1-3.5 0 2.47 2.47 0 0 1 0-3.5l3.88-3.88a1 1 0 0 0-1.42-1.42l-3.88 3.89a4.48 4.48 0 0 0 6.33 6.33l3.89-3.88a1 1 0 1 0-1.42-1.42Zm8.58-12.08a4.49 4.49 0 0 0-6.33 0l-3.89 3.88a1 1 0 0 0 1.42 1.42l3.88-3.88a2.52 2.52 0 0 1 3.5 0 2.47 2.47 0 0 1 0 3.5l-3.88 3.88a1 1 0 1 0 1.42 1.42l3.88-3.89a4.49 4.49 0 0 0 0-6.33ZM8.83 15.17a1 1 0 0 0 1.1.22 1 1 0 0 0 .32-.22l4.92-4.92a1 1 0 0 0-1.42-1.42l-4.92 4.92a1 1 0 0 0 0 1.42Z"></path></svg></span><span class="sr-only" data-pagefind-ignore="">Section intitulée « Exemple — Override des paramètres d’installation du module »</span></a></div>
217
- <div class="expressive-code"><figure class="frame has-title not-content"><figcaption class="header"><span class="title">_bmad/custom/config.toml</span></figcaption><pre data-language="toml"><code><div class="ec-line"><div class="code"><span style="--0:#D6DEEB;--1:#403F53">[modules.bmm]</span></div></div><div class="ec-line"><div class="code"><span style="--0:#C5E478;--1:#3B61B0">planning_artifacts</span><span style="--0:#D6DEEB;--1:#403F53"> = </span><span style="--0:#D9F5DD;--1:#111111">"</span><span style="--0:#ECC48D;--1:#984E4D">/shared/org-planning-artifacts</span><span style="--0:#D9F5DD;--1:#111111">"</span></div></div></code></pre><div class="copy"><div aria-live="polite"></div><button title="Copier dans le presse-papiers" data-copied="Copié !" data-code="[modules.bmm]planning_artifacts = &#x22;/shared/org-planning-artifacts&#x22;"><div></div></button></div></figure></div>
218
- <p>L’override prévaut sur ce que chaque développeur a répondu lors de son installation locale. Utile pour figer les conventions d’équipe.</p>
219
- <div class="sl-heading-wrapper level-h3"><h3 id="quelle-surface-utiliser-pour-quel-besoin">Quelle surface utiliser pour quel besoin</h3><a class="sl-anchor-link" href="#quelle-surface-utiliser-pour-quel-besoin"><span aria-hidden="true" class="sl-anchor-icon"><svg width="16" height="16" viewBox="0 0 24 24"><path fill="currentcolor" d="m12.11 15.39-3.88 3.88a2.52 2.52 0 0 1-3.5 0 2.47 2.47 0 0 1 0-3.5l3.88-3.88a1 1 0 0 0-1.42-1.42l-3.88 3.89a4.48 4.48 0 0 0 6.33 6.33l3.89-3.88a1 1 0 1 0-1.42-1.42Zm8.58-12.08a4.49 4.49 0 0 0-6.33 0l-3.89 3.88a1 1 0 0 0 1.42 1.42l3.88-3.88a2.52 2.52 0 0 1 3.5 0 2.47 2.47 0 0 1 0 3.5l-3.88 3.88a1 1 0 1 0 1.42 1.42l3.88-3.89a4.49 4.49 0 0 0 0-6.33ZM8.83 15.17a1 1 0 0 0 1.1.22 1 1 0 0 0 .32-.22l4.92-4.92a1 1 0 0 0-1.42-1.42l-4.92 4.92a1 1 0 0 0 0 1.42Z"></path></svg></span><span class="sr-only" data-pagefind-ignore="">Section intitulée « Quelle surface utiliser pour quel besoin »</span></a></div>
220
-
221
-
222
-
223
-
224
-
225
-
226
-
227
-
228
-
229
-
230
-
231
-
232
-
233
-
234
-
235
-
236
-
237
-
238
-
239
-
240
-
241
-
242
-
243
-
244
-
245
-
246
-
247
-
248
-
249
-
250
-
251
-
252
-
253
- <table><thead><tr><th>Besoin</th><th>Utiliser</th></tr></thead><tbody><tr><td>Ajouter des appels d’outils MCP à chaque workflow de dev</td><td>Par skill : <code dir="auto">_bmad/custom/bmad-agent-dev.toml</code> <code dir="auto">persistent_facts</code></td></tr><tr><td>Ajouter un élément de menu à un agent</td><td>Par skill : <code dir="auto">_bmad/custom/bmad-agent-{role}.toml</code> <code dir="auto">[[agent.menu]]</code></td></tr><tr><td>Remplacer le template de sortie d’un workflow</td><td>Par skill : <code dir="auto">_bmad/custom/{workflow}.toml</code> override scalaire</td></tr><tr><td>Renommer le descripteur public d’un agent</td><td><strong>Centrale</strong> : <code dir="auto">_bmad/custom/config.toml</code> <code dir="auto">[agents.&#x3C;code>]</code></td></tr><tr><td>Ajouter un agent personnalisé ou fictif au registre</td><td><strong>Centrale</strong> : <code dir="auto">_bmad/custom/config.*.toml</code> nouvelle entrée <code dir="auto">[agents.&#x3C;code>]</code></td></tr><tr><td>Figer les paramètres d’installation pour l’équipe</td><td><strong>Centrale</strong> : <code dir="auto">_bmad/custom/config.toml</code> <code dir="auto">[modules.&#x3C;code>]</code> ou <code dir="auto">[core]</code></td></tr></tbody></table>
254
- <p>Utilisez les deux espaces dans le même projet selon vos besoins.</p>
255
- <div class="sl-heading-wrapper level-h2"><h2 id="exemples-concrets">Exemples concrets</h2><a class="sl-anchor-link" href="#exemples-concrets"><span aria-hidden="true" class="sl-anchor-icon"><svg width="16" height="16" viewBox="0 0 24 24"><path fill="currentcolor" d="m12.11 15.39-3.88 3.88a2.52 2.52 0 0 1-3.5 0 2.47 2.47 0 0 1 0-3.5l3.88-3.88a1 1 0 0 0-1.42-1.42l-3.88 3.89a4.48 4.48 0 0 0 6.33 6.33l3.89-3.88a1 1 0 1 0-1.42-1.42Zm8.58-12.08a4.49 4.49 0 0 0-6.33 0l-3.89 3.88a1 1 0 0 0 1.42 1.42l3.88-3.88a2.52 2.52 0 0 1 3.5 0 2.47 2.47 0 0 1 0 3.5l-3.88 3.88a1 1 0 1 0 1.42 1.42l3.88-3.89a4.49 4.49 0 0 0 0-6.33ZM8.83 15.17a1 1 0 0 0 1.1.22 1 1 0 0 0 .32-.22l4.92-4.92a1 1 0 0 0-1.42-1.42l-4.92 4.92a1 1 0 0 0 0 1.42Z"></path></svg></span><span class="sr-only" data-pagefind-ignore="">Section intitulée « Exemples concrets »</span></a></div>
256
- <p>Pour des recettes orientées entreprise (façonner un agent à travers tous les workflows qu’il gère, imposer les conventions d’organisation, publier les livrables vers Confluence et Jira, personnaliser le registre des agents et remplacer vos propres templates de sortie), consultez <a href="/fr/how-to/expand-bmad-for-your-org/">Comment étendre BMad pour votre organisation</a>.</p>
257
- <div class="sl-heading-wrapper level-h2"><h2 id="dépannage">Dépannage</h2><a class="sl-anchor-link" href="#dépannage"><span aria-hidden="true" class="sl-anchor-icon"><svg width="16" height="16" viewBox="0 0 24 24"><path fill="currentcolor" d="m12.11 15.39-3.88 3.88a2.52 2.52 0 0 1-3.5 0 2.47 2.47 0 0 1 0-3.5l3.88-3.88a1 1 0 0 0-1.42-1.42l-3.88 3.89a4.48 4.48 0 0 0 6.33 6.33l3.89-3.88a1 1 0 1 0-1.42-1.42Zm8.58-12.08a4.49 4.49 0 0 0-6.33 0l-3.89 3.88a1 1 0 0 0 1.42 1.42l3.88-3.88a2.52 2.52 0 0 1 3.5 0 2.47 2.47 0 0 1 0 3.5l-3.88 3.88a1 1 0 1 0 1.42 1.42l3.88-3.89a4.49 4.49 0 0 0 0-6.33ZM8.83 15.17a1 1 0 0 0 1.1.22 1 1 0 0 0 .32-.22l4.92-4.92a1 1 0 0 0-1.42-1.42l-4.92 4.92a1 1 0 0 0 0 1.42Z"></path></svg></span><span class="sr-only" data-pagefind-ignore="">Section intitulée « Dépannage »</span></a></div>
258
- <p><strong>La personnalisation n’apparaît pas ?</strong></p>
259
- <ul>
260
- <li>Vérifiez que votre fichier se trouve dans <code dir="auto">_bmad/custom/</code> avec le nom de skill correct</li>
261
- <li>Vérifiez la syntaxe TOML : les chaînes doivent être entre guillemets, les en-têtes de table utilisent <code dir="auto">[section]</code>, les tableaux de tables utilisent <code dir="auto">[[section]]</code>, et toute clé scalaire ou de tableau pour une table doit apparaître <em>avant</em> toute <code dir="auto">[[sous-table]]</code> de cette table dans le fichier</li>
262
- <li>Pour les agents, la personnalisation se trouve sous <code dir="auto">[agent]</code> — les champs écrits sous cet en-tête appartiennent à <code dir="auto">agent</code> jusqu’à ce qu’un autre en-tête de table commence</li>
263
- <li>Rappelez-vous que <code dir="auto">agent.name</code> et <code dir="auto">agent.title</code> sont en lecture seule ; les overrides n’ont aucun effet</li>
264
- </ul>
265
- <p><strong>Les mises à jour ont cassé votre personnalisation ?</strong></p>
266
- <ul>
267
- <li>Avez-vous copié le <code dir="auto">customize.toml</code> complet dans votre fichier d’override ? <strong>Ne le faites pas.</strong> Les fichiers d’override ne doivent contenir que les champs que vous modifiez. Une copie complète fige les anciennes valeurs par défaut et dérive silencieusement à chaque version. Réduisez votre override aux seuls deltas.</li>
268
- </ul>
269
- <p><strong>Besoin de voir ce qui est personnalisable ?</strong></p>
270
- <ul>
271
- <li>Exécutez le skill <code dir="auto">bmad-customize</code> — il énumère chaque skill personnalisable installé dans votre projet, montre lesquels ont déjà des overrides et vous guide pour en ajouter ou en modifier.</li>
272
- <li>Ou lisez directement le <code dir="auto">customize.toml</code> du skill — chaque champ listé est personnalisable (sauf <code dir="auto">name</code> et <code dir="auto">title</code>)</li>
273
- </ul>
274
- <p><strong>Besoin de réinitialiser ?</strong></p>
275
- <ul>
276
- <li>Supprimez votre fichier d’override de <code dir="auto">_bmad/custom/</code> — le skill revient à ses valeurs par défaut intégrées.</li>
277
- </ul> </div> <footer class="sl-flex astro-a726w4al"> <div class="meta sl-flex astro-a726w4al"> </div> <div class="pagination-links print:hidden astro-uu4deccg" dir="ltr"> </div> </footer> </div> </div> </main> </div> </div> </div> </div> </body></html>