agileflow 3.4.3 → 4.0.0-alpha.2
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 +238 -473
- package/README.md +22 -114
- package/bin/agileflow.js +15 -0
- package/bin/hooks/pre-bash.js +35 -0
- package/bin/hooks/pre-compact.js +34 -0
- package/bin/hooks/pre-edit.js +32 -0
- package/bin/hooks/pre-write.js +32 -0
- package/bin/hooks/session-start.js +42 -0
- package/bin/hooks/stop.js +34 -0
- package/content/plugins/ads/plugin.yaml +14 -0
- package/content/plugins/audit/plugin.yaml +14 -0
- package/content/plugins/core/hooks/babysit-mentor-injector.js +55 -0
- package/content/plugins/core/hooks/context-loader.js +169 -0
- package/content/plugins/core/hooks/damage-control-bash.js +78 -0
- package/content/plugins/core/hooks/damage-control-edit.js +76 -0
- package/content/plugins/core/hooks/damage-control-patterns.yaml +100 -0
- package/content/plugins/core/hooks/damage-control-write.js +72 -0
- package/content/plugins/core/hooks/pre-compact-state.js +90 -0
- package/content/plugins/core/hooks/session-welcome.js +19 -0
- package/content/plugins/core/plugin.yaml +82 -0
- package/content/plugins/core/skills/agileflow-adr/SKILL.md +179 -0
- package/content/plugins/core/skills/agileflow-babysit-mentor/SKILL.md +144 -0
- package/content/plugins/core/skills/agileflow-epic-planner/SKILL.md +179 -0
- package/content/plugins/core/skills/agileflow-status-updater/SKILL.md +132 -0
- package/content/plugins/core/skills/agileflow-story-writer/SKILL.md +200 -0
- package/content/plugins/council/plugin.yaml +14 -0
- package/content/plugins/seo/plugin.yaml +14 -0
- package/package.json +29 -49
- package/src/cli/commands/doctor.js +159 -0
- package/src/cli/commands/hook.js +80 -0
- package/src/cli/commands/setup.js +292 -0
- package/src/cli/commands/status.js +47 -0
- package/src/cli/commands/update.js +83 -0
- package/src/cli/index.js +73 -0
- package/src/cli/wizard/behaviors-picker.js +108 -0
- package/src/cli/wizard/ide-picker.js +57 -0
- package/src/cli/wizard/personalization.js +64 -0
- package/src/cli/wizard/plugin-picker.js +106 -0
- package/src/lib/hash.js +41 -0
- package/src/runtime/config/defaults.js +61 -0
- package/src/runtime/config/loader.js +117 -0
- package/src/runtime/config/schema.json +99 -0
- package/src/runtime/config/writer.js +55 -0
- package/src/runtime/hooks/aggregator.js +157 -0
- package/src/runtime/hooks/chain.js +93 -0
- package/src/runtime/hooks/logger.js +68 -0
- package/src/runtime/hooks/manifest-loader.js +228 -0
- package/src/runtime/hooks/orchestrator.js +322 -0
- package/src/runtime/ide/capabilities.js +111 -0
- package/src/runtime/ide/claude-code-settings.js +234 -0
- package/src/runtime/ide/claude-code-skills.js +202 -0
- package/src/runtime/installer/file-index.js +112 -0
- package/src/runtime/installer/install.js +329 -0
- package/src/runtime/installer/stash.js +61 -0
- package/src/runtime/installer/sync-engine.js +205 -0
- package/src/runtime/plugins/registry.js +132 -0
- package/src/runtime/plugins/resolver.js +138 -0
- package/src/runtime/plugins/validator.js +196 -0
- package/src/runtime/skills/validator.js +335 -0
- package/lib/README.md +0 -178
- package/lib/api-routes.js +0 -625
- package/lib/api-server.js +0 -278
- package/lib/cache-provider.js +0 -155
- package/lib/codebase-indexer.js +0 -819
- package/lib/colors.generated.js +0 -117
- package/lib/colors.js +0 -341
- package/lib/consent.js +0 -232
- package/lib/content-sanitizer.js +0 -464
- package/lib/correlation.js +0 -277
- package/lib/drivers/claude-driver.ts +0 -312
- package/lib/drivers/codex-driver.ts +0 -464
- package/lib/drivers/driver-manager.ts +0 -159
- package/lib/drivers/gemini-driver.ts +0 -498
- package/lib/drivers/index.ts +0 -17
- package/lib/error-codes.js +0 -590
- package/lib/errors.js +0 -670
- package/lib/feature-flags.js +0 -171
- package/lib/feedback.js +0 -595
- package/lib/file-cache.js +0 -541
- package/lib/flag-detection.js +0 -344
- package/lib/format-error.js +0 -156
- package/lib/gate-runner.js +0 -282
- package/lib/generator-factory.js +0 -333
- package/lib/git-operations.js +0 -266
- package/lib/lazy-require.js +0 -59
- package/lib/lock-file.js +0 -144
- package/lib/logger.js +0 -106
- package/lib/merge-operations.js +0 -1006
- package/lib/path-resolver.js +0 -544
- package/lib/path-utils.js +0 -49
- package/lib/paths.js +0 -291
- package/lib/placeholder-registry.js +0 -822
- package/lib/process-executor.js +0 -214
- package/lib/progress.js +0 -334
- package/lib/protocol/driver.ts +0 -354
- package/lib/protocol/index.ts +0 -12
- package/lib/protocol/ir.ts +0 -271
- package/lib/registry-cache.js +0 -80
- package/lib/registry-di.js +0 -358
- package/lib/result-schema.js +0 -363
- package/lib/result.js +0 -210
- package/lib/session-display.js +0 -331
- package/lib/session-operations.js +0 -611
- package/lib/session-registry.js +0 -484
- package/lib/session-state-machine.js +0 -465
- package/lib/session-switching.js +0 -191
- package/lib/skill-loader.js +0 -213
- package/lib/smart-json-file.js +0 -682
- package/lib/state-machine.js +0 -286
- package/lib/table-formatter.js +0 -519
- package/lib/template-loader.js +0 -143
- package/lib/transient-status.js +0 -374
- package/lib/ui-manager.js +0 -612
- package/lib/validate-args.js +0 -213
- package/lib/validate-commands.js +0 -308
- package/lib/validate-names.js +0 -143
- package/lib/validate-paths.js +0 -434
- package/lib/validate.js +0 -134
- package/lib/worktree-operations.js +0 -201
- package/lib/yaml-utils.js +0 -164
- package/scripts/README.md +0 -267
- package/scripts/af +0 -34
- package/scripts/agent-loop.js +0 -879
- package/scripts/agileflow-configure.js +0 -368
- package/scripts/agileflow-statusline.sh +0 -857
- package/scripts/agileflow-welcome.js +0 -2246
- package/scripts/api-server-runner.js +0 -177
- package/scripts/archive-completed-stories.sh +0 -308
- package/scripts/auto-self-improve.js +0 -326
- package/scripts/automation-run-due.js +0 -128
- package/scripts/babysit-clear-restore.js +0 -154
- package/scripts/babysit-context-restore.js +0 -89
- package/scripts/backfill-ideation-status.js +0 -128
- package/scripts/batch-pmap-loop.js +0 -551
- package/scripts/check-sessions.js +0 -116
- package/scripts/check-update.js +0 -282
- package/scripts/ci-summary.js +0 -294
- package/scripts/claude-smart.sh +0 -85
- package/scripts/claude-tmux.sh +0 -737
- package/scripts/claude-watchdog.sh +0 -225
- package/scripts/clear-active-command.js +0 -48
- package/scripts/compress-status.sh +0 -116
- package/scripts/context-loader.js +0 -310
- package/scripts/damage-control/bash-tool-damage-control.js +0 -22
- package/scripts/damage-control/edit-tool-damage-control.js +0 -19
- package/scripts/damage-control/patterns.yaml +0 -227
- package/scripts/damage-control/write-tool-damage-control.js +0 -19
- package/scripts/damage-control-bash.js +0 -51
- package/scripts/damage-control-edit.js +0 -48
- package/scripts/damage-control-multi-agent.js +0 -231
- package/scripts/damage-control-write.js +0 -48
- package/scripts/dependency-check.js +0 -311
- package/scripts/document-repl.js +0 -793
- package/scripts/expertise-metrics.sh +0 -264
- package/scripts/generate-all.sh +0 -77
- package/scripts/generate-colors.js +0 -314
- package/scripts/generators/agent-registry.js +0 -183
- package/scripts/generators/command-registry.js +0 -166
- package/scripts/generators/index.js +0 -85
- package/scripts/generators/inject-babysit.js +0 -191
- package/scripts/generators/inject-help.js +0 -125
- package/scripts/generators/inject-readme.js +0 -166
- package/scripts/generators/skill-registry.js +0 -188
- package/scripts/get-env.js +0 -225
- package/scripts/init.sh +0 -76
- package/scripts/lib/README-portable-tasks.md +0 -424
- package/scripts/lib/ac-test-matcher.js +0 -452
- package/scripts/lib/audit-cleanup.js +0 -250
- package/scripts/lib/audit-registry.js +0 -340
- package/scripts/lib/automation-registry.js +0 -544
- package/scripts/lib/automation-runner.js +0 -476
- package/scripts/lib/browser-qa-evidence.js +0 -409
- package/scripts/lib/browser-qa-status.js +0 -192
- package/scripts/lib/bus-utils.js +0 -473
- package/scripts/lib/colors.generated.sh +0 -82
- package/scripts/lib/colors.sh +0 -46
- package/scripts/lib/command-prereqs.js +0 -280
- package/scripts/lib/concurrency-limiter.js +0 -511
- package/scripts/lib/configure-detect.js +0 -596
- package/scripts/lib/configure-features.js +0 -1927
- package/scripts/lib/configure-repair.js +0 -327
- package/scripts/lib/configure-utils.js +0 -114
- package/scripts/lib/context-formatter.js +0 -1158
- package/scripts/lib/context-loader.js +0 -840
- package/scripts/lib/counter.js +0 -103
- package/scripts/lib/damage-control-utils.js +0 -619
- package/scripts/lib/feature-catalog.js +0 -332
- package/scripts/lib/file-lock.js +0 -392
- package/scripts/lib/file-tracking.js +0 -735
- package/scripts/lib/frontmatter-parser.js +0 -133
- package/scripts/lib/gate-enforcer.js +0 -295
- package/scripts/lib/hook-metrics.js +0 -324
- package/scripts/lib/ideation-index.js +0 -1205
- package/scripts/lib/json-utils.sh +0 -162
- package/scripts/lib/lifecycle-detector.js +0 -125
- package/scripts/lib/model-profiles.js +0 -118
- package/scripts/lib/portable-tasks-cli.js +0 -274
- package/scripts/lib/portable-tasks.js +0 -479
- package/scripts/lib/process-cleanup.js +0 -527
- package/scripts/lib/quality-gates.js +0 -788
- package/scripts/lib/scale-detector.js +0 -396
- package/scripts/lib/sessionRegistry.js +0 -678
- package/scripts/lib/signal-detectors.js +0 -867
- package/scripts/lib/skill-catalog.js +0 -557
- package/scripts/lib/skill-recommender.js +0 -311
- package/scripts/lib/state-migrator.js +0 -353
- package/scripts/lib/status-task-bridge.js +0 -522
- package/scripts/lib/status-writer.js +0 -255
- package/scripts/lib/story-claiming.js +0 -704
- package/scripts/lib/story-state-machine.js +0 -437
- package/scripts/lib/sync-ideation-status.js +0 -291
- package/scripts/lib/task-registry-cache.js +0 -490
- package/scripts/lib/task-registry.js +0 -1191
- package/scripts/lib/task-sync.js +0 -230
- package/scripts/lib/tdd-phase-manager.js +0 -455
- package/scripts/lib/team-events.js +0 -510
- package/scripts/lib/tmux-audit-monitor.js +0 -612
- package/scripts/lib/tmux-group-colors.js +0 -113
- package/scripts/lib/tool-registry.yaml +0 -241
- package/scripts/lib/tool-shed.js +0 -441
- package/scripts/lib/validation-registry.js +0 -177
- package/scripts/messaging-bridge.js +0 -561
- package/scripts/migrate-ideation-index.js +0 -553
- package/scripts/native-team-observer.js +0 -219
- package/scripts/obtain-context.js +0 -272
- package/scripts/pre-push-check.sh +0 -46
- package/scripts/precompact-context.sh +0 -306
- package/scripts/query-codebase.js +0 -543
- package/scripts/ralph-loop.js +0 -1278
- package/scripts/resume-session.sh +0 -121
- package/scripts/screenshot-verifier.js +0 -215
- package/scripts/session-boundary.js +0 -138
- package/scripts/session-coordinator.sh +0 -232
- package/scripts/session-manager.js +0 -546
- package/scripts/smart-detect.js +0 -449
- package/scripts/spawn-audit-sessions.js +0 -877
- package/scripts/spawn-parallel.js +0 -751
- package/scripts/strip-ai-attribution.js +0 -63
- package/scripts/task-completed-gate.js +0 -237
- package/scripts/team-manager.js +0 -596
- package/scripts/team-status-display.js +0 -200
- package/scripts/teammate-idle-gate.js +0 -237
- package/scripts/test-session-boundary.js +0 -80
- package/scripts/tmux-close-windows.sh +0 -180
- package/scripts/tmux-restore-window.sh +0 -67
- package/scripts/tmux-save-closed-window.sh +0 -35
- package/scripts/tui/App.js +0 -151
- package/scripts/tui/Dashboard.js +0 -277
- package/scripts/tui/blessed/data/watcher.js +0 -180
- package/scripts/tui/blessed/index.js +0 -244
- package/scripts/tui/blessed/panels/output.js +0 -101
- package/scripts/tui/blessed/panels/sessions.js +0 -150
- package/scripts/tui/blessed/panels/trace.js +0 -97
- package/scripts/tui/blessed/ui/help.js +0 -77
- package/scripts/tui/blessed/ui/screen.js +0 -52
- package/scripts/tui/blessed/ui/statusbar.js +0 -47
- package/scripts/tui/blessed/ui/tabbar.js +0 -99
- package/scripts/tui/index.js +0 -70
- package/scripts/tui/lib/crashRecovery.js +0 -304
- package/scripts/tui/lib/eventStream.js +0 -309
- package/scripts/tui/lib/keyboard.js +0 -261
- package/scripts/tui/lib/loopControl.js +0 -371
- package/scripts/tui/panels/OutputPanel.js +0 -240
- package/scripts/tui/panels/SessionPanel.js +0 -170
- package/scripts/tui/panels/TracePanel.js +0 -298
- package/scripts/tui/simple-tui.js +0 -510
- package/scripts/validate-expertise.sh +0 -263
- package/scripts/validate-tokens.sh +0 -73
- package/scripts/validators/README.md +0 -143
- package/scripts/validators/component-validator.js +0 -239
- package/scripts/validators/json-schema-validator.js +0 -186
- package/scripts/validators/markdown-validator.js +0 -152
- package/scripts/validators/migration-validator.js +0 -129
- package/scripts/validators/security-validator.js +0 -380
- package/scripts/validators/story-format-validator.js +0 -197
- package/scripts/validators/test-result-validator.js +0 -114
- package/scripts/validators/workflow-validator.js +0 -247
- package/scripts/welcome-deferred.js +0 -437
- package/scripts/worktree-create.sh +0 -111
- package/src/core/agents/a11y-analyzer-aria.md +0 -155
- package/src/core/agents/a11y-analyzer-forms.md +0 -162
- package/src/core/agents/a11y-analyzer-keyboard.md +0 -175
- package/src/core/agents/a11y-analyzer-semantic.md +0 -153
- package/src/core/agents/a11y-analyzer-visual.md +0 -158
- package/src/core/agents/a11y-consensus.md +0 -248
- package/src/core/agents/accessibility.md +0 -515
- package/src/core/agents/adr-writer.md +0 -463
- package/src/core/agents/ads-audit-budget.md +0 -181
- package/src/core/agents/ads-audit-compliance.md +0 -169
- package/src/core/agents/ads-audit-creative.md +0 -164
- package/src/core/agents/ads-audit-google.md +0 -226
- package/src/core/agents/ads-audit-meta.md +0 -183
- package/src/core/agents/ads-audit-tracking.md +0 -197
- package/src/core/agents/ads-consensus.md +0 -396
- package/src/core/agents/ads-generate.md +0 -145
- package/src/core/agents/ads-performance-tracker.md +0 -197
- package/src/core/agents/analytics.md +0 -617
- package/src/core/agents/api-quality-analyzer-conventions.md +0 -148
- package/src/core/agents/api-quality-analyzer-docs.md +0 -176
- package/src/core/agents/api-quality-analyzer-errors.md +0 -183
- package/src/core/agents/api-quality-analyzer-pagination.md +0 -171
- package/src/core/agents/api-quality-analyzer-versioning.md +0 -143
- package/src/core/agents/api-quality-consensus.md +0 -214
- package/src/core/agents/api-validator.md +0 -183
- package/src/core/agents/api.md +0 -665
- package/src/core/agents/arch-analyzer-circular.md +0 -148
- package/src/core/agents/arch-analyzer-complexity.md +0 -171
- package/src/core/agents/arch-analyzer-coupling.md +0 -146
- package/src/core/agents/arch-analyzer-layering.md +0 -151
- package/src/core/agents/arch-analyzer-patterns.md +0 -162
- package/src/core/agents/arch-consensus.md +0 -227
- package/src/core/agents/brainstorm-analyzer-features.md +0 -169
- package/src/core/agents/brainstorm-analyzer-growth.md +0 -161
- package/src/core/agents/brainstorm-analyzer-integration.md +0 -172
- package/src/core/agents/brainstorm-analyzer-market.md +0 -147
- package/src/core/agents/brainstorm-analyzer-ux.md +0 -167
- package/src/core/agents/brainstorm-consensus.md +0 -237
- package/src/core/agents/browser-qa.md +0 -328
- package/src/core/agents/ci.md +0 -511
- package/src/core/agents/code-reviewer.md +0 -288
- package/src/core/agents/codebase-query.md +0 -266
- package/src/core/agents/completeness-analyzer-api.md +0 -190
- package/src/core/agents/completeness-analyzer-conditional.md +0 -201
- package/src/core/agents/completeness-analyzer-handlers.md +0 -159
- package/src/core/agents/completeness-analyzer-imports.md +0 -159
- package/src/core/agents/completeness-analyzer-routes.md +0 -182
- package/src/core/agents/completeness-analyzer-state.md +0 -188
- package/src/core/agents/completeness-analyzer-stubs.md +0 -198
- package/src/core/agents/completeness-consensus.md +0 -286
- package/src/core/agents/compliance.md +0 -509
- package/src/core/agents/council-advocate.md +0 -206
- package/src/core/agents/council-analyst.md +0 -252
- package/src/core/agents/council-optimist.md +0 -170
- package/src/core/agents/database.md +0 -601
- package/src/core/agents/datamigration.md +0 -699
- package/src/core/agents/design.md +0 -525
- package/src/core/agents/devops.md +0 -720
- package/src/core/agents/documentation.md +0 -504
- package/src/core/agents/epic-planner.md +0 -480
- package/src/core/agents/error-analyzer.md +0 -201
- package/src/core/agents/integrations.md +0 -603
- package/src/core/agents/legal-analyzer-a11y.md +0 -110
- package/src/core/agents/legal-analyzer-ai.md +0 -117
- package/src/core/agents/legal-analyzer-consumer.md +0 -108
- package/src/core/agents/legal-analyzer-content.md +0 -113
- package/src/core/agents/legal-analyzer-international.md +0 -115
- package/src/core/agents/legal-analyzer-licensing.md +0 -115
- package/src/core/agents/legal-analyzer-privacy.md +0 -108
- package/src/core/agents/legal-analyzer-security.md +0 -112
- package/src/core/agents/legal-analyzer-terms.md +0 -111
- package/src/core/agents/legal-consensus.md +0 -242
- package/src/core/agents/logic-analyzer-edge.md +0 -170
- package/src/core/agents/logic-analyzer-flow.md +0 -253
- package/src/core/agents/logic-analyzer-invariant.md +0 -206
- package/src/core/agents/logic-analyzer-race.md +0 -266
- package/src/core/agents/logic-analyzer-type.md +0 -217
- package/src/core/agents/logic-consensus.md +0 -253
- package/src/core/agents/mentor.md +0 -654
- package/src/core/agents/mobile.md +0 -501
- package/src/core/agents/monitoring.md +0 -537
- package/src/core/agents/multi-expert.md +0 -311
- package/src/core/agents/orchestrator.md +0 -749
- package/src/core/agents/perf-analyzer-assets.md +0 -174
- package/src/core/agents/perf-analyzer-bundle.md +0 -165
- package/src/core/agents/perf-analyzer-caching.md +0 -160
- package/src/core/agents/perf-analyzer-compute.md +0 -165
- package/src/core/agents/perf-analyzer-memory.md +0 -182
- package/src/core/agents/perf-analyzer-network.md +0 -157
- package/src/core/agents/perf-analyzer-queries.md +0 -155
- package/src/core/agents/perf-analyzer-rendering.md +0 -156
- package/src/core/agents/perf-consensus.md +0 -280
- package/src/core/agents/performance.md +0 -492
- package/src/core/agents/product.md +0 -535
- package/src/core/agents/qa.md +0 -765
- package/src/core/agents/readme-updater.md +0 -579
- package/src/core/agents/refactor.md +0 -558
- package/src/core/agents/research.md +0 -453
- package/src/core/agents/rlm-subcore.md +0 -207
- package/src/core/agents/schema-validator.md +0 -454
- package/src/core/agents/security-analyzer-api.md +0 -199
- package/src/core/agents/security-analyzer-auth.md +0 -160
- package/src/core/agents/security-analyzer-authz.md +0 -168
- package/src/core/agents/security-analyzer-deps.md +0 -147
- package/src/core/agents/security-analyzer-infra.md +0 -176
- package/src/core/agents/security-analyzer-injection.md +0 -148
- package/src/core/agents/security-analyzer-input.md +0 -191
- package/src/core/agents/security-analyzer-secrets.md +0 -175
- package/src/core/agents/security-consensus.md +0 -276
- package/src/core/agents/security.md +0 -486
- package/src/core/agents/seo-analyzer-content.md +0 -167
- package/src/core/agents/seo-analyzer-images.md +0 -187
- package/src/core/agents/seo-analyzer-performance.md +0 -206
- package/src/core/agents/seo-analyzer-schema.md +0 -176
- package/src/core/agents/seo-analyzer-sitemap.md +0 -172
- package/src/core/agents/seo-analyzer-technical.md +0 -144
- package/src/core/agents/seo-consensus.md +0 -289
- package/src/core/agents/team-coordinator.md +0 -333
- package/src/core/agents/team-lead.md +0 -171
- package/src/core/agents/test-analyzer-assertions.md +0 -181
- package/src/core/agents/test-analyzer-coverage.md +0 -183
- package/src/core/agents/test-analyzer-fragility.md +0 -185
- package/src/core/agents/test-analyzer-integration.md +0 -155
- package/src/core/agents/test-analyzer-maintenance.md +0 -173
- package/src/core/agents/test-analyzer-mocking.md +0 -178
- package/src/core/agents/test-analyzer-patterns.md +0 -189
- package/src/core/agents/test-analyzer-structure.md +0 -177
- package/src/core/agents/test-consensus.md +0 -294
- package/src/core/agents/testing.md +0 -527
- package/src/core/agents/ui-validator.md +0 -331
- package/src/core/agents/ui.md +0 -1227
- package/src/core/commands/adr/list.md +0 -191
- package/src/core/commands/adr/update.md +0 -258
- package/src/core/commands/adr/view.md +0 -274
- package/src/core/commands/adr.md +0 -394
- package/src/core/commands/ads/audit.md +0 -453
- package/src/core/commands/ads/budget.md +0 -97
- package/src/core/commands/ads/competitor.md +0 -112
- package/src/core/commands/ads/creative.md +0 -85
- package/src/core/commands/ads/generate.md +0 -238
- package/src/core/commands/ads/google.md +0 -112
- package/src/core/commands/ads/health.md +0 -327
- package/src/core/commands/ads/landing.md +0 -119
- package/src/core/commands/ads/linkedin.md +0 -112
- package/src/core/commands/ads/meta.md +0 -91
- package/src/core/commands/ads/microsoft.md +0 -115
- package/src/core/commands/ads/plan.md +0 -321
- package/src/core/commands/ads/test-plan.md +0 -317
- package/src/core/commands/ads/tiktok.md +0 -129
- package/src/core/commands/ads/track.md +0 -288
- package/src/core/commands/ads/youtube.md +0 -124
- package/src/core/commands/ads.md +0 -140
- package/src/core/commands/agent.md +0 -256
- package/src/core/commands/api.md +0 -267
- package/src/core/commands/assign.md +0 -369
- package/src/core/commands/audit.md +0 -531
- package/src/core/commands/auto.md +0 -556
- package/src/core/commands/automate.md +0 -415
- package/src/core/commands/babysit.md +0 -643
- package/src/core/commands/baseline.md +0 -743
- package/src/core/commands/batch.md +0 -551
- package/src/core/commands/blockers.md +0 -602
- package/src/core/commands/board.md +0 -509
- package/src/core/commands/browser-qa.md +0 -240
- package/src/core/commands/changelog.md +0 -582
- package/src/core/commands/choose.md +0 -430
- package/src/core/commands/ci.md +0 -330
- package/src/core/commands/code/accessibility.md +0 -363
- package/src/core/commands/code/api.md +0 -313
- package/src/core/commands/code/architecture.md +0 -313
- package/src/core/commands/code/completeness.md +0 -519
- package/src/core/commands/code/legal.md +0 -509
- package/src/core/commands/code/logic.md +0 -432
- package/src/core/commands/code/performance.md +0 -506
- package/src/core/commands/code/security.md +0 -509
- package/src/core/commands/code/test.md +0 -505
- package/src/core/commands/compress.md +0 -408
- package/src/core/commands/configure.md +0 -1159
- package/src/core/commands/context/export.md +0 -296
- package/src/core/commands/context/full.md +0 -353
- package/src/core/commands/context/note.md +0 -380
- package/src/core/commands/council.md +0 -592
- package/src/core/commands/debt.md +0 -491
- package/src/core/commands/deploy.md +0 -864
- package/src/core/commands/deps.md +0 -728
- package/src/core/commands/diagnose.md +0 -404
- package/src/core/commands/docs.md +0 -469
- package/src/core/commands/epic/edit.md +0 -213
- package/src/core/commands/epic/list.md +0 -190
- package/src/core/commands/epic/view.md +0 -267
- package/src/core/commands/epic.md +0 -477
- package/src/core/commands/export.md +0 -238
- package/src/core/commands/feedback.md +0 -603
- package/src/core/commands/handoff.md +0 -386
- package/src/core/commands/help.md +0 -194
- package/src/core/commands/ideate/brief.md +0 -363
- package/src/core/commands/ideate/discover.md +0 -399
- package/src/core/commands/ideate/features.md +0 -497
- package/src/core/commands/ideate/history.md +0 -403
- package/src/core/commands/ideate/new.md +0 -900
- package/src/core/commands/impact.md +0 -407
- package/src/core/commands/install.md +0 -529
- package/src/core/commands/learn/explain.md +0 -118
- package/src/core/commands/learn/glossary.md +0 -135
- package/src/core/commands/learn/patterns.md +0 -138
- package/src/core/commands/learn/tour.md +0 -126
- package/src/core/commands/maintain.md +0 -558
- package/src/core/commands/metrics.md +0 -844
- package/src/core/commands/migrate/codemods.md +0 -151
- package/src/core/commands/migrate/plan.md +0 -131
- package/src/core/commands/migrate/scan.md +0 -114
- package/src/core/commands/migrate/validate.md +0 -119
- package/src/core/commands/multi-expert.md +0 -447
- package/src/core/commands/packages.md +0 -535
- package/src/core/commands/pr.md +0 -337
- package/src/core/commands/readme-sync.md +0 -329
- package/src/core/commands/research/analyze.md +0 -798
- package/src/core/commands/research/ask.md +0 -864
- package/src/core/commands/research/import.md +0 -1025
- package/src/core/commands/research/list.md +0 -273
- package/src/core/commands/research/synthesize.md +0 -928
- package/src/core/commands/research/view.md +0 -323
- package/src/core/commands/retro.md +0 -795
- package/src/core/commands/review.md +0 -694
- package/src/core/commands/rlm.md +0 -446
- package/src/core/commands/roadmap/analyze.md +0 -400
- package/src/core/commands/rpi.md +0 -633
- package/src/core/commands/seo/audit.md +0 -444
- package/src/core/commands/seo/competitor.md +0 -174
- package/src/core/commands/seo/content.md +0 -107
- package/src/core/commands/seo/geo.md +0 -229
- package/src/core/commands/seo/hreflang.md +0 -140
- package/src/core/commands/seo/images.md +0 -96
- package/src/core/commands/seo/page.md +0 -198
- package/src/core/commands/seo/plan.md +0 -163
- package/src/core/commands/seo/programmatic.md +0 -131
- package/src/core/commands/seo/references/cwv-thresholds.md +0 -64
- package/src/core/commands/seo/references/eeat-framework.md +0 -110
- package/src/core/commands/seo/references/quality-gates.md +0 -91
- package/src/core/commands/seo/references/schema-types.md +0 -102
- package/src/core/commands/seo/schema.md +0 -183
- package/src/core/commands/seo/sitemap.md +0 -97
- package/src/core/commands/seo/technical.md +0 -100
- package/src/core/commands/seo.md +0 -107
- package/src/core/commands/session/cleanup.md +0 -452
- package/src/core/commands/session/end.md +0 -865
- package/src/core/commands/session/history.md +0 -293
- package/src/core/commands/session/init.md +0 -210
- package/src/core/commands/session/new.md +0 -827
- package/src/core/commands/session/resume.md +0 -291
- package/src/core/commands/session/spawn.md +0 -205
- package/src/core/commands/session/status.md +0 -274
- package/src/core/commands/skill/list.md +0 -139
- package/src/core/commands/skill/recommend.md +0 -216
- package/src/core/commands/sprint.md +0 -714
- package/src/core/commands/status/undo.md +0 -191
- package/src/core/commands/status.md +0 -423
- package/src/core/commands/story/edit.md +0 -204
- package/src/core/commands/story/list.md +0 -199
- package/src/core/commands/story/view.md +0 -312
- package/src/core/commands/story-validate.md +0 -491
- package/src/core/commands/story.md +0 -465
- package/src/core/commands/tdd-next.md +0 -238
- package/src/core/commands/tdd.md +0 -211
- package/src/core/commands/team/guide.md +0 -688
- package/src/core/commands/team/list.md +0 -59
- package/src/core/commands/team/start.md +0 -130
- package/src/core/commands/team/status.md +0 -66
- package/src/core/commands/team/stop.md +0 -78
- package/src/core/commands/template.md +0 -644
- package/src/core/commands/tests.md +0 -731
- package/src/core/commands/update.md +0 -591
- package/src/core/commands/validate-expertise.md +0 -305
- package/src/core/commands/velocity.md +0 -630
- package/src/core/commands/verify.md +0 -534
- package/src/core/commands/whats-new.md +0 -201
- package/src/core/commands/workflow.md +0 -449
- package/src/core/council/sessions/.gitkeep +0 -0
- package/src/core/council/shared_reasoning.template.md +0 -106
- package/src/core/experts/README.md +0 -236
- package/src/core/experts/_core-expertise.yaml +0 -105
- package/src/core/experts/accessibility/expertise.yaml +0 -115
- package/src/core/experts/accessibility/question.md +0 -41
- package/src/core/experts/accessibility/self-improve.md +0 -45
- package/src/core/experts/accessibility/workflow.md +0 -59
- package/src/core/experts/adr-writer/expertise.yaml +0 -138
- package/src/core/experts/adr-writer/question.md +0 -56
- package/src/core/experts/adr-writer/self-improve.md +0 -106
- package/src/core/experts/adr-writer/workflow.md +0 -184
- package/src/core/experts/analytics/expertise.yaml +0 -119
- package/src/core/experts/analytics/question.md +0 -74
- package/src/core/experts/analytics/self-improve.md +0 -163
- package/src/core/experts/analytics/workflow.md +0 -272
- package/src/core/experts/api/expertise.yaml +0 -124
- package/src/core/experts/api/question.md +0 -74
- package/src/core/experts/api/self-improve.md +0 -122
- package/src/core/experts/api/workflow.md +0 -248
- package/src/core/experts/ci/expertise.yaml +0 -106
- package/src/core/experts/ci/question.md +0 -69
- package/src/core/experts/ci/self-improve.md +0 -100
- package/src/core/experts/ci/workflow.md +0 -145
- package/src/core/experts/codebase-query/expertise.yaml +0 -121
- package/src/core/experts/codebase-query/question.md +0 -73
- package/src/core/experts/codebase-query/self-improve.md +0 -105
- package/src/core/experts/compliance/expertise.yaml +0 -101
- package/src/core/experts/compliance/question.md +0 -56
- package/src/core/experts/compliance/self-improve.md +0 -106
- package/src/core/experts/compliance/workflow.md +0 -184
- package/src/core/experts/database/expertise.yaml +0 -109
- package/src/core/experts/database/question.md +0 -74
- package/src/core/experts/database/self-improve.md +0 -121
- package/src/core/experts/database/workflow.md +0 -234
- package/src/core/experts/datamigration/expertise.yaml +0 -141
- package/src/core/experts/datamigration/question.md +0 -56
- package/src/core/experts/datamigration/self-improve.md +0 -106
- package/src/core/experts/datamigration/workflow.md +0 -184
- package/src/core/experts/design/expertise.yaml +0 -116
- package/src/core/experts/design/question.md +0 -56
- package/src/core/experts/design/self-improve.md +0 -106
- package/src/core/experts/design/workflow.md +0 -184
- package/src/core/experts/devops/expertise.yaml +0 -116
- package/src/core/experts/devops/question.md +0 -68
- package/src/core/experts/devops/self-improve.md +0 -102
- package/src/core/experts/devops/workflow.md +0 -142
- package/src/core/experts/documentation/expertise.yaml +0 -126
- package/src/core/experts/documentation/question.md +0 -41
- package/src/core/experts/documentation/self-improve.md +0 -45
- package/src/core/experts/documentation/workflow.md +0 -55
- package/src/core/experts/epic-planner/expertise.yaml +0 -144
- package/src/core/experts/epic-planner/question.md +0 -56
- package/src/core/experts/epic-planner/self-improve.md +0 -106
- package/src/core/experts/epic-planner/workflow.md +0 -184
- package/src/core/experts/integrations/expertise.yaml +0 -113
- package/src/core/experts/integrations/question.md +0 -74
- package/src/core/experts/integrations/self-improve.md +0 -151
- package/src/core/experts/integrations/workflow.md +0 -246
- package/src/core/experts/mentor/expertise.yaml +0 -125
- package/src/core/experts/mentor/question.md +0 -56
- package/src/core/experts/mentor/self-improve.md +0 -106
- package/src/core/experts/mentor/workflow.md +0 -184
- package/src/core/experts/mobile/expertise.yaml +0 -136
- package/src/core/experts/mobile/question.md +0 -72
- package/src/core/experts/mobile/self-improve.md +0 -140
- package/src/core/experts/mobile/workflow.md +0 -240
- package/src/core/experts/monitoring/expertise.yaml +0 -132
- package/src/core/experts/monitoring/question.md +0 -76
- package/src/core/experts/monitoring/self-improve.md +0 -150
- package/src/core/experts/monitoring/workflow.md +0 -264
- package/src/core/experts/performance/expertise.yaml +0 -68
- package/src/core/experts/performance/question.md +0 -41
- package/src/core/experts/performance/self-improve.md +0 -45
- package/src/core/experts/performance/workflow.md +0 -61
- package/src/core/experts/product/expertise.yaml +0 -143
- package/src/core/experts/product/question.md +0 -56
- package/src/core/experts/product/self-improve.md +0 -106
- package/src/core/experts/product/workflow.md +0 -184
- package/src/core/experts/qa/expertise.yaml +0 -110
- package/src/core/experts/qa/question.md +0 -56
- package/src/core/experts/qa/self-improve.md +0 -106
- package/src/core/experts/qa/workflow.md +0 -184
- package/src/core/experts/readme-updater/expertise.yaml +0 -141
- package/src/core/experts/readme-updater/question.md +0 -56
- package/src/core/experts/readme-updater/self-improve.md +0 -106
- package/src/core/experts/readme-updater/workflow.md +0 -184
- package/src/core/experts/refactor/expertise.yaml +0 -135
- package/src/core/experts/refactor/question.md +0 -41
- package/src/core/experts/refactor/self-improve.md +0 -45
- package/src/core/experts/refactor/workflow.md +0 -57
- package/src/core/experts/research/expertise.yaml +0 -143
- package/src/core/experts/research/question.md +0 -56
- package/src/core/experts/research/self-improve.md +0 -106
- package/src/core/experts/research/workflow.md +0 -184
- package/src/core/experts/security/expertise.yaml +0 -117
- package/src/core/experts/security/question.md +0 -77
- package/src/core/experts/security/self-improve.md +0 -102
- package/src/core/experts/security/workflow.md +0 -152
- package/src/core/experts/templates/expertise-template.yaml +0 -67
- package/src/core/experts/templates/question-template.md +0 -56
- package/src/core/experts/templates/self-improve-template.md +0 -106
- package/src/core/experts/templates/workflow-template.md +0 -184
- package/src/core/experts/testing/expertise.yaml +0 -112
- package/src/core/experts/testing/question.md +0 -68
- package/src/core/experts/testing/self-improve.md +0 -102
- package/src/core/experts/testing/workflow.md +0 -143
- package/src/core/experts/ui/expertise.yaml +0 -133
- package/src/core/experts/ui/question.md +0 -74
- package/src/core/experts/ui/self-improve.md +0 -122
- package/src/core/experts/ui/workflow.md +0 -262
- package/src/core/knowledge/ads/ad-audit-checklist-scoring.md +0 -424
- package/src/core/knowledge/ads/ad-optimization-logic.md +0 -590
- package/src/core/knowledge/ads/ad-technical-specifications.md +0 -385
- package/src/core/knowledge/ads/definitive-advertising-reference-2026.md +0 -506
- package/src/core/knowledge/ads/paid-advertising-research-2026.md +0 -445
- package/src/core/profiles/COMPARISON.md +0 -170
- package/src/core/profiles/README.md +0 -178
- package/src/core/profiles/claude-code.yaml +0 -111
- package/src/core/profiles/codex.yaml +0 -103
- package/src/core/profiles/cursor.yaml +0 -134
- package/src/core/profiles/examples.js +0 -250
- package/src/core/profiles/loader.js +0 -235
- package/src/core/profiles/windsurf.yaml +0 -159
- package/src/core/skills/_learnings/README.md +0 -91
- package/src/core/skills/_learnings/_template.yaml +0 -106
- package/src/core/skills/_learnings/code-review.yaml +0 -118
- package/src/core/skills/_learnings/commit.yaml +0 -69
- package/src/core/skills/_learnings/story-writer.yaml +0 -71
- package/src/core/teams/backend.json +0 -41
- package/src/core/teams/builder-validator.json +0 -51
- package/src/core/teams/code-review.json +0 -41
- package/src/core/teams/frontend.json +0 -41
- package/src/core/teams/fullstack.json +0 -41
- package/src/core/teams/logic-audit.json +0 -53
- package/src/core/teams/perf-audit.json +0 -71
- package/src/core/teams/qa.json +0 -41
- package/src/core/teams/security-audit.json +0 -71
- package/src/core/teams/solo.json +0 -35
- package/src/core/teams/test-audit.json +0 -71
- package/src/core/templates/CONTEXT.md.example +0 -49
- package/src/core/templates/README-template.md +0 -16
- package/src/core/templates/adr-template.md +0 -28
- package/src/core/templates/agent-coordination-pattern.md +0 -38
- package/src/core/templates/agent-profile-template.md +0 -51
- package/src/core/templates/agileflow-metadata.json +0 -150
- package/src/core/templates/browser-qa-spec.yaml +0 -94
- package/src/core/templates/ci-workflow.yml +0 -74
- package/src/core/templates/claude-settings.advanced.example.json +0 -75
- package/src/core/templates/claude-settings.example.json +0 -26
- package/src/core/templates/command-documentation.md +0 -187
- package/src/core/templates/command-prerequisites.yaml +0 -169
- package/src/core/templates/comms-note-template.md +0 -24
- package/src/core/templates/damage-control-patterns.yaml +0 -243
- package/src/core/templates/environment.json +0 -18
- package/src/core/templates/epic-template.md +0 -27
- package/src/core/templates/plan-template.md +0 -125
- package/src/core/templates/preserve-rules-common.md +0 -107
- package/src/core/templates/preserve-rules.json +0 -42
- package/src/core/templates/proactive-action-spec.md +0 -29
- package/src/core/templates/product-brief.md +0 -136
- package/src/core/templates/quality-gate-priorities.md +0 -34
- package/src/core/templates/research-template.md +0 -44
- package/src/core/templates/session-harness-protocol.md +0 -128
- package/src/core/templates/session-state.json +0 -56
- package/src/core/templates/story-lifecycle.md +0 -213
- package/src/core/templates/story-template.md +0 -92
- package/src/core/templates/tdd-test-template.js +0 -241
- package/src/core/templates/worktrees-guide.md +0 -231
- package/tools/agileflow-npx.js +0 -52
- package/tools/cli/agileflow-cli.js +0 -72
- package/tools/cli/commands/config.js +0 -285
- package/tools/cli/commands/doctor.js +0 -496
- package/tools/cli/commands/list.js +0 -385
- package/tools/cli/commands/session.js +0 -1176
- package/tools/cli/commands/setup.js +0 -255
- package/tools/cli/commands/status.js +0 -101
- package/tools/cli/commands/tui.js +0 -56
- package/tools/cli/commands/uninstall.js +0 -155
- package/tools/cli/commands/update.js +0 -299
- package/tools/cli/installers/core/installer.js +0 -892
- package/tools/cli/installers/ide/_base-ide.js +0 -518
- package/tools/cli/installers/ide/_interface.js +0 -238
- package/tools/cli/installers/ide/claude-code.js +0 -432
- package/tools/cli/installers/ide/codex.js +0 -426
- package/tools/cli/installers/ide/cursor.js +0 -217
- package/tools/cli/installers/ide/manager.js +0 -222
- package/tools/cli/installers/ide/windsurf.js +0 -282
- package/tools/cli/lib/command-context.js +0 -382
- package/tools/cli/lib/config-manager.js +0 -446
- package/tools/cli/lib/content-injector.js +0 -969
- package/tools/cli/lib/content-transformer.js +0 -496
- package/tools/cli/lib/docs-setup.js +0 -464
- package/tools/cli/lib/error-handler.js +0 -165
- package/tools/cli/lib/ide-error-factory.js +0 -421
- package/tools/cli/lib/ide-errors.js +0 -367
- package/tools/cli/lib/ide-generator.js +0 -357
- package/tools/cli/lib/ide-health-monitor.js +0 -364
- package/tools/cli/lib/ide-registry.js +0 -297
- package/tools/cli/lib/npm-utils.js +0 -103
- package/tools/cli/lib/self-update.js +0 -148
- package/tools/cli/lib/ui.js +0 -211
- package/tools/cli/lib/utils.js +0 -87
- package/tools/cli/lib/validation-middleware.js +0 -491
- package/tools/cli/lib/version-checker.js +0 -95
- package/tools/postinstall.js +0 -190
package/src/core/commands/ci.md
DELETED
|
@@ -1,330 +0,0 @@
|
|
|
1
|
-
---
|
|
2
|
-
description: Bootstrap CI/CD workflow with testing and quality checks
|
|
3
|
-
phase: implementation
|
|
4
|
-
argument-hint: "(no arguments)"
|
|
5
|
-
compact_context:
|
|
6
|
-
priority: high
|
|
7
|
-
preserve_rules:
|
|
8
|
-
- "CI setup creates .github/workflows/ci.yml with lint/typecheck/test jobs"
|
|
9
|
-
- "MUST parse OWNERS input (comma-separated GitHub handles or team names)"
|
|
10
|
-
- "MUST create CODEOWNERS file with owner mappings for src/ and docs/03-decisions/"
|
|
11
|
-
- "{{RULES:file_preview}}"
|
|
12
|
-
- "Concurrency control and minimal permissions are required for security"
|
|
13
|
-
state_fields:
|
|
14
|
-
- owners_input
|
|
15
|
-
- workflow_created
|
|
16
|
-
- codeowners_created
|
|
17
|
-
---
|
|
18
|
-
|
|
19
|
-
# ci-setup
|
|
20
|
-
|
|
21
|
-
STEP 0: ACTIVATE COMPACT SUMMARY MODE
|
|
22
|
-
Before reading the full command, execute this script to display the compact summary:
|
|
23
|
-
```bash
|
|
24
|
-
sed -n '/<!-- COMPACT_SUMMARY_START -->/,/<!-- COMPACT_SUMMARY_END -->/p' "$(dirname "$0")/ci.md" | grep -v "COMPACT_SUMMARY"
|
|
25
|
-
```
|
|
26
|
-
If the user confirms they want the full details, continue. Otherwise, stop here.
|
|
27
|
-
|
|
28
|
-
Bootstrap minimal CI workflow and CODEOWNERS.
|
|
29
|
-
|
|
30
|
-
<!-- COMPACT_SUMMARY_START -->
|
|
31
|
-
|
|
32
|
-
## ⚠️ COMPACT SUMMARY - /agileflow:ci-setup IS ACTIVE
|
|
33
|
-
|
|
34
|
-
**CRITICAL**: You are bootstrapping CI/CD workflow. All steps must complete to create production-ready CI.
|
|
35
|
-
|
|
36
|
-
**ROLE**: CI Bootstrapper - Create GitHub Actions workflow with quality gates (lint/typecheck/test) and code ownership rules
|
|
37
|
-
|
|
38
|
-
---
|
|
39
|
-
|
|
40
|
-
### 🚨 RULE #1: ALWAYS USE TaskCreate/TaskUpdate FOR TRACKING
|
|
41
|
-
|
|
42
|
-
Track all 5 steps explicitly:
|
|
43
|
-
```xml
|
|
44
|
-
<invoke name="TaskCreate/TaskUpdate">
|
|
45
|
-
<parameter name="content">
|
|
46
|
-
1. Parse OWNERS input (required, comma-separated)
|
|
47
|
-
2. Generate .github/workflows/ci.yml with 3 jobs
|
|
48
|
-
3. Generate CODEOWNERS file with mappings
|
|
49
|
-
4. Show diff preview (both files side-by-side)
|
|
50
|
-
5. Create files after YES/NO confirmation
|
|
51
|
-
</parameter>
|
|
52
|
-
<parameter name="status">in-progress</parameter>
|
|
53
|
-
</invoke>
|
|
54
|
-
```
|
|
55
|
-
|
|
56
|
-
Mark each step complete as you finish. This ensures nothing is forgotten.
|
|
57
|
-
|
|
58
|
-
---
|
|
59
|
-
|
|
60
|
-
### 🚨 RULE #2: REQUIRED PARAMETERS
|
|
61
|
-
|
|
62
|
-
`OWNERS` is required (no default):
|
|
63
|
-
- Format: `@username` or `@org/team-name`
|
|
64
|
-
- Multiple: Comma-separated, no spaces
|
|
65
|
-
- Example: `OWNERS=@alice,@dev-team,@bob`
|
|
66
|
-
|
|
67
|
-
If missing:
|
|
68
|
-
```
|
|
69
|
-
❌ Missing OWNERS parameter
|
|
70
|
-
|
|
71
|
-
Usage: /agileflow:ci-setup OWNERS=@username,@team
|
|
72
|
-
|
|
73
|
-
Examples:
|
|
74
|
-
/agileflow:ci-setup OWNERS=@alice
|
|
75
|
-
/agileflow:ci-setup OWNERS=@alice,@bob,@dev-team
|
|
76
|
-
```
|
|
77
|
-
|
|
78
|
-
---
|
|
79
|
-
|
|
80
|
-
### 🚨 RULE #3: DIFF-FIRST PATTERN
|
|
81
|
-
|
|
82
|
-
ALWAYS show preview of BOTH files before creating:
|
|
83
|
-
|
|
84
|
-
```
|
|
85
|
-
Preview of files to create:
|
|
86
|
-
|
|
87
|
-
========== .github/workflows/ci.yml ==========
|
|
88
|
-
name: CI
|
|
89
|
-
on: [push, pull_request]
|
|
90
|
-
... [full YAML preview]
|
|
91
|
-
|
|
92
|
-
========== CODEOWNERS ==========
|
|
93
|
-
/src/ @alice @dev-team
|
|
94
|
-
/docs/03-decisions/ @alice @dev-team
|
|
95
|
-
```
|
|
96
|
-
|
|
97
|
-
Then ask: "Create these files? (YES/NO)"
|
|
98
|
-
|
|
99
|
-
---
|
|
100
|
-
|
|
101
|
-
### 🚨 RULE #4: JOBS REQUIRED
|
|
102
|
-
|
|
103
|
-
Always generate these 3 jobs (generic placeholders OK):
|
|
104
|
-
1. **lint**: `npm run lint` (or project equivalent)
|
|
105
|
-
2. **typecheck**: `npm run typecheck` (or project equivalent)
|
|
106
|
-
3. **test**: `npm test` (or project equivalent)
|
|
107
|
-
|
|
108
|
-
Each job:
|
|
109
|
-
- `runs-on: ubuntu-latest`
|
|
110
|
-
- `permissions: { contents: read }` (minimal security)
|
|
111
|
-
- `concurrency: { group: ... cancel-in-progress: true }` (cost control)
|
|
112
|
-
|
|
113
|
-
---
|
|
114
|
-
|
|
115
|
-
### 🚨 RULE #5: CODEOWNERS MAPPINGS
|
|
116
|
-
|
|
117
|
-
Required mappings:
|
|
118
|
-
```
|
|
119
|
-
/src/ @owners # All source code
|
|
120
|
-
/docs/03-decisions/ @owners # ADRs require owner review
|
|
121
|
-
```
|
|
122
|
-
|
|
123
|
-
Both paths MUST include the parsed OWNERS.
|
|
124
|
-
|
|
125
|
-
---
|
|
126
|
-
|
|
127
|
-
### ANTI-PATTERNS (DON'T DO THESE)
|
|
128
|
-
|
|
129
|
-
❌ Skip diff preview - go directly to file creation
|
|
130
|
-
❌ Hardcode owners instead of parsing input
|
|
131
|
-
❌ Create workflow without concurrency control
|
|
132
|
-
❌ Forget to validate OWNERS parameter format
|
|
133
|
-
❌ Create CODEOWNERS without /src/ and /docs/03-decisions/ mappings
|
|
134
|
-
❌ Use overly permissive permissions (contents: write)
|
|
135
|
-
|
|
136
|
-
### DO THESE INSTEAD
|
|
137
|
-
|
|
138
|
-
✅ ALWAYS show diff preview first
|
|
139
|
-
✅ Parse OWNERS parameter, validate format
|
|
140
|
-
✅ Include concurrency with cancel-in-progress
|
|
141
|
-
✅ Use minimal permissions (contents: read)
|
|
142
|
-
✅ Include both required path mappings
|
|
143
|
-
✅ Track with TaskCreate/TaskUpdate for safety
|
|
144
|
-
|
|
145
|
-
---
|
|
146
|
-
|
|
147
|
-
### WORKFLOW PHASES
|
|
148
|
-
|
|
149
|
-
**Phase 1: Validate Input (Step 1)**
|
|
150
|
-
- Parse OWNERS parameter
|
|
151
|
-
- Validate format (looks like @username or @org/team)
|
|
152
|
-
- If invalid: show error and ask for correction
|
|
153
|
-
|
|
154
|
-
**Phase 2: Generate Files (Steps 2-3)**
|
|
155
|
-
- Create workflow YAML with 3 jobs
|
|
156
|
-
- Create CODEOWNERS with owner mappings
|
|
157
|
-
|
|
158
|
-
**Phase 3: Preview & Confirm (Step 4)**
|
|
159
|
-
- Display both files in unified diff
|
|
160
|
-
- Ask: "Create these files? (YES/NO)"
|
|
161
|
-
|
|
162
|
-
**Phase 4: Complete (Step 5)**
|
|
163
|
-
- Write .github/workflows/ci.yml
|
|
164
|
-
- Write CODEOWNERS
|
|
165
|
-
- Display next steps note
|
|
166
|
-
|
|
167
|
-
---
|
|
168
|
-
|
|
169
|
-
### NEXT STEPS TO DISPLAY
|
|
170
|
-
|
|
171
|
-
```
|
|
172
|
-
✅ CI setup complete!
|
|
173
|
-
|
|
174
|
-
Next steps:
|
|
175
|
-
1. Customize job commands for your project:
|
|
176
|
-
- Update lint command (currently: npm run lint)
|
|
177
|
-
- Update typecheck command
|
|
178
|
-
- Update test command
|
|
179
|
-
|
|
180
|
-
2. Enable branch protection in GitHub:
|
|
181
|
-
- Settings → Branches → Branch protection rules
|
|
182
|
-
- Require "ci" status check
|
|
183
|
-
- Require branches to be up-to-date
|
|
184
|
-
|
|
185
|
-
3. Optional: Configure merge queue
|
|
186
|
-
- Settings → Branches → Branch protection
|
|
187
|
-
- Enable merge queue for faster merges
|
|
188
|
-
|
|
189
|
-
4. Optional: Add required checks
|
|
190
|
-
- Each job can be marked as required
|
|
191
|
-
```
|
|
192
|
-
|
|
193
|
-
---
|
|
194
|
-
|
|
195
|
-
### KEY FILES TO REMEMBER
|
|
196
|
-
|
|
197
|
-
| File | Purpose |
|
|
198
|
-
|------|---------|
|
|
199
|
-
| `.github/workflows/ci.yml` | GitHub Actions workflow with 3 jobs |
|
|
200
|
-
| `CODEOWNERS` | Code ownership rules for PR reviews |
|
|
201
|
-
| Parsed `OWNERS` | Critical - determines who gets PRs routed |
|
|
202
|
-
|
|
203
|
-
---
|
|
204
|
-
|
|
205
|
-
### REMEMBER AFTER COMPACTION
|
|
206
|
-
|
|
207
|
-
- `/agileflow:ci-setup` IS ACTIVE - create CI workflow
|
|
208
|
-
- OWNERS parameter is required (validate format)
|
|
209
|
-
- ALWAYS show diff-first before creating files
|
|
210
|
-
- Include lint, typecheck, test jobs
|
|
211
|
-
- Map both /src/ and /docs/03-decisions/ in CODEOWNERS
|
|
212
|
-
- Use TaskCreate/TaskUpdate to track 5 steps
|
|
213
|
-
- Display next steps for GitHub configuration
|
|
214
|
-
|
|
215
|
-
<!-- COMPACT_SUMMARY_END -->
|
|
216
|
-
|
|
217
|
-
## Prompt
|
|
218
|
-
|
|
219
|
-
ROLE: CI Bootstrapper
|
|
220
|
-
|
|
221
|
-
TODO LIST TRACKING
|
|
222
|
-
**CRITICAL**: Immediately create a todo list using TaskCreate/TaskUpdate tool to track CI setup:
|
|
223
|
-
```
|
|
224
|
-
1. Parse input (OWNERS)
|
|
225
|
-
2. Create .github/workflows/ci.yml with lint/typecheck/test jobs
|
|
226
|
-
3. Create CODEOWNERS file with owner mappings
|
|
227
|
-
4. Show preview and wait for YES/NO confirmation
|
|
228
|
-
5. Print notes for enabling required checks
|
|
229
|
-
```
|
|
230
|
-
|
|
231
|
-
Mark each step complete as you finish it. This ensures nothing is forgotten.
|
|
232
|
-
|
|
233
|
-
INPUT
|
|
234
|
-
OWNERS=<@handles>
|
|
235
|
-
|
|
236
|
-
ACTIONS
|
|
237
|
-
1) Create .github/workflows/ci.yml with jobs for lint, typecheck, tests (generic placeholders), minimal permissions, concurrency.
|
|
238
|
-
2) Create CODEOWNERS with:
|
|
239
|
-
/src/ <OWNERS>
|
|
240
|
-
/docs/03-decisions/ <OWNERS>
|
|
241
|
-
3) Print notes for enabling required checks.
|
|
242
|
-
|
|
243
|
-
Diff-first; YES/NO.
|
|
244
|
-
|
|
245
|
-
---
|
|
246
|
-
|
|
247
|
-
## Expected Output
|
|
248
|
-
|
|
249
|
-
### Success - CI Workflow Created
|
|
250
|
-
|
|
251
|
-
```
|
|
252
|
-
🔧 CI/CD Setup
|
|
253
|
-
══════════════════════════════════════════════════════════════
|
|
254
|
-
|
|
255
|
-
Creating workflow configuration...
|
|
256
|
-
|
|
257
|
-
✓ Created .github/workflows/ci.yml
|
|
258
|
-
- lint: ESLint + Prettier check
|
|
259
|
-
- typecheck: TypeScript compilation
|
|
260
|
-
- test: Jest with coverage
|
|
261
|
-
- Concurrency: cancel-in-progress enabled
|
|
262
|
-
|
|
263
|
-
✓ Created CODEOWNERS
|
|
264
|
-
/src/ @team-lead @senior-dev
|
|
265
|
-
/docs/03-decisions/ @tech-lead
|
|
266
|
-
|
|
267
|
-
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
|
|
268
|
-
✅ CI/CD Setup Complete
|
|
269
|
-
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
|
|
270
|
-
|
|
271
|
-
Next steps:
|
|
272
|
-
1. Push workflow: git add . && git push
|
|
273
|
-
2. Enable branch protection in GitHub settings
|
|
274
|
-
3. Set required checks: lint, typecheck, test
|
|
275
|
-
|
|
276
|
-
View workflow: .github/workflows/ci.yml
|
|
277
|
-
```
|
|
278
|
-
|
|
279
|
-
### Success - Workflow Updated
|
|
280
|
-
|
|
281
|
-
```
|
|
282
|
-
🔧 CI/CD Update
|
|
283
|
-
══════════════════════════════════════════════════════════════
|
|
284
|
-
|
|
285
|
-
Existing workflow detected. Updating...
|
|
286
|
-
|
|
287
|
-
Changes:
|
|
288
|
-
+ Added code coverage threshold (80%)
|
|
289
|
-
+ Added security audit job
|
|
290
|
-
~ Updated Node.js version to 20
|
|
291
|
-
|
|
292
|
-
✓ Updated .github/workflows/ci.yml
|
|
293
|
-
|
|
294
|
-
Review changes before committing:
|
|
295
|
-
git diff .github/workflows/ci.yml
|
|
296
|
-
```
|
|
297
|
-
|
|
298
|
-
### Error - Missing OWNERS
|
|
299
|
-
|
|
300
|
-
```
|
|
301
|
-
❌ Error: OWNERS parameter required
|
|
302
|
-
|
|
303
|
-
Specify code owners for CODEOWNERS file:
|
|
304
|
-
|
|
305
|
-
/agileflow:ci OWNERS="@username1, @username2"
|
|
306
|
-
|
|
307
|
-
These users will be required reviewers for PR changes.
|
|
308
|
-
```
|
|
309
|
-
|
|
310
|
-
### Error - Invalid Workflow
|
|
311
|
-
|
|
312
|
-
```
|
|
313
|
-
❌ Error: Invalid workflow configuration
|
|
314
|
-
|
|
315
|
-
.github/workflows/ci.yml has syntax errors:
|
|
316
|
-
Line 15: Invalid job name 'test!'
|
|
317
|
-
Line 23: Missing 'runs-on' field
|
|
318
|
-
|
|
319
|
-
Fix errors or run with FORCE=true to overwrite.
|
|
320
|
-
```
|
|
321
|
-
|
|
322
|
-
---
|
|
323
|
-
|
|
324
|
-
## Related Commands
|
|
325
|
-
|
|
326
|
-
- `/agileflow:configure` - Manage AgileFlow features and hooks
|
|
327
|
-
- `/agileflow:deploy` - Set up deployment pipeline
|
|
328
|
-
- `/agileflow:tests` - Set up testing infrastructure
|
|
329
|
-
- `/agileflow:verify` - Run tests and verify stories
|
|
330
|
-
- `/agileflow:pr` - Generate pull request from story
|
|
@@ -1,363 +0,0 @@
|
|
|
1
|
-
---
|
|
2
|
-
description: Multi-agent WCAG accessibility analysis with consensus voting for finding a11y barriers across semantic structure, ARIA, visual, keyboard, and forms
|
|
3
|
-
argument-hint: "[file|directory] [DEPTH=quick|deep|ultradeep|extreme] [FOCUS=semantic|aria|visual|keyboard|forms|all] [MODEL=haiku|sonnet|opus]"
|
|
4
|
-
compact_context:
|
|
5
|
-
priority: high
|
|
6
|
-
preserve_rules:
|
|
7
|
-
- "ACTIVE COMMAND: /agileflow:code:accessibility - Multi-agent WCAG accessibility analysis"
|
|
8
|
-
- "CRITICAL: Deploy 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: Severity scale: BLOCKER | MAJOR | MINOR | ENHANCEMENT"
|
|
11
|
-
- "MUST parse arguments: TARGET (file/dir), DEPTH (quick/deep/ultradeep), FOCUS (semantic|aria|visual|keyboard|forms|all)"
|
|
12
|
-
- "Pass consensus all analyzer outputs, let it synthesize the final report"
|
|
13
|
-
- "DEPTH GATE: ultradeep/extreme MUST spawn tmux sessions via spawn-audit-sessions.js — NEVER deploy in-process"
|
|
14
|
-
- "Use check-sessions.js to monitor spawned tmux sessions — NEVER write custom polling scripts"
|
|
15
|
-
state_fields:
|
|
16
|
-
- target_path
|
|
17
|
-
- depth
|
|
18
|
-
- focus_areas
|
|
19
|
-
- analyzers_deployed
|
|
20
|
-
- findings_collected
|
|
21
|
-
---
|
|
22
|
-
|
|
23
|
-
# /agileflow:code:accessibility
|
|
24
|
-
|
|
25
|
-
Deploy multiple specialized WCAG accessibility analyzers in parallel to find a11y barriers, then synthesize results through consensus voting into a prioritized Accessibility Audit Report.
|
|
26
|
-
|
|
27
|
-
---
|
|
28
|
-
|
|
29
|
-
## Quick Reference
|
|
30
|
-
|
|
31
|
-
```
|
|
32
|
-
/agileflow:code:accessibility app/ # Analyze app directory (quick, all 5 analyzers)
|
|
33
|
-
/agileflow:code:accessibility . DEPTH=deep # Deep analysis - comprehensive findings
|
|
34
|
-
/agileflow:code:accessibility src/ FOCUS=keyboard,aria # Focus on specific areas
|
|
35
|
-
/agileflow:code:accessibility . DEPTH=deep FOCUS=all # Comprehensive full audit
|
|
36
|
-
/agileflow:code:accessibility . DEPTH=ultradeep # Each analyzer in its own tmux session
|
|
37
|
-
/agileflow:code:accessibility components/ FOCUS=forms # Check forms accessibility
|
|
38
|
-
```
|
|
39
|
-
|
|
40
|
-
---
|
|
41
|
-
|
|
42
|
-
## How It Works
|
|
43
|
-
|
|
44
|
-
```
|
|
45
|
-
┌─────────────────────────────────────────────────────────────┐
|
|
46
|
-
│ /agileflow:code:accessibility │
|
|
47
|
-
│ │
|
|
48
|
-
│ 1. Parse arguments (target, depth, focus) │
|
|
49
|
-
│ 2. Deploy analyzers IN PARALLEL │
|
|
50
|
-
│ 3. Collect all findings │
|
|
51
|
-
│ 4. Run consensus coordinator to validate & prioritize │
|
|
52
|
-
│ 5. Generate actionable Accessibility Audit Report │
|
|
53
|
-
└─────────────────────────────────────────────────────────────┘
|
|
54
|
-
|
|
55
|
-
┌──────────┐ ┌──────┐ ┌────────┐ ┌──────────┐ ┌───────┐
|
|
56
|
-
│ Semantic │ │ ARIA │ │ Visual │ │ Keyboard │ │ Forms │
|
|
57
|
-
└────┬─────┘ └──┬───┘ └───┬────┘ └────┬─────┘ └───┬───┘
|
|
58
|
-
│ │ │ │ │
|
|
59
|
-
└──────────┴─────────┼───────────┴────────────┘
|
|
60
|
-
▼
|
|
61
|
-
┌──────────────────────┐
|
|
62
|
-
│ Consensus Coordinator│
|
|
63
|
-
│ (validates, votes, │
|
|
64
|
-
│ maps to WCAG 2.2) │
|
|
65
|
-
└──────────────────────┘
|
|
66
|
-
```
|
|
67
|
-
|
|
68
|
-
---
|
|
69
|
-
|
|
70
|
-
## Arguments
|
|
71
|
-
|
|
72
|
-
| Argument | Values | Default | Description |
|
|
73
|
-
|----------|--------|---------|-------------|
|
|
74
|
-
| TARGET | file/directory | `.` | What to analyze |
|
|
75
|
-
| DEPTH | quick, deep, ultradeep, extreme | quick | quick = focus on BLOCKER/MAJOR, deep = all severities, ultradeep = separate tmux, extreme = partitioned tmux |
|
|
76
|
-
| FOCUS | semantic,aria,visual,keyboard,forms,all | all | Which analyzers to deploy |
|
|
77
|
-
| MODEL | haiku, sonnet, opus | haiku | Model for analyzer subagents |
|
|
78
|
-
|
|
79
|
-
---
|
|
80
|
-
|
|
81
|
-
## Step-by-Step Process
|
|
82
|
-
|
|
83
|
-
### STEP 1: Parse Arguments
|
|
84
|
-
|
|
85
|
-
```
|
|
86
|
-
TARGET = first argument or current directory
|
|
87
|
-
DEPTH = quick (default) or deep or ultradeep
|
|
88
|
-
FOCUS = all (default) or comma-separated list
|
|
89
|
-
```
|
|
90
|
-
|
|
91
|
-
**Analyzer Selection**:
|
|
92
|
-
|
|
93
|
-
| Condition | Analyzers Deployed |
|
|
94
|
-
|-----------|-------------------|
|
|
95
|
-
| `FOCUS=all` | All 5: semantic, aria, visual, keyboard, forms |
|
|
96
|
-
| `FOCUS=semantic` | a11y-analyzer-semantic only |
|
|
97
|
-
| `FOCUS=aria` | a11y-analyzer-aria only |
|
|
98
|
-
| `FOCUS=visual` | a11y-analyzer-visual only |
|
|
99
|
-
| `FOCUS=keyboard` | a11y-analyzer-keyboard only |
|
|
100
|
-
| `FOCUS=forms` | a11y-analyzer-forms only |
|
|
101
|
-
| `FOCUS=keyboard,forms` | Deploy specified analyzers |
|
|
102
|
-
|
|
103
|
-
**DEPTH behavior**:
|
|
104
|
-
- `quick` (default): Focus on BLOCKER and MAJOR issues only.
|
|
105
|
-
- `deep`: Include MINOR and ENHANCEMENT findings.
|
|
106
|
-
- `ultradeep`: Spawn each analyzer as a separate Claude Code session in tmux.
|
|
107
|
-
|
|
108
|
-
**ULTRADEEP mode** (DEPTH=ultradeep):
|
|
109
|
-
1. Show cost estimate:
|
|
110
|
-
```bash
|
|
111
|
-
node .agileflow/scripts/spawn-audit-sessions.js --audit=accessibility --target=TARGET --focus=FOCUS --model=MODEL --dry-run
|
|
112
|
-
```
|
|
113
|
-
2. Confirm with user before launching
|
|
114
|
-
3. Spawn sessions (use `--json` to capture trace ID):
|
|
115
|
-
```bash
|
|
116
|
-
node .agileflow/scripts/spawn-audit-sessions.js --audit=accessibility --target=TARGET --focus=FOCUS --model=MODEL --json
|
|
117
|
-
```
|
|
118
|
-
Parse the JSON output to get `traceId`. Example: `{"ok":true,"traceId":"abc123ef",...}`
|
|
119
|
-
4. Wait for all analyzers to complete:
|
|
120
|
-
```bash
|
|
121
|
-
node .agileflow/scripts/check-sessions.js wait TRACE_ID --timeout=1800
|
|
122
|
-
```
|
|
123
|
-
- Exit 0 = all complete (JSON results on stdout)
|
|
124
|
-
- Exit 1 = timeout (partial results on stdout, `missing` array shows what's left)
|
|
125
|
-
- To check progress without blocking: `node .agileflow/scripts/check-sessions.js status TRACE_ID`
|
|
126
|
-
- To retry stalled analyzers: `node .agileflow/scripts/check-sessions.js retry TRACE_ID`
|
|
127
|
-
5. Parse `results` array from the JSON output. Pass all findings to consensus coordinator (same as deep mode).
|
|
128
|
-
6. If tmux unavailable (spawn exits code 2), fall back to `DEPTH=deep` with warning
|
|
129
|
-
|
|
130
|
-
**EXTREME mode** (DEPTH=extreme):
|
|
131
|
-
Partition-based multi-agent audit. Instead of 1 analyzer per tmux window, the codebase is split into partitions and each partition runs ALL analyzers.
|
|
132
|
-
1. Scan the target directory to understand the codebase structure:
|
|
133
|
-
- Use Glob to find top-level source directories
|
|
134
|
-
- Group related directories into 3-7 logical partitions (coherent domains: auth, api, ui, etc.)
|
|
135
|
-
- If user provided PARTITIONS=N (a number), split into exactly N partitions
|
|
136
|
-
- If user provided PARTITIONS=dir1,dir2,dir3, use those exact directories
|
|
137
|
-
2. Show the partition plan and agent count to the user, confirm before launching:
|
|
138
|
-
Example: "5 partitions x 5 analyzers = 25 agents. Estimated cost: $X. Proceed?"
|
|
139
|
-
3. Spawn sessions with partitions:
|
|
140
|
-
```bash
|
|
141
|
-
node .agileflow/scripts/spawn-audit-sessions.js --audit=accessibility --target=TARGET --depth=extreme --partitions=dir1,dir2,dir3 --model=MODEL --json
|
|
142
|
-
```
|
|
143
|
-
4. Wait and collect results (same as ultradeep - use check-sessions.js)
|
|
144
|
-
5. Run consensus on combined results from all partitions
|
|
145
|
-
|
|
146
|
-
**PARTITIONS argument** (only used with DEPTH=extreme):
|
|
147
|
-
| Value | Behavior |
|
|
148
|
-
|-------|----------|
|
|
149
|
-
| Not set | AI decides partitions (3-7 based on codebase size) |
|
|
150
|
-
| `PARTITIONS=5` | AI creates exactly 5 partitions |
|
|
151
|
-
| `PARTITIONS=src/auth,src/api,lib` | Use these exact directories |
|
|
152
|
-
|
|
153
|
-
---
|
|
154
|
-
|
|
155
|
-
### DEPTH ROUTING GATE
|
|
156
|
-
|
|
157
|
-
| DEPTH | Route |
|
|
158
|
-
|-------|-------|
|
|
159
|
-
| `quick` or `deep` | Continue to STEP 2 below |
|
|
160
|
-
| `ultradeep` | STOP. Follow ULTRADEEP instructions above. Do NOT proceed to STEP 2. |
|
|
161
|
-
| `extreme` | STOP. Follow EXTREME instructions above. Do NOT proceed to STEP 2. |
|
|
162
|
-
|
|
163
|
-
**CRITICAL**: STEP 2 is for `quick`/`deep` ONLY. For `ultradeep`/`extreme`, the analyzers run in separate tmux sessions — NOT in-process via Task calls. If you deploy Task calls for ultradeep/extreme, you are doing it wrong. Follow the spawn-audit-sessions.js workflow above, then skip to the consensus step with the collected results.
|
|
164
|
-
|
|
165
|
-
---
|
|
166
|
-
|
|
167
|
-
### STEP 2: Deploy Analyzers in Parallel (quick/deep ONLY)
|
|
168
|
-
|
|
169
|
-
**CRITICAL**: Deploy ALL selected analyzers in a SINGLE message with multiple Task calls.
|
|
170
|
-
|
|
171
|
-
**Prompt template for each analyzer**:
|
|
172
|
-
|
|
173
|
-
```
|
|
174
|
-
TASK: Analyze the following code for {A11Y_DOMAIN} accessibility issues.
|
|
175
|
-
|
|
176
|
-
TARGET: {file_path or directory}
|
|
177
|
-
DEPTH: {quick|deep}
|
|
178
|
-
|
|
179
|
-
{For quick depth}: Focus on BLOCKER and MAJOR severity issues only. Skip enhancements.
|
|
180
|
-
{For deep depth}: Be comprehensive. Include MINOR and ENHANCEMENT findings.
|
|
181
|
-
|
|
182
|
-
Read the target files and apply your analysis methodology.
|
|
183
|
-
|
|
184
|
-
OUTPUT your findings in your standard format (FINDING-N with location, severity, confidence, WCAG SC, code, explanation, remediation).
|
|
185
|
-
|
|
186
|
-
If no issues found, output: "No {A11Y_DOMAIN} accessibility issues found in {TARGET}"
|
|
187
|
-
```
|
|
188
|
-
|
|
189
|
-
**Deploy all 5 analyzers** using these subagent types:
|
|
190
|
-
- `a11y-analyzer-semantic` - Heading hierarchy, landmarks, document structure
|
|
191
|
-
- `a11y-analyzer-aria` - ARIA roles, states, properties, live regions
|
|
192
|
-
- `a11y-analyzer-visual` - Color contrast, motion, color-only info
|
|
193
|
-
- `a11y-analyzer-keyboard` - Focus management, tab order, keyboard access
|
|
194
|
-
- `a11y-analyzer-forms` - Labels, errors, autocomplete, validation
|
|
195
|
-
|
|
196
|
-
### STEP 3: Collect Results
|
|
197
|
-
|
|
198
|
-
Wait for all analyzers to complete using TaskOutput with `block=true`.
|
|
199
|
-
|
|
200
|
-
### STEP 4: Run Consensus Coordinator
|
|
201
|
-
|
|
202
|
-
Pass all analyzer outputs to the consensus coordinator:
|
|
203
|
-
|
|
204
|
-
```xml
|
|
205
|
-
<invoke name="Task">
|
|
206
|
-
<parameter name="description">Accessibility audit consensus</parameter>
|
|
207
|
-
<parameter name="prompt">You are the Accessibility Consensus Coordinator.
|
|
208
|
-
|
|
209
|
-
TARGET: {target_path}
|
|
210
|
-
DEPTH: {depth}
|
|
211
|
-
|
|
212
|
-
## Analyzer Outputs
|
|
213
|
-
|
|
214
|
-
### Semantic Analyzer Results:
|
|
215
|
-
{semantic_output}
|
|
216
|
-
|
|
217
|
-
### ARIA Analyzer Results:
|
|
218
|
-
{aria_output}
|
|
219
|
-
|
|
220
|
-
### Visual Analyzer Results:
|
|
221
|
-
{visual_output}
|
|
222
|
-
|
|
223
|
-
### Keyboard Analyzer Results:
|
|
224
|
-
{keyboard_output}
|
|
225
|
-
|
|
226
|
-
### Forms Analyzer Results:
|
|
227
|
-
{forms_output}
|
|
228
|
-
|
|
229
|
-
---
|
|
230
|
-
|
|
231
|
-
Follow your consensus process:
|
|
232
|
-
1. Detect framework and component libraries
|
|
233
|
-
2. Parse all findings into normalized structure
|
|
234
|
-
3. Group related findings by component/area
|
|
235
|
-
4. Vote on confidence (CONFIRMED if 2+ agree, LIKELY if 1 with evidence)
|
|
236
|
-
5. Filter by framework (Radix, Headless UI, etc.)
|
|
237
|
-
6. Map findings to WCAG 2.2 success criteria
|
|
238
|
-
7. Generate the final Accessibility Audit Report
|
|
239
|
-
8. Save report to docs/08-project/a11y-audits/a11y-audit-{YYYYMMDD}.md
|
|
240
|
-
</parameter>
|
|
241
|
-
<parameter name="subagent_type">a11y-consensus</parameter>
|
|
242
|
-
</invoke>
|
|
243
|
-
```
|
|
244
|
-
|
|
245
|
-
### STEP 5: Present Results
|
|
246
|
-
|
|
247
|
-
After consensus completes, show the report summary and offer next steps:
|
|
248
|
-
|
|
249
|
-
```xml
|
|
250
|
-
<invoke name="AskUserQuestion">
|
|
251
|
-
<parameter name="questions">[{
|
|
252
|
-
"question": "Accessibility audit complete: [N] findings ([blockers] Blockers, [major] Major). [files_count] files analyzed. WCAG Level A: [pass/fail].",
|
|
253
|
-
"header": "Next steps",
|
|
254
|
-
"multiSelect": false,
|
|
255
|
-
"options": [
|
|
256
|
-
{"label": "Fix [blockers] Blocker issues now (Recommended)", "description": "[top_issue_summary] - [WCAG SC]"},
|
|
257
|
-
{"label": "Create stories for all findings", "description": "Track [blockers] blocker + [major] major priority items in backlog"},
|
|
258
|
-
{"label": "Re-run with DEPTH=deep", "description": "Current was quick - deep includes MINOR and ENHANCEMENT findings"},
|
|
259
|
-
{"label": "Save report and done", "description": "Report saved to docs/08-project/a11y-audits/"}
|
|
260
|
-
]
|
|
261
|
-
}]</parameter>
|
|
262
|
-
</invoke>
|
|
263
|
-
```
|
|
264
|
-
|
|
265
|
-
---
|
|
266
|
-
|
|
267
|
-
## Example Output
|
|
268
|
-
|
|
269
|
-
```
|
|
270
|
-
♿ Accessibility Audit: app/
|
|
271
|
-
══════════════════════════════════════════════════════════════
|
|
272
|
-
|
|
273
|
-
Deploying 5 accessibility analyzers (quick mode)...
|
|
274
|
-
✓ Semantic Analyzer
|
|
275
|
-
✓ ARIA Analyzer
|
|
276
|
-
✓ Visual Analyzer
|
|
277
|
-
✓ Keyboard Analyzer
|
|
278
|
-
✓ Forms Analyzer
|
|
279
|
-
|
|
280
|
-
Running consensus...
|
|
281
|
-
✓ Consensus complete
|
|
282
|
-
✓ Framework detected: Next.js + shadcn/ui (Radix-based)
|
|
283
|
-
|
|
284
|
-
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
|
|
285
|
-
ACCESSIBILITY SUMMARY
|
|
286
|
-
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
|
|
287
|
-
|
|
288
|
-
| Severity | Count | WCAG Level |
|
|
289
|
-
|----------|-------|------------|
|
|
290
|
-
| Blocker | 2 | A |
|
|
291
|
-
| Major | 4 | A/AA |
|
|
292
|
-
| Minor | 3 | AA |
|
|
293
|
-
|
|
294
|
-
Total: 9 findings (3 false positives excluded - Radix handles ARIA)
|
|
295
|
-
WCAG 2.2 Level A: FAIL (2 blockers)
|
|
296
|
-
WCAG 2.2 Level AA: FAIL
|
|
297
|
-
|
|
298
|
-
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
|
|
299
|
-
FIX IMMEDIATELY
|
|
300
|
-
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
|
|
301
|
-
|
|
302
|
-
1. Modal missing focus trap [CONFIRMED by Keyboard, ARIA]
|
|
303
|
-
Location: components/Modal.tsx:28
|
|
304
|
-
SC 2.1.2 | Level A
|
|
305
|
-
Fix: Add FocusTrap component or use Dialog from Radix
|
|
306
|
-
|
|
307
|
-
2. Form inputs without labels [CONFIRMED by Forms, Semantic]
|
|
308
|
-
Location: app/settings/page.tsx:45
|
|
309
|
-
SC 1.3.1, 4.1.2 | Level A
|
|
310
|
-
Fix: Add Label components with htmlFor associations
|
|
311
|
-
|
|
312
|
-
[Full report saved to docs/08-project/a11y-audits/a11y-audit-20260301.md]
|
|
313
|
-
```
|
|
314
|
-
|
|
315
|
-
---
|
|
316
|
-
|
|
317
|
-
<!-- COMPACT_SUMMARY_START -->
|
|
318
|
-
## Compact Summary
|
|
319
|
-
|
|
320
|
-
**Command**: `/agileflow:code:accessibility` - Multi-agent WCAG accessibility analysis with consensus
|
|
321
|
-
|
|
322
|
-
**Quick Usage**:
|
|
323
|
-
```
|
|
324
|
-
/agileflow:code:accessibility app/ # Quick scan (all 5 analyzers)
|
|
325
|
-
/agileflow:code:accessibility . DEPTH=deep # Comprehensive analysis
|
|
326
|
-
/agileflow:code:accessibility components/ FOCUS=keyboard # Specific area
|
|
327
|
-
```
|
|
328
|
-
|
|
329
|
-
**What It Does**: Deploy a11y analyzers in parallel -> Each checks different WCAG areas -> Consensus validates, filters by framework, maps to WCAG 2.2 -> Actionable Accessibility Audit Report
|
|
330
|
-
|
|
331
|
-
**Analyzers (all 5)**:
|
|
332
|
-
- `a11y-analyzer-semantic` - Headings, landmarks, semantic elements
|
|
333
|
-
- `a11y-analyzer-aria` - ARIA roles, states, live regions, widget patterns
|
|
334
|
-
- `a11y-analyzer-visual` - Contrast, motion, color-only info, focus indicators
|
|
335
|
-
- `a11y-analyzer-keyboard` - Focus management, tab order, keyboard-only access
|
|
336
|
-
- `a11y-analyzer-forms` - Labels, errors, autocomplete, validation
|
|
337
|
-
|
|
338
|
-
**Severity Levels** (impact-oriented):
|
|
339
|
-
- BLOCKER: No access at all (missing keyboard support, no labels)
|
|
340
|
-
- MAJOR: Significant barrier (skipped headings, missing landmarks)
|
|
341
|
-
- MINOR: Degraded experience (redundant ARIA, missing autocomplete)
|
|
342
|
-
- ENHANCEMENT: Best practice improvement
|
|
343
|
-
|
|
344
|
-
**Output**: `docs/08-project/a11y-audits/a11y-audit-{YYYYMMDD}.md`
|
|
345
|
-
<!-- COMPACT_SUMMARY_END -->
|
|
346
|
-
|
|
347
|
-
---
|
|
348
|
-
|
|
349
|
-
## Boundary Rules (No Overlap)
|
|
350
|
-
|
|
351
|
-
- **vs code:security**: No XSS, injection, auth issues - those are security domain
|
|
352
|
-
- **vs code:performance**: No bundle size, rendering perf - those are performance domain
|
|
353
|
-
- **vs code:test**: No test coverage, test quality - those are test domain
|
|
354
|
-
- **Focus on WCAG conformance and assistive technology access**
|
|
355
|
-
|
|
356
|
-
---
|
|
357
|
-
|
|
358
|
-
## Related Commands
|
|
359
|
-
|
|
360
|
-
- `/agileflow:code:security` - Security vulnerability analysis
|
|
361
|
-
- `/agileflow:code:logic` - Logic bug analysis
|
|
362
|
-
- `/agileflow:code:performance` - Performance bottleneck analysis
|
|
363
|
-
- `/agileflow:review` - Code review (includes basic a11y checks)
|