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.
- package/CHANGELOG.md +10 -0
- package/README.md +6 -6
- package/lib/skill-loader.js +0 -1
- package/package.json +1 -1
- package/scripts/agileflow-statusline.sh +81 -0
- package/scripts/agileflow-welcome.js +79 -0
- package/scripts/claude-tmux.sh +90 -23
- package/scripts/claude-watchdog.sh +225 -0
- package/scripts/generators/agent-registry.js +14 -1
- package/scripts/generators/inject-babysit.js +22 -9
- package/scripts/generators/inject-help.js +19 -9
- package/scripts/lib/ac-test-matcher.js +452 -0
- package/scripts/lib/audit-cleanup.js +250 -0
- package/scripts/lib/audit-registry.js +304 -0
- package/scripts/lib/configure-features.js +35 -0
- package/scripts/lib/feature-catalog.js +3 -3
- package/scripts/lib/gate-enforcer.js +295 -0
- package/scripts/lib/model-profiles.js +118 -0
- package/scripts/lib/quality-gates.js +163 -0
- package/scripts/lib/signal-detectors.js +44 -1
- package/scripts/lib/skill-catalog.js +557 -0
- package/scripts/lib/skill-recommender.js +311 -0
- package/scripts/lib/status-writer.js +255 -0
- package/scripts/lib/story-claiming.js +128 -45
- package/scripts/lib/task-sync.js +32 -38
- package/scripts/lib/tdd-phase-manager.js +455 -0
- package/scripts/lib/team-events.js +34 -3
- package/scripts/lib/tmux-audit-monitor.js +611 -0
- package/scripts/lib/tmux-group-colors.js +113 -0
- package/scripts/lib/tool-registry.yaml +241 -0
- package/scripts/lib/tool-shed.js +441 -0
- package/scripts/messaging-bridge.js +209 -1
- package/scripts/native-team-observer.js +219 -0
- package/scripts/obtain-context.js +14 -0
- package/scripts/ralph-loop.js +30 -5
- package/scripts/smart-detect.js +21 -0
- package/scripts/spawn-audit-sessions.js +877 -0
- package/scripts/team-manager.js +56 -16
- package/scripts/tmux-close-windows.sh +180 -0
- package/src/core/agents/a11y-analyzer-aria.md +155 -0
- package/src/core/agents/a11y-analyzer-forms.md +162 -0
- package/src/core/agents/a11y-analyzer-keyboard.md +175 -0
- package/src/core/agents/a11y-analyzer-semantic.md +153 -0
- package/src/core/agents/a11y-analyzer-visual.md +158 -0
- package/src/core/agents/a11y-consensus.md +248 -0
- package/src/core/agents/ads-audit-budget.md +181 -0
- package/src/core/agents/ads-audit-compliance.md +169 -0
- package/src/core/agents/ads-audit-creative.md +164 -0
- package/src/core/agents/ads-audit-google.md +226 -0
- package/src/core/agents/ads-audit-meta.md +183 -0
- package/src/core/agents/ads-audit-tracking.md +197 -0
- package/src/core/agents/ads-consensus.md +396 -0
- package/src/core/agents/ads-generate.md +145 -0
- package/src/core/agents/ads-performance-tracker.md +197 -0
- package/src/core/agents/api-quality-analyzer-conventions.md +148 -0
- package/src/core/agents/api-quality-analyzer-docs.md +176 -0
- package/src/core/agents/api-quality-analyzer-errors.md +183 -0
- package/src/core/agents/api-quality-analyzer-pagination.md +171 -0
- package/src/core/agents/api-quality-analyzer-versioning.md +143 -0
- package/src/core/agents/api-quality-consensus.md +214 -0
- package/src/core/agents/arch-analyzer-circular.md +148 -0
- package/src/core/agents/arch-analyzer-complexity.md +171 -0
- package/src/core/agents/arch-analyzer-coupling.md +146 -0
- package/src/core/agents/arch-analyzer-layering.md +151 -0
- package/src/core/agents/arch-analyzer-patterns.md +162 -0
- package/src/core/agents/arch-consensus.md +227 -0
- package/src/core/agents/brainstorm-analyzer-features.md +169 -0
- package/src/core/agents/brainstorm-analyzer-growth.md +161 -0
- package/src/core/agents/brainstorm-analyzer-integration.md +172 -0
- package/src/core/agents/brainstorm-analyzer-market.md +147 -0
- package/src/core/agents/brainstorm-analyzer-ux.md +167 -0
- package/src/core/agents/brainstorm-consensus.md +237 -0
- package/src/core/agents/completeness-consensus.md +5 -5
- package/src/core/agents/perf-consensus.md +2 -2
- package/src/core/agents/security-consensus.md +2 -2
- package/src/core/agents/seo-analyzer-content.md +167 -0
- package/src/core/agents/seo-analyzer-images.md +187 -0
- package/src/core/agents/seo-analyzer-performance.md +206 -0
- package/src/core/agents/seo-analyzer-schema.md +176 -0
- package/src/core/agents/seo-analyzer-sitemap.md +172 -0
- package/src/core/agents/seo-analyzer-technical.md +144 -0
- package/src/core/agents/seo-consensus.md +289 -0
- package/src/core/agents/test-consensus.md +2 -2
- package/src/core/commands/adr.md +1 -0
- package/src/core/commands/ads/audit.md +375 -0
- package/src/core/commands/ads/budget.md +97 -0
- package/src/core/commands/ads/competitor.md +112 -0
- package/src/core/commands/ads/creative.md +85 -0
- package/src/core/commands/ads/generate.md +238 -0
- package/src/core/commands/ads/google.md +112 -0
- package/src/core/commands/ads/health.md +327 -0
- package/src/core/commands/ads/landing.md +119 -0
- package/src/core/commands/ads/linkedin.md +112 -0
- package/src/core/commands/ads/meta.md +91 -0
- package/src/core/commands/ads/microsoft.md +115 -0
- package/src/core/commands/ads/plan.md +321 -0
- package/src/core/commands/ads/test-plan.md +317 -0
- package/src/core/commands/ads/tiktok.md +129 -0
- package/src/core/commands/ads/track.md +288 -0
- package/src/core/commands/ads/youtube.md +124 -0
- package/src/core/commands/ads.md +140 -0
- package/src/core/commands/assign.md +1 -0
- package/src/core/commands/audit.md +43 -6
- package/src/core/commands/babysit.md +315 -1266
- package/src/core/commands/baseline.md +1 -0
- package/src/core/commands/blockers.md +1 -0
- package/src/core/commands/board.md +1 -0
- package/src/core/commands/changelog.md +1 -0
- package/src/core/commands/choose.md +1 -0
- package/src/core/commands/ci.md +1 -0
- package/src/core/commands/code/accessibility.md +347 -0
- package/src/core/commands/code/api.md +297 -0
- package/src/core/commands/code/architecture.md +297 -0
- package/src/core/commands/{audit → code}/completeness.md +72 -25
- package/src/core/commands/{audit → code}/legal.md +63 -16
- package/src/core/commands/{audit → code}/logic.md +64 -16
- package/src/core/commands/{audit → code}/performance.md +67 -20
- package/src/core/commands/{audit → code}/security.md +69 -19
- package/src/core/commands/{audit → code}/test.md +67 -20
- package/src/core/commands/configure.md +1 -0
- package/src/core/commands/council.md +1 -0
- package/src/core/commands/deploy.md +1 -0
- package/src/core/commands/diagnose.md +1 -0
- package/src/core/commands/docs.md +1 -0
- package/src/core/commands/epic/edit.md +213 -0
- package/src/core/commands/epic.md +1 -0
- package/src/core/commands/export.md +238 -0
- package/src/core/commands/help.md +16 -1
- package/src/core/commands/{discovery → ideate}/brief.md +12 -12
- package/src/core/commands/{discovery/new.md → ideate/discover.md} +20 -16
- package/src/core/commands/ideate/features.md +496 -0
- package/src/core/commands/ideate/new.md +158 -124
- package/src/core/commands/impact.md +1 -0
- package/src/core/commands/learn/explain.md +118 -0
- package/src/core/commands/learn/glossary.md +135 -0
- package/src/core/commands/learn/patterns.md +138 -0
- package/src/core/commands/learn/tour.md +126 -0
- package/src/core/commands/migrate/codemods.md +151 -0
- package/src/core/commands/migrate/plan.md +131 -0
- package/src/core/commands/migrate/scan.md +114 -0
- package/src/core/commands/migrate/validate.md +119 -0
- package/src/core/commands/multi-expert.md +1 -0
- package/src/core/commands/pr.md +1 -0
- package/src/core/commands/review.md +1 -0
- package/src/core/commands/seo/audit.md +373 -0
- package/src/core/commands/seo/competitor.md +174 -0
- package/src/core/commands/seo/content.md +107 -0
- package/src/core/commands/seo/geo.md +229 -0
- package/src/core/commands/seo/hreflang.md +140 -0
- package/src/core/commands/seo/images.md +96 -0
- package/src/core/commands/seo/page.md +198 -0
- package/src/core/commands/seo/plan.md +163 -0
- package/src/core/commands/seo/programmatic.md +131 -0
- package/src/core/commands/seo/references/cwv-thresholds.md +64 -0
- package/src/core/commands/seo/references/eeat-framework.md +110 -0
- package/src/core/commands/seo/references/quality-gates.md +91 -0
- package/src/core/commands/seo/references/schema-types.md +102 -0
- package/src/core/commands/seo/schema.md +183 -0
- package/src/core/commands/seo/sitemap.md +97 -0
- package/src/core/commands/seo/technical.md +100 -0
- package/src/core/commands/seo.md +107 -0
- package/src/core/commands/skill/list.md +68 -212
- package/src/core/commands/skill/recommend.md +216 -0
- package/src/core/commands/sprint.md +1 -0
- package/src/core/commands/status/undo.md +191 -0
- package/src/core/commands/status.md +1 -0
- package/src/core/commands/story/edit.md +204 -0
- package/src/core/commands/story/view.md +29 -7
- package/src/core/commands/story-validate.md +1 -0
- package/src/core/commands/story.md +1 -0
- package/src/core/commands/tdd-next.md +238 -0
- package/src/core/commands/tdd.md +211 -0
- package/src/core/commands/team/start.md +10 -6
- package/src/core/commands/tests.md +1 -0
- package/src/core/commands/verify.md +27 -1
- package/src/core/commands/workflow.md +2 -0
- package/src/core/experts/_core-expertise.yaml +105 -0
- package/src/core/experts/analytics/expertise.yaml +5 -99
- package/src/core/experts/codebase-query/expertise.yaml +3 -72
- package/src/core/experts/compliance/expertise.yaml +6 -72
- package/src/core/experts/database/expertise.yaml +9 -52
- package/src/core/experts/documentation/expertise.yaml +7 -140
- package/src/core/experts/integrations/expertise.yaml +7 -127
- package/src/core/experts/mentor/expertise.yaml +8 -35
- package/src/core/experts/monitoring/expertise.yaml +7 -49
- package/src/core/experts/performance/expertise.yaml +1 -26
- package/src/core/experts/security/expertise.yaml +9 -34
- package/src/core/experts/ui/expertise.yaml +6 -36
- package/src/core/knowledge/ads/ad-audit-checklist-scoring.md +424 -0
- package/src/core/knowledge/ads/ad-optimization-logic.md +590 -0
- package/src/core/knowledge/ads/ad-technical-specifications.md +385 -0
- package/src/core/knowledge/ads/definitive-advertising-reference-2026.md +506 -0
- package/src/core/knowledge/ads/paid-advertising-research-2026.md +445 -0
- package/src/core/teams/backend.json +41 -0
- package/src/core/teams/frontend.json +41 -0
- package/src/core/teams/qa.json +41 -0
- package/src/core/teams/solo.json +35 -0
- package/src/core/templates/agileflow-metadata.json +20 -1
- package/tools/cli/commands/setup.js +85 -3
- package/tools/cli/commands/update.js +42 -0
- package/tools/cli/installers/ide/_base-ide.js +42 -5
- package/tools/cli/installers/ide/claude-code.js +71 -3
- package/tools/cli/lib/content-injector.js +160 -12
- package/tools/cli/lib/docs-setup.js +1 -1
- package/src/core/commands/skill/create.md +0 -698
- package/src/core/commands/skill/delete.md +0 -316
- package/src/core/commands/skill/edit.md +0 -359
- package/src/core/commands/skill/test.md +0 -394
- package/src/core/commands/skill/upgrade.md +0 -552
- 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
|
package/src/core/commands/pr.md
CHANGED
|
@@ -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
|