bmad-plus 0.7.4 → 0.8.0

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 (294) hide show
  1. package/CHANGELOG.md +450 -407
  2. package/LICENSE +21 -0
  3. package/README.md +555 -446
  4. package/osint-agent-package/README.md +88 -88
  5. package/osint-agent-package/SETUP_KEYS.md +108 -108
  6. package/osint-agent-package/agents/osint-investigator.md +80 -80
  7. package/osint-agent-package/install.ps1 +87 -87
  8. package/osint-agent-package/install.sh +76 -76
  9. package/osint-agent-package/skills/bmad-osint-investigate/SKILL.md +147 -147
  10. package/osint-agent-package/skills/bmad-osint-investigate/osint/SKILL.md +452 -452
  11. package/osint-agent-package/skills/bmad-osint-investigate/osint/assets/dossier-template.md +116 -116
  12. package/osint-agent-package/skills/bmad-osint-investigate/osint/references/content-extraction.md +100 -100
  13. package/osint-agent-package/skills/bmad-osint-investigate/osint/references/enrichment-databases-fr.md +148 -148
  14. package/osint-agent-package/skills/bmad-osint-investigate/osint/references/platforms.md +130 -130
  15. package/osint-agent-package/skills/bmad-osint-investigate/osint/references/psychoprofile.md +69 -69
  16. package/osint-agent-package/skills/bmad-osint-investigate/osint/references/tools.md +281 -281
  17. package/osint-agent-package/skills/bmad-osint-investigate/osint/scripts/_http.py +101 -101
  18. package/osint-agent-package/skills/bmad-osint-investigate/osint/scripts/apify.py +266 -260
  19. package/osint-agent-package/skills/bmad-osint-investigate/osint/scripts/brightdata.py +101 -101
  20. package/osint-agent-package/skills/bmad-osint-investigate/osint/scripts/diagnose.py +141 -141
  21. package/osint-agent-package/skills/bmad-osint-investigate/osint/scripts/exa.py +79 -79
  22. package/osint-agent-package/skills/bmad-osint-investigate/osint/scripts/jina.py +71 -71
  23. package/osint-agent-package/skills/bmad-osint-investigate/osint/scripts/mcp-client.py +136 -136
  24. package/osint-agent-package/skills/bmad-osint-investigate/osint/scripts/parallel.py +85 -85
  25. package/osint-agent-package/skills/bmad-osint-investigate/osint/scripts/perplexity.py +102 -102
  26. package/osint-agent-package/skills/bmad-osint-investigate/osint/scripts/tavily.py +72 -72
  27. package/osint-agent-package/skills/bmad-osint-investigate/osint/scripts/volley.py +208 -208
  28. package/osint-agent-package/skills/bmad-osint-investigator/SKILL.md +15 -15
  29. package/package.json +62 -57
  30. package/readme-international/README.de.md +576 -426
  31. package/readme-international/README.es.md +578 -518
  32. package/readme-international/README.fr.md +576 -516
  33. package/src/bmad-plus/agents/agent-architect-dev/SKILL.md +96 -96
  34. package/src/bmad-plus/agents/agent-architect-dev/bmad-skill-manifest.yaml +13 -13
  35. package/src/bmad-plus/agents/agent-maker/SKILL.md +201 -201
  36. package/src/bmad-plus/agents/agent-maker/bmad-skill-manifest.yaml +13 -13
  37. package/src/bmad-plus/agents/agent-orchestrator/SKILL.md +137 -137
  38. package/src/bmad-plus/agents/agent-orchestrator/bmad-skill-manifest.yaml +13 -13
  39. package/src/bmad-plus/agents/agent-quality/SKILL.md +83 -83
  40. package/src/bmad-plus/agents/agent-quality/bmad-skill-manifest.yaml +13 -13
  41. package/src/bmad-plus/agents/agent-shadow/SKILL.md +71 -71
  42. package/src/bmad-plus/agents/agent-shadow/bmad-skill-manifest.yaml +13 -13
  43. package/src/bmad-plus/agents/agent-strategist/SKILL.md +80 -80
  44. package/src/bmad-plus/agents/agent-strategist/bmad-skill-manifest.yaml +13 -13
  45. package/src/bmad-plus/agents/pack-animated/animated-website-agent.md +325 -325
  46. package/src/bmad-plus/agents/pack-animated/templates/animated-website-workflow.md +55 -55
  47. package/src/bmad-plus/agents/pack-backup/backup-agent.md +71 -71
  48. package/src/bmad-plus/agents/pack-backup/templates/backup-workflow.md +51 -51
  49. package/src/bmad-plus/agents/pack-seo/SKILL.md +171 -171
  50. package/src/bmad-plus/agents/pack-seo/checklist.md +140 -140
  51. package/src/bmad-plus/agents/pack-seo/pagespeed-playbook.md +320 -320
  52. package/src/bmad-plus/agents/pack-seo/ref/audit-schema.json +187 -187
  53. package/src/bmad-plus/agents/pack-seo/ref/cwv-thresholds.md +87 -87
  54. package/src/bmad-plus/agents/pack-seo/ref/eeat-criteria.md +123 -123
  55. package/src/bmad-plus/agents/pack-seo/ref/geo-signals.md +167 -167
  56. package/src/bmad-plus/agents/pack-seo/ref/hreflang-rules.md +153 -153
  57. package/src/bmad-plus/agents/pack-seo/ref/quality-gates.md +133 -133
  58. package/src/bmad-plus/agents/pack-seo/ref/schema-catalog.md +91 -91
  59. package/src/bmad-plus/agents/pack-seo/ref/schema-templates.json +356 -356
  60. package/src/bmad-plus/agents/pack-seo/seo-chief.md +294 -294
  61. package/src/bmad-plus/agents/pack-seo/seo-judge.md +241 -241
  62. package/src/bmad-plus/agents/pack-seo/seo-scout.md +171 -171
  63. package/src/bmad-plus/agents/pack-seo/templates/seo-audit-workflow.md +241 -241
  64. package/src/bmad-plus/data/role-triggers.yaml +209 -209
  65. package/src/bmad-plus/module-help.csv +10 -10
  66. package/src/bmad-plus/module.yaml +283 -280
  67. package/src/bmad-plus/packs/pack-animated/animated-website-agent.md +325 -0
  68. package/src/bmad-plus/packs/pack-animated/templates/animated-website-workflow.md +55 -0
  69. package/src/bmad-plus/packs/pack-backup/backup-agent.md +71 -0
  70. package/src/bmad-plus/packs/pack-backup/templates/backup-workflow.md +51 -0
  71. package/src/bmad-plus/packs/pack-dev-studio/README.md +162 -162
  72. package/src/bmad-plus/packs/pack-dev-studio/categories/analysis/analyst-agent.md +73 -73
  73. package/src/bmad-plus/packs/pack-dev-studio/categories/analysis/document-project.md +61 -61
  74. package/src/bmad-plus/packs/pack-dev-studio/categories/analysis/domain-research.md +95 -95
  75. package/src/bmad-plus/packs/pack-dev-studio/categories/analysis/market-research.md +95 -95
  76. package/src/bmad-plus/packs/pack-dev-studio/categories/analysis/prfaq.md +134 -134
  77. package/src/bmad-plus/packs/pack-dev-studio/categories/analysis/product-brief.md +80 -80
  78. package/src/bmad-plus/packs/pack-dev-studio/categories/analysis/tech-writer-agent.md +73 -73
  79. package/src/bmad-plus/packs/pack-dev-studio/categories/analysis/technical-research.md +95 -95
  80. package/src/bmad-plus/packs/pack-dev-studio/categories/architecture/architect-agent.md +73 -73
  81. package/src/bmad-plus/packs/pack-dev-studio/categories/architecture/create-architecture.md +73 -73
  82. package/src/bmad-plus/packs/pack-dev-studio/categories/architecture/create-epics-stories.md +92 -92
  83. package/src/bmad-plus/packs/pack-dev-studio/categories/architecture/generate-project-context.md +80 -80
  84. package/src/bmad-plus/packs/pack-dev-studio/categories/architecture/implementation-readiness.md +90 -90
  85. package/src/bmad-plus/packs/pack-dev-studio/categories/architecture/steps/step-01-init.md +153 -153
  86. package/src/bmad-plus/packs/pack-dev-studio/categories/architecture/steps/step-01b-continue.md +173 -173
  87. package/src/bmad-plus/packs/pack-dev-studio/categories/architecture/steps/step-02-context.md +224 -224
  88. package/src/bmad-plus/packs/pack-dev-studio/categories/architecture/steps/step-03-starter.md +329 -329
  89. package/src/bmad-plus/packs/pack-dev-studio/categories/architecture/steps/step-04-decisions.md +318 -318
  90. package/src/bmad-plus/packs/pack-dev-studio/categories/architecture/steps/step-05-patterns.md +359 -359
  91. package/src/bmad-plus/packs/pack-dev-studio/categories/architecture/steps/step-06-structure.md +379 -379
  92. package/src/bmad-plus/packs/pack-dev-studio/categories/architecture/steps/step-07-validation.md +361 -361
  93. package/src/bmad-plus/packs/pack-dev-studio/categories/architecture/steps/step-08-complete.md +81 -81
  94. package/src/bmad-plus/packs/pack-dev-studio/categories/implementation/checkpoint-preview.md +67 -67
  95. package/src/bmad-plus/packs/pack-dev-studio/categories/implementation/code-review-steps/step-01-gather-context.md +85 -85
  96. package/src/bmad-plus/packs/pack-dev-studio/categories/implementation/code-review-steps/step-02-review.md +35 -35
  97. package/src/bmad-plus/packs/pack-dev-studio/categories/implementation/code-review-steps/step-03-triage.md +49 -49
  98. package/src/bmad-plus/packs/pack-dev-studio/categories/implementation/code-review-steps/step-04-present.md +131 -131
  99. package/src/bmad-plus/packs/pack-dev-studio/categories/implementation/code-review.md +89 -89
  100. package/src/bmad-plus/packs/pack-dev-studio/categories/implementation/correct-course.md +300 -300
  101. package/src/bmad-plus/packs/pack-dev-studio/categories/implementation/create-story.md +428 -428
  102. package/src/bmad-plus/packs/pack-dev-studio/categories/implementation/dev-agent.md +73 -73
  103. package/src/bmad-plus/packs/pack-dev-studio/categories/implementation/dev-story-checklist.md +80 -80
  104. package/src/bmad-plus/packs/pack-dev-studio/categories/implementation/dev-story.md +484 -484
  105. package/src/bmad-plus/packs/pack-dev-studio/categories/implementation/investigate.md +193 -193
  106. package/src/bmad-plus/packs/pack-dev-studio/categories/implementation/qa-e2e-tests.md +175 -175
  107. package/src/bmad-plus/packs/pack-dev-studio/categories/implementation/quick-dev.md +110 -110
  108. package/src/bmad-plus/packs/pack-dev-studio/categories/implementation/retrospective.md +1511 -1511
  109. package/src/bmad-plus/packs/pack-dev-studio/categories/implementation/sprint-planning.md +298 -298
  110. package/src/bmad-plus/packs/pack-dev-studio/categories/implementation/sprint-status.md +296 -296
  111. package/src/bmad-plus/packs/pack-dev-studio/categories/planning/create-prd.md +29 -29
  112. package/src/bmad-plus/packs/pack-dev-studio/categories/planning/create-ux-design.md +74 -74
  113. package/src/bmad-plus/packs/pack-dev-studio/categories/planning/edit-prd.md +29 -29
  114. package/src/bmad-plus/packs/pack-dev-studio/categories/planning/pm-agent.md +73 -73
  115. package/src/bmad-plus/packs/pack-dev-studio/categories/planning/prd.md +89 -89
  116. package/src/bmad-plus/packs/pack-dev-studio/categories/planning/ux-designer-agent.md +73 -73
  117. package/src/bmad-plus/packs/pack-dev-studio/categories/planning/validate-prd.md +29 -29
  118. package/src/bmad-plus/packs/pack-dev-studio/categories/utilities/advanced-elicitation.md +141 -141
  119. package/src/bmad-plus/packs/pack-dev-studio/categories/utilities/adversarial-review.md +37 -37
  120. package/src/bmad-plus/packs/pack-dev-studio/categories/utilities/bmad-help.md +75 -75
  121. package/src/bmad-plus/packs/pack-dev-studio/categories/utilities/brainstorming.md +6 -6
  122. package/src/bmad-plus/packs/pack-dev-studio/categories/utilities/customize.md +110 -110
  123. package/src/bmad-plus/packs/pack-dev-studio/categories/utilities/distillator.md +176 -176
  124. package/src/bmad-plus/packs/pack-dev-studio/categories/utilities/edge-case-hunter.md +67 -67
  125. package/src/bmad-plus/packs/pack-dev-studio/categories/utilities/editorial-review-prose.md +86 -86
  126. package/src/bmad-plus/packs/pack-dev-studio/categories/utilities/editorial-review-structure.md +179 -179
  127. package/src/bmad-plus/packs/pack-dev-studio/categories/utilities/index-docs.md +66 -66
  128. package/src/bmad-plus/packs/pack-dev-studio/categories/utilities/party-mode.md +127 -127
  129. package/src/bmad-plus/packs/pack-dev-studio/categories/utilities/shard-doc.md +105 -105
  130. package/src/bmad-plus/packs/pack-dev-studio/dev-studio-orchestrator.md +120 -120
  131. package/src/bmad-plus/packs/pack-dev-studio/shared/architecture-decision-template.md +12 -12
  132. package/src/bmad-plus/packs/pack-dev-studio/shared/bwml-spec.md +328 -328
  133. package/src/bmad-plus/packs/pack-dev-studio/shared/module-help.csv +32 -32
  134. package/src/bmad-plus/packs/pack-dev-studio/upstream-sync.yaml +81 -81
  135. package/src/bmad-plus/packs/pack-memory/README.md +106 -106
  136. package/src/bmad-plus/packs/pack-memory/memory-orchestrator.md +79 -79
  137. package/src/bmad-plus/packs/pack-memory/shared/karpathy-guardrails.md +86 -86
  138. package/src/bmad-plus/packs/pack-memory/shared/memory-protocol.md +143 -143
  139. package/src/bmad-plus/packs/pack-memory/templates/context.md +39 -39
  140. package/src/bmad-plus/packs/pack-memory/templates/decisions.md +25 -25
  141. package/src/bmad-plus/packs/pack-memory/templates/identity.yaml +39 -39
  142. package/src/bmad-plus/packs/pack-memory/templates/lessons.md +31 -31
  143. package/src/bmad-plus/packs/pack-memory/templates/patterns.md +24 -24
  144. package/src/bmad-plus/packs/pack-memory/templates/session-handoff.md +25 -25
  145. package/src/bmad-plus/packs/pack-memory/zecher-agent.md +157 -157
  146. package/src/bmad-plus/packs/pack-seo/SKILL.md +171 -0
  147. package/src/bmad-plus/packs/pack-seo/checklist.md +140 -0
  148. package/src/bmad-plus/packs/pack-seo/pagespeed-playbook.md +320 -0
  149. package/src/bmad-plus/packs/pack-seo/ref/audit-schema.json +187 -0
  150. package/src/bmad-plus/packs/pack-seo/ref/cwv-thresholds.md +87 -0
  151. package/src/bmad-plus/packs/pack-seo/ref/eeat-criteria.md +123 -0
  152. package/src/bmad-plus/packs/pack-seo/ref/geo-signals.md +167 -0
  153. package/src/bmad-plus/packs/pack-seo/ref/hreflang-rules.md +153 -0
  154. package/src/bmad-plus/packs/pack-seo/ref/quality-gates.md +133 -0
  155. package/src/bmad-plus/packs/pack-seo/ref/schema-catalog.md +91 -0
  156. package/src/bmad-plus/packs/pack-seo/ref/schema-templates.json +356 -0
  157. package/src/bmad-plus/packs/pack-seo/seo-chief.md +294 -0
  158. package/src/bmad-plus/packs/pack-seo/seo-judge.md +241 -0
  159. package/src/bmad-plus/packs/pack-seo/seo-scout.md +171 -0
  160. package/src/bmad-plus/packs/pack-seo/templates/seo-audit-workflow.md +241 -0
  161. package/src/bmad-plus/packs/pack-shield/README.md +110 -110
  162. package/src/bmad-plus/packs/pack-shield/categories/accessibility-esg/csrd-agent.md +262 -262
  163. package/src/bmad-plus/packs/pack-shield/categories/accessibility-esg/section508-agent.md +179 -179
  164. package/src/bmad-plus/packs/pack-shield/categories/accessibility-esg/wcag-agent.md +201 -201
  165. package/src/bmad-plus/packs/pack-shield/categories/ai-governance/eu-ai-act-agent.md +97 -97
  166. package/src/bmad-plus/packs/pack-shield/categories/ai-governance/iso42001-agent.md +251 -251
  167. package/src/bmad-plus/packs/pack-shield/categories/ai-governance/nist-ai-rmf-agent.md +133 -133
  168. package/src/bmad-plus/packs/pack-shield/categories/cybersecurity/cis-controls-agent.md +221 -221
  169. package/src/bmad-plus/packs/pack-shield/categories/cybersecurity/ism-agent.md +150 -150
  170. package/src/bmad-plus/packs/pack-shield/categories/cybersecurity/iso27001-agent.md +167 -167
  171. package/src/bmad-plus/packs/pack-shield/categories/cybersecurity/nis2-agent.md +83 -83
  172. package/src/bmad-plus/packs/pack-shield/categories/cybersecurity/nist-800-53-agent.md +250 -250
  173. package/src/bmad-plus/packs/pack-shield/categories/cybersecurity/nist-csf-agent.md +218 -218
  174. package/src/bmad-plus/packs/pack-shield/categories/data-privacy/ccpa-agent.md +94 -94
  175. package/src/bmad-plus/packs/pack-shield/categories/data-privacy/dpdpa-agent.md +136 -136
  176. package/src/bmad-plus/packs/pack-shield/categories/data-privacy/gdpr-agent.md +296 -296
  177. package/src/bmad-plus/packs/pack-shield/categories/data-privacy/iso27701-agent.md +134 -134
  178. package/src/bmad-plus/packs/pack-shield/categories/data-privacy/lgpd-agent.md +129 -129
  179. package/src/bmad-plus/packs/pack-shield/categories/defense-export/cmmc-agent.md +127 -127
  180. package/src/bmad-plus/packs/pack-shield/categories/defense-export/ear-agent.md +272 -272
  181. package/src/bmad-plus/packs/pack-shield/categories/defense-export/itar-agent.md +202 -202
  182. package/src/bmad-plus/packs/pack-shield/categories/defense-export/tsa-agent.md +367 -367
  183. package/src/bmad-plus/packs/pack-shield/categories/industry-compliance/dora-agent.md +510 -510
  184. package/src/bmad-plus/packs/pack-shield/categories/industry-compliance/fedramp-agent.md +247 -247
  185. package/src/bmad-plus/packs/pack-shield/categories/industry-compliance/hipaa-agent.md +173 -173
  186. package/src/bmad-plus/packs/pack-shield/categories/industry-compliance/pci-dss-agent.md +239 -239
  187. package/src/bmad-plus/packs/pack-shield/categories/industry-compliance/soc2-agent.md +266 -266
  188. package/src/bmad-plus/packs/pack-shield/categories/industry-compliance/swift-csp-agent.md +164 -164
  189. package/src/bmad-plus/packs/pack-shield/categories/workflows/ai-act-classifier.md +131 -131
  190. package/src/bmad-plus/packs/pack-shield/categories/workflows/ai-act-fria.md +155 -155
  191. package/src/bmad-plus/packs/pack-shield/categories/workflows/ai-act-incidents.md +187 -187
  192. package/src/bmad-plus/packs/pack-shield/categories/workflows/ai-act-roles.md +113 -113
  193. package/src/bmad-plus/packs/pack-shield/categories/workflows/breach-sentinel.md +197 -197
  194. package/src/bmad-plus/packs/pack-shield/categories/workflows/cookie-policy-gen.md +180 -180
  195. package/src/bmad-plus/packs/pack-shield/categories/workflows/dpia-sentinel.md +235 -235
  196. package/src/bmad-plus/packs/pack-shield/categories/workflows/legitimate-interest.md +159 -159
  197. package/src/bmad-plus/packs/pack-shield/categories/workflows/privacy-advisor.md +133 -133
  198. package/src/bmad-plus/packs/pack-shield/categories/workflows/privacy-notice-gen.md +160 -160
  199. package/src/bmad-plus/packs/pack-shield/categories/workflows/privacy-policy-gen.md +135 -135
  200. package/src/bmad-plus/packs/pack-shield/references/ccpa/ccpa-gdpr-comparison.md +117 -117
  201. package/src/bmad-plus/packs/pack-shield/references/ccpa/consumer-rights-workflows.md +177 -177
  202. package/src/bmad-plus/packs/pack-shield/references/cis-controls/framework-mappings.md +162 -162
  203. package/src/bmad-plus/packs/pack-shield/references/cis-controls/implementation-guidance.md +235 -235
  204. package/src/bmad-plus/packs/pack-shield/references/cis-controls/safeguards-detail.md +252 -252
  205. package/src/bmad-plus/packs/pack-shield/references/cmmc/cmmc-assessment.md +170 -170
  206. package/src/bmad-plus/packs/pack-shield/references/cmmc/cmmc-levels.md +113 -113
  207. package/src/bmad-plus/packs/pack-shield/references/cmmc/cmmc-practices.md +211 -211
  208. package/src/bmad-plus/packs/pack-shield/references/csrd/compliance-program.md +281 -281
  209. package/src/bmad-plus/packs/pack-shield/references/csrd/double-materiality.md +253 -253
  210. package/src/bmad-plus/packs/pack-shield/references/csrd/esrs-standards.md +401 -401
  211. package/src/bmad-plus/packs/pack-shield/references/dora/article-reference.md +441 -441
  212. package/src/bmad-plus/packs/pack-shield/references/dora/incident-classification.md +297 -297
  213. package/src/bmad-plus/packs/pack-shield/references/dora/rts-its-guide.md +306 -306
  214. package/src/bmad-plus/packs/pack-shield/references/dora/third-party-risk.md +349 -349
  215. package/src/bmad-plus/packs/pack-shield/references/dpdpa/gdpr-comparison.md +173 -173
  216. package/src/bmad-plus/packs/pack-shield/references/dpdpa/rights-and-obligations.md +426 -426
  217. package/src/bmad-plus/packs/pack-shield/references/dpdpa/rules-2025.md +599 -599
  218. package/src/bmad-plus/packs/pack-shield/references/dpdpa/sections-reference.md +319 -319
  219. package/src/bmad-plus/packs/pack-shield/references/ear/ccl-eccn-guide.md +250 -250
  220. package/src/bmad-plus/packs/pack-shield/references/ear/compliance-program.md +280 -280
  221. package/src/bmad-plus/packs/pack-shield/references/ear/license-exceptions.md +207 -207
  222. package/src/bmad-plus/packs/pack-shield/references/eu-ai-act/gpai-governance.md +267 -267
  223. package/src/bmad-plus/packs/pack-shield/references/eu-ai-act/obligations-high-risk.md +287 -287
  224. package/src/bmad-plus/packs/pack-shield/references/eu-ai-act/risk-classification.md +182 -182
  225. package/src/bmad-plus/packs/pack-shield/references/fedramp/appendices-guide.md +209 -209
  226. package/src/bmad-plus/packs/pack-shield/references/fedramp/control-families.md +281 -281
  227. package/src/bmad-plus/packs/pack-shield/references/fedramp/poam-guide.md +93 -93
  228. package/src/bmad-plus/packs/pack-shield/references/fedramp/readiness-checklist.md +134 -134
  229. package/src/bmad-plus/packs/pack-shield/references/fedramp/sap-sar-guide.md +86 -86
  230. package/src/bmad-plus/packs/pack-shield/references/fedramp/ssp-guide.md +129 -129
  231. package/src/bmad-plus/packs/pack-shield/references/gdpr-compliance/documents.md +192 -192
  232. package/src/bmad-plus/packs/pack-shield/references/gdpr-compliance/dpa-template.md +121 -121
  233. package/src/bmad-plus/packs/pack-shield/references/gdpr-compliance/privacy-notice.md +87 -87
  234. package/src/bmad-plus/packs/pack-shield/references/hipaa-compliance/breach-notification.md +293 -293
  235. package/src/bmad-plus/packs/pack-shield/references/hipaa-compliance/privacy-rule.md +276 -276
  236. package/src/bmad-plus/packs/pack-shield/references/hipaa-compliance/security-rule.md +299 -299
  237. package/src/bmad-plus/packs/pack-shield/references/hipaa-compliance/templates.md +568 -568
  238. package/src/bmad-plus/packs/pack-shield/references/ism/control-applicability.md +181 -181
  239. package/src/bmad-plus/packs/pack-shield/references/ism/guidelines-overview.md +183 -183
  240. package/src/bmad-plus/packs/pack-shield/references/iso27001/annex-a-2013.md +203 -203
  241. package/src/bmad-plus/packs/pack-shield/references/iso27001/annex-a-2022.md +132 -132
  242. package/src/bmad-plus/packs/pack-shield/references/iso27001/control-mapping.md +153 -153
  243. package/src/bmad-plus/packs/pack-shield/references/iso27701/annex-a-controls.md +195 -195
  244. package/src/bmad-plus/packs/pack-shield/references/iso27701/regulatory-mapping.md +229 -229
  245. package/src/bmad-plus/packs/pack-shield/references/iso27701/transition-guide.md +219 -219
  246. package/src/bmad-plus/packs/pack-shield/references/iso42001/iso42001-ai-risk-assessment.md +258 -258
  247. package/src/bmad-plus/packs/pack-shield/references/iso42001/iso42001-clauses-requirements.md +279 -279
  248. package/src/bmad-plus/packs/pack-shield/references/iso42001/iso42001-controls-annex-a.md +155 -155
  249. package/src/bmad-plus/packs/pack-shield/references/itar/compliance-program.md +174 -174
  250. package/src/bmad-plus/packs/pack-shield/references/itar/licensing-guide.md +146 -146
  251. package/src/bmad-plus/packs/pack-shield/references/itar/usml-categories.md +93 -93
  252. package/src/bmad-plus/packs/pack-shield/references/lgpd/anpd-enforcement.md +147 -147
  253. package/src/bmad-plus/packs/pack-shield/references/lgpd/compliance-program.md +272 -272
  254. package/src/bmad-plus/packs/pack-shield/references/lgpd/lgpd-articles.md +271 -271
  255. package/src/bmad-plus/packs/pack-shield/references/nis2/article-21-measures.md +153 -153
  256. package/src/bmad-plus/packs/pack-shield/references/nis2/iso27001-nis2-mapping.md +68 -68
  257. package/src/bmad-plus/packs/pack-shield/references/nist-800-53/assessment-rmf.md +349 -349
  258. package/src/bmad-plus/packs/pack-shield/references/nist-800-53/baselines-tailoring.md +277 -277
  259. package/src/bmad-plus/packs/pack-shield/references/nist-800-53/control-families.md +450 -450
  260. package/src/bmad-plus/packs/pack-shield/references/nist-ai-rmf/rmf-core.md +361 -361
  261. package/src/bmad-plus/packs/pack-shield/references/nist-ai-rmf/rmf-profiles.md +192 -192
  262. package/src/bmad-plus/packs/pack-shield/references/nist-csf/csf-10-to-20-mapping.md +143 -143
  263. package/src/bmad-plus/packs/pack-shield/references/nist-csf/csf-20-functions-categories.md +278 -278
  264. package/src/bmad-plus/packs/pack-shield/references/nist-csf/csf-implementation-tiers.md +135 -135
  265. package/src/bmad-plus/packs/pack-shield/references/pci-compliance/pci-dss-requirements.md +366 -366
  266. package/src/bmad-plus/packs/pack-shield/references/pci-compliance/pci-dss-saq-guide.md +217 -217
  267. package/src/bmad-plus/packs/pack-shield/references/pci-compliance/pci-dss-v4-changes.md +190 -190
  268. package/src/bmad-plus/packs/pack-shield/references/section-508/wcag-mapping.md +160 -160
  269. package/src/bmad-plus/packs/pack-shield/references/soc2/controls.md +241 -241
  270. package/src/bmad-plus/packs/pack-shield/references/soc2/evidence.md +236 -236
  271. package/src/bmad-plus/packs/pack-shield/references/soc2/policies.md +254 -254
  272. package/src/bmad-plus/packs/pack-shield/references/soc2/vendor.md +276 -276
  273. package/src/bmad-plus/packs/pack-shield/references/swift-csp/swift-assessment.md +202 -202
  274. package/src/bmad-plus/packs/pack-shield/references/swift-csp/swift-controls.md +545 -545
  275. package/src/bmad-plus/packs/pack-shield/references/tsa-compliance/tsa-crmp-requirements.md +359 -359
  276. package/src/bmad-plus/packs/pack-shield/references/tsa-compliance/tsa-directives-overview.md +187 -187
  277. package/src/bmad-plus/packs/pack-shield/references/tsa-compliance/tsa-incident-reporting.md +187 -187
  278. package/src/bmad-plus/packs/pack-shield/references/wcag/criteria-detail.md +510 -510
  279. package/src/bmad-plus/packs/pack-shield/shared/audit-report-template.md +103 -103
  280. package/src/bmad-plus/packs/pack-shield/shared/cross-framework-mapper.md +103 -103
  281. package/src/bmad-plus/packs/pack-shield/shared/gap-analysis-template.md +83 -83
  282. package/src/bmad-plus/packs/pack-shield/shield-orchestrator.md +229 -229
  283. package/src/bmad-plus/packs/pack-shield/upstream-sync.yaml +68 -68
  284. package/src/bmad-plus/skills/bmad-plus-autopilot/SKILL.md +99 -99
  285. package/src/bmad-plus/skills/bmad-plus-parallel/SKILL.md +93 -93
  286. package/src/bmad-plus/skills/bmad-plus-sync/SKILL.md +69 -69
  287. package/tools/cli/commands/autoconfig.js +498 -489
  288. package/tools/cli/commands/doctor.js +222 -175
  289. package/tools/cli/commands/install.js +739 -739
  290. package/tools/cli/commands/memory.js +194 -194
  291. package/tools/cli/commands/scan.js +360 -350
  292. package/tools/cli/commands/uninstall.js +96 -96
  293. package/tools/cli/commands/update.js +174 -174
  294. package/tools/cli/i18n.js +763 -763
