agileflow 3.3.0 → 3.4.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 (210) hide show
  1. package/CHANGELOG.md +10 -0
  2. package/README.md +6 -6
  3. package/lib/skill-loader.js +0 -1
  4. package/package.json +1 -1
  5. package/scripts/agileflow-statusline.sh +81 -0
  6. package/scripts/agileflow-welcome.js +79 -0
  7. package/scripts/claude-tmux.sh +90 -23
  8. package/scripts/claude-watchdog.sh +225 -0
  9. package/scripts/generators/agent-registry.js +14 -1
  10. package/scripts/generators/inject-babysit.js +22 -9
  11. package/scripts/generators/inject-help.js +19 -9
  12. package/scripts/lib/ac-test-matcher.js +452 -0
  13. package/scripts/lib/audit-cleanup.js +250 -0
  14. package/scripts/lib/audit-registry.js +304 -0
  15. package/scripts/lib/configure-features.js +35 -0
  16. package/scripts/lib/feature-catalog.js +3 -3
  17. package/scripts/lib/gate-enforcer.js +295 -0
  18. package/scripts/lib/model-profiles.js +118 -0
  19. package/scripts/lib/quality-gates.js +163 -0
  20. package/scripts/lib/signal-detectors.js +44 -1
  21. package/scripts/lib/skill-catalog.js +557 -0
  22. package/scripts/lib/skill-recommender.js +311 -0
  23. package/scripts/lib/status-writer.js +255 -0
  24. package/scripts/lib/story-claiming.js +128 -45
  25. package/scripts/lib/task-sync.js +32 -38
  26. package/scripts/lib/tdd-phase-manager.js +455 -0
  27. package/scripts/lib/team-events.js +34 -3
  28. package/scripts/lib/tmux-audit-monitor.js +611 -0
  29. package/scripts/lib/tmux-group-colors.js +113 -0
  30. package/scripts/lib/tool-registry.yaml +241 -0
  31. package/scripts/lib/tool-shed.js +441 -0
  32. package/scripts/messaging-bridge.js +209 -1
  33. package/scripts/native-team-observer.js +219 -0
  34. package/scripts/obtain-context.js +14 -0
  35. package/scripts/ralph-loop.js +30 -5
  36. package/scripts/smart-detect.js +21 -0
  37. package/scripts/spawn-audit-sessions.js +877 -0
  38. package/scripts/team-manager.js +56 -16
  39. package/scripts/tmux-close-windows.sh +180 -0
  40. package/src/core/agents/a11y-analyzer-aria.md +155 -0
  41. package/src/core/agents/a11y-analyzer-forms.md +162 -0
  42. package/src/core/agents/a11y-analyzer-keyboard.md +175 -0
  43. package/src/core/agents/a11y-analyzer-semantic.md +153 -0
  44. package/src/core/agents/a11y-analyzer-visual.md +158 -0
  45. package/src/core/agents/a11y-consensus.md +248 -0
  46. package/src/core/agents/ads-audit-budget.md +181 -0
  47. package/src/core/agents/ads-audit-compliance.md +169 -0
  48. package/src/core/agents/ads-audit-creative.md +164 -0
  49. package/src/core/agents/ads-audit-google.md +226 -0
  50. package/src/core/agents/ads-audit-meta.md +183 -0
  51. package/src/core/agents/ads-audit-tracking.md +197 -0
  52. package/src/core/agents/ads-consensus.md +396 -0
  53. package/src/core/agents/ads-generate.md +145 -0
  54. package/src/core/agents/ads-performance-tracker.md +197 -0
  55. package/src/core/agents/api-quality-analyzer-conventions.md +148 -0
  56. package/src/core/agents/api-quality-analyzer-docs.md +176 -0
  57. package/src/core/agents/api-quality-analyzer-errors.md +183 -0
  58. package/src/core/agents/api-quality-analyzer-pagination.md +171 -0
  59. package/src/core/agents/api-quality-analyzer-versioning.md +143 -0
  60. package/src/core/agents/api-quality-consensus.md +214 -0
  61. package/src/core/agents/arch-analyzer-circular.md +148 -0
  62. package/src/core/agents/arch-analyzer-complexity.md +171 -0
  63. package/src/core/agents/arch-analyzer-coupling.md +146 -0
  64. package/src/core/agents/arch-analyzer-layering.md +151 -0
  65. package/src/core/agents/arch-analyzer-patterns.md +162 -0
  66. package/src/core/agents/arch-consensus.md +227 -0
  67. package/src/core/agents/brainstorm-analyzer-features.md +169 -0
  68. package/src/core/agents/brainstorm-analyzer-growth.md +161 -0
  69. package/src/core/agents/brainstorm-analyzer-integration.md +172 -0
  70. package/src/core/agents/brainstorm-analyzer-market.md +147 -0
  71. package/src/core/agents/brainstorm-analyzer-ux.md +167 -0
  72. package/src/core/agents/brainstorm-consensus.md +237 -0
  73. package/src/core/agents/completeness-consensus.md +5 -5
  74. package/src/core/agents/perf-consensus.md +2 -2
  75. package/src/core/agents/security-consensus.md +2 -2
  76. package/src/core/agents/seo-analyzer-content.md +167 -0
  77. package/src/core/agents/seo-analyzer-images.md +187 -0
  78. package/src/core/agents/seo-analyzer-performance.md +206 -0
  79. package/src/core/agents/seo-analyzer-schema.md +176 -0
  80. package/src/core/agents/seo-analyzer-sitemap.md +172 -0
  81. package/src/core/agents/seo-analyzer-technical.md +144 -0
  82. package/src/core/agents/seo-consensus.md +289 -0
  83. package/src/core/agents/test-consensus.md +2 -2
  84. package/src/core/commands/adr.md +1 -0
  85. package/src/core/commands/ads/audit.md +375 -0
  86. package/src/core/commands/ads/budget.md +97 -0
  87. package/src/core/commands/ads/competitor.md +112 -0
  88. package/src/core/commands/ads/creative.md +85 -0
  89. package/src/core/commands/ads/generate.md +238 -0
  90. package/src/core/commands/ads/google.md +112 -0
  91. package/src/core/commands/ads/health.md +327 -0
  92. package/src/core/commands/ads/landing.md +119 -0
  93. package/src/core/commands/ads/linkedin.md +112 -0
  94. package/src/core/commands/ads/meta.md +91 -0
  95. package/src/core/commands/ads/microsoft.md +115 -0
  96. package/src/core/commands/ads/plan.md +321 -0
  97. package/src/core/commands/ads/test-plan.md +317 -0
  98. package/src/core/commands/ads/tiktok.md +129 -0
  99. package/src/core/commands/ads/track.md +288 -0
  100. package/src/core/commands/ads/youtube.md +124 -0
  101. package/src/core/commands/ads.md +140 -0
  102. package/src/core/commands/assign.md +1 -0
  103. package/src/core/commands/audit.md +43 -6
  104. package/src/core/commands/babysit.md +315 -1266
  105. package/src/core/commands/baseline.md +1 -0
  106. package/src/core/commands/blockers.md +1 -0
  107. package/src/core/commands/board.md +1 -0
  108. package/src/core/commands/changelog.md +1 -0
  109. package/src/core/commands/choose.md +1 -0
  110. package/src/core/commands/ci.md +1 -0
  111. package/src/core/commands/code/accessibility.md +347 -0
  112. package/src/core/commands/code/api.md +297 -0
  113. package/src/core/commands/code/architecture.md +297 -0
  114. package/src/core/commands/{audit → code}/completeness.md +72 -25
  115. package/src/core/commands/{audit → code}/legal.md +63 -16
  116. package/src/core/commands/{audit → code}/logic.md +64 -16
  117. package/src/core/commands/{audit → code}/performance.md +67 -20
  118. package/src/core/commands/{audit → code}/security.md +69 -19
  119. package/src/core/commands/{audit → code}/test.md +67 -20
  120. package/src/core/commands/configure.md +1 -0
  121. package/src/core/commands/council.md +1 -0
  122. package/src/core/commands/deploy.md +1 -0
  123. package/src/core/commands/diagnose.md +1 -0
  124. package/src/core/commands/docs.md +1 -0
  125. package/src/core/commands/epic/edit.md +213 -0
  126. package/src/core/commands/epic.md +1 -0
  127. package/src/core/commands/export.md +238 -0
  128. package/src/core/commands/help.md +16 -1
  129. package/src/core/commands/{discovery → ideate}/brief.md +12 -12
  130. package/src/core/commands/{discovery/new.md → ideate/discover.md} +20 -16
  131. package/src/core/commands/ideate/features.md +496 -0
  132. package/src/core/commands/ideate/new.md +158 -124
  133. package/src/core/commands/impact.md +1 -0
  134. package/src/core/commands/learn/explain.md +118 -0
  135. package/src/core/commands/learn/glossary.md +135 -0
  136. package/src/core/commands/learn/patterns.md +138 -0
  137. package/src/core/commands/learn/tour.md +126 -0
  138. package/src/core/commands/migrate/codemods.md +151 -0
  139. package/src/core/commands/migrate/plan.md +131 -0
  140. package/src/core/commands/migrate/scan.md +114 -0
  141. package/src/core/commands/migrate/validate.md +119 -0
  142. package/src/core/commands/multi-expert.md +1 -0
  143. package/src/core/commands/pr.md +1 -0
  144. package/src/core/commands/review.md +1 -0
  145. package/src/core/commands/seo/audit.md +373 -0
  146. package/src/core/commands/seo/competitor.md +174 -0
  147. package/src/core/commands/seo/content.md +107 -0
  148. package/src/core/commands/seo/geo.md +229 -0
  149. package/src/core/commands/seo/hreflang.md +140 -0
  150. package/src/core/commands/seo/images.md +96 -0
  151. package/src/core/commands/seo/page.md +198 -0
  152. package/src/core/commands/seo/plan.md +163 -0
  153. package/src/core/commands/seo/programmatic.md +131 -0
  154. package/src/core/commands/seo/references/cwv-thresholds.md +64 -0
  155. package/src/core/commands/seo/references/eeat-framework.md +110 -0
  156. package/src/core/commands/seo/references/quality-gates.md +91 -0
  157. package/src/core/commands/seo/references/schema-types.md +102 -0
  158. package/src/core/commands/seo/schema.md +183 -0
  159. package/src/core/commands/seo/sitemap.md +97 -0
  160. package/src/core/commands/seo/technical.md +100 -0
  161. package/src/core/commands/seo.md +107 -0
  162. package/src/core/commands/skill/list.md +68 -212
  163. package/src/core/commands/skill/recommend.md +216 -0
  164. package/src/core/commands/sprint.md +1 -0
  165. package/src/core/commands/status/undo.md +191 -0
  166. package/src/core/commands/status.md +1 -0
  167. package/src/core/commands/story/edit.md +204 -0
  168. package/src/core/commands/story/view.md +29 -7
  169. package/src/core/commands/story-validate.md +1 -0
  170. package/src/core/commands/story.md +1 -0
  171. package/src/core/commands/tdd-next.md +238 -0
  172. package/src/core/commands/tdd.md +211 -0
  173. package/src/core/commands/team/start.md +10 -6
  174. package/src/core/commands/tests.md +1 -0
  175. package/src/core/commands/verify.md +27 -1
  176. package/src/core/commands/workflow.md +2 -0
  177. package/src/core/experts/_core-expertise.yaml +105 -0
  178. package/src/core/experts/analytics/expertise.yaml +5 -99
  179. package/src/core/experts/codebase-query/expertise.yaml +3 -72
  180. package/src/core/experts/compliance/expertise.yaml +6 -72
  181. package/src/core/experts/database/expertise.yaml +9 -52
  182. package/src/core/experts/documentation/expertise.yaml +7 -140
  183. package/src/core/experts/integrations/expertise.yaml +7 -127
  184. package/src/core/experts/mentor/expertise.yaml +8 -35
  185. package/src/core/experts/monitoring/expertise.yaml +7 -49
  186. package/src/core/experts/performance/expertise.yaml +1 -26
  187. package/src/core/experts/security/expertise.yaml +9 -34
  188. package/src/core/experts/ui/expertise.yaml +6 -36
  189. package/src/core/knowledge/ads/ad-audit-checklist-scoring.md +424 -0
  190. package/src/core/knowledge/ads/ad-optimization-logic.md +590 -0
  191. package/src/core/knowledge/ads/ad-technical-specifications.md +385 -0
  192. package/src/core/knowledge/ads/definitive-advertising-reference-2026.md +506 -0
  193. package/src/core/knowledge/ads/paid-advertising-research-2026.md +445 -0
  194. package/src/core/teams/backend.json +41 -0
  195. package/src/core/teams/frontend.json +41 -0
  196. package/src/core/teams/qa.json +41 -0
  197. package/src/core/teams/solo.json +35 -0
  198. package/src/core/templates/agileflow-metadata.json +20 -1
  199. package/tools/cli/commands/setup.js +85 -3
  200. package/tools/cli/commands/update.js +42 -0
  201. package/tools/cli/installers/ide/_base-ide.js +42 -5
  202. package/tools/cli/installers/ide/claude-code.js +71 -3
  203. package/tools/cli/lib/content-injector.js +160 -12
  204. package/tools/cli/lib/docs-setup.js +1 -1
  205. package/src/core/commands/skill/create.md +0 -698
  206. package/src/core/commands/skill/delete.md +0 -316
  207. package/src/core/commands/skill/edit.md +0 -359
  208. package/src/core/commands/skill/test.md +0 -394
  209. package/src/core/commands/skill/upgrade.md +0 -552
  210. package/src/core/templates/skill-template.md +0 -117
