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
|
@@ -1,714 +0,0 @@
|
|
|
1
|
-
---
|
|
2
|
-
description: Data-driven sprint planning with velocity forecasting
|
|
3
|
-
phase: pre-story
|
|
4
|
-
argument-hint: "[SPRINT=<id>] [DURATION=<number>] [AGENTS=<list>] [MODE=suggest|commit] [FOCUS_EPIC=<EP-ID>]"
|
|
5
|
-
model: haiku
|
|
6
|
-
compact_context:
|
|
7
|
-
priority: critical
|
|
8
|
-
preserve_rules:
|
|
9
|
-
- "ACTIVE COMMAND: /agileflow:sprint-plan - Sprint planner with capacity analysis"
|
|
10
|
-
- "{{RULES:task_tracking}}"
|
|
11
|
-
- "MUST calculate historical velocity from last 30 days (bus/log.jsonl)"
|
|
12
|
-
- "MUST respect WIP limits (max 2 in-progress per agent)"
|
|
13
|
-
- "MUST validate dependencies resolved (only select stories with all deps status=done)"
|
|
14
|
-
- "{{RULES:file_preview}}"
|
|
15
|
-
- "MUST assess risks (dependency chains, cross-agent coordination, epic staleness)"
|
|
16
|
-
- "MODE=suggest shows preview; MODE=commit updates status.json + milestones.md"
|
|
17
|
-
state_fields:
|
|
18
|
-
- sprint_id
|
|
19
|
-
- velocity_calculated
|
|
20
|
-
- story_count
|
|
21
|
-
- capacity_days
|
|
22
|
-
---
|
|
23
|
-
|
|
24
|
-
<!-- COMPACT_SUMMARY_START
|
|
25
|
-
This section is extracted by the PreCompact hook to preserve essential context across conversation compacts.
|
|
26
|
-
-->
|
|
27
|
-
|
|
28
|
-
## Compact Summary
|
|
29
|
-
|
|
30
|
-
Sprint Planner that creates data-driven sprint commitments based on historical velocity, agent capacity, and dependency validation.
|
|
31
|
-
|
|
32
|
-
### Critical Behavioral Rules
|
|
33
|
-
- **ALWAYS create a TaskCreate/TaskUpdate list** with 8 steps before starting sprint planning
|
|
34
|
-
- **Load knowledge sources silently first** (status.json, bus/log.jsonl, backlog.md, roadmap.md, milestones.md, epics, stories)
|
|
35
|
-
- **Calculate historical velocity** from last 30 days of completed stories in bus/log.jsonl before selecting stories
|
|
36
|
-
- **Respect WIP limits**: Max 2 stories in-progress per agent
|
|
37
|
-
- **Validate dependencies resolved**: Only select stories where all deps have status="done"
|
|
38
|
-
- **Never commit without preview**: MODE=suggest shows preview, MODE=commit requires diff preview and updates
|
|
39
|
-
- **Show diff before committing**: Always display git diff for status.json and milestones.md changes
|
|
40
|
-
- **Sequence dependent stories**: Recommend execution order for stories with dependency chains
|
|
41
|
-
- **Warn about cross-agent coordination**: Alert when AG-API work must complete before AG-UI
|
|
42
|
-
|
|
43
|
-
### Core Workflow
|
|
44
|
-
1. Analyze current agent capacity (WIP slots available per agent)
|
|
45
|
-
2. Calculate historical velocity from bus/log.jsonl (completed stories in last 30 days)
|
|
46
|
-
3. Extract ready stories from status.json (status="ready")
|
|
47
|
-
4. Filter by resolved dependencies (all deps must be status="done")
|
|
48
|
-
5. Prioritize by backlog.md order, epic focus, milestone deadlines
|
|
49
|
-
6. Select stories until capacity reached (based on historical velocity)
|
|
50
|
-
7. Assess risks (dependency chains, cross-agent coordination, epic staleness)
|
|
51
|
-
8. Generate sprint plan report with recommendations
|
|
52
|
-
9. If MODE=commit: Update status.json with sprint metadata and append to milestones.md
|
|
53
|
-
|
|
54
|
-
### Key Files
|
|
55
|
-
- **docs/09-agents/status.json** - Current story status, WIP, agent assignments (updated in MODE=commit)
|
|
56
|
-
- **docs/09-agents/bus/log.jsonl** - Historical velocity data (completed stories with timestamps)
|
|
57
|
-
- **docs/08-project/backlog.md** - Priority order for story selection
|
|
58
|
-
- **docs/08-project/roadmap.md** - Strategic priorities and focus areas
|
|
59
|
-
- **docs/08-project/milestones.md** - Sprint milestones and deadlines (appended in MODE=commit)
|
|
60
|
-
- **docs/05-epics/*.md** - Epic goals and priorities
|
|
61
|
-
- **docs/06-stories/**/US-*.md** - Story details, acceptance criteria, estimates
|
|
62
|
-
|
|
63
|
-
### Selection Criteria Priority Order
|
|
64
|
-
1. Must be status="ready" (Definition of Ready met)
|
|
65
|
-
2. Dependencies resolved (all deps status="done")
|
|
66
|
-
3. Backlog priority (from backlog.md)
|
|
67
|
-
4. Epic alignment (FOCUS_EPIC parameter)
|
|
68
|
-
5. Milestone deadlines (from milestones.md)
|
|
69
|
-
6. Team capacity (don't exceed calculated velocity)
|
|
70
|
-
7. Agent balance (distribute work evenly)
|
|
71
|
-
|
|
72
|
-
### Output Format Must Include
|
|
73
|
-
- Capacity analysis (historical velocity, agent slots)
|
|
74
|
-
- Backlog status (ready/blocked counts)
|
|
75
|
-
- Recommended commitment (selected stories with estimates, priorities, dependencies)
|
|
76
|
-
- Deferred stories (capacity reached)
|
|
77
|
-
- Sprint goals (based on epic distribution)
|
|
78
|
-
- Risks and dependencies (cross-agent coordination, dependency chains)
|
|
79
|
-
- Recommendations (sequencing, monitoring, next commands)
|
|
80
|
-
- Next steps (different for MODE=suggest vs MODE=commit)
|
|
81
|
-
|
|
82
|
-
**Tool Usage Examples**:
|
|
83
|
-
|
|
84
|
-
TaskCreate/TaskUpdate:
|
|
85
|
-
```xml
|
|
86
|
-
<invoke name="TaskCreate/TaskUpdate">
|
|
87
|
-
<parameter name="content">1. Load knowledge sources (status.json, bus log, backlog)
|
|
88
|
-
2. Analyze agent capacity and WIP
|
|
89
|
-
3. Calculate historical velocity (last 30 days)
|
|
90
|
-
4. Select stories based on priority and capacity
|
|
91
|
-
5. Assess risks (dependencies, cross-agent coordination)
|
|
92
|
-
6. Generate sprint plan report
|
|
93
|
-
7. If MODE=commit: Update status.json and milestones.md
|
|
94
|
-
8. Create sprint milestone and bus message</parameter>
|
|
95
|
-
<parameter name="status">in-progress</parameter>
|
|
96
|
-
</invoke>
|
|
97
|
-
```
|
|
98
|
-
|
|
99
|
-
AskUserQuestion (use actual counts and data from analysis):
|
|
100
|
-
```xml
|
|
101
|
-
<invoke name="AskUserQuestion">
|
|
102
|
-
<parameter name="questions">[{
|
|
103
|
-
"question": "Sprint [ID]: [N] stories, [X]d estimated ([Y]% of [Z]d capacity). [Risk level]. Commit?",
|
|
104
|
-
"header": "Sprint",
|
|
105
|
-
"multiSelect": false,
|
|
106
|
-
"options": [
|
|
107
|
-
{"label": "Commit sprint plan (Recommended)", "description": "[N] stories across [agents] - [epic summary]. Starts today, ends [date]"},
|
|
108
|
-
{"label": "Adjust story selection", "description": "Currently at [Y]% capacity - add/remove stories before committing"},
|
|
109
|
-
{"label": "View dependency risks first", "description": "[risk_count] risks detected: [top risk summary]"},
|
|
110
|
-
{"label": "Cancel", "description": "Exit without changes to status.json"}
|
|
111
|
-
]
|
|
112
|
-
}]</parameter>
|
|
113
|
-
</invoke>
|
|
114
|
-
```
|
|
115
|
-
|
|
116
|
-
<!-- COMPACT_SUMMARY_END -->
|
|
117
|
-
|
|
118
|
-
# sprint-plan
|
|
119
|
-
|
|
120
|
-
Intelligent sprint planning with capacity-based story selection, dependency validation, and velocity forecasting.
|
|
121
|
-
|
|
122
|
-
## STEP 0: Gather Context
|
|
123
|
-
|
|
124
|
-
```bash
|
|
125
|
-
node .agileflow/scripts/obtain-context.js sprint
|
|
126
|
-
```
|
|
127
|
-
|
|
128
|
-
This gathers git status, stories/epics, session state, and registers for PreCompact.
|
|
129
|
-
|
|
130
|
-
## Prompt
|
|
131
|
-
|
|
132
|
-
ROLE: Sprint Planner
|
|
133
|
-
|
|
134
|
-
TODO LIST TRACKING
|
|
135
|
-
**CRITICAL**: Immediately create a todo list using TaskCreate/TaskUpdate tool to track sprint planning:
|
|
136
|
-
```
|
|
137
|
-
1. Load knowledge sources (status.json, bus/log.jsonl, backlog, roadmap, epics, stories)
|
|
138
|
-
2. Analyze current state (agent capacity, backlog health)
|
|
139
|
-
3. Calculate historical velocity (last 3 sprints/30 days)
|
|
140
|
-
4. Select stories based on criteria (ready, dependencies, priority, capacity)
|
|
141
|
-
5. Assess risks (dependency chains, cross-agent coordination)
|
|
142
|
-
6. Generate sprint plan report
|
|
143
|
-
7. If MODE=commit: Update status.json and milestones.md
|
|
144
|
-
8. Create sprint milestone and bus message
|
|
145
|
-
```
|
|
146
|
-
|
|
147
|
-
Mark each step complete as you finish it. This ensures comprehensive sprint planning.
|
|
148
|
-
|
|
149
|
-
OBJECTIVE
|
|
150
|
-
Create a data-driven sprint plan by analyzing backlog priorities, agent capacity, historical velocity, and dependency chains. Ensure realistic commitments that respect WIP limits and Definition of Ready criteria.
|
|
151
|
-
|
|
152
|
-
INPUTS
|
|
153
|
-
- SPRINT=<sprint-id> — Sprint identifier (e.g., "Sprint-42", "2025-W43")
|
|
154
|
-
- DURATION=<days> — Sprint duration in days (default: 10, typical 2-week sprint)
|
|
155
|
-
- AGENTS=<agent-list> — Comma-separated agents to plan for (default: all active agents)
|
|
156
|
-
- MODE=<suggest|commit> — "suggest" shows preview, "commit" updates status.json (default: suggest)
|
|
157
|
-
- FOCUS_EPIC=<epic-id> — Optionally focus on specific epic
|
|
158
|
-
|
|
159
|
-
KNOWLEDGE LOADING (run first, silently)
|
|
160
|
-
Read in order:
|
|
161
|
-
1. docs/09-agents/status.json — Current state, WIP, agent assignments
|
|
162
|
-
2. docs/09-agents/bus/log.jsonl — Historical velocity data (completed stories with timestamps)
|
|
163
|
-
3. docs/08-project/backlog.md — Priority order for stories
|
|
164
|
-
4. docs/08-project/roadmap.md — Strategic priorities
|
|
165
|
-
5. docs/08-project/milestones.md — Deadline constraints
|
|
166
|
-
6. docs/05-epics/*.md — Epic priorities and goals
|
|
167
|
-
7. docs/06-stories/**/US-*.md — Story details, AC, estimates
|
|
168
|
-
8. docs/03-decisions/adr-*.md — Recent ADRs that might spawn stories
|
|
169
|
-
|
|
170
|
-
SPRINT PLANNING PHASES
|
|
171
|
-
|
|
172
|
-
## Phase 1: Current State Analysis
|
|
173
|
-
|
|
174
|
-
### Agent Capacity Assessment
|
|
175
|
-
```bash
|
|
176
|
-
# Calculate available capacity per agent
|
|
177
|
-
|
|
178
|
-
echo "=== Current Agent Status ==="
|
|
179
|
-
|
|
180
|
-
for agent in AG-UI AG-API AG-CI AG-DEVOPS MENTOR; do
|
|
181
|
-
in_progress=$(jq -r ".stories | to_entries[] | select(.value.owner==\"$agent\") | select(.value.status==\"in-progress\") | .key" docs/09-agents/status.json | wc -l)
|
|
182
|
-
in_review=$(jq -r ".stories | to_entries[] | select(.value.owner==\"$agent\") | select(.value.status==\"in-review\") | .key" docs/09-agents/status.json | wc -l)
|
|
183
|
-
|
|
184
|
-
# WIP limit is 2
|
|
185
|
-
available=$((2 - in_progress))
|
|
186
|
-
|
|
187
|
-
echo "$agent: $in_progress in-progress, $in_review in-review → $available slots available"
|
|
188
|
-
|
|
189
|
-
# If agent has in-review stories, they might free up soon
|
|
190
|
-
if [ "$in_review" -gt 0 ]; then
|
|
191
|
-
echo " ⚠️ $in_review stories in review may complete soon (add conditional capacity)"
|
|
192
|
-
fi
|
|
193
|
-
done
|
|
194
|
-
```
|
|
195
|
-
|
|
196
|
-
### Backlog Health Check
|
|
197
|
-
```bash
|
|
198
|
-
# Count ready stories (meet Definition of Ready)
|
|
199
|
-
ready_count=$(jq -r '.stories | to_entries[] | select(.value.status=="ready") | .key' docs/09-agents/status.json | wc -l)
|
|
200
|
-
|
|
201
|
-
echo "Ready stories in backlog: $ready_count"
|
|
202
|
-
|
|
203
|
-
# Check for blocked stories that might unblock during sprint
|
|
204
|
-
blocked_count=$(jq -r '.stories | to_entries[] | select(.value.status=="blocked") | .key' docs/09-agents/status.json | wc -l)
|
|
205
|
-
|
|
206
|
-
echo "Blocked stories (may unblock): $blocked_count"
|
|
207
|
-
```
|
|
208
|
-
|
|
209
|
-
## Phase 2: Historical Velocity Calculation
|
|
210
|
-
|
|
211
|
-
### Calculate Team Velocity (last 3 sprints or 30 days)
|
|
212
|
-
```bash
|
|
213
|
-
# Parse bus/log.jsonl for completed stories with timestamps
|
|
214
|
-
thirty_days_ago=$(date -u -d '30 days ago' +%Y-%m-%dT%H:%M:%S 2>/dev/null || date -u -v-30d +%Y-%m-%dT%H:%M:%S 2>/dev/null)
|
|
215
|
-
|
|
216
|
-
# Extract story completion events
|
|
217
|
-
grep '"type":"status"' docs/09-agents/bus/log.jsonl | grep '"done"' | while read -r line; do
|
|
218
|
-
ts=$(echo "$line" | jq -r '.ts')
|
|
219
|
-
story=$(echo "$line" | jq -r '.story')
|
|
220
|
-
|
|
221
|
-
# Check if within last 30 days
|
|
222
|
-
if [[ "$ts" > "$thirty_days_ago" ]]; then
|
|
223
|
-
# Get story estimate
|
|
224
|
-
estimate=$(jq -r ".stories[\"$story\"].estimate" docs/09-agents/status.json 2>/dev/null)
|
|
225
|
-
echo "$story|$estimate|$ts"
|
|
226
|
-
fi
|
|
227
|
-
done > /tmp/completed_stories.txt
|
|
228
|
-
|
|
229
|
-
# Sum estimates (convert "0.5d", "1d", "2d" to numeric)
|
|
230
|
-
total_days=0
|
|
231
|
-
count=0
|
|
232
|
-
|
|
233
|
-
while IFS='|' read -r story estimate ts; do
|
|
234
|
-
# Extract numeric value
|
|
235
|
-
days=$(echo "$estimate" | grep -oE '[0-9.]+')
|
|
236
|
-
total_days=$(echo "$total_days + $days" | bc)
|
|
237
|
-
count=$((count + 1))
|
|
238
|
-
done < /tmp/completed_stories.txt
|
|
239
|
-
|
|
240
|
-
if [ "$count" -gt 0 ]; then
|
|
241
|
-
velocity=$(echo "scale=1; $total_days / 30 * ${DURATION:-10}" | bc)
|
|
242
|
-
echo "Historical velocity: $total_days days completed in last 30 days"
|
|
243
|
-
echo "Projected capacity for ${DURATION:-10}-day sprint: ${velocity} days"
|
|
244
|
-
else
|
|
245
|
-
echo "⚠️ No historical data. Using default capacity: 1 story per agent per sprint"
|
|
246
|
-
velocity="N/A"
|
|
247
|
-
fi
|
|
248
|
-
```
|
|
249
|
-
|
|
250
|
-
### Agent-Specific Velocity
|
|
251
|
-
```bash
|
|
252
|
-
# Calculate velocity per agent (for more accurate planning)
|
|
253
|
-
|
|
254
|
-
for agent in AG-UI AG-API AG-CI AG-DEVOPS; do
|
|
255
|
-
agent_total=0
|
|
256
|
-
|
|
257
|
-
while IFS='|' read -r story estimate ts; do
|
|
258
|
-
owner=$(jq -r ".stories[\"$story\"].owner" docs/09-agents/status.json 2>/dev/null)
|
|
259
|
-
|
|
260
|
-
if [ "$owner" == "$agent" ]; then
|
|
261
|
-
days=$(echo "$estimate" | grep -oE '[0-9.]+')
|
|
262
|
-
agent_total=$(echo "$agent_total + $days" | bc)
|
|
263
|
-
fi
|
|
264
|
-
done < /tmp/completed_stories.txt
|
|
265
|
-
|
|
266
|
-
if [ $(echo "$agent_total > 0" | bc) -eq 1 ]; then
|
|
267
|
-
agent_velocity=$(echo "scale=1; $agent_total / 30 * ${DURATION:-10}" | bc)
|
|
268
|
-
echo "$agent velocity: ${agent_velocity} days per ${DURATION:-10}-day sprint"
|
|
269
|
-
fi
|
|
270
|
-
done
|
|
271
|
-
```
|
|
272
|
-
|
|
273
|
-
## Phase 3: Story Selection & Prioritization
|
|
274
|
-
|
|
275
|
-
### Selection Criteria (in priority order)
|
|
276
|
-
1. **Must be "ready" status** (Definition of Ready met)
|
|
277
|
-
2. **Dependencies resolved** (all deps have status="done")
|
|
278
|
-
3. **Backlog priority** (from backlog.md or roadmap.md)
|
|
279
|
-
4. **Epic alignment** (if FOCUS_EPIC specified, prioritize that epic)
|
|
280
|
-
5. **Milestone deadlines** (check milestones.md for urgent items)
|
|
281
|
-
6. **Team capacity** (don't exceed calculated velocity)
|
|
282
|
-
7. **Agent balance** (distribute work evenly across agents)
|
|
283
|
-
|
|
284
|
-
### Story Selection Algorithm
|
|
285
|
-
```bash
|
|
286
|
-
# Extract all ready stories
|
|
287
|
-
jq -r '.stories | to_entries[] | select(.value.status=="ready") |
|
|
288
|
-
"\(.key)|\(.value.owner)|\(.value.estimate)|\(.value.epic // \"none\")|\(.value.deps // [] | join(\",\"))"' \
|
|
289
|
-
docs/09-agents/status.json > /tmp/ready_stories.txt
|
|
290
|
-
|
|
291
|
-
# Filter by dependencies (must be resolved)
|
|
292
|
-
while IFS='|' read -r story owner estimate epic deps; do
|
|
293
|
-
blocked=false
|
|
294
|
-
|
|
295
|
-
if [ -n "$deps" ]; then
|
|
296
|
-
IFS=',' read -ra DEP_ARRAY <<< "$deps"
|
|
297
|
-
for dep in "${DEP_ARRAY[@]}"; do
|
|
298
|
-
dep_status=$(jq -r ".stories[\"$dep\"].status" docs/09-agents/status.json 2>/dev/null)
|
|
299
|
-
if [ "$dep_status" != "done" ]; then
|
|
300
|
-
blocked=true
|
|
301
|
-
break
|
|
302
|
-
fi
|
|
303
|
-
done
|
|
304
|
-
fi
|
|
305
|
-
|
|
306
|
-
# If not blocked, eligible for sprint
|
|
307
|
-
if [ "$blocked" == "false" ]; then
|
|
308
|
-
# Check if agent has capacity
|
|
309
|
-
in_progress=$(jq -r ".stories | to_entries[] | select(.value.owner==\"$owner\") | select(.value.status==\"in-progress\") | .key" docs/09-agents/status.json | wc -l)
|
|
310
|
-
|
|
311
|
-
if [ "$in_progress" -lt 2 ]; then
|
|
312
|
-
echo "$story|$owner|$estimate|$epic|eligible"
|
|
313
|
-
else
|
|
314
|
-
echo "$story|$owner|$estimate|$epic|waiting-for-capacity"
|
|
315
|
-
fi
|
|
316
|
-
else
|
|
317
|
-
echo "$story|$owner|$estimate|$epic|blocked"
|
|
318
|
-
fi
|
|
319
|
-
done < /tmp/ready_stories.txt > /tmp/eligible_stories.txt
|
|
320
|
-
```
|
|
321
|
-
|
|
322
|
-
### Backlog Priority Matching
|
|
323
|
-
```bash
|
|
324
|
-
# Read backlog.md to get priority order
|
|
325
|
-
if [ -f docs/08-project/backlog.md ]; then
|
|
326
|
-
# Extract story IDs in order of appearance
|
|
327
|
-
grep -oE 'US-[0-9]{4}' docs/08-project/backlog.md > /tmp/backlog_order.txt
|
|
328
|
-
|
|
329
|
-
# Match with eligible stories
|
|
330
|
-
while read -r story_id; do
|
|
331
|
-
grep "^${story_id}|" /tmp/eligible_stories.txt
|
|
332
|
-
done < /tmp/backlog_order.txt > /tmp/prioritized_stories.txt
|
|
333
|
-
else
|
|
334
|
-
# No backlog.md, use status.json order
|
|
335
|
-
cat /tmp/eligible_stories.txt > /tmp/prioritized_stories.txt
|
|
336
|
-
fi
|
|
337
|
-
```
|
|
338
|
-
|
|
339
|
-
### Capacity-Based Selection
|
|
340
|
-
```bash
|
|
341
|
-
# Select stories until capacity is reached
|
|
342
|
-
capacity_days=${velocity:-10} # Default to sprint duration if no historical data
|
|
343
|
-
committed_days=0
|
|
344
|
-
|
|
345
|
-
echo "=== Sprint Story Selection ==="
|
|
346
|
-
echo "Target capacity: ${capacity_days} days"
|
|
347
|
-
echo ""
|
|
348
|
-
|
|
349
|
-
while IFS='|' read -r story owner estimate epic status; do
|
|
350
|
-
# Extract numeric estimate
|
|
351
|
-
days=$(echo "$estimate" | grep -oE '[0-9.]+' || echo "1")
|
|
352
|
-
|
|
353
|
-
# Check if adding this story exceeds capacity
|
|
354
|
-
new_total=$(echo "$committed_days + $days" | bc)
|
|
355
|
-
|
|
356
|
-
if [ $(echo "$new_total <= $capacity_days" | bc) -eq 1 ]; then
|
|
357
|
-
echo "✅ $story ($estimate) - $owner - Epic: $epic"
|
|
358
|
-
committed_days=$new_total
|
|
359
|
-
else
|
|
360
|
-
echo "⚠️ Capacity reached. Remaining stories in backlog:"
|
|
361
|
-
echo " $story ($estimate) - $owner - Epic: $epic [deferred]"
|
|
362
|
-
fi
|
|
363
|
-
done < /tmp/prioritized_stories.txt
|
|
364
|
-
```
|
|
365
|
-
|
|
366
|
-
## Phase 4: Risk Assessment
|
|
367
|
-
|
|
368
|
-
### Dependency Chain Analysis
|
|
369
|
-
```bash
|
|
370
|
-
# For each selected story, check dependency depth
|
|
371
|
-
echo ""
|
|
372
|
-
echo "=== Dependency Risk Assessment ==="
|
|
373
|
-
|
|
374
|
-
# Warn if selected stories have complex dependency chains
|
|
375
|
-
grep "^✅" /tmp/sprint_selection.txt | while read -r line; do
|
|
376
|
-
story=$(echo "$line" | grep -oE 'US-[0-9]{4}')
|
|
377
|
-
|
|
378
|
-
# Check if other stories depend on this one
|
|
379
|
-
dependents=$(jq -r ".stories | to_entries[] | select(.value.deps) | select(.value.deps | index(\"$story\")) | .key" docs/09-agents/status.json)
|
|
380
|
-
|
|
381
|
-
if [ -n "$dependents" ]; then
|
|
382
|
-
dep_count=$(echo "$dependents" | wc -l)
|
|
383
|
-
echo "⚠️ $story is blocking $dep_count other stories: $dependents"
|
|
384
|
-
echo " → Prioritize completion to unblock others"
|
|
385
|
-
fi
|
|
386
|
-
done
|
|
387
|
-
```
|
|
388
|
-
|
|
389
|
-
### Cross-Agent Coordination Check
|
|
390
|
-
```bash
|
|
391
|
-
# Identify stories requiring AG-API + AG-UI coordination
|
|
392
|
-
echo ""
|
|
393
|
-
echo "=== Cross-Agent Coordination ==="
|
|
394
|
-
|
|
395
|
-
ag_ui_stories=$(grep "^✅" /tmp/sprint_selection.txt | grep "AG-UI" | grep -oE 'US-[0-9]{4}')
|
|
396
|
-
ag_api_stories=$(grep "^✅" /tmp/sprint_selection.txt | grep "AG-API" | grep -oE 'US-[0-9]{4}')
|
|
397
|
-
|
|
398
|
-
if [ -n "$ag_ui_stories" ] && [ -n "$ag_api_stories" ]; then
|
|
399
|
-
echo "Sprint includes both AG-UI and AG-API work:"
|
|
400
|
-
echo "AG-UI stories: $ag_ui_stories"
|
|
401
|
-
echo "AG-API stories: $ag_api_stories"
|
|
402
|
-
echo ""
|
|
403
|
-
echo "💡 Tip: Sequence AG-API stories first to avoid blocking AG-UI"
|
|
404
|
-
fi
|
|
405
|
-
```
|
|
406
|
-
|
|
407
|
-
### Stale Epic Check
|
|
408
|
-
```bash
|
|
409
|
-
# Warn if sprint is mixing old and new epics
|
|
410
|
-
echo ""
|
|
411
|
-
echo "=== Epic Freshness Check ==="
|
|
412
|
-
|
|
413
|
-
grep "^✅" /tmp/sprint_selection.txt | grep -oE 'Epic: EP-[0-9]{4}' | sort -u | while read -r epic_line; do
|
|
414
|
-
epic=$(echo "$epic_line" | grep -oE 'EP-[0-9]{4}')
|
|
415
|
-
|
|
416
|
-
if [ -f "docs/05-epics/${epic}.md" ]; then
|
|
417
|
-
created=$(grep "^created:" "docs/05-epics/${epic}.md" | head -n1 | awk '{print $2}')
|
|
418
|
-
echo "$epic created on $created"
|
|
419
|
-
fi
|
|
420
|
-
done
|
|
421
|
-
```
|
|
422
|
-
|
|
423
|
-
## Phase 5: Sprint Commitment (if MODE=commit)
|
|
424
|
-
|
|
425
|
-
If MODE=commit, update status.json with sprint metadata:
|
|
426
|
-
|
|
427
|
-
```bash
|
|
428
|
-
# Add sprint field to selected stories
|
|
429
|
-
jq '.stories |= with_entries(
|
|
430
|
-
if (.key | IN("US-0042", "US-0043", "US-0045")) then
|
|
431
|
-
.value.sprint = "Sprint-42" |
|
|
432
|
-
.value.sprint_committed = "2025-10-22T00:00:00Z"
|
|
433
|
-
else
|
|
434
|
-
.
|
|
435
|
-
end
|
|
436
|
-
)' docs/09-agents/status.json > /tmp/status_updated.json
|
|
437
|
-
|
|
438
|
-
# Diff preview
|
|
439
|
-
diff -u docs/09-agents/status.json /tmp/status_updated.json
|
|
440
|
-
|
|
441
|
-
# Ask for confirmation
|
|
442
|
-
echo ""
|
|
443
|
-
echo "Update status.json with sprint commitments? (YES/NO)"
|
|
444
|
-
# Wait for user input
|
|
445
|
-
```
|
|
446
|
-
|
|
447
|
-
### Create Sprint Milestone
|
|
448
|
-
```bash
|
|
449
|
-
# Update milestones.md with sprint
|
|
450
|
-
sprint_end=$(date -u -d '+10 days' +%Y-%m-%d 2>/dev/null || date -u -v+10d +%Y-%m-%d 2>/dev/null)
|
|
451
|
-
|
|
452
|
-
cat >> docs/08-project/milestones.md <<EOF
|
|
453
|
-
|
|
454
|
-
## ${SPRINT:-Sprint} (${sprint_end})
|
|
455
|
-
|
|
456
|
-
**Stories**: ${committed_count} stories, ${committed_days} estimated days
|
|
457
|
-
**Team Capacity**: ${velocity} days (based on historical velocity)
|
|
458
|
-
|
|
459
|
-
**Committed Stories**:
|
|
460
|
-
$(grep "^✅" /tmp/sprint_selection.txt)
|
|
461
|
-
|
|
462
|
-
**Sprint Goals**:
|
|
463
|
-
- [Fill in sprint goals based on epic alignment]
|
|
464
|
-
|
|
465
|
-
**Risks**:
|
|
466
|
-
- [Identify from dependency and coordination analysis]
|
|
467
|
-
|
|
468
|
-
**Definition of Done**:
|
|
469
|
-
- All stories merged to main
|
|
470
|
-
- CI passing
|
|
471
|
-
- Documentation updated
|
|
472
|
-
- Demo prepared
|
|
473
|
-
|
|
474
|
-
EOF
|
|
475
|
-
```
|
|
476
|
-
|
|
477
|
-
### Bus Message
|
|
478
|
-
```bash
|
|
479
|
-
# Append sprint planning bus message
|
|
480
|
-
cat >> docs/09-agents/bus/log.jsonl <<EOF
|
|
481
|
-
{"ts":"$(date -u +%Y-%m-%dT%H:%M:%S)Z","from":"EPIC-PLANNER","type":"sprint-planned","text":"${SPRINT:-Sprint} planned: ${committed_count} stories, ${committed_days} days estimated, ends ${sprint_end}"}
|
|
482
|
-
EOF
|
|
483
|
-
```
|
|
484
|
-
|
|
485
|
-
OUTPUT FORMAT
|
|
486
|
-
|
|
487
|
-
```
|
|
488
|
-
📅 Sprint Planning Report
|
|
489
|
-
=========================
|
|
490
|
-
Sprint: ${SPRINT}
|
|
491
|
-
Duration: ${DURATION} days
|
|
492
|
-
Mode: ${MODE}
|
|
493
|
-
Generated: <timestamp>
|
|
494
|
-
|
|
495
|
-
📊 CAPACITY ANALYSIS
|
|
496
|
-
--------------------
|
|
497
|
-
Historical Velocity (last 30 days):
|
|
498
|
-
- Team: ${velocity} days per ${DURATION}-day sprint
|
|
499
|
-
- AG-UI: X days
|
|
500
|
-
- AG-API: X days
|
|
501
|
-
- AG-CI: X days
|
|
502
|
-
- AG-DEVOPS: X days
|
|
503
|
-
|
|
504
|
-
Current Agent Status:
|
|
505
|
-
AG-UI: 1/2 slots filled (1 available)
|
|
506
|
-
AG-API: 2/2 slots filled (at capacity, but 1 in review)
|
|
507
|
-
AG-CI: 0/2 slots filled (2 available)
|
|
508
|
-
AG-DEVOPS: 1/2 slots filled (1 available)
|
|
509
|
-
|
|
510
|
-
Total Available Capacity: ~X days
|
|
511
|
-
|
|
512
|
-
📋 BACKLOG STATUS
|
|
513
|
-
-----------------
|
|
514
|
-
Ready stories: X
|
|
515
|
-
Blocked stories: X (may unblock during sprint)
|
|
516
|
-
Eligible for sprint: X
|
|
517
|
-
|
|
518
|
-
✅ RECOMMENDED SPRINT COMMITMENT
|
|
519
|
-
--------------------------------
|
|
520
|
-
Committed: X stories, Y.Z estimated days (Y% of capacity)
|
|
521
|
-
|
|
522
|
-
1. US-0042 (1d) - AG-UI - Epic: EP-0010 [Priority: High]
|
|
523
|
-
"User login form with validation"
|
|
524
|
-
Dependencies: None ✅
|
|
525
|
-
Risk: None
|
|
526
|
-
|
|
527
|
-
2. US-0043 (0.5d) - AG-API - Epic: EP-0010 [Priority: High]
|
|
528
|
-
"POST /auth/login endpoint"
|
|
529
|
-
Dependencies: None ✅
|
|
530
|
-
Risk: Blocks US-0042 → Schedule first ⚠️
|
|
531
|
-
|
|
532
|
-
3. US-0045 (2d) - AG-UI - Epic: EP-0011 [Priority: Medium]
|
|
533
|
-
"User profile page"
|
|
534
|
-
Dependencies: US-0044 (done) ✅
|
|
535
|
-
Risk: None
|
|
536
|
-
|
|
537
|
-
4. US-0050 (1d) - AG-CI - Epic: EP-0012 [Priority: Medium]
|
|
538
|
-
"Add E2E tests for auth flow"
|
|
539
|
-
Dependencies: US-0042, US-0043 (both in this sprint) ⚠️
|
|
540
|
-
Risk: Should be done AFTER US-0042 and US-0043 complete
|
|
541
|
-
|
|
542
|
-
⚠️ DEFERRED (capacity reached)
|
|
543
|
-
-------------------------------
|
|
544
|
-
5. US-0055 (1d) - AG-API - Epic: EP-0013
|
|
545
|
-
"GET /user/settings endpoint"
|
|
546
|
-
→ Move to next sprint or pick up if capacity frees up
|
|
547
|
-
|
|
548
|
-
🎯 SPRINT GOALS
|
|
549
|
-
---------------
|
|
550
|
-
(Based on epic distribution)
|
|
551
|
-
1. Complete core authentication (EP-0010): 3 stories
|
|
552
|
-
2. User profile foundation (EP-0011): 1 story
|
|
553
|
-
3. Test coverage for auth (EP-0012): 1 story
|
|
554
|
-
|
|
555
|
-
⚠️ RISKS & DEPENDENCIES
|
|
556
|
-
------------------------
|
|
557
|
-
1. Cross-agent coordination required:
|
|
558
|
-
- AG-API must complete US-0043 before AG-UI can finish US-0042
|
|
559
|
-
- Suggest: AG-API prioritizes US-0043 in first 2 days
|
|
560
|
-
|
|
561
|
-
2. Test story (US-0050) depends on 2 sprint stories:
|
|
562
|
-
- Schedule for end of sprint after US-0042 and US-0043 are done
|
|
563
|
-
|
|
564
|
-
3. AG-API at capacity:
|
|
565
|
-
- Has 1 story in review (US-0038) likely to complete soon
|
|
566
|
-
- If US-0038 completes early, can pick up deferred US-0055
|
|
567
|
-
|
|
568
|
-
🔀 PARALLELIZATION ANALYSIS
|
|
569
|
-
---------------------------
|
|
570
|
-
Stories grouped by execution phase for multi-session workflows:
|
|
571
|
-
|
|
572
|
-
Phase 1 (Sequential - Foundation):
|
|
573
|
-
These must complete first - no dependencies, prerequisite for others.
|
|
574
|
-
- US-0043: POST /auth/login endpoint (AG-API)
|
|
575
|
-
|
|
576
|
-
Phase 2 (Parallel-eligible):
|
|
577
|
-
Can run in separate Claude Code sessions simultaneously.
|
|
578
|
-
All depend only on Phase 1 completion.
|
|
579
|
-
- US-0042: User login form (Session A)
|
|
580
|
-
- US-0045: User profile page (Session B)
|
|
581
|
-
└─ Run `/agileflow:session:new` for each parallel task
|
|
582
|
-
|
|
583
|
-
Phase 3 (Integration - Sequential):
|
|
584
|
-
Must wait for Phase 2 completion.
|
|
585
|
-
- US-0050: E2E tests for auth flow (depends on Phase 2)
|
|
586
|
-
|
|
587
|
-
💡 For multi-session work, create plan.md with:
|
|
588
|
-
`/agileflow:templates/plan-template.md` or copy from templates/
|
|
589
|
-
|
|
590
|
-
💡 RECOMMENDATIONS
|
|
591
|
-
------------------
|
|
592
|
-
1. Sequence stories: US-0043 (AG-API) → US-0042 (AG-UI) → US-0050 (AG-CI)
|
|
593
|
-
2. Daily standup focus: AG-API unblocking AG-UI (check /blockers)
|
|
594
|
-
3. Mid-sprint checkpoint: Day 5 - assess if US-0055 can be added
|
|
595
|
-
4. End-of-sprint: Run /agileflow:velocity to update historical data
|
|
596
|
-
|
|
597
|
-
📅 SPRINT TIMELINE
|
|
598
|
-
------------------
|
|
599
|
-
Start: <today>
|
|
600
|
-
End: <sprint_end>
|
|
601
|
-
Demo: <sprint_end - 1 day>
|
|
602
|
-
|
|
603
|
-
Definition of Done:
|
|
604
|
-
✅ All stories merged to main
|
|
605
|
-
✅ CI passing on main
|
|
606
|
-
✅ Documentation updated
|
|
607
|
-
✅ Demo prepared for stakeholders
|
|
608
|
-
|
|
609
|
-
Next Steps:
|
|
610
|
-
${MODE == "suggest" && "1. Review commitment and run /agileflow:sprint-plan MODE=commit to finalize"}
|
|
611
|
-
${MODE == "commit" && "1. ✅ Sprint committed! Stories updated in status.json"}
|
|
612
|
-
2. Assign first stories: /agileflow:assign STORY=US-0043 (highest priority)
|
|
613
|
-
3. Monitor progress: /agileflow:board
|
|
614
|
-
4. Track blockers: /agileflow:blockers
|
|
615
|
-
```
|
|
616
|
-
|
|
617
|
-
RULES
|
|
618
|
-
- Always calculate historical velocity before planning
|
|
619
|
-
- Respect WIP limits (max 2 per agent)
|
|
620
|
-
- Validate dependencies are resolved
|
|
621
|
-
- Prioritize by backlog order, milestones, epic goals
|
|
622
|
-
- Show diff before committing changes (MODE=commit)
|
|
623
|
-
- Provide sequencing recommendations for dependent stories
|
|
624
|
-
- Warn about cross-agent coordination needs
|
|
625
|
-
- Suggest concrete next commands
|
|
626
|
-
|
|
627
|
-
FOLLOW-UP QUESTIONS
|
|
628
|
-
After displaying plan, ask:
|
|
629
|
-
- "Does this sprint commitment look reasonable?"
|
|
630
|
-
- "Should I commit this plan (update status.json and milestones.md)?"
|
|
631
|
-
- "Any stories you'd like to add/remove?"
|
|
632
|
-
|
|
633
|
-
---
|
|
634
|
-
|
|
635
|
-
## Expected Output
|
|
636
|
-
|
|
637
|
-
### Success - Sprint Planning
|
|
638
|
-
|
|
639
|
-
```
|
|
640
|
-
📅 Sprint Planning: Sprint 13
|
|
641
|
-
══════════════════════════════════════════════════════════════
|
|
642
|
-
|
|
643
|
-
📊 Capacity Analysis
|
|
644
|
-
┌────────────────────────────────────────────────────────────┐
|
|
645
|
-
│ Team Velocity (avg last 3 sprints): 38 points │
|
|
646
|
-
│ Available capacity: 36 points (1 dev on PTO) │
|
|
647
|
-
│ Recommended commitment: 32-36 points │
|
|
648
|
-
└────────────────────────────────────────────────────────────┘
|
|
649
|
-
|
|
650
|
-
📋 Suggested Sprint Backlog
|
|
651
|
-
┌────────────────────────────────────────────────────────────┐
|
|
652
|
-
│ MUST HAVE (P0-P1) - 24 points │
|
|
653
|
-
├────────────────────────────────────────────────────────────┤
|
|
654
|
-
│ US-0060: OAuth completion (8 pts) - AG-API │
|
|
655
|
-
│ US-0061: Rate limiting (5 pts) - AG-CI │
|
|
656
|
-
│ US-0062: Session security fix (3 pts) - AG-SECURITY │
|
|
657
|
-
│ US-0063: Dashboard updates (8 pts) - AG-UI │
|
|
658
|
-
├────────────────────────────────────────────────────────────┤
|
|
659
|
-
│ SHOULD HAVE (P2) - 12 points │
|
|
660
|
-
├────────────────────────────────────────────────────────────┤
|
|
661
|
-
│ US-0064: Email notifications (5 pts) - AG-API │
|
|
662
|
-
│ US-0065: Metrics dashboard (4 pts) - AG-UI │
|
|
663
|
-
│ US-0066: Documentation update (3 pts) - AG-DOCS │
|
|
664
|
-
└────────────────────────────────────────────────────────────┘
|
|
665
|
-
|
|
666
|
-
⚠️ Dependency Alert:
|
|
667
|
-
US-0060 must complete before US-0064 can start
|
|
668
|
-
|
|
669
|
-
Total: 36 points | Risk: Low
|
|
670
|
-
|
|
671
|
-
Commit this sprint plan? [Y/n]
|
|
672
|
-
```
|
|
673
|
-
|
|
674
|
-
### Success - Sprint Started
|
|
675
|
-
|
|
676
|
-
```
|
|
677
|
-
📅 Sprint 13 Started
|
|
678
|
-
══════════════════════════════════════════════════════════════
|
|
679
|
-
|
|
680
|
-
Duration: 2026-01-29 to 2026-02-12 (14 days)
|
|
681
|
-
Commitment: 7 stories (36 points)
|
|
682
|
-
Goal: Complete OAuth and security hardening
|
|
683
|
-
|
|
684
|
-
✓ Status.json updated
|
|
685
|
-
✓ Sprint created in milestones.md
|
|
686
|
-
✓ Stories moved to 'in_progress' column
|
|
687
|
-
|
|
688
|
-
Next: /agileflow:board to see sprint view
|
|
689
|
-
```
|
|
690
|
-
|
|
691
|
-
### Error - Active Sprint Exists
|
|
692
|
-
|
|
693
|
-
```
|
|
694
|
-
❌ Error: Sprint 12 is still active
|
|
695
|
-
|
|
696
|
-
Stories remaining: 2 (4 points)
|
|
697
|
-
Days remaining: 1
|
|
698
|
-
|
|
699
|
-
Options:
|
|
700
|
-
1. Complete current sprint: /agileflow:sprint ACTION=end
|
|
701
|
-
2. Carry over stories: /agileflow:sprint ACTION=carryover
|
|
702
|
-
3. Force new sprint: /agileflow:sprint ACTION=start FORCE=true
|
|
703
|
-
```
|
|
704
|
-
|
|
705
|
-
---
|
|
706
|
-
|
|
707
|
-
## Related Commands
|
|
708
|
-
|
|
709
|
-
- `/agileflow:board` - Visual kanban board
|
|
710
|
-
- `/agileflow:velocity` - Track velocity and forecast capacity
|
|
711
|
-
- `/agileflow:metrics` - Analytics dashboard with cycle time
|
|
712
|
-
- `/agileflow:assign` - Assign stories to owners
|
|
713
|
-
- `/agileflow:blockers` - Track and resolve blockers
|
|
714
|
-
- `/agileflow:retro` - Sprint retrospective
|