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,477 +0,0 @@
|
|
|
1
|
-
---
|
|
2
|
-
description: Create a new epic with stories
|
|
3
|
-
phase: pre-story
|
|
4
|
-
argument-hint: "EPIC=<EP-ID> TITLE=<text> OWNER=<id> GOAL=<text> [STORIES=<list>] [RESEARCH=<file>]"
|
|
5
|
-
compact_context:
|
|
6
|
-
priority: high
|
|
7
|
-
preserve_rules:
|
|
8
|
-
- "ACTIVE COMMAND: /agileflow:epic-new - Epic creator for feature planning"
|
|
9
|
-
- "{{RULES:task_tracking}}"
|
|
10
|
-
- "{{RULES:file_preview}}"
|
|
11
|
-
- "{{RULES:json_operations}}"
|
|
12
|
-
- "{{RULES:user_confirmation}}"
|
|
13
|
-
- "STORIES format: 'US-ID|title|owner,US-ID2|title2|owner2' (comma-separated triplets)"
|
|
14
|
-
- "{{RULES:research_first}}"
|
|
15
|
-
state_fields:
|
|
16
|
-
- epic_id
|
|
17
|
-
- owner
|
|
18
|
-
- story_count
|
|
19
|
-
- creation_timestamp
|
|
20
|
-
- research_validated
|
|
21
|
-
---
|
|
22
|
-
|
|
23
|
-
# epic-new
|
|
24
|
-
|
|
25
|
-
---
|
|
26
|
-
|
|
27
|
-
## STEP 0: Gather Context
|
|
28
|
-
|
|
29
|
-
```bash
|
|
30
|
-
node .agileflow/scripts/obtain-context.js epic
|
|
31
|
-
```
|
|
32
|
-
|
|
33
|
-
This gathers git status, stories/epics, session state, and registers for PreCompact.
|
|
34
|
-
|
|
35
|
-
---
|
|
36
|
-
|
|
37
|
-
Create a new epic with optional child stories.
|
|
38
|
-
|
|
39
|
-
<!-- COMPACT_SUMMARY_START -->
|
|
40
|
-
|
|
41
|
-
## ⚠️ COMPACT SUMMARY - /agileflow:epic-new IS ACTIVE
|
|
42
|
-
|
|
43
|
-
**CRITICAL**: You are the Epic Creator. This command creates new epics with associated stories. Follow every rule.
|
|
44
|
-
|
|
45
|
-
---
|
|
46
|
-
|
|
47
|
-
### 🚨 RULE #1: ALWAYS Create TaskCreate/TaskUpdate Task List FIRST
|
|
48
|
-
|
|
49
|
-
Create a 6-step task list IMMEDIATELY:
|
|
50
|
-
```xml
|
|
51
|
-
<invoke name="TaskCreate/TaskUpdate">
|
|
52
|
-
<parameter name="content">1. Parse inputs (EPIC, TITLE, OWNER, GOAL, STORIES)
|
|
53
|
-
2. Create epic file from template
|
|
54
|
-
3. For each story: create docs/06-stories/<EPIC>/<US_ID>-<slug>.md
|
|
55
|
-
4. Merge entries into status.json
|
|
56
|
-
5. Append assign events to bus/log.jsonl
|
|
57
|
-
6. Show preview and confirm with user</parameter>
|
|
58
|
-
<parameter name="status">in-progress</parameter>
|
|
59
|
-
</invoke>
|
|
60
|
-
```
|
|
61
|
-
Mark each step complete as you finish it.
|
|
62
|
-
|
|
63
|
-
### 🚨 RULE #2: NEVER Create Files Without Preview + Confirmation
|
|
64
|
-
|
|
65
|
-
**Workflow** (ALWAYS follow this order):
|
|
66
|
-
1. Parse and validate all inputs
|
|
67
|
-
2. Create epic file from template
|
|
68
|
-
3. Create story files from template
|
|
69
|
-
4. Prepare status.json merge
|
|
70
|
-
5. Prepare bus/log.jsonl append
|
|
71
|
-
6. Show unified DIFF preview (all files + status.json + bus log)
|
|
72
|
-
7. Ask user YES/NO/CANCEL confirmation
|
|
73
|
-
8. Only on YES: Execute writes and update status
|
|
74
|
-
|
|
75
|
-
### 🚨 RULE #3: NEVER Use echo/cat > For JSON Operations
|
|
76
|
-
|
|
77
|
-
**ALWAYS use one of**:
|
|
78
|
-
- Edit tool for small changes
|
|
79
|
-
- jq for complex merges
|
|
80
|
-
- JSON validation after every write:
|
|
81
|
-
```bash
|
|
82
|
-
if ! jq empty docs/09-agents/status.json 2>/dev/null; then
|
|
83
|
-
echo "❌ ERROR: status.json is now invalid JSON!"
|
|
84
|
-
exit 1
|
|
85
|
-
fi
|
|
86
|
-
```
|
|
87
|
-
|
|
88
|
-
### 🚨 RULE #4: ALWAYS Validate JSON After Modifications
|
|
89
|
-
|
|
90
|
-
After ANY change to status.json:
|
|
91
|
-
```bash
|
|
92
|
-
jq empty docs/09-agents/status.json 2>/dev/null || {
|
|
93
|
-
echo "❌ VALIDATION FAILED: status.json is corrupt"
|
|
94
|
-
exit 1
|
|
95
|
-
}
|
|
96
|
-
```
|
|
97
|
-
|
|
98
|
-
---
|
|
99
|
-
|
|
100
|
-
## Key Files & Formats
|
|
101
|
-
|
|
102
|
-
**Input Parameters**:
|
|
103
|
-
```
|
|
104
|
-
EPIC=<EP-ID> # e.g., EP-0001 (required)
|
|
105
|
-
TITLE=<text> # Epic title (required)
|
|
106
|
-
OWNER=<id> # Agent or person name (required)
|
|
107
|
-
GOAL=<outcome> # Epic goal/metric (required)
|
|
108
|
-
STORIES=<list> # Comma-separated triplets (optional)
|
|
109
|
-
Format: "US-0001|Story One|owner,US-0002|Story Two|owner2"
|
|
110
|
-
RESEARCH=<file> # Research note filename (optional)
|
|
111
|
-
Format: "20260119-feature-research.md" (in docs/10-research/)
|
|
112
|
-
```
|
|
113
|
-
|
|
114
|
-
**Output Files Created**:
|
|
115
|
-
| File | Purpose | Template |
|
|
116
|
-
|------|---------|----------|
|
|
117
|
-
| docs/05-epics/EP-<ID>.md | Epic definition | epic-template.md |
|
|
118
|
-
| docs/06-stories/EP-<ID>/US-<ID>-<slug>.md | Child stories | story-template.md |
|
|
119
|
-
| docs/09-agents/status.json | Merged entries | jq merge |
|
|
120
|
-
| docs/09-agents/bus/log.jsonl | Appended events | JSONL lines |
|
|
121
|
-
|
|
122
|
-
**Merge into status.json**:
|
|
123
|
-
- Epic entry: {id, owner, status: "active", summary, created, updated}
|
|
124
|
-
- Story entries: {id, owner, status: "ready", epic, estimate: "0.5d", deps: [], created, updated}
|
|
125
|
-
|
|
126
|
-
**Append to bus/log.jsonl**:
|
|
127
|
-
```json
|
|
128
|
-
{"ts":"ISO","type":"assign","from":"SYSTEM","to":"<owner>","epic":"<EPIC>","text":"Epic created"}
|
|
129
|
-
{"ts":"ISO","type":"assign","from":"SYSTEM","to":"<owner>","story":"<US-ID>","text":"Story created"}
|
|
130
|
-
```
|
|
131
|
-
|
|
132
|
-
---
|
|
133
|
-
|
|
134
|
-
## Anti-Patterns & Correct Usage
|
|
135
|
-
|
|
136
|
-
❌ **DON'T**:
|
|
137
|
-
- Ask user to "type" story list (use structured format)
|
|
138
|
-
- Create files without showing preview
|
|
139
|
-
- Overwrite status.json (always merge)
|
|
140
|
-
- Skip JSON validation after edits
|
|
141
|
-
- Create stories without linking to epic
|
|
142
|
-
|
|
143
|
-
✅ **DO**:
|
|
144
|
-
- Show file previews for all 3-5 files being created
|
|
145
|
-
- Use proper STORIES format with pipes and commas
|
|
146
|
-
- Merge entries into existing JSON (preserve data)
|
|
147
|
-
- Validate JSON after every modification
|
|
148
|
-
- Link all stories to epic in status.json
|
|
149
|
-
|
|
150
|
-
---
|
|
151
|
-
|
|
152
|
-
## Confirmation Flow
|
|
153
|
-
|
|
154
|
-
1. **Show preview box** with all files being created
|
|
155
|
-
- Epic file path and frontmatter
|
|
156
|
-
- Story file paths and frontmatter
|
|
157
|
-
- status.json changes (diff format)
|
|
158
|
-
- bus/log.jsonl lines to append
|
|
159
|
-
|
|
160
|
-
2. **Ask confirmation**:
|
|
161
|
-
```xml
|
|
162
|
-
<invoke name="AskUserQuestion">
|
|
163
|
-
<parameter name="questions">[{
|
|
164
|
-
"question": "Create epic EP-0010 with 3 stories?",
|
|
165
|
-
"header": "Confirm Epic Creation",
|
|
166
|
-
"multiSelect": false,
|
|
167
|
-
"options": [
|
|
168
|
-
{"label": "Yes, create", "description": "Write all files"},
|
|
169
|
-
{"label": "No, edit", "description": "Modify details"},
|
|
170
|
-
{"label": "Cancel", "description": "Don't create"}
|
|
171
|
-
]
|
|
172
|
-
}]</parameter>
|
|
173
|
-
</invoke>
|
|
174
|
-
```
|
|
175
|
-
|
|
176
|
-
3. **On YES**: Execute all writes (files, merge, append)
|
|
177
|
-
4. **On NO/CANCEL**: Abort without changes
|
|
178
|
-
|
|
179
|
-
---
|
|
180
|
-
|
|
181
|
-
## REMEMBER AFTER COMPACTION
|
|
182
|
-
|
|
183
|
-
- Command creates epics + child stories in one operation
|
|
184
|
-
- ALWAYS parse and validate STORIES input (triplet format)
|
|
185
|
-
- ALWAYS preview before confirming (prevents mistakes)
|
|
186
|
-
- ALWAYS validate JSON after merge (prevents corruption)
|
|
187
|
-
- Use TaskCreate/TaskUpdate for step tracking (6 steps)
|
|
188
|
-
- Files: epic file, N story files, status.json, bus/log.jsonl
|
|
189
|
-
- **RESEARCH-FIRST**: For complex epics (3+ stories), validate research exists; suggest /agileflow:research:ask if missing
|
|
190
|
-
|
|
191
|
-
<!-- COMPACT_SUMMARY_END -->
|
|
192
|
-
|
|
193
|
-
## Prompt
|
|
194
|
-
|
|
195
|
-
ROLE: Epic Creator
|
|
196
|
-
|
|
197
|
-
OBJECTIVE
|
|
198
|
-
Analyze feature requirements and create structured epics with associated stories. Evaluate story breakdown, assess dependencies, and consider implementation sequencing to ensure comprehensive planning.
|
|
199
|
-
|
|
200
|
-
TODO LIST TRACKING
|
|
201
|
-
**CRITICAL**: Immediately create a todo list using TaskCreate/TaskUpdate tool to track epic creation:
|
|
202
|
-
```
|
|
203
|
-
1. Parse inputs (EPIC, TITLE, OWNER, GOAL, STORIES)
|
|
204
|
-
2. Create docs/05-epics/<EPIC>.md from template
|
|
205
|
-
3. For each story: create docs/06-stories/<EPIC>/<US_ID>-<slug>.md
|
|
206
|
-
4. Merge entries into docs/09-agents/status.json
|
|
207
|
-
5. Append assign lines to docs/09-agents/bus/log.jsonl
|
|
208
|
-
6. Show preview and wait for YES/NO confirmation
|
|
209
|
-
```
|
|
210
|
-
|
|
211
|
-
Mark each step complete as you finish it. This ensures nothing is forgotten.
|
|
212
|
-
|
|
213
|
-
INPUTS
|
|
214
|
-
EPIC=<ID e.g., EP-0001>
|
|
215
|
-
TITLE=<Epic title>
|
|
216
|
-
OWNER=<name or agent id>
|
|
217
|
-
GOAL=<outcome/metric>
|
|
218
|
-
STORIES=<optional> comma-separated "<US_ID>|<short title>|<owner>"
|
|
219
|
-
|
|
220
|
-
TEMPLATE
|
|
221
|
-
Use the following epic template structure:
|
|
222
|
-
@packages/cli/src/core/templates/epic-template.md
|
|
223
|
-
|
|
224
|
-
ACTIONS
|
|
225
|
-
1) Create docs/05-epics/<EPIC>.md from epic-template.md (status=active; created/updated=now).
|
|
226
|
-
2) For each story, create docs/06-stories/<EPIC>/<US_ID>-<slug>.md from story-template.md (status=ready; estimate=0.5d; deps=[]).
|
|
227
|
-
3) Merge entries into docs/09-agents/status.json (owner,status,branch,summary,last_update).
|
|
228
|
-
4) Append "assign" lines to docs/09-agents/bus/log.jsonl.
|
|
229
|
-
|
|
230
|
-
Always show previews; YES/NO before writing.
|
|
231
|
-
|
|
232
|
-
---
|
|
233
|
-
|
|
234
|
-
## POST-CREATION ACTIONS
|
|
235
|
-
|
|
236
|
-
After successfully creating the epic, offer next steps:
|
|
237
|
-
|
|
238
|
-
```xml
|
|
239
|
-
<invoke name="AskUserQuestion">
|
|
240
|
-
<parameter name="questions">[{
|
|
241
|
-
"question": "Epic <EPIC> created with <N> stories! What would you like to do next?",
|
|
242
|
-
"header": "Next Steps",
|
|
243
|
-
"multiSelect": false,
|
|
244
|
-
"options": [
|
|
245
|
-
{"label": "Add more stories (Recommended)", "description": "Epic may need additional work items"},
|
|
246
|
-
{"label": "Start working on first story", "description": "Begin implementation immediately"},
|
|
247
|
-
{"label": "Plan sprint for this epic", "description": "Schedule stories with /agileflow:sprint"},
|
|
248
|
-
{"label": "View epic details", "description": "See full epic with /agileflow:epic:view"}
|
|
249
|
-
]
|
|
250
|
-
}]</parameter>
|
|
251
|
-
</invoke>
|
|
252
|
-
```
|
|
253
|
-
|
|
254
|
-
**If "Add more stories"**:
|
|
255
|
-
- Re-run `/agileflow:story EPIC=<EPIC>` with next story ID
|
|
256
|
-
|
|
257
|
-
**If "Start working on first story"**:
|
|
258
|
-
1. Show ready stories in this epic
|
|
259
|
-
2. Let user pick one
|
|
260
|
-
3. Run `/agileflow:status <STORY> STATUS=in_progress`
|
|
261
|
-
4. Ask: "Enter plan mode to explore implementation?"
|
|
262
|
-
|
|
263
|
-
**If "Plan sprint"**:
|
|
264
|
-
- Run `/agileflow:sprint` with this epic's stories
|
|
265
|
-
|
|
266
|
-
**If "View epic details"**:
|
|
267
|
-
- Run `/agileflow:epic:view EPIC=<EPIC>`
|
|
268
|
-
|
|
269
|
-
---
|
|
270
|
-
|
|
271
|
-
## Research-First Validation (GSD Integration)
|
|
272
|
-
|
|
273
|
-
Before creating an epic or starting work, validate that research exists for complex features.
|
|
274
|
-
|
|
275
|
-
### Research Validation Flow
|
|
276
|
-
|
|
277
|
-
**Step 1: Check for Research Field**
|
|
278
|
-
|
|
279
|
-
When epic has a `research` field in status.json:
|
|
280
|
-
```javascript
|
|
281
|
-
const epic = status.epics["EP-0022"];
|
|
282
|
-
if (epic.research) {
|
|
283
|
-
// Verify research file exists
|
|
284
|
-
const researchPath = `docs/10-research/${epic.research}`;
|
|
285
|
-
if (!fs.existsSync(researchPath)) {
|
|
286
|
-
console.warn(`⚠️ Research file not found: ${researchPath}`);
|
|
287
|
-
}
|
|
288
|
-
}
|
|
289
|
-
```
|
|
290
|
-
|
|
291
|
-
**Step 2: Warn if No Research for Complex Epic**
|
|
292
|
-
|
|
293
|
-
If epic has 3+ stories and no research field, suggest research first:
|
|
294
|
-
|
|
295
|
-
```xml
|
|
296
|
-
<invoke name="AskUserQuestion">
|
|
297
|
-
<parameter name="questions">[{
|
|
298
|
-
"question": "This epic has no linked research. Complex features benefit from research-first planning. What would you like to do?",
|
|
299
|
-
"header": "Research Check",
|
|
300
|
-
"multiSelect": false,
|
|
301
|
-
"options": [
|
|
302
|
-
{"label": "Create research first (Recommended)", "description": "Run /agileflow:research:ask to gather context"},
|
|
303
|
-
{"label": "Continue without research", "description": "Proceed with epic creation"},
|
|
304
|
-
{"label": "Link existing research", "description": "Specify research file to link"}
|
|
305
|
-
]
|
|
306
|
-
}]</parameter>
|
|
307
|
-
</invoke>
|
|
308
|
-
```
|
|
309
|
-
|
|
310
|
-
**If "Create research first"**:
|
|
311
|
-
- Suggest: `/agileflow:research:ask <topic>`
|
|
312
|
-
- After research created, re-run epic creation with RESEARCH parameter
|
|
313
|
-
|
|
314
|
-
**If "Link existing research"**:
|
|
315
|
-
- Show list of recent research files in docs/10-research/
|
|
316
|
-
- Let user select one
|
|
317
|
-
- Add to epic: `research: "selected-file.md"`
|
|
318
|
-
|
|
319
|
-
### Epic Schema with Research
|
|
320
|
-
|
|
321
|
-
```json
|
|
322
|
-
{
|
|
323
|
-
"EP-0022": {
|
|
324
|
-
"title": "GSD Integration",
|
|
325
|
-
"status": "in_progress",
|
|
326
|
-
"owner": "AG-DEVOPS",
|
|
327
|
-
"goal": "Adopt GSD workflow patterns",
|
|
328
|
-
"research": "20260119-gsd-agileflow-integration-analysis.md",
|
|
329
|
-
"research_required": false,
|
|
330
|
-
"stories": ["US-0129", "US-0130", "US-0131", "US-0132"]
|
|
331
|
-
}
|
|
332
|
-
}
|
|
333
|
-
```
|
|
334
|
-
|
|
335
|
-
**Fields**:
|
|
336
|
-
- `research` (optional): Filename of research note in docs/10-research/
|
|
337
|
-
- `research_required` (optional): If true, blocks implementation until research exists
|
|
338
|
-
|
|
339
|
-
### When Starting Work Without Research
|
|
340
|
-
|
|
341
|
-
If user tries to start a story in an epic that has `research_required: true` but no valid research file:
|
|
342
|
-
|
|
343
|
-
```
|
|
344
|
-
⚠️ Research Required
|
|
345
|
-
|
|
346
|
-
Epic EP-0022 requires research before implementation.
|
|
347
|
-
Research file not found: 20260119-missing-research.md
|
|
348
|
-
|
|
349
|
-
Suggested actions:
|
|
350
|
-
1. Run /agileflow:research:ask "GSD workflow integration"
|
|
351
|
-
2. Link existing research with /agileflow:epic RESEARCH=<file>
|
|
352
|
-
3. Remove research_required flag if research is optional
|
|
353
|
-
```
|
|
354
|
-
|
|
355
|
-
---
|
|
356
|
-
|
|
357
|
-
## Related Commands
|
|
358
|
-
|
|
359
|
-
- `/agileflow:epic:list` - View all epics with progress
|
|
360
|
-
- `/agileflow:epic:view` - View epic details with all stories
|
|
361
|
-
- `/agileflow:story` - Create story in epic
|
|
362
|
-
- `/agileflow:story:list` - View all stories
|
|
363
|
-
- `/agileflow:sprint` - Plan sprint with epic stories
|
|
364
|
-
- `/agileflow:board` - Visual kanban board
|
|
365
|
-
|
|
366
|
-
---
|
|
367
|
-
|
|
368
|
-
## Expected Output
|
|
369
|
-
|
|
370
|
-
### Successful Epic Creation
|
|
371
|
-
|
|
372
|
-
```
|
|
373
|
-
📦 Creating Epic: EP-0010
|
|
374
|
-
|
|
375
|
-
Title: User Authentication System
|
|
376
|
-
Owner: AG-API
|
|
377
|
-
Goal: Enable secure user login with OAuth support
|
|
378
|
-
|
|
379
|
-
Files to create:
|
|
380
|
-
───────────────────────────
|
|
381
|
-
1. docs/05-epics/EP-0010.md
|
|
382
|
-
- Epic definition with goal and stories
|
|
383
|
-
|
|
384
|
-
2. docs/06-stories/EP-0010/US-0042-login-form.md
|
|
385
|
-
- Story: Login Form (AG-UI)
|
|
386
|
-
|
|
387
|
-
3. docs/06-stories/EP-0010/US-0043-oauth-integration.md
|
|
388
|
-
- Story: OAuth Integration (AG-API)
|
|
389
|
-
|
|
390
|
-
4. docs/06-stories/EP-0010/US-0044-session-management.md
|
|
391
|
-
- Story: Session Management (AG-API)
|
|
392
|
-
|
|
393
|
-
5. docs/09-agents/status.json (merge)
|
|
394
|
-
+ "EP-0010": {
|
|
395
|
-
+ "id": "EP-0010",
|
|
396
|
-
+ "owner": "AG-API",
|
|
397
|
-
+ "status": "active",
|
|
398
|
-
+ "stories": ["US-0042", "US-0043", "US-0044"]
|
|
399
|
-
+ }
|
|
400
|
-
+ "US-0042": { "epic": "EP-0010", "owner": "AG-UI", "status": "ready" }
|
|
401
|
-
+ "US-0043": { "epic": "EP-0010", "owner": "AG-API", "status": "ready" }
|
|
402
|
-
+ "US-0044": { "epic": "EP-0010", "owner": "AG-API", "status": "ready" }
|
|
403
|
-
|
|
404
|
-
6. docs/09-agents/bus/log.jsonl (append)
|
|
405
|
-
+ {"type":"assign","to":"AG-API","epic":"EP-0010","text":"Epic created"}
|
|
406
|
-
+ {"type":"assign","to":"AG-UI","story":"US-0042","text":"Story created"}
|
|
407
|
-
+ {"type":"assign","to":"AG-API","story":"US-0043","text":"Story created"}
|
|
408
|
-
+ {"type":"assign","to":"AG-API","story":"US-0044","text":"Story created"}
|
|
409
|
-
|
|
410
|
-
[AskUserQuestion: "Create epic EP-0010 with 3 stories?"]
|
|
411
|
-
|
|
412
|
-
✅ Epic EP-0010 created successfully!
|
|
413
|
-
✅ Created 3 stories: US-0042, US-0043, US-0044
|
|
414
|
-
✅ Bus messages sent to assigned owners
|
|
415
|
-
|
|
416
|
-
[AskUserQuestion: "What would you like to do next?"]
|
|
417
|
-
```
|
|
418
|
-
|
|
419
|
-
### Research Validation Warning
|
|
420
|
-
|
|
421
|
-
```
|
|
422
|
-
📦 Creating Epic: EP-0010 (5 stories)
|
|
423
|
-
|
|
424
|
-
⚠️ Research Check
|
|
425
|
-
|
|
426
|
-
This epic has no linked research.
|
|
427
|
-
Complex features (3+ stories) benefit from research-first planning.
|
|
428
|
-
|
|
429
|
-
[AskUserQuestion: "What would you like to do?"]
|
|
430
|
-
- Create research first (Recommended)
|
|
431
|
-
- Continue without research
|
|
432
|
-
- Link existing research
|
|
433
|
-
```
|
|
434
|
-
|
|
435
|
-
### With Linked Research
|
|
436
|
-
|
|
437
|
-
```
|
|
438
|
-
📦 Creating Epic: EP-0010
|
|
439
|
-
|
|
440
|
-
Research linked: 20260121-auth-system-analysis.md
|
|
441
|
-
|
|
442
|
-
✅ Research file validated
|
|
443
|
-
✅ Key findings extracted:
|
|
444
|
-
• OAuth 2.0 recommended over custom auth
|
|
445
|
-
• JWT for session tokens
|
|
446
|
-
• 3 integration points identified
|
|
447
|
-
|
|
448
|
-
[Proceeding with epic creation...]
|
|
449
|
-
```
|
|
450
|
-
|
|
451
|
-
### Validation Error
|
|
452
|
-
|
|
453
|
-
```
|
|
454
|
-
❌ Invalid STORIES format
|
|
455
|
-
|
|
456
|
-
Received: US-0042,US-0043
|
|
457
|
-
Expected: US-0042|title|owner,US-0043|title|owner
|
|
458
|
-
|
|
459
|
-
Format: "US-ID|title|owner,US-ID2|title2|owner2"
|
|
460
|
-
|
|
461
|
-
Example:
|
|
462
|
-
STORIES="US-0042|Login Form|AG-UI,US-0043|OAuth|AG-API"
|
|
463
|
-
```
|
|
464
|
-
|
|
465
|
-
### Epic Already Exists
|
|
466
|
-
|
|
467
|
-
```
|
|
468
|
-
❌ Epic EP-0010 already exists
|
|
469
|
-
|
|
470
|
-
Existing epic:
|
|
471
|
-
Title: User Authentication System
|
|
472
|
-
Status: in_progress
|
|
473
|
-
Stories: 3 (1 done, 2 in progress)
|
|
474
|
-
|
|
475
|
-
To add stories, use:
|
|
476
|
-
/agileflow:story EPIC=EP-0010 STORY=US-00XX TITLE="..." OWNER=...
|
|
477
|
-
```
|
|
@@ -1,238 +0,0 @@
|
|
|
1
|
-
---
|
|
2
|
-
description: Export stories and epics to CSV, JSON, or Markdown for stakeholder reporting
|
|
3
|
-
argument-hint: "FORMAT=csv|json|md [EPIC=<EP-ID>] [STATUS=<status>] [OWNER=<id>]"
|
|
4
|
-
compact_context:
|
|
5
|
-
priority: medium
|
|
6
|
-
preserve_rules:
|
|
7
|
-
- "ACTIVE COMMAND: /agileflow:export - Export stories/epics to CSV/JSON/Markdown"
|
|
8
|
-
- "{{RULES:json_operations}}"
|
|
9
|
-
- "MUST read status.json as data source"
|
|
10
|
-
- "MUST support FORMAT=csv|json|md (default: csv)"
|
|
11
|
-
- "MUST support optional filters: EPIC, STATUS, OWNER"
|
|
12
|
-
- "MUST save output to docs/08-project/exports/"
|
|
13
|
-
state_fields:
|
|
14
|
-
- format
|
|
15
|
-
- filter_epic
|
|
16
|
-
- filter_status
|
|
17
|
-
- filter_owner
|
|
18
|
-
- output_path
|
|
19
|
-
---
|
|
20
|
-
|
|
21
|
-
# /agileflow:export
|
|
22
|
-
|
|
23
|
-
Export stories and epics from status.json to CSV, JSON, or Markdown for stakeholder reporting.
|
|
24
|
-
|
|
25
|
-
---
|
|
26
|
-
|
|
27
|
-
## STEP 0: Gather Context
|
|
28
|
-
|
|
29
|
-
```bash
|
|
30
|
-
node .agileflow/scripts/obtain-context.js export
|
|
31
|
-
```
|
|
32
|
-
|
|
33
|
-
---
|
|
34
|
-
|
|
35
|
-
<!-- COMPACT_SUMMARY_START -->
|
|
36
|
-
## Compact Summary
|
|
37
|
-
|
|
38
|
-
**Command**: `/agileflow:export FORMAT=csv|json|md [EPIC=...] [STATUS=...] [OWNER=...]`
|
|
39
|
-
**Purpose**: Export filtered stories to CSV, JSON, or Markdown files
|
|
40
|
-
|
|
41
|
-
### Flow
|
|
42
|
-
1. Parse FORMAT and optional filters
|
|
43
|
-
2. Read status.json
|
|
44
|
-
3. Apply filters (epic, status, owner)
|
|
45
|
-
4. Generate output in requested format
|
|
46
|
-
5. Save to docs/08-project/exports/export-YYYYMMDD.{csv|json|md}
|
|
47
|
-
6. Show summary and file path
|
|
48
|
-
|
|
49
|
-
### Critical Rules
|
|
50
|
-
- **Default format**: CSV if not specified
|
|
51
|
-
- **CSV must be Excel-compatible**: Proper quoting, comma-separated
|
|
52
|
-
- **JSON mirrors status.json**: Filtered subset of stories structure
|
|
53
|
-
- **Markdown generates table**: Paste-ready for docs/reports
|
|
54
|
-
- **Always show count**: "Exported N stories to <path>"
|
|
55
|
-
<!-- COMPACT_SUMMARY_END -->
|
|
56
|
-
|
|
57
|
-
---
|
|
58
|
-
|
|
59
|
-
## Arguments
|
|
60
|
-
|
|
61
|
-
| Argument | Required | Default | Description |
|
|
62
|
-
|----------|----------|---------|-------------|
|
|
63
|
-
| FORMAT | No | csv | Output format: `csv`, `json`, or `md` |
|
|
64
|
-
| EPIC | No | all | Filter by epic ID (e.g., EP-0041) |
|
|
65
|
-
| STATUS | No | all | Filter by status: ready, in_progress, blocked, done, completed |
|
|
66
|
-
| OWNER | No | all | Filter by owner (e.g., AG-API, AG-UI) |
|
|
67
|
-
|
|
68
|
-
Multiple filters can be combined. All are AND-joined (stories must match all filters).
|
|
69
|
-
|
|
70
|
-
---
|
|
71
|
-
|
|
72
|
-
## IMMEDIATE ACTIONS
|
|
73
|
-
|
|
74
|
-
### Step 1: Parse Arguments
|
|
75
|
-
|
|
76
|
-
```
|
|
77
|
-
FORMAT = argument or "csv" (default)
|
|
78
|
-
EPIC = optional epic filter
|
|
79
|
-
STATUS = optional status filter
|
|
80
|
-
OWNER = optional owner filter
|
|
81
|
-
```
|
|
82
|
-
|
|
83
|
-
Validate FORMAT is one of: csv, json, md. If invalid, show error and suggest valid values.
|
|
84
|
-
|
|
85
|
-
### Step 2: Read and Filter Data
|
|
86
|
-
|
|
87
|
-
Read `docs/09-agents/status.json` and filter stories:
|
|
88
|
-
|
|
89
|
-
```javascript
|
|
90
|
-
const data = JSON.parse(fs.readFileSync('docs/09-agents/status.json', 'utf8'));
|
|
91
|
-
let stories = Object.entries(data.stories).map(([id, s]) => ({ id, ...s }));
|
|
92
|
-
|
|
93
|
-
// Apply filters
|
|
94
|
-
if (EPIC) stories = stories.filter(s => s.epic === EPIC);
|
|
95
|
-
if (STATUS) stories = stories.filter(s => s.status === STATUS);
|
|
96
|
-
if (OWNER) stories = stories.filter(s => s.owner === OWNER);
|
|
97
|
-
```
|
|
98
|
-
|
|
99
|
-
If no stories match, inform user: "No stories match the given filters."
|
|
100
|
-
|
|
101
|
-
### Step 3: Generate Output
|
|
102
|
-
|
|
103
|
-
#### CSV Format
|
|
104
|
-
|
|
105
|
-
Columns: ID, Title, Epic, Status, Owner, Priority, Estimate
|
|
106
|
-
|
|
107
|
-
```csv
|
|
108
|
-
ID,Title,Epic,Status,Owner,Priority,Estimate
|
|
109
|
-
US-0380,"Add story:edit and epic:edit commands",EP-0041,done,AG-API,high,3h
|
|
110
|
-
US-0381,"Add status:undo command for story status rollback",EP-0041,done,AG-API,high,2h
|
|
111
|
-
```
|
|
112
|
-
|
|
113
|
-
Rules:
|
|
114
|
-
- First row is header
|
|
115
|
-
- Quote fields containing commas or quotes
|
|
116
|
-
- Escape quotes by doubling them
|
|
117
|
-
- Use UTF-8 encoding
|
|
118
|
-
|
|
119
|
-
#### JSON Format
|
|
120
|
-
|
|
121
|
-
```json
|
|
122
|
-
{
|
|
123
|
-
"exported_at": "2026-03-03T12:00:00Z",
|
|
124
|
-
"filters": { "epic": "EP-0041", "status": null, "owner": null },
|
|
125
|
-
"count": 8,
|
|
126
|
-
"stories": [
|
|
127
|
-
{
|
|
128
|
-
"id": "US-0380",
|
|
129
|
-
"title": "Add story:edit and epic:edit commands",
|
|
130
|
-
"epic": "EP-0041",
|
|
131
|
-
"status": "done",
|
|
132
|
-
"owner": "AG-API",
|
|
133
|
-
"priority": "high",
|
|
134
|
-
"estimate": "3h"
|
|
135
|
-
}
|
|
136
|
-
]
|
|
137
|
-
}
|
|
138
|
-
```
|
|
139
|
-
|
|
140
|
-
#### Markdown Format
|
|
141
|
-
|
|
142
|
-
```markdown
|
|
143
|
-
# Story Export - 2026-03-03
|
|
144
|
-
|
|
145
|
-
**Filters**: Epic: EP-0041
|
|
146
|
-
**Count**: 8 stories
|
|
147
|
-
|
|
148
|
-
| ID | Title | Epic | Status | Owner | Priority | Estimate |
|
|
149
|
-
|----|-------|------|--------|-------|----------|----------|
|
|
150
|
-
| US-0380 | Add story:edit and epic:edit commands | EP-0041 | done | AG-API | high | 3h |
|
|
151
|
-
| US-0381 | Add status:undo command | EP-0041 | done | AG-API | high | 2h |
|
|
152
|
-
```
|
|
153
|
-
|
|
154
|
-
### Step 4: Save Output
|
|
155
|
-
|
|
156
|
-
Create output directory if needed:
|
|
157
|
-
```bash
|
|
158
|
-
mkdir -p docs/08-project/exports
|
|
159
|
-
```
|
|
160
|
-
|
|
161
|
-
Save to: `docs/08-project/exports/export-YYYYMMDD.{csv|json|md}`
|
|
162
|
-
|
|
163
|
-
If file already exists for today, append a counter: `export-YYYYMMDD-2.csv`
|
|
164
|
-
|
|
165
|
-
### Step 5: Show Summary
|
|
166
|
-
|
|
167
|
-
```
|
|
168
|
-
Exported 8 stories to docs/08-project/exports/export-20260303.csv
|
|
169
|
-
|
|
170
|
-
Filters applied:
|
|
171
|
-
Epic: EP-0041
|
|
172
|
-
Status: all
|
|
173
|
-
Owner: all
|
|
174
|
-
|
|
175
|
-
Preview (first 3 rows):
|
|
176
|
-
US-0380 | Add story:edit and epic:edit commands | done
|
|
177
|
-
US-0381 | Add status:undo command | done
|
|
178
|
-
US-0382 | Add export command | in_progress
|
|
179
|
-
```
|
|
180
|
-
|
|
181
|
-
Then offer next steps:
|
|
182
|
-
|
|
183
|
-
```xml
|
|
184
|
-
<invoke name="AskUserQuestion">
|
|
185
|
-
<parameter name="questions">[{
|
|
186
|
-
"question": "Export complete. What next?",
|
|
187
|
-
"header": "Next steps",
|
|
188
|
-
"multiSelect": false,
|
|
189
|
-
"options": [
|
|
190
|
-
{"label": "Open/view the exported file", "description": "Display full file contents"},
|
|
191
|
-
{"label": "Export in another format", "description": "Re-export as json/md/csv"},
|
|
192
|
-
{"label": "Done", "description": "Export saved successfully"}
|
|
193
|
-
]
|
|
194
|
-
}]</parameter>
|
|
195
|
-
</invoke>
|
|
196
|
-
```
|
|
197
|
-
|
|
198
|
-
---
|
|
199
|
-
|
|
200
|
-
## Example Usage
|
|
201
|
-
|
|
202
|
-
```bash
|
|
203
|
-
# Export all stories as CSV (default)
|
|
204
|
-
/agileflow:export
|
|
205
|
-
|
|
206
|
-
# Export specific epic as JSON
|
|
207
|
-
/agileflow:export FORMAT=json EPIC=EP-0041
|
|
208
|
-
|
|
209
|
-
# Export ready stories as Markdown
|
|
210
|
-
/agileflow:export FORMAT=md STATUS=ready
|
|
211
|
-
|
|
212
|
-
# Export specific owner's stories as CSV
|
|
213
|
-
/agileflow:export OWNER=AG-API STATUS=done
|
|
214
|
-
|
|
215
|
-
# Combine filters
|
|
216
|
-
/agileflow:export FORMAT=md EPIC=EP-0041 STATUS=ready OWNER=AG-API
|
|
217
|
-
```
|
|
218
|
-
|
|
219
|
-
---
|
|
220
|
-
|
|
221
|
-
## Rules
|
|
222
|
-
|
|
223
|
-
- **CSV Excel-compatible**: Proper quoting, commas, UTF-8
|
|
224
|
-
- **JSON well-formed**: Pretty-printed, includes metadata
|
|
225
|
-
- **Markdown paste-ready**: Standard table format
|
|
226
|
-
- **Always show preview**: Display first few rows after export
|
|
227
|
-
- **Always show path**: User needs to know where the file is
|
|
228
|
-
- **No destructive overwrites**: Counter suffix for same-day exports
|
|
229
|
-
|
|
230
|
-
---
|
|
231
|
-
|
|
232
|
-
## Related Commands
|
|
233
|
-
|
|
234
|
-
- `/agileflow:story:list` - Interactive story listing
|
|
235
|
-
- `/agileflow:epic:list` - Interactive epic listing
|
|
236
|
-
- `/agileflow:board` - Visual kanban board
|
|
237
|
-
- `/agileflow:sprint` - Sprint planning view
|
|
238
|
-
- `/agileflow:changelog` - Generate changelog
|