@@ -0,0 +1,114 @@
1
+ ---
2
+ description: Detect deprecated APIs, outdated patterns, breaking dependency changes, and migration opportunities in your codebase
3
+ argument-hint: "[file|directory] [FOCUS=deps|patterns|apis|all]"
4
+ ---
5
+
6
+ # /agileflow:migrate:scan
7
+
8
+ Scan the codebase for migration opportunities - deprecated APIs, outdated patterns, breaking dependency changes, and version-specific issues that need attention.
9
+
10
+ ---
11
+
12
+ ## Quick Reference
13
+
14
+ ```
15
+ /agileflow:migrate:scan # Scan entire project
16
+ /agileflow:migrate:scan src/ # Scan specific directory
17
+ /agileflow:migrate:scan . FOCUS=deps # Focus on dependency changes only
18
+ /agileflow:migrate:scan . FOCUS=patterns # Focus on outdated code patterns
19
+ /agileflow:migrate:scan . FOCUS=apis # Focus on deprecated API usage
20
+ ```
21
+
22
+ ---
23
+
24
+ ## How It Works
25
+
26
+ 1. **Dependency analysis**: Check package.json for outdated deps, breaking version jumps, deprecated packages
27
+ 2. **Pattern detection**: Find outdated coding patterns (old React class components, CommonJS in ESM projects, etc.)
28
+ 3. **API deprecation**: Find usage of deprecated APIs (Node.js, browser, framework-specific)
29
+ 4. **Version incompatibility**: Detect code that won't work with newer versions of dependencies
30
+ 5. **Migration urgency**: Score each finding by urgency (security fix, breaking change, deprecation timeline)
31
+
32
+ ---
33
+
34
+ ## Step-by-Step Process
35
+
36
+ ### STEP 1: Parse Arguments
37
+
38
+ ```
39
+ TARGET = first argument or current directory
40
+ FOCUS = all (default) or deps|patterns|apis
41
+ ```
42
+
43
+ ### STEP 2: Analyze Dependencies
44
+
45
+ Use the `agileflow-devops` agent to:
46
+ - Run `npm outdated` or equivalent
47
+ - Check for deprecated packages (`npm info <pkg> deprecated`)
48
+ - Identify major version jumps with breaking changes
49
+ - Check for known vulnerabilities (`npm audit`)
50
+
51
+ ### STEP 3: Scan for Outdated Patterns
52
+
53
+ Use the `agileflow-refactor` agent to find:
54
+ - Deprecated framework patterns (React class components, Vue Options API in Vue 3+, etc.)
55
+ - Old module systems (CommonJS `require()` in ESM projects)
56
+ - Deprecated Node.js APIs (`fs.exists`, `url.parse`, `new Buffer()`)
57
+ - Old test patterns (enzyme vs testing-library)
58
+ - Legacy build tool configurations
59
+
60
+ ### STEP 4: Detect Deprecated API Usage
61
+
62
+ Use the `agileflow-research` agent to:
63
+ - Check framework changelogs for deprecated features
64
+ - Find deprecated browser APIs (e.g., `document.write`, synchronous XHR)
65
+ - Identify Node.js deprecated APIs by version
66
+
67
+ ### STEP 5: Generate Scan Report
68
+
69
+ Output a prioritized list of migration opportunities:
70
+
71
+ ```markdown
72
+ # Migration Scan Report
73
+
74
+ **Generated**: {date}
75
+ **Target**: {directory}
76
+ **Total Opportunities**: {N}
77
+
78
+ ## Critical (Security/Breaking)
79
+ | Package/Pattern | Current | Target | Risk | Effort |
80
+ |-----------------|---------|--------|------|--------|
81
+ | {name} | {version} | {version} | {desc} | {est} |
82
+
83
+ ## High Priority (Deprecation Deadline)
84
+ ...
85
+
86
+ ## Medium Priority (Tech Debt)
87
+ ...
88
+
89
+ ## Low Priority (Improvements)
90
+ ...
91
+ ```
92
+
93
+ Save to `docs/08-project/migrations/scan-{YYYYMMDD}.md`
94
+
95
+ ### STEP 6: Offer Next Steps
96
+
97
+ ```
98
+ Scan complete: [N] migration opportunities found ([critical] critical, [high] high priority).
99
+
100
+ Options:
101
+ - Generate migration plan for critical items (Recommended)
102
+ - Create stories for all findings
103
+ - Re-scan with different focus
104
+ - Save report and done
105
+ ```
106
+
107
+ ---
108
+
109
+ ## Related Commands
110
+
111
+ - `/agileflow:migrate:plan` - Generate step-by-step migration roadmap
112
+ - `/agileflow:migrate:codemods` - Generate AST-based codemods
113
+ - `/agileflow:migrate:validate` - Post-migration verification
114
+ - `/agileflow:packages` - Dependency management
@@ -0,0 +1,119 @@
1
+ ---
2
+ description: Post-migration verification - run tests, check for deprecated usage, validate types, and confirm migration completeness
3
+ argument-hint: "[migration-plan|package-name] [--strict]"
4
+ ---
5
+
6
+ # /agileflow:migrate:validate
7
+
8
+ Run comprehensive post-migration verification to confirm the migration was successful - tests pass, no deprecated APIs remain, types check, and no regressions introduced.
9
+
10
+ ---
11
+
12
+ ## Quick Reference
13
+
14
+ ```
15
+ /agileflow:migrate:validate # Validate latest migration
16
+ /agileflow:migrate:validate react # Validate React migration
17
+ /agileflow:migrate:validate next@15 # Validate Next.js 15 migration
18
+ /agileflow:migrate:validate . --strict # Strict mode - zero warnings
19
+ ```
20
+
21
+ ---
22
+
23
+ ## How It Works
24
+
25
+ 1. **Run test suite** - Full test run to catch regressions
26
+ 2. **Re-scan for deprecated usage** - Verify no deprecated APIs remain
27
+ 3. **Type check** - Run TypeScript/type checker for type errors
28
+ 4. **Lint check** - Run linter for new issues
29
+ 5. **Build check** - Verify production build succeeds
30
+ 6. **Generate validation report** - Pass/fail with details
31
+
32
+ ---
33
+
34
+ ## Step-by-Step Process
35
+
36
+ ### STEP 1: Parse Arguments
37
+
38
+ ```
39
+ TARGET = migration plan path, package name, or current directory
40
+ STRICT = --strict flag (zero warnings tolerance)
41
+ ```
42
+
43
+ ### STEP 2: Run Validation Checks
44
+
45
+ Execute all checks and collect results:
46
+
47
+ | Check | Command | Pass Criteria |
48
+ |-------|---------|--------------|
49
+ | Tests | `npm test` | All passing |
50
+ | Type check | `npx tsc --noEmit` | No errors |
51
+ | Lint | `npm run lint` | No errors (warnings OK unless strict) |
52
+ | Build | `npm run build` | Exits 0 |
53
+ | Deprecated scan | Re-run `/agileflow:migrate:scan` | No critical findings |
54
+
55
+ ### STEP 3: Compare Before/After
56
+
57
+ If a migration plan exists, compare:
58
+ - Test count: same or more (not fewer)
59
+ - Build size: within 10% (flag large increases)
60
+ - Type errors: zero new errors
61
+ - Deprecated usage: reduced to zero for migrated items
62
+
63
+ ### STEP 4: Generate Validation Report
64
+
65
+ ```markdown
66
+ # Migration Validation Report
67
+
68
+ **Generated**: {date}
69
+ **Migration**: {target}
70
+ **Status**: {PASS | PARTIAL | FAIL}
71
+
72
+ ## Check Results
73
+
74
+ | Check | Status | Details |
75
+ |-------|--------|---------|
76
+ | Tests | {pass/fail} | {N} passing, {M} failing |
77
+ | Types | {pass/fail} | {N} errors |
78
+ | Lint | {pass/fail} | {N} errors, {M} warnings |
79
+ | Build | {pass/fail} | Build size: {N} |
80
+ | Deprecated scan | {pass/fail} | {N} remaining items |
81
+
82
+ ## Failures (if any)
83
+
84
+ ### Test Failures
85
+ {list of failing tests with details}
86
+
87
+ ### Type Errors
88
+ {list of new type errors}
89
+
90
+ ### Remaining Deprecated Usage
91
+ {list of deprecated items still in codebase}
92
+
93
+ ## Verdict
94
+
95
+ {Overall assessment and recommended next steps}
96
+ ```
97
+
98
+ Save to `docs/08-project/migrations/validation-{YYYYMMDD}.md`
99
+
100
+ ### STEP 5: Offer Next Steps
101
+
102
+ ```
103
+ Migration validation: [STATUS]. [N]/[M] checks passed.
104
+
105
+ Options:
106
+ - Fix failing tests (Recommended)
107
+ - Fix remaining deprecated usage
108
+ - Accept partial migration and create stories for remaining work
109
+ - Mark migration as complete
110
+ ```
111
+
112
+ ---
113
+
114
+ ## Related Commands
115
+
116
+ - `/agileflow:migrate:scan` - Detect migration opportunities
117
+ - `/agileflow:migrate:plan` - Generate migration roadmap
118
+ - `/agileflow:migrate:codemods` - Generate AST-based codemods
119
+ - `/agileflow:verify` - Run project tests
@@ -1,5 +1,6 @@
1
1
  ---