@@ -0,0 +1,87 @@
1
+ # Core Web Vitals — Thresholds & Optimization Guide (March 2026)
2
+
3
+ > Author: Laurent Rochetta | BMAD+ SEO Engine v2.0
4
+
5
+ ## Current Metrics
6
+
7
+ | Metric | Good | Needs Improvement | Poor |
8
+ |--------|------|-------------------|------|
9
+ | **LCP** (Largest Contentful Paint) | ≤2.5s | 2.5–4.0s | >4.0s |
10
+ | **INP** (Interaction to Next Paint) | ≤200ms | 200–500ms | >500ms |
11
+ | **CLS** (Cumulative Layout Shift) | ≤0.1 | 0.1–0.25 | >0.25 |
12
+
13
+ > **INP replaced FID on March 12, 2024.** FID was fully removed from all Chrome tools on September 9, 2024. Never reference FID.
14
+
15
+ ## Key Facts
16
+ - Evaluation uses the **75th percentile** of real user data (CrUX field data)
17
+ - Assessment at **page level** AND **origin level**
18
+ - CWV is a **tiebreaker** signal — matters most when content quality is similar
19
+ - Thresholds **unchanged since original definitions**
20
+ - December 2025 core update appeared to weight **mobile CWV more heavily**
21
+ - As of October 2025: 57.1% desktop, 49.7% mobile sites pass all three CWV
22
+ - **Mobile-first indexing 100% complete** since July 5, 2024
23
+
24
+ ## LCP Diagnostic Subparts (Feb 2025 CrUX)
25
+
26
+ | Subpart | Description | Target |
27
+ |---------|-------------|--------|
28
+ | TTFB | Server response time | <800ms |
29
+ | Resource Load Delay | TTFB to resource request | Minimize |
30
+ | Resource Load Time | LCP resource download | Size-dependent |
31
+ | Element Render Delay | Loaded to painted | Minimize |
32
+
33
+ **Total LCP = TTFB + Load Delay + Load Time + Render Delay**
34
+
35
+ ## Common Bottlenecks
36
+
37
+ ### LCP
38
+ - Unoptimized hero images → use WebP/AVIF, add `<link rel="preload">`
39
+ - Render-blocking CSS/JS → defer, async, critical CSS inline
40
+ - Slow TTFB (>200ms) → CDN, caching, edge compute
41
+ - Third-party blocking → defer analytics, chat widgets
42
+ - Font delay → `font-display: swap` + preload
43
+
44
+ ### INP
45
+ - Long JS tasks on main thread → break tasks <50ms, use `scheduler.yield()`
46
+ - Heavy event handlers → debounce, requestAnimationFrame
47
+ - Excessive DOM (>1,500 elements)
48
+ - Third-party scripts hijacking main thread
49
+ - Layout thrashing (forced reflows)
50
+
51
+ ### CLS
52
+ - Images/iframes without width/height dimensions
53
+ - Dynamic content injected above existing content
54
+ - Font swap causing layout shift → preload + font-display
55
+ - Ads/embeds without reserved space
56
+
57
+ ## Measurement Sources
58
+
59
+ ### Field Data (used for ranking)
60
+ - Chrome User Experience Report (CrUX)
61
+ - PageSpeed Insights (uses CrUX)
62
+ - Search Console Core Web Vitals report
63
+
64
+ ### Lab Data (for debugging)
65
+ - Lighthouse 13.0 (Oct 2025, restructured audits)
66
+ - WebPageTest
67
+ - Chrome DevTools
68
+
69
+ ## Optimization Priority
70
+ 1. **LCP** — Most impactful for perceived performance
71
+ 2. **CLS** — Most common UX issue
72
+ 3. **INP** — Critical for interactive applications
73
+
74
+ ## API Tools
75
+ ```bash
76
+ # PageSpeed Insights API
77
+ curl "https://www.googleapis.com/pagespeedonline/v5/runPagespeed?url=URL&key=API_KEY"
78
+
79
+ # Lighthouse CLI
80
+ npx lighthouse URL --output json --output-path report.json
81
+ ```
82
+
83
+ ## 2025–2026 Updates
84
+ - **Lighthouse 13.0** (Oct 2025): reorganized performance categories
85
+ - **CrUX Vis** replaced CrUX Dashboard (Nov 2025) → cruxvis.withgoogle.com
86
+ - **LCP subparts** in CrUX (Feb 2025)
87
+ - **Soft Navigations API** (Chrome 139+, July 2025): experimental SPA CWV measurement — no ranking impact yet
@@ -0,0 +1,123 @@
1
+ # E-E-A-T Evaluation Criteria (March 2026)
2
+
3
+ > Author: Laurent Rochetta | BMAD+ SEO Engine v2.0
4
+ > Based on: Google Quality Rater Guidelines (September 2025 update)
5
+
6
+ ## Overview
7
+
8
+ E-E-A-T = **Experience, Expertise, Authoritativeness, Trustworthiness**
9
+
10
+ Google's quality raters evaluate pages on these four dimensions. While not a direct ranking factor, E-E-A-T signals influence how Google's algorithms assess content quality and YMYL (Your Money or Your Life) pages.
11
+
12
+ > Since March 2024, the Helpful Content System is merged into Google's core algorithm. Enforcement is continuous, not via separate HCU updates.
13
+
14
+ ---
15
+
16
+ ## Experience (25 points)
17
+
18
+ First-hand, real-world experience with the topic.
19
+
20
+ | Signal | Points | How to Detect |
21
+ |--------|--------|---------------|
22
+ | Original research or case studies | 8 | Unique data, before/after results, proprietary findings |
23
+ | First-hand process documentation | 6 | Step-by-step from personal experience, production screenshots |
24
+ | Unique media from direct experience | 6 | Original photos, self-recorded videos, personal screenshots |
25
+ | Specific examples and anecdotes | 5 | Named examples, concrete details, real scenarios |
26
+
27
+ **Red flags**: Generic advice that could come from any source, stock photos only, no personal perspective.
28
+
29
+ ---
30
+
31
+ ## Expertise (25 points)
32
+
33
+ Demonstrable knowledge and skill in the subject area.
34
+
35
+ | Signal | Points | How to Detect |
36
+ |--------|--------|---------------|
37
+ | Author credentials visible | 7 | Bio with qualifications, certifications, professional background |
38
+ | Technical depth appropriate | 7 | Correct terminology, nuanced explanations, awareness of edge cases |
39
+ | Well-sourced claims | 6 | Citations to studies, official documentation, linked sources |
40
+ | Comprehensive topic coverage | 5 | Covers subtopics, addresses counterarguments, FAQ sections |
41
+
42
+ **Red flags**: No author identified, surface-level coverage, factual errors, outdated information.
43
+
44
+ ---
45
+
46
+ ## Authoritativeness (25 points)
47
+
48
+ Recognition as a trusted source by peers and industry.
49
+
50
+ | Signal | Points | How to Detect |
51
+ |--------|--------|---------------|
52
+ | External citations / references | 7 | Backlinks from authoritative sites, cited in industry publications |
53
+ | Brand recognition signals | 7 | Awards, partnerships, media mentions, client logos |
54
+ | Author published elsewhere | 6 | Guest posts, conference talks, books, academic papers |
55
+ | Expert endorsements | 5 | Testimonials from peers, quoted by other experts |
56
+
57
+ **Red flags**: Brand-new domain with no web presence, no external references, no social proof.
58
+
59
+ ---
60
+
61
+ ## Trustworthiness (25 points)
62
+
63
+ Transparency, accuracy, and confidence in the source.
64
+
65
+ | Signal | Points | How to Detect |
66
+ |--------|--------|---------------|
67
+ | Contact info and physical address | 7 | Phone, email, postal address, About page |
68
+ | Privacy policy and terms | 5 | Legal pages present, accessible, and up-to-date |
69
+ | HTTPS and security signals | 5 | Valid SSL, HSTS, security headers present |
70
+ | Transparent authorship and dates | 5 | Author byline, publication date, last updated date |
71
+ | Customer proof | 3 | Verified reviews, testimonials, case studies |
72
+
73
+ **Red flags**: No contact information, anonymous content, no dates, misleading claims, HTTP only.
74
+
75
+ ---
76
+
77
+ ## YMYL Pages — Higher Standards
78
+
79
+ YMYL (Your Money or Your Life) topics require **elevated E-E-A-T**:
80
+
81
+ | YMYL Category | Examples | E-E-A-T Bar |
82
+ |---------------|----------|-------------|
83
+ | Health | Medical advice, symptoms, treatments | Very High — requires medical expertise |
84
+ | Finance | Investment, tax, insurance, banking | Very High — requires financial credentials |
85
+ | Safety | Product safety, emergency info | Very High |
86
+ | Legal | Legal rights, contracts, regulations | Very High — requires legal expertise |
87
+ | News | Current events, political coverage | High — requires journalistic standards |
88
+ | Shopping | Product reviews, comparisons | Moderate-High |
89
+
90
+ ---
91
+
92
+ ## AI Content Assessment (Sept 2025 QRG Addition)
93
+
94
+ Google raters now formally assess AI-generated content.
95
+
96
+ ### Acceptable AI Content
97
+ - Demonstrates genuine E-E-A-T despite AI assistance
98
+ - Provides unique value (not just rephrased existing content)
99
+ - Has clear human oversight and editing
100
+ - Contains original analysis, insights, or perspective
101
+ - Includes first-party data or real-world evidence
102
+
103
+ ### Low-Quality AI Content Markers
104
+ - Generic phrasing with no specificity
105
+ - Repetitive structure across multiple pages (cookie-cutter)
106
+ - No original insights or unique data
107
+ - Missing author attribution entirely
108
+ - Factual inaccuracies or hallucinated statistics
109
+ - Excessive use of filler words and hedging language
110
+
111
+ ---
112
+
113
+ ## Scoring Methodology
114
+
115
+ **Total E-E-A-T Score = Experience + Expertise + Authoritativeness + Trustworthiness (out of 100)**
116
+
117
+ | Range | Rating | Interpretation |
118
+ |-------|--------|---------------|
119
+ | 80–100 | Excellent | Strong signals across all dimensions |
120
+ | 60–79 | Good | Solid foundation with room to improve |
121
+ | 40–59 | Needs Work | Significant gaps in one or more areas |
122
+ | 20–39 | Poor | Major deficiencies undermining credibility |
123
+ | 0–19 | Critical | Lacking basic trust and expertise signals |
@@ -0,0 +1,167 @@
1
+ # GEO Signals — AI Search Optimization Guide (March 2026)
2
+
3
+ > Author: Laurent Rochetta | BMAD+ SEO Engine v2.0
4
+
5
+ ## What is GEO?
6
+
7
+ **Generative Engine Optimization (GEO)** is the discipline of optimizing content for AI-generated answers across Google AI Overviews, ChatGPT, Perplexity, Bing Copilot, and other AI-powered search experiences.
8
+
9
+ ## AI Search Landscape
10
+
11
+ | Platform | Reach | Key Citation Sources |
12
+ |----------|-------|---------------------|
13
+ | Google AI Overviews | 1.5B users/month, 200+ countries, 50%+ query coverage | Top-10 ranking pages (92%) |
14
+ | Google AI Mode | Full conversational search (May 2025), zero organic links | Citation is the only visibility mechanism |
15
+ | ChatGPT Search | 900M weekly active users | Wikipedia (47.9%), Reddit (11.3%) |
16
+ | Perplexity | 500M+ monthly queries | Reddit (46.7%), Wikipedia |
17
+ | Bing Copilot | Integrated in Edge/Windows | Bing index, authoritative sites |
18
+
19
+ > AI-referred sessions grew **527%** between January and May 2025 (SparkToro).
20
+
21
+ ---
22
+
23
+ ## The Brand Mention Revolution
24
+
25
+ **Brand mentions correlate 3× more strongly with AI visibility than backlinks.**
26
+ (Ahrefs December 2025 study, 75,000 brands)
27
+
28
+ | Signal | Correlation with AI Citations |
29
+ |--------|-------------------------------|
30
+ | YouTube mentions | ~0.737 (strongest) |
31
+ | Reddit mentions | High |
32
+ | Wikipedia presence | High |
33
+ | LinkedIn presence | Moderate |
34
+ | Domain Rating (backlinks) | ~0.266 (weak) |
35
+
36
+ > Only **11%** of domains are cited by both ChatGPT and Google AI Overviews for the same query — platform-specific optimization is essential.
37
+
38
+ ---
39
+
40
+ ## GEO Scoring Criteria
41
+
42
+ ### 1. Citability (25%)
43
+
44
+ **Optimal passage length: 134–167 words** for AI citation.
45
+
46
+ | Signal | Strong | Weak |
47
+ |--------|--------|------|
48
+ | Quotable statements with facts/stats | ✅ | Vague generic statements |
49
+ | Self-contained answer blocks | ✅ | Requires surrounding context |
50
+ | Direct answer in first 40–60 words | ✅ | Buried conclusions |
51
+ | "X is..." / "X refers to..." patterns | ✅ | No definitions |
52
+ | Unique data not found elsewhere | ✅ | Commonly available info |
53
+
54
+ ### 2. Structural Readability (20%)
55
+
56
+ 92% of AI Overview citations come from top-10 pages, but 47% come from pages below position 5 — demonstrating different selection logic.
57
+
58
+ | Signal | Strong | Weak |
59
+ |--------|--------|------|
60
+ | Clean H1→H2→H3 hierarchy | ✅ | Wall of text |
61
+ | Question-based headings | ✅ | Vague headings |
62
+ | Short paragraphs (2-4 sentences) | ✅ | Long unbroken paragraphs |
63
+ | Tables for comparative data | ✅ | No structured data display |
64
+ | Lists for multi-item content | ✅ | Inline lists in sentences |
65
+
66
+ ### 3. Multi-Modal Content (15%)
67
+
68
+ Content with multi-modal elements sees **156% higher selection rates**.
69
+
70
+ - Text + relevant images
71
+ - Video content (embedded or linked)
72
+ - Infographics and charts
73
+ - Interactive tools (calculators, assessments)
74
+ - Structured data supporting media
75
+
76
+ ### 4. Authority & Brand Signals (20%)
77
+
78
+ - Author byline with credentials
79
+ - Publication and last-updated dates
80
+ - Citations to primary sources
81
+ - Organization credentials
82
+ - Entity presence in Wikipedia, Wikidata
83
+ - Active presence on Reddit, YouTube, LinkedIn
84
+
85
+ ### 5. Technical Accessibility (20%)
86
+
87
+ **AI crawlers do NOT execute JavaScript** — SSR is critical.
88
+
89
+ - Server-side rendering for core content
90
+ - AI crawler access in robots.txt
91
+ - llms.txt file presence
92
+ - RSL 1.0 licensing terms
93
+
94
+ ---
95
+
96
+ ## AI Crawler Registry
97
+
98
+ | Crawler | Owner | Purpose | Recommend |
99
+ |---------|-------|---------|-----------|
100
+ | GPTBot | OpenAI | ChatGPT web search + training | Allow |
101
+ | OAI-SearchBot | OpenAI | OpenAI search features | Allow |
102
+ | ChatGPT-User | OpenAI | ChatGPT browsing | Allow |
103
+ | ClaudeBot | Anthropic | Claude web features | Allow |
104
+ | PerplexityBot | Perplexity | Perplexity search | Allow |
105
+ | Applebot-Extended | Apple | Apple Intelligence features | Allow |
106
+ | Google-Extended | Google | Gemini training (NOT Search) | Optional |
107
+ | CCBot | Common Crawl | Open dataset training | Optional/Block |
108
+ | Bytespider | ByteDance | TikTok/Douyin AI training | Block |
109
+ | anthropic-ai | Anthropic | Claude training | Optional |
110
+ | cohere-ai | Cohere | Cohere models | Optional |
111
+
112
+ ---
113
+
114
+ ## llms.txt Standard
115
+
116
+ File at `/llms.txt` (domain root). Provides structured guidance to AI crawlers.
117
+
118
+ ```
119
+ # Site Name
120
+ > One-line description
121
+
122
+ ## Main Sections
123
+ - [Page Title](url): Description
124
+ - [Another Page](url): Description
125
+
126
+ ## Key Facts
127
+ - Important fact 1
128
+ - Important fact 2
129
+ ```
130
+
131
+ Also check for `/llms-full.txt` (expanded version).
132
+
133
+ ---
134
+
135
+ ## RSL 1.0 (Really Simple Licensing)
136
+
137
+ Machine-readable AI licensing standard (December 2025).
138
+ Backed by: Reddit, Yahoo, Medium, Quora, Cloudflare, Akamai, Creative Commons.
139
+
140
+ Check for RSL implementation and appropriate licensing terms.
141
+
142
+ ---
143
+
144
+ ## Quick Wins for AI Visibility
145
+
146
+ ### Immediate (1 day)
147
+ 1. Add "What is [topic]?" definition in first 60 words of key pages
148
+ 2. Create 134–167 word self-contained answer blocks
149
+ 3. Add question-based H2/H3 headings
150
+ 4. Include specific statistics with source attribution
151
+ 5. Add publication and update dates
152
+ 6. Allow key AI crawlers in robots.txt (GPTBot, ClaudeBot, PerplexityBot)
153
+
154
+ ### Short-term (1 week)
155
+ 1. Create `/llms.txt` file
156
+ 2. Add author bios with credentials + Wikipedia/LinkedIn links
157
+ 3. Implement Person and Organization schema
158
+ 4. Add comparison tables with structured data
159
+ 5. Ensure SSR for all critical content
160
+
161
+ ### Strategic (1-3 months)
162
+ 1. Build Wikipedia presence for brand and key people
163
+ 2. Create original research or surveys (unique citability)
164
+ 3. Establish active YouTube channel
165
+ 4. Build Reddit community presence
166
+ 5. Implement comprehensive entity linking (sameAs across platforms)
167
+ 6. Develop unique tools, calculators, or interactive content
@@ -0,0 +1,153 @@
1
+ # Hreflang — Audit Rules & Best Practices (March 2026)
2
+
3
+ > Author: Laurent Rochetta | BMAD+ SEO Engine v2.0
4
+
5
+ ## What is Hreflang?
6
+
7
+ `hreflang` tells search engines which language/region version of a page to serve.
8
+ Errors cause wrong language indexing, duplicate content penalties, and lost organic traffic.
9
+
10
+ ---
11
+
12
+ ## Implementation Methods
13
+
14
+ | Method | Best For | Max Pages |
15
+ |--------|----------|-----------|
16
+ | `<link>` in `<head>` | Small sites (<50 pages) | ~50 |
17
+ | HTTP header `Link:` | Non-HTML files (PDFs) | ~50 |
18
+ | Sitemap `<xhtml:link>` | Large sites (50+) | Unlimited |
19
+
20
+ > **Recommendation**: Use sitemap for sites with 50+ pages. HTTP headers for non-HTML resources.
21
+
22
+ ---
23
+
24
+ ## Validation Rules
25
+
26
+ ### Rule 1: Valid Language Codes
27
+ - Use **ISO 639-1** (2-letter): `en`, `fr`, `de`, `es`, `ja`, `zh`
28
+ - Optional **ISO 3166-1 Alpha-2** for region: `en-US`, `en-GB`, `fr-FR`, `fr-CA`, `pt-BR`
29
+ - **Case insensitive** but convention is lowercase lang, uppercase country
30
+
31
+ | ✅ Valid | ❌ Invalid | Why |
32
+ |---------|-----------|-----|
33
+ | `en` | `english` | Must be ISO 639-1 |
34
+ | `fr-FR` | `fr-FRA` | Country must be 2-letter |
35
+ | `zh-Hans` | `cn` | `cn` is not a valid language code |
36
+ | `x-default` | `default` | Must use exact `x-default` |
37
+
38
+ ### Rule 2: Self-Referencing (MANDATORY)
39
+ Every page MUST include a hreflang tag pointing to itself.
40
+
41
+ ```html
42
+ <!-- On the English page (example.com/en/) -->
43
+ <link rel="alternate" hreflang="en" href="https://example.com/en/" />
44
+ <link rel="alternate" hreflang="fr" href="https://example.com/fr/" />
45
+ <link rel="alternate" hreflang="x-default" href="https://example.com/en/" />
46
+ ```
47
+
48
+ **Error if missing**: Google may ignore all hreflang tags on that page.
49
+
50
+ ### Rule 3: Return Tags (MANDATORY)
51
+ If page A links to page B with hreflang, page B MUST link back to page A.
52
+
53
+ ```
54
+ Page A (en) → hreflang="fr" → Page B (fr)
55
+ Page B (fr) → hreflang="en" → Page A (en) ← MANDATORY
56
+ ```
57
+
58
+ **Error if missing**: Called "orphan hreflang" — Google ignores the one-way tag.
59
+
60
+ ### Rule 4: x-default (STRONGLY RECOMMENDED)
61
+ Designate a fallback page for users whose language/region doesn't match any variant.
62
+
63
+ ```html
64
+ <link rel="alternate" hreflang="x-default" href="https://example.com/" />
65
+ ```
66
+
67
+ Common choices for x-default:
68
+ - Language selector/redirect page
69
+ - English version (most common)
70
+ - Homepage of the main domain
71
+
72
+ ### Rule 5: Canonical + Hreflang Consistency
73
+ - Each hreflang URL **must be the canonical version** (not a redirect, not a URL with parameters)
74
+ - If a page has `rel="canonical"` pointing elsewhere, hreflang tags on that page are **ignored**
75
+ - Canonical and hreflang must agree: don't have hreflang point to a URL that canonicalizes to a different URL
76
+
77
+ ### Rule 6: Absolute URLs Only
78
+ ```html
79
+ <!-- ✅ Correct -->
80
+ <link rel="alternate" hreflang="fr" href="https://example.com/fr/page" />
81
+
82
+ <!-- ❌ Wrong -->
83
+ <link rel="alternate" hreflang="fr" href="/fr/page" />
84
+ ```
85
+
86
+ ### Rule 7: No Hreflang on Non-200 Pages
87
+ - Don't include hreflang tags on pages that return 3xx, 4xx, or 5xx
88
+ - Don't point hreflang to pages that redirect
89
+
90
+ ---
91
+
92
+ ## Common Error Patterns
93
+
94
+ ### Error 1: Missing Return Tags
95
+ **Symptom**: hreflang is configured on the main language but not on alternate versions.
96
+ **Fix**: Add reciprocal hreflang tags on ALL language variants.
97
+
98
+ ### Error 2: Wrong Canonical + Hreflang
99
+ **Symptom**: Page A hreflang → Page B, but Page B canonical → Page C.
100
+ **Fix**: Align canonical and hreflang targets.
101
+
102
+ ### Error 3: Missing Self-Reference
103
+ **Symptom**: Page lists other language versions but not itself.
104
+ **Fix**: Add `hreflang` tag with the current page's own language/URL.
105
+
106
+ ### Error 4: Inconsistent URLs
107
+ **Symptom**: hreflang uses `http://` but site is on `https://`, or trailing slash mismatch.
108
+ **Fix**: Use exact canonical URL (protocol, www/non-www, trailing slash).
109
+
110
+ ### Error 5: Language vs Region Confusion
111
+ **Symptom**: Using `hreflang="fr"` for France and `hreflang="fr"` for Canada.
112
+ **Fix**: Use `hreflang="fr-FR"` and `hreflang="fr-CA"` to differentiate.
113
+
114
+ ### Error 6: Missing x-default
115
+ **Symptom**: Users in unsupported regions see random language version.
116
+ **Fix**: Add `x-default` pointing to language selector or English version.
117
+
118
+ ---
119
+
120
+ ## Sitemap Implementation (Recommended for 50+ pages)
121
+
122
+ ```xml
123
+ <?xml version="1.0" encoding="UTF-8"?>
124
+ <urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9"
125
+ xmlns:xhtml="http://www.w3.org/1999/xhtml">
126
+ <url>
127
+ <loc>https://example.com/en/page</loc>
128
+ <xhtml:link rel="alternate" hreflang="en" href="https://example.com/en/page"/>
129
+ <xhtml:link rel="alternate" hreflang="fr" href="https://example.com/fr/page"/>
130
+ <xhtml:link rel="alternate" hreflang="de" href="https://example.com/de/page"/>
131
+ <xhtml:link rel="alternate" hreflang="x-default" href="https://example.com/en/page"/>
132
+ </url>
133
+ </urlset>
134
+ ```
135
+
136
+ ---
137
+
138
+ ## Audit Checklist
139
+
140
+ | # | Check | Priority |
141
+ |---|-------|----------|
142
+ | 1 | All hreflang language codes are valid ISO 639-1 | 🔴 Critical |
143
+ | 2 | All hreflang country codes are valid ISO 3166-1 | 🔴 Critical |
144
+ | 3 | Every page has self-referencing hreflang | 🔴 Critical |
145
+ | 4 | All hreflang tags have return tags | 🔴 Critical |
146
+ | 5 | All hreflang URLs are absolute | 🔴 Critical |
147
+ | 6 | x-default is specified | 🟠 High |
148
+ | 7 | Hreflang URLs match canonical URLs | 🟠 High |
149
+ | 8 | No hreflang on non-200 pages | 🟠 High |
150
+ | 9 | No hreflang pointing to redirecting URLs | 🟠 High |
151
+ | 10 | Consistent protocol (https) and www/non-www | 🟡 Medium |
152
+ | 11 | Language/region differentiation correct | 🟡 Medium |
153
+ | 12 | Sitemap implementation for 50+ pages | 🟡 Medium |
@@ -0,0 +1,133 @@
1
+ # Quality Gates — Content Thresholds (March 2026)
2
+
3
+ > Author: Laurent Rochetta | BMAD+ SEO Engine v2.0
4
+
5
+ ## Word Count Minimums by Page Type
6
+
7
+ | Page Type | Minimum | Notes |
8
+ |-----------|---------|-------|
9
+ | Homepage | 500 | Brand clarity + key offerings |
10
+ | Service page | 800 | Comprehensive service description |
11
+ | Blog / article | 1,500 | Deep topical coverage |
12
+ | Product page | 300+ (400+ complex) | Depends on product complexity |
13
+ | Category page | 200 | Plus product listings |
14
+ | Location page | 500–600 | Must be 60%+ unique per location |
15
+ | Comparison page | 1,200 | Feature matrix + analysis |
16
+ | Landing page | 400 | Conversion-focused |
17
+ | About page | 500 | Company story + credentials |
18
+ | FAQ page | 1,000 | Comprehensive Q&A coverage |
19
+
20
+ > **Word count is NOT a ranking factor.** These are topical coverage floors. A thorough 500-word page beats a padded 2,000-word one.
21
+
22
+ ---
23
+
24
+ ## Location Page Quality Gates
25
+
26
+ | Threshold | Action |
27
+ |-----------|--------|
28
+ | 1–29 location pages | ✅ Normal — ensure 60%+ unique content per page |
29
+ | 30+ location pages | ⚠️ WARNING — enforce 60%+ unique content, audit for thin/duplicate |
30
+ | 50+ location pages | 🛑 HARD STOP — require user justification before proceeding |
31
+
32
+ ### Unique Content Requirements per Location
33
+ - Unique local testimonials or case studies
34
+ - Location-specific service details
35
+ - Local area information and context
36
+ - Original photos (not stock)
37
+ - Unique meta title and description
38
+
39
+ ---
40
+
41
+ ## Programmatic Page Quality Gates
42
+
43
+ | Threshold | Action |
44
+ |-----------|--------|
45
+ | 1–99 programmatic pages | ✅ Normal — verify template quality |
46
+ | 100+ pages | ⚠️ WARNING — audit for thin content and cannibalization |
47
+ | 500+ pages | 🛑 HARD STOP — full audit required before generating more |
48
+
49
+ ### Programmatic Content Requirements
50
+ - Each page must provide unique value (not just data swap)
51
+ - Internal linking automation between related pages
52
+ - Canonical strategy to prevent index bloat
53
+ - Minimum 200 words of unique contextual content per page
54
+ - Quality varies by template — audit samples before scale
55
+
56
+ ---
57
+
58
+ ## Title Tag Guidelines
59
+
60
+ | Criterion | Requirement |
61
+ |-----------|-------------|
62
+ | Length | 50–60 characters (display limit ~600px) |
63
+ | Primary keyword | Include near the beginning |
64
+ | Brand name | Append with " | Brand" or " — Brand" |
65
+ | Uniqueness | Every page must have a unique title |
66
+ | Accuracy | Must reflect actual page content |
67
+
68
+ ---
69
+
70
+ ## Meta Description Guidelines
71
+
72
+ | Criterion | Requirement |
73
+ |-----------|-------------|
74
+ | Length | 150–160 characters |
75
+ | Call to action | Include when appropriate |
76
+ | Primary keyword | Include naturally |
77
+ | Uniqueness | Every page must have a unique description |
78
+ | Accuracy | Must match page content (Google may rewrite if not) |
79
+
80
+ ---
81
+
82
+ ## Heading Hierarchy Rules
83
+
84
+ | Rule | Requirement |
85
+ |------|-------------|
86
+ | H1 count | Exactly 1 per page |
87
+ | H1 content | Should contain primary keyword, be descriptive |
88
+ | Hierarchy | H1 → H2 → H3 (no skipping levels) |
89
+ | Heading frequency | One heading every 200–300 words |
90
+ | Heading style | Descriptive, not generic ("Our Services" → "Professional SEO Audit Services") |
91
+
92
+ ---
93
+
94
+ ## Image Optimization Standards
95
+
96
+ | Criterion | Standard | Priority |
97
+ |-----------|----------|----------|
98
+ | Alt text | Descriptive, meaningful, includes keywords naturally | High |
99
+ | Dimensions | Width and height attributes specified | High (CLS) |
100
+ | Format | WebP or AVIF preferred, JPEG/PNG acceptable | Medium |
101
+ | File size | <200KB for standard, <500KB for hero images | Medium |
102
+ | Lazy loading | `loading="lazy"` for below-fold images | Medium |
103
+ | Preload | `<link rel="preload">` for hero/LCP images | High |
104
+ | Srcset | Responsive sizes for different viewports | Medium |
105
+
106
+ ---
107
+
108
+ ## Internal Linking Standards
109
+
110
+ | Metric | Target |
111
+ |--------|--------|
112
+ | Links per 1,000 words | 3–5 relevant internal links |
113
+ | Anchor text | Descriptive (not "click here") |
114
+ | Orphan pages | 0 (every page linked from at least one other) |
115
+ | Click depth | Important pages within 3 clicks of homepage |
116
+ | Broken links | 0 internal 404s |
117
+
118
+ ---
119
+
120
+ ## Thin Content Detection
121
+
122
+ A page is flagged as "thin content" when:
123
+ 1. Word count is below the minimum for its page type
124
+ 2. Content is predominantly duplicate or near-duplicate of another page
125
+ 3. Content is auto-generated without unique value-add
126
+ 4. Page provides no actionable information
127
+
128
+ ### Doorway Page Prevention
129
+ Never recommend creating pages that:
130
+ - Exist solely to funnel users to another page
131
+ - Have nearly identical content with only location/keyword swaps
132
+ - Provide no standalone value
133
+ - Target many similar keyword variations with minimal differences