2
2
  description: Deploy multiple domain experts on the same problem for higher confidence
3
+ phase: planning
3
4
  argument-hint: "<question>"
4
5
  compact_context:
5
6
  priority: high
@@ -1,5 +1,6 @@
1
1
  ---
2
2
  description: Generate pull request description from story
3
+ phase: pre-pr
3
4
  argument-hint: "STORY=<US-ID> [TITLE=<text>] [TEST_EVIDENCE=<text>]"
4
5
  compact_context:
5
6
  priority: high
@@ -1,5 +1,6 @@
1
1
  ---
2
2
  description: AI-powered code review with quality suggestions
3
+ phase: post-impl
3
4
  argument-hint: "[BRANCH=<name>] [BASE=<branch>] [FOCUS=all|security|performance|style]"
4
5
  compact_context:
5
6
  priority: critical
@@ -0,0 +1,373 @@
1
+ ---
2
+ description: Full website SEO audit with 6 parallel analyzers, business type detection, weighted health score 0-100, and prioritized action plan
3
+ argument-hint: "URL [DEPTH=quick|deep] [MAX_PAGES=50]"
4
+ compact_context:
5
+ priority: high
6
+ preserve_rules:
7
+ - "ACTIVE COMMAND: /agileflow:seo:audit - Full website SEO audit"
8
+ - "CRITICAL: Deploy 6 analyzers IN PARALLEL in ONE message with multiple Task calls"
9
+ - "CRITICAL: Wait for all results before running consensus (use TaskOutput with block=true)"
10
+ - "CRITICAL: Weighted scoring - Technical 20%, Content 20%, Schema 15%, Performance 15%, Images 15%, Sitemap 15%"
11
+ - "MUST parse arguments: URL (required), DEPTH (quick/deep), MAX_PAGES (default 50)"
12
+ - "Fetch homepage FIRST to detect business type before deploying analyzers"
13
+ - "Pass all analyzer outputs to seo-consensus for final report"
14
+ state_fields:
15
+ - target_url
16
+ - depth
17
+ - max_pages
18
+ - business_type
19
+ - analyzers_deployed
20
+ - health_score
21
+ ---
22
+
23
+ # /agileflow:seo:audit
24
+
25
+ Deploy 6 specialized SEO analyzers in parallel to audit a website, then synthesize results through consensus into a weighted health score (0-100) with prioritized action plan.
26
+
27
+ ---
28
+
29
+ ## Quick Reference
30
+
31
+ ```
32
+ /agileflow:seo:audit https://example.com # Quick audit (all 6 analyzers)
33
+ /agileflow:seo:audit https://example.com DEPTH=deep # Deep audit (more thorough per-analyzer)
34
+ /agileflow:seo:audit https://example.com MAX_PAGES=100 # Audit up to 100 pages
35
+ ```
36
+
37
+ ---
38
+
39
+ ## How It Works
40
+
41
+ ```
42
+ ┌──────────────────────────────────────────────────────────────┐
43
+ │ /agileflow:seo:audit │
44
+ │ │
45
+ │ 1. Parse arguments (URL, depth, max_pages) │
46
+ │ 2. Fetch homepage → detect business type │
47
+ │ 3. Fetch robots.txt + sitemap.xml │
48
+ │ 4. Deploy 6 analyzers IN PARALLEL │
49
+ │ 5. Collect all results │
50
+ │ 6. Run consensus → weighted health score │
51
+ │ 7. Generate SEO Audit Report + action plan │
52
+ └──────────────────────────────────────────────────────────────┘
53
+
54
+ ┌──────────┐ ┌─────────┐ ┌────────┐
55
+ │Technical │ │ Content │ │ Schema │
56
+ └────┬─────┘ └────┬────┘ └───┬────┘
57
+ │ │ │
58
+ ┌────┴──────┐ ┌───┴────┐ ┌──┴──────┐
59
+ │Performance│ │ Images │ │ Sitemap │
60
+ └────┬──────┘ └───┬────┘ └──┬──────┘
61
+ │ │ │
62
+ └────────────┼──────────┘
63
+
64
+ ┌─────────────────────┐
65
+ │ SEO Consensus │
66
+ │ (weighted scoring, │
67
+ │ health score, │
68
+ │ action plan) │
69
+ └─────────────────────┘
70
+ ```
71
+
72
+ ---
73
+
74
+ ## Arguments
75
+
76
+ | Argument | Values | Default | Description |
77
+ |----------|--------|---------|-------------|
78
+ | URL | Any valid URL | Required | Homepage URL to audit |
79
+ | DEPTH | quick, deep | quick | quick = standard analysis, deep = comprehensive |
80
+ | MAX_PAGES | 1-500 | 50 | Maximum pages to analyze |
81
+
82
+ ---
83
+
84
+ ## Step-by-Step Process
85
+
86
+ ### STEP 1: Parse Arguments
87
+
88
+ ```
89
+ URL = first argument (required - ask if missing)
90
+ DEPTH = quick (default) or deep
91
+ MAX_PAGES = 50 (default)
92
+ ```
93
+
94
+ If URL is missing, ask:
95
+ ```xml
96
+ <invoke name="AskUserQuestion">
97
+ <parameter name="questions">[{
98
+ "question": "Which website would you like to audit?",
99
+ "header": "Target URL",
100
+ "multiSelect": false,
101
+ "options": [
102
+ {"label": "Enter URL", "description": "e.g., https://example.com"}
103
+ ]
104
+ }]</parameter>
105
+ </invoke>
106
+ ```
107
+
108
+ ### STEP 2: Detect Business Type
109
+
110
+ Fetch the homepage with WebFetch and classify the business:
111
+
112
+ | Type | Indicators |
113
+ |------|-----------|
114
+ | **SaaS** | Login/signup, pricing page, docs, API references, "free trial" |
115
+ | **Local Business** | Address, phone, map, service areas, hours, "near me" |
116
+ | **E-commerce** | Products, cart, checkout, categories, prices, reviews |
117
+ | **Publisher** | Articles, blog, news, editorial, bylines, publication dates |
118
+ | **Agency** | Portfolio, services list, team page, case studies, "hire us" |
119
+
120
+ Also fetch:
121
+ - `{URL}/robots.txt` - crawl rules, sitemap location
122
+ - `{URL}/sitemap.xml` - page inventory
123
+
124
+ ### STEP 3: Deploy 6 Analyzers in Parallel
125
+
126
+ **CRITICAL**: Deploy ALL 6 analyzers in a SINGLE message with multiple Task calls.
127
+
128
+ ```xml
129
+ <invoke name="Task">
130
+ <parameter name="description">Technical SEO analysis</parameter>
131
+ <parameter name="prompt">TASK: Analyze technical SEO for this website.
132
+
133
+ TARGET URL: {url}
134
+ DEPTH: {quick|deep}
135
+ BUSINESS TYPE: {detected type}
136
+
137
+ Analyze: crawlability, indexability, security headers, URL structure, mobile-friendliness, and CWV indicators.
138
+
139
+ Also check robots.txt and basic crawl rules.
140
+
141
+ OUTPUT your findings in standard format with Technical SEO Score X/100.</parameter>
142
+ <parameter name="subagent_type">seo-analyzer-technical</parameter>
143
+ <parameter name="run_in_background">true</parameter>
144
+ </invoke>
145
+
146
+ <invoke name="Task">
147
+ <parameter name="description">Content quality E-E-A-T analysis</parameter>
148
+ <parameter name="prompt">TASK: Analyze content quality and E-E-A-T signals.
149
+
150
+ TARGET URL: {url}
151
+ DEPTH: {quick|deep}
152
+ BUSINESS TYPE: {detected type}
153
+
154
+ Assess: Trustworthiness (30%), Expertise (25%), Authoritativeness (25%), Experience (20%), plus content depth, readability, and AI citation readiness.
155
+
156
+ OUTPUT your findings with Content Quality Score X/100.</parameter>
157
+ <parameter name="subagent_type">seo-analyzer-content</parameter>
158
+ <parameter name="run_in_background">true</parameter>
159
+ </invoke>
160
+
161
+ <invoke name="Task">
162
+ <parameter name="description">Schema/structured data analysis</parameter>
163
+ <parameter name="prompt">TASK: Analyze schema markup and structured data.
164
+
165
+ TARGET URL: {url}
166
+ DEPTH: {quick|deep}
167
+ BUSINESS TYPE: {detected type}
168
+
169
+ Detect: existing JSON-LD/Microdata/RDFa, validate against Google standards, flag deprecated types, identify missing schema opportunities, generate ready-to-use snippets.
170
+
171
+ OUTPUT your findings with Schema Score X/100.</parameter>
172
+ <parameter name="subagent_type">seo-analyzer-schema</parameter>
173
+ <parameter name="run_in_background">true</parameter>
174
+ </invoke>
175
+
176
+ <invoke name="Task">
177
+ <parameter name="description">Image optimization analysis</parameter>
178
+ <parameter name="prompt">TASK: Analyze image optimization.
179
+
180
+ TARGET URL: {url}
181
+ DEPTH: {quick|deep}
182
+ BUSINESS TYPE: {detected type}
183
+
184
+ Check: alt text quality, image sizing (CLS), modern formats (WebP/AVIF), lazy loading, LCP image priority, responsive images.
185
+
186
+ OUTPUT your findings with Image Optimization Score X/100.</parameter>
187
+ <parameter name="subagent_type">seo-analyzer-images</parameter>
188
+ <parameter name="run_in_background">true</parameter>
189
+ </invoke>
190
+
191
+ <invoke name="Task">
192
+ <parameter name="description">Core Web Vitals performance analysis</parameter>
193
+ <parameter name="prompt">TASK: Analyze performance and Core Web Vitals.
194
+
195
+ TARGET URL: {url}
196
+ DEPTH: {quick|deep}
197
+ BUSINESS TYPE: {detected type}
198
+
199
+ Assess: LCP optimization, INP indicators, CLS risk factors, resource loading, render-blocking resources, third-party impact.
200
+
201
+ OUTPUT your findings with Performance Score X/100.</parameter>
202
+ <parameter name="subagent_type">seo-analyzer-performance</parameter>
203
+ <parameter name="run_in_background">true</parameter>
204
+ </invoke>
205
+
206
+ <invoke name="Task">
207
+ <parameter name="description">Sitemap validation analysis</parameter>
208
+ <parameter name="prompt">TASK: Analyze XML sitemap.
209
+
210
+ TARGET URL: {url}
211
+ DEPTH: {quick|deep}
212
+ BUSINESS TYPE: {detected type}
213
+
214
+ Validate: sitemap existence, XML structure, URL coverage, quality gates, robots.txt reference.
215
+
216
+ OUTPUT your findings with Sitemap Score X/100.</parameter>
217
+ <parameter name="subagent_type">seo-analyzer-sitemap</parameter>
218
+ <parameter name="run_in_background">true</parameter>
219
+ </invoke>
220
+ ```
221
+
222
+ ### STEP 4: Collect Results
223
+
224
+ Wait for all analyzers to complete using TaskOutput with block=true. Collect all 6 outputs.
225
+
226
+ ### STEP 5: Run Consensus Coordinator
227
+
228
+ Pass all analyzer outputs to the consensus coordinator:
229
+
230
+ ```xml
231
+ <invoke name="Task">
232
+ <parameter name="description">SEO audit consensus and scoring</parameter>
233
+ <parameter name="prompt">You are the SEO Consensus Coordinator.
234
+
235
+ TARGET URL: {url}
236
+ BUSINESS TYPE: {detected type}
237
+ DEPTH: {depth}
238
+
239
+ ## Analyzer Outputs
240
+
241
+ ### Technical SEO Results:
242
+ {technical_output}
243
+
244
+ ### Content Quality Results:
245
+ {content_output}
246
+
247
+ ### Schema Results:
248
+ {schema_output}
249
+
250
+ ### Image Optimization Results:
251
+ {images_output}
252
+
253
+ ### Performance Results:
254
+ {performance_output}
255
+
256
+ ### Sitemap Results:
257
+ {sitemap_output}
258
+
259
+ ---
260
+
261
+ Follow your consensus process:
262
+ 1. Confirm business type classification
263
+ 2. Parse all findings into normalized structure
264
+ 3. Calculate category scores (each out of 100)
265
+ 4. Apply weights: Technical 20%, Content 20%, Schema 15%, Performance 15%, Images 15%, Sitemap 15%
266
+ 5. Compute overall Health Score 0-100
267
+ 6. Cross-reference findings flagged by multiple analyzers
268
+ 7. Prioritize: Critical → High → Medium → Low
269
+ 8. Generate action plan with quick wins
270
+ 9. Save report to docs/08-project/seo-audits/seo-audit-{YYYYMMDD}.md</parameter>
271
+ <parameter name="subagent_type">seo-consensus</parameter>
272
+ </invoke>
273
+ ```
274
+
275
+ ### STEP 6: Present Results
276
+
277
+ After consensus completes, show summary and offer next steps:
278
+
279
+ ```xml
280
+ <invoke name="AskUserQuestion">
281
+ <parameter name="questions">[{
282
+ "question": "SEO Audit complete: Health Score {X}/100 ({rating}). Business type: {type}. {N} findings ({critical} critical, {high} high).",
283
+ "header": "Next steps",
284
+ "multiSelect": false,
285
+ "options": [
286
+ {"label": "Fix {critical} Critical issues now (Recommended)", "description": "{top_issue_summary}"},
287
+ {"label": "Deep-dive into {lowest_category}", "description": "Lowest score: {category} at {score}/100"},
288
+ {"label": "Generate schema markup for this site", "description": "Run /agileflow:seo:schema to get ready-to-use JSON-LD"},
289
+ {"label": "Create SEO improvement plan", "description": "Run /agileflow:seo:plan for strategic roadmap"}
290
+ ]
291
+ }]</parameter>
292
+ </invoke>
293
+ ```
294
+
295
+ ---
296
+
297
+ ## Example Output
298
+
299
+ ```
300
+ SEO Audit: https://example.com
301
+ ══════════════════════════════════════════════════════════════
302
+
303
+ Business Type: SaaS
304
+ Depth: quick
305
+
306
+ Deploying 6 SEO analyzers...
307
+ ✓ Technical SEO Analyzer
308
+ ✓ Content Quality Analyzer
309
+ ✓ Schema Analyzer
310
+ ✓ Image Optimization Analyzer
311
+ ✓ Performance Analyzer
312
+ ✓ Sitemap Analyzer
313
+
314
+ Running consensus...
315
+ ✓ Consensus complete
316
+
317
+ ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
318
+ HEALTH SCORE: 72/100 (Good)
319
+ ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
320
+
321
+ | Category | Score | Weight | Weighted |
322
+ |-----------------|--------|--------|----------|
323
+ | Technical SEO | 85/100 | 20% | 17.0 |
324
+ | Content Quality | 68/100 | 20% | 13.6 |
325
+ | Schema | 45/100 | 15% | 6.8 |
326
+ | Performance | 78/100 | 15% | 11.7 |
327
+ | Images | 82/100 | 15% | 12.3 |
328
+ | Sitemap | 75/100 | 15% | 11.3 |
329
+
330
+ ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
331
+ CRITICAL: 1 | HIGH: 3 | MEDIUM: 5 | LOW: 2
332
+ ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
333
+
334
+ [Full report saved to docs/08-project/seo-audits/seo-audit-20260225.md]
335
+ ```
336
+
337
+ ---
338
+
339
+ <!-- COMPACT_SUMMARY_START -->
340
+ ## Compact Summary
341
+
342
+ **Command**: `/agileflow:seo:audit` - Full website SEO audit with 6 parallel analyzers
343
+
344
+ **Quick Usage**:
345
+ ```
346
+ /agileflow:seo:audit https://example.com # Quick audit
347
+ /agileflow:seo:audit https://example.com DEPTH=deep # Deep audit
348
+ ```
349
+
350
+ **What It Does**: Fetch homepage → Detect business type → Deploy 6 analyzers in parallel → Consensus weights scores → Health Score 0-100 → Prioritized action plan
351
+
352
+ **Analyzers (all 6 deploy in parallel)**:
353
+ - `seo-analyzer-technical` - Crawlability, indexability, security, URLs, mobile
354
+ - `seo-analyzer-content` - E-E-A-T scoring, readability, AI citation readiness
355
+ - `seo-analyzer-schema` - JSON-LD detection, validation, deprecated types
356
+ - `seo-analyzer-images` - Alt text, sizing, formats, lazy loading
357
+ - `seo-analyzer-performance` - LCP, INP, CLS, resource loading
358
+ - `seo-analyzer-sitemap` - XML validation, coverage, quality gates
359
+
360
+ **Category Weights**: Technical 20%, Content 20%, Schema 15%, Performance 15%, Images 15%, Sitemap 15%
361
+
362
+ **Output**: `docs/08-project/seo-audits/seo-audit-{YYYYMMDD}.md`
363
+ <!-- COMPACT_SUMMARY_END -->
364
+
365
+ ---
366
+
367
+ ## Related Commands
368
+
369
+ - `/agileflow:seo:page` - Deep-dive into a single page
370
+ - `/agileflow:seo:schema` - Generate schema markup
371
+ - `/agileflow:seo:geo` - AI search optimization
372
+ - `/agileflow:seo:plan` - Strategic SEO planning
373
+ - `/agileflow:seo:technical` - Technical SEO deep-dive