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,529 +0,0 @@
|
|
|
1
|
-
---
|
|
2
|
-
description: Post-install validation
|
|
3
|
-
argument-hint: "(no arguments)"
|
|
4
|
-
compact_context:
|
|
5
|
-
priority: high
|
|
6
|
-
preserve_rules:
|
|
7
|
-
- "No arguments required - validates installation automatically"
|
|
8
|
-
- "Run after npx agileflow setup to verify installation"
|
|
9
|
-
- "Check 5 areas: directories, scripts, hooks, JSON files, permissions"
|
|
10
|
-
- "Directory Validation - verify .agileflow/, .claude/, docs/ structure"
|
|
11
|
-
- "Script Validation - check scripts exist and are executable"
|
|
12
|
-
- "Hook Configuration - validate hooks in .claude/settings.json"
|
|
13
|
-
- "JSON File Integrity - validate all JSON files with jq empty"
|
|
14
|
-
- "Report issues with indicators: ✅ (pass), ❌ (fail), ⚠️ (warn), ℹ️ (info)"
|
|
15
|
-
- "Suggest specific fixes for common installation problems"
|
|
16
|
-
- "Exit code 0 (healthy) or 1 (issues found)"
|
|
17
|
-
state_fields:
|
|
18
|
-
- total_checks
|
|
19
|
-
- passed_checks
|
|
20
|
-
- warning_count
|
|
21
|
-
- failure_count
|
|
22
|
-
---
|
|
23
|
-
|
|
24
|
-
# install
|
|
25
|
-
|
|
26
|
-
Validate AgileFlow installation after `npx agileflow setup` and report what's installed correctly vs. what needs attention.
|
|
27
|
-
|
|
28
|
-
## Prompt
|
|
29
|
-
|
|
30
|
-
ROLE: Installation Validator
|
|
31
|
-
|
|
32
|
-
INPUTS
|
|
33
|
-
(no arguments - runs full installation validation)
|
|
34
|
-
|
|
35
|
-
ACTIONS
|
|
36
|
-
1) Verify directory structure (.agileflow/, .claude/, docs/)
|
|
37
|
-
2) Check installed scripts exist and are executable
|
|
38
|
-
3) Validate hook configuration in .claude/settings.json
|
|
39
|
-
4) Validate all JSON files (metadata, status.json, settings)
|
|
40
|
-
5) Check file permissions on scripts
|
|
41
|
-
6) Generate validation report with fix suggestions
|
|
42
|
-
|
|
43
|
-
OBJECTIVE: Validate AgileFlow installation integrity, identify issues, and provide actionable fix commands.
|
|
44
|
-
|
|
45
|
-
<!-- COMPACT_SUMMARY_START -->
|
|
46
|
-
## Compact Summary
|
|
47
|
-
|
|
48
|
-
The `install` command validates your AgileFlow installation after running `npx agileflow setup`:
|
|
49
|
-
|
|
50
|
-
**What it validates:**
|
|
51
|
-
- Directory structure (.agileflow/, .claude/, docs/)
|
|
52
|
-
- Installed scripts existence and executability
|
|
53
|
-
- Hook configuration in .claude/settings.json
|
|
54
|
-
- JSON file integrity (metadata, status.json, settings)
|
|
55
|
-
- File permissions on key scripts
|
|
56
|
-
|
|
57
|
-
**Directory Structure Validation**:
|
|
58
|
-
- Required: `.agileflow/` (core installation)
|
|
59
|
-
- Required: `.claude/commands/agileflow/` (slash commands)
|
|
60
|
-
- Required: `docs/09-agents/` (status tracking)
|
|
61
|
-
- Optional: `docs/00-meta/` (metadata)
|
|
62
|
-
- Checks for proper subdirectory structure
|
|
63
|
-
|
|
64
|
-
**Script Validation**:
|
|
65
|
-
- Checks scripts/ directory for key scripts
|
|
66
|
-
- Verifies scripts are executable (`[ -x script ]`)
|
|
67
|
-
- Reports missing or non-executable scripts
|
|
68
|
-
- Suggests `chmod +x` fixes
|
|
69
|
-
|
|
70
|
-
**Hook Configuration**:
|
|
71
|
-
- Parses .claude/settings.json for hooks
|
|
72
|
-
- Validates SessionStart, PreCompact, PreToolUse hooks
|
|
73
|
-
- Reports unconfigured but available features
|
|
74
|
-
- Suggests `/agileflow:configure` for setup
|
|
75
|
-
|
|
76
|
-
**JSON Integrity**:
|
|
77
|
-
- Validates with `jq empty` for syntax errors
|
|
78
|
-
- Checks required files: metadata, status.json
|
|
79
|
-
- Reports file sizes
|
|
80
|
-
- Shows specific parse errors for invalid files
|
|
81
|
-
|
|
82
|
-
**Common Installation Issues**:
|
|
83
|
-
1. Missing directories - Re-run `npx agileflow setup`
|
|
84
|
-
2. Non-executable scripts - Run `chmod +x scripts/*.sh`
|
|
85
|
-
3. Invalid JSON - Manual repair needed
|
|
86
|
-
4. Missing hooks - Run `/agileflow:configure`
|
|
87
|
-
5. Permission errors - Check directory ownership
|
|
88
|
-
|
|
89
|
-
**Output Format**:
|
|
90
|
-
- Indicators: ✅ (pass), ❌ (fail), ⚠️ (warning), ℹ️ (info)
|
|
91
|
-
- Section-by-section validation results
|
|
92
|
-
- Specific fix commands for each issue
|
|
93
|
-
- Exit code 0 (all passed) or 1 (issues found)
|
|
94
|
-
|
|
95
|
-
**Usage**:
|
|
96
|
-
```bash
|
|
97
|
-
/agileflow:install
|
|
98
|
-
```
|
|
99
|
-
|
|
100
|
-
**No arguments required** - validates full installation automatically.
|
|
101
|
-
<!-- COMPACT_SUMMARY_END -->
|
|
102
|
-
|
|
103
|
-
**Run these validation checks**:
|
|
104
|
-
|
|
105
|
-
```bash
|
|
106
|
-
#!/bin/bash
|
|
107
|
-
|
|
108
|
-
echo "🔍 AgileFlow Installation Validation"
|
|
109
|
-
echo "====================================="
|
|
110
|
-
echo ""
|
|
111
|
-
|
|
112
|
-
ERRORS=0
|
|
113
|
-
WARNINGS=0
|
|
114
|
-
|
|
115
|
-
# Check 1: Directory Structure
|
|
116
|
-
echo "📁 Directory Structure"
|
|
117
|
-
echo "----------------------"
|
|
118
|
-
|
|
119
|
-
REQUIRED_DIRS=(
|
|
120
|
-
".agileflow"
|
|
121
|
-
".agileflow/agents"
|
|
122
|
-
".agileflow/commands"
|
|
123
|
-
".agileflow/scripts"
|
|
124
|
-
".claude"
|
|
125
|
-
".claude/commands/agileflow"
|
|
126
|
-
"docs/09-agents"
|
|
127
|
-
)
|
|
128
|
-
|
|
129
|
-
OPTIONAL_DIRS=(
|
|
130
|
-
"docs/00-meta"
|
|
131
|
-
"docs/03-decisions"
|
|
132
|
-
"docs/04-architecture"
|
|
133
|
-
"docs/05-epics"
|
|
134
|
-
"docs/06-stories"
|
|
135
|
-
".agileflow/experts"
|
|
136
|
-
".agileflow/templates"
|
|
137
|
-
)
|
|
138
|
-
|
|
139
|
-
for DIR in "${REQUIRED_DIRS[@]}"; do
|
|
140
|
-
if [ -d "$DIR" ]; then
|
|
141
|
-
echo " ✅ $DIR"
|
|
142
|
-
else
|
|
143
|
-
echo " ❌ $DIR - MISSING (REQUIRED)"
|
|
144
|
-
ERRORS=$((ERRORS + 1))
|
|
145
|
-
fi
|
|
146
|
-
done
|
|
147
|
-
|
|
148
|
-
for DIR in "${OPTIONAL_DIRS[@]}"; do
|
|
149
|
-
if [ -d "$DIR" ]; then
|
|
150
|
-
echo " ✅ $DIR"
|
|
151
|
-
else
|
|
152
|
-
echo " ℹ️ $DIR - not found (optional)"
|
|
153
|
-
fi
|
|
154
|
-
done
|
|
155
|
-
|
|
156
|
-
echo ""
|
|
157
|
-
|
|
158
|
-
# Check 2: Core Scripts
|
|
159
|
-
echo "📜 Script Installation"
|
|
160
|
-
echo "----------------------"
|
|
161
|
-
|
|
162
|
-
# Check both possible script locations
|
|
163
|
-
SCRIPT_DIR=""
|
|
164
|
-
if [ -d ".agileflow/scripts" ]; then
|
|
165
|
-
SCRIPT_DIR=".agileflow/scripts"
|
|
166
|
-
elif [ -d "scripts" ]; then
|
|
167
|
-
SCRIPT_DIR="scripts"
|
|
168
|
-
fi
|
|
169
|
-
|
|
170
|
-
if [ -n "$SCRIPT_DIR" ]; then
|
|
171
|
-
REQUIRED_SCRIPTS=(
|
|
172
|
-
"agileflow-welcome.js"
|
|
173
|
-
"archive-completed-stories.sh"
|
|
174
|
-
"precompact-context.sh"
|
|
175
|
-
)
|
|
176
|
-
|
|
177
|
-
OPTIONAL_SCRIPTS=(
|
|
178
|
-
"agileflow-statusline.sh"
|
|
179
|
-
"obtain-context.js"
|
|
180
|
-
"session-manager.js"
|
|
181
|
-
"check-update.js"
|
|
182
|
-
)
|
|
183
|
-
|
|
184
|
-
for SCRIPT in "${REQUIRED_SCRIPTS[@]}"; do
|
|
185
|
-
if [ -f "$SCRIPT_DIR/$SCRIPT" ]; then
|
|
186
|
-
if [ -x "$SCRIPT_DIR/$SCRIPT" ] || [[ "$SCRIPT" == *.js ]]; then
|
|
187
|
-
echo " ✅ $SCRIPT"
|
|
188
|
-
else
|
|
189
|
-
echo " ⚠️ $SCRIPT - exists but not executable"
|
|
190
|
-
echo " Fix: chmod +x $SCRIPT_DIR/$SCRIPT"
|
|
191
|
-
WARNINGS=$((WARNINGS + 1))
|
|
192
|
-
fi
|
|
193
|
-
else
|
|
194
|
-
echo " ❌ $SCRIPT - MISSING (REQUIRED)"
|
|
195
|
-
ERRORS=$((ERRORS + 1))
|
|
196
|
-
fi
|
|
197
|
-
done
|
|
198
|
-
|
|
199
|
-
for SCRIPT in "${OPTIONAL_SCRIPTS[@]}"; do
|
|
200
|
-
if [ -f "$SCRIPT_DIR/$SCRIPT" ]; then
|
|
201
|
-
echo " ✅ $SCRIPT"
|
|
202
|
-
else
|
|
203
|
-
echo " ℹ️ $SCRIPT - not found (optional)"
|
|
204
|
-
fi
|
|
205
|
-
done
|
|
206
|
-
else
|
|
207
|
-
echo " ❌ No scripts directory found"
|
|
208
|
-
ERRORS=$((ERRORS + 1))
|
|
209
|
-
fi
|
|
210
|
-
|
|
211
|
-
echo ""
|
|
212
|
-
|
|
213
|
-
# Check 3: Hook Configuration
|
|
214
|
-
echo "🪝 Hook Configuration"
|
|
215
|
-
echo "---------------------"
|
|
216
|
-
|
|
217
|
-
if [ -f .claude/settings.json ]; then
|
|
218
|
-
if jq empty .claude/settings.json 2>/dev/null; then
|
|
219
|
-
echo " ✅ .claude/settings.json is valid JSON"
|
|
220
|
-
|
|
221
|
-
# Check for specific hooks
|
|
222
|
-
SESSION_START=$(jq '.hooks.SessionStart | length // 0' .claude/settings.json 2>/dev/null)
|
|
223
|
-
PRE_COMPACT=$(jq '.hooks.PreCompact | length // 0' .claude/settings.json 2>/dev/null)
|
|
224
|
-
PRE_TOOL_USE=$(jq '.hooks.PreToolUse | length // 0' .claude/settings.json 2>/dev/null)
|
|
225
|
-
|
|
226
|
-
if [ "$SESSION_START" -gt 0 ]; then
|
|
227
|
-
echo " ✅ SessionStart hooks: $SESSION_START configured"
|
|
228
|
-
else
|
|
229
|
-
echo " ⚠️ SessionStart hooks: not configured"
|
|
230
|
-
echo " Run: /agileflow:configure to enable welcome display"
|
|
231
|
-
WARNINGS=$((WARNINGS + 1))
|
|
232
|
-
fi
|
|
233
|
-
|
|
234
|
-
if [ "$PRE_COMPACT" -gt 0 ]; then
|
|
235
|
-
echo " ✅ PreCompact hooks: $PRE_COMPACT configured"
|
|
236
|
-
else
|
|
237
|
-
echo " ⚠️ PreCompact hooks: not configured"
|
|
238
|
-
echo " Run: /agileflow:configure to enable context preservation"
|
|
239
|
-
WARNINGS=$((WARNINGS + 1))
|
|
240
|
-
fi
|
|
241
|
-
|
|
242
|
-
if [ "$PRE_TOOL_USE" -gt 0 ]; then
|
|
243
|
-
echo " ✅ PreToolUse hooks: $PRE_TOOL_USE configured (damage control)"
|
|
244
|
-
else
|
|
245
|
-
echo " ℹ️ PreToolUse hooks: not configured (optional damage control)"
|
|
246
|
-
fi
|
|
247
|
-
else
|
|
248
|
-
echo " ❌ .claude/settings.json - INVALID JSON"
|
|
249
|
-
jq . .claude/settings.json 2>&1 | head -3 | sed 's/^/ /'
|
|
250
|
-
ERRORS=$((ERRORS + 1))
|
|
251
|
-
fi
|
|
252
|
-
else
|
|
253
|
-
echo " ❌ .claude/settings.json - NOT FOUND"
|
|
254
|
-
echo " Run: npx agileflow setup to create"
|
|
255
|
-
ERRORS=$((ERRORS + 1))
|
|
256
|
-
fi
|
|
257
|
-
|
|
258
|
-
echo ""
|
|
259
|
-
|
|
260
|
-
# Check 4: JSON File Integrity
|
|
261
|
-
echo "📋 JSON File Integrity"
|
|
262
|
-
echo "----------------------"
|
|
263
|
-
|
|
264
|
-
JSON_FILES=(
|
|
265
|
-
"docs/00-meta/agileflow-metadata.json:required"
|
|
266
|
-
"docs/09-agents/status.json:required"
|
|
267
|
-
".claude/settings.json:required"
|
|
268
|
-
"docs/09-agents/session-state.json:optional"
|
|
269
|
-
".agileflow/config.yaml:optional"
|
|
270
|
-
)
|
|
271
|
-
|
|
272
|
-
for ENTRY in "${JSON_FILES[@]}"; do
|
|
273
|
-
FILE="${ENTRY%:*}"
|
|
274
|
-
TYPE="${ENTRY#*:}"
|
|
275
|
-
|
|
276
|
-
if [ -f "$FILE" ]; then
|
|
277
|
-
# Handle YAML files differently
|
|
278
|
-
if [[ "$FILE" == *.yaml ]]; then
|
|
279
|
-
SIZE=$(stat -f%z "$FILE" 2>/dev/null || stat -c%s "$FILE" 2>/dev/null)
|
|
280
|
-
SIZE_KB=$((SIZE / 1024))
|
|
281
|
-
echo " ✅ $FILE (${SIZE_KB}KB) - YAML config"
|
|
282
|
-
elif jq empty "$FILE" 2>/dev/null; then
|
|
283
|
-
SIZE=$(stat -f%z "$FILE" 2>/dev/null || stat -c%s "$FILE" 2>/dev/null)
|
|
284
|
-
SIZE_KB=$((SIZE / 1024))
|
|
285
|
-
echo " ✅ $FILE (${SIZE_KB}KB)"
|
|
286
|
-
else
|
|
287
|
-
echo " ❌ $FILE - INVALID JSON"
|
|
288
|
-
jq . "$FILE" 2>&1 | head -3 | sed 's/^/ /'
|
|
289
|
-
ERRORS=$((ERRORS + 1))
|
|
290
|
-
fi
|
|
291
|
-
else
|
|
292
|
-
if [ "$TYPE" = "required" ]; then
|
|
293
|
-
echo " ❌ $FILE - NOT FOUND (REQUIRED)"
|
|
294
|
-
ERRORS=$((ERRORS + 1))
|
|
295
|
-
else
|
|
296
|
-
echo " ℹ️ $FILE - not found (optional)"
|
|
297
|
-
fi
|
|
298
|
-
fi
|
|
299
|
-
done
|
|
300
|
-
|
|
301
|
-
echo ""
|
|
302
|
-
|
|
303
|
-
# Check 5: Slash Commands Installation
|
|
304
|
-
echo "⚡ Slash Commands"
|
|
305
|
-
echo "-----------------"
|
|
306
|
-
|
|
307
|
-
COMMANDS_DIR=".claude/commands/agileflow"
|
|
308
|
-
if [ -d "$COMMANDS_DIR" ]; then
|
|
309
|
-
COMMAND_COUNT=$(find "$COMMANDS_DIR" -name "*.md" -type f 2>/dev/null | wc -l | tr -d ' ')
|
|
310
|
-
if [ "$COMMAND_COUNT" -gt 0 ]; then
|
|
311
|
-
echo " ✅ $COMMAND_COUNT slash commands installed"
|
|
312
|
-
|
|
313
|
-
# Check for key commands
|
|
314
|
-
KEY_COMMANDS=("story.md" "status.md" "board.md" "configure.md" "diagnose.md")
|
|
315
|
-
MISSING_KEY=0
|
|
316
|
-
for CMD in "${KEY_COMMANDS[@]}"; do
|
|
317
|
-
if [ ! -f "$COMMANDS_DIR/$CMD" ]; then
|
|
318
|
-
MISSING_KEY=$((MISSING_KEY + 1))
|
|
319
|
-
fi
|
|
320
|
-
done
|
|
321
|
-
|
|
322
|
-
if [ $MISSING_KEY -gt 0 ]; then
|
|
323
|
-
echo " ⚠️ $MISSING_KEY key command(s) missing - may need reinstall"
|
|
324
|
-
WARNINGS=$((WARNINGS + 1))
|
|
325
|
-
fi
|
|
326
|
-
else
|
|
327
|
-
echo " ❌ No slash commands found in $COMMANDS_DIR"
|
|
328
|
-
ERRORS=$((ERRORS + 1))
|
|
329
|
-
fi
|
|
330
|
-
else
|
|
331
|
-
echo " ❌ Commands directory not found: $COMMANDS_DIR"
|
|
332
|
-
ERRORS=$((ERRORS + 1))
|
|
333
|
-
fi
|
|
334
|
-
|
|
335
|
-
echo ""
|
|
336
|
-
|
|
337
|
-
# Check 6: Version Information
|
|
338
|
-
echo "📦 Version Information"
|
|
339
|
-
echo "----------------------"
|
|
340
|
-
|
|
341
|
-
# Check installed version from config.yaml
|
|
342
|
-
if [ -f ".agileflow/config.yaml" ]; then
|
|
343
|
-
VERSION=$(grep -E "^version:" .agileflow/config.yaml 2>/dev/null | sed "s/version:[[:space:]]*['\"]*//" | sed "s/['\"]//g")
|
|
344
|
-
if [ -n "$VERSION" ]; then
|
|
345
|
-
echo " ✅ Installed version: v$VERSION"
|
|
346
|
-
fi
|
|
347
|
-
fi
|
|
348
|
-
|
|
349
|
-
# Check npm for latest
|
|
350
|
-
LATEST=$(npm view agileflow version 2>/dev/null)
|
|
351
|
-
if [ -n "$LATEST" ]; then
|
|
352
|
-
echo " ℹ️ Latest available: v$LATEST"
|
|
353
|
-
|
|
354
|
-
if [ -n "$VERSION" ] && [ "$VERSION" != "$LATEST" ]; then
|
|
355
|
-
echo " ⚠️ Update available: v$VERSION -> v$LATEST"
|
|
356
|
-
echo " Run: npx agileflow update"
|
|
357
|
-
fi
|
|
358
|
-
fi
|
|
359
|
-
|
|
360
|
-
echo ""
|
|
361
|
-
|
|
362
|
-
# Final Summary
|
|
363
|
-
echo "📊 Installation Summary"
|
|
364
|
-
echo "======================="
|
|
365
|
-
|
|
366
|
-
TOTAL=$((ERRORS + WARNINGS))
|
|
367
|
-
|
|
368
|
-
if [ $ERRORS -eq 0 ] && [ $WARNINGS -eq 0 ]; then
|
|
369
|
-
echo "✅ Installation validated successfully!"
|
|
370
|
-
echo ""
|
|
371
|
-
echo "Next steps:"
|
|
372
|
-
echo " • Run /agileflow:board to see your kanban board"
|
|
373
|
-
echo " • Run /agileflow:story to create your first story"
|
|
374
|
-
echo " • Run /agileflow:help for all available commands"
|
|
375
|
-
exit 0
|
|
376
|
-
elif [ $ERRORS -eq 0 ]; then
|
|
377
|
-
echo "⚠️ Installation complete with $WARNINGS warning(s)."
|
|
378
|
-
echo ""
|
|
379
|
-
echo "Recommended actions:"
|
|
380
|
-
echo " • Run /agileflow:configure to enable optional features"
|
|
381
|
-
echo " • Fix script permissions: chmod +x scripts/*.sh"
|
|
382
|
-
exit 0
|
|
383
|
-
else
|
|
384
|
-
echo "❌ Installation has $ERRORS error(s) and $WARNINGS warning(s)."
|
|
385
|
-
echo ""
|
|
386
|
-
echo "Required actions:"
|
|
387
|
-
echo " 1. Re-run setup: npx agileflow setup --force"
|
|
388
|
-
echo " 2. Check file permissions and ownership"
|
|
389
|
-
echo " 3. Re-run validation: /agileflow:install"
|
|
390
|
-
exit 1
|
|
391
|
-
fi
|
|
392
|
-
```
|
|
393
|
-
|
|
394
|
-
**Output Format**:
|
|
395
|
-
- Show all validation results with ✅/❌/⚠️/ℹ️ indicators
|
|
396
|
-
- Display specific fix commands for each issue
|
|
397
|
-
- Provide actionable next steps
|
|
398
|
-
- Exit with code 0 if healthy, code 1 if issues found
|
|
399
|
-
|
|
400
|
-
---
|
|
401
|
-
|
|
402
|
-
## Expected Output
|
|
403
|
-
|
|
404
|
-
### Successful Installation
|
|
405
|
-
|
|
406
|
-
```
|
|
407
|
-
🔍 AgileFlow Installation Validation
|
|
408
|
-
=====================================
|
|
409
|
-
|
|
410
|
-
📁 Directory Structure
|
|
411
|
-
----------------------
|
|
412
|
-
✅ .agileflow
|
|
413
|
-
✅ .agileflow/agents
|
|
414
|
-
✅ .agileflow/commands
|
|
415
|
-
✅ .agileflow/scripts
|
|
416
|
-
✅ .claude
|
|
417
|
-
✅ .claude/commands/agileflow
|
|
418
|
-
✅ docs/09-agents
|
|
419
|
-
✅ docs/00-meta
|
|
420
|
-
✅ docs/03-decisions
|
|
421
|
-
✅ docs/04-architecture
|
|
422
|
-
✅ docs/05-epics
|
|
423
|
-
✅ docs/06-stories
|
|
424
|
-
✅ .agileflow/experts
|
|
425
|
-
✅ .agileflow/templates
|
|
426
|
-
|
|
427
|
-
📜 Script Installation
|
|
428
|
-
----------------------
|
|
429
|
-
✅ agileflow-welcome.js
|
|
430
|
-
✅ archive-completed-stories.sh
|
|
431
|
-
✅ precompact-context.sh
|
|
432
|
-
✅ agileflow-statusline.sh
|
|
433
|
-
✅ obtain-context.js
|
|
434
|
-
✅ session-manager.js
|
|
435
|
-
✅ check-update.js
|
|
436
|
-
|
|
437
|
-
🪝 Hook Configuration
|
|
438
|
-
---------------------
|
|
439
|
-
✅ .claude/settings.json is valid JSON
|
|
440
|
-
✅ SessionStart hooks: 2 configured
|
|
441
|
-
✅ PreCompact hooks: 1 configured
|
|
442
|
-
✅ PreToolUse hooks: 3 configured (damage control)
|
|
443
|
-
|
|
444
|
-
📋 JSON File Integrity
|
|
445
|
-
----------------------
|
|
446
|
-
✅ docs/00-meta/agileflow-metadata.json (2KB)
|
|
447
|
-
✅ docs/09-agents/status.json (15KB)
|
|
448
|
-
✅ .claude/settings.json (8KB)
|
|
449
|
-
✅ docs/09-agents/session-state.json (1KB)
|
|
450
|
-
✅ .agileflow/config.yaml (1KB) - YAML config
|
|
451
|
-
|
|
452
|
-
⚡ Slash Commands
|
|
453
|
-
-----------------
|
|
454
|
-
✅ 79 slash commands installed
|
|
455
|
-
|
|
456
|
-
📦 Version Information
|
|
457
|
-
----------------------
|
|
458
|
-
✅ Installed version: v2.94.1
|
|
459
|
-
ℹ️ Latest available: v2.94.1
|
|
460
|
-
|
|
461
|
-
📊 Installation Summary
|
|
462
|
-
=======================
|
|
463
|
-
✅ Installation validated successfully!
|
|
464
|
-
|
|
465
|
-
Next steps:
|
|
466
|
-
• Run /agileflow:board to see your kanban board
|
|
467
|
-
• Run /agileflow:story to create your first story
|
|
468
|
-
• Run /agileflow:help for all available commands
|
|
469
|
-
```
|
|
470
|
-
|
|
471
|
-
### Installation with Issues
|
|
472
|
-
|
|
473
|
-
```
|
|
474
|
-
🔍 AgileFlow Installation Validation
|
|
475
|
-
=====================================
|
|
476
|
-
|
|
477
|
-
📁 Directory Structure
|
|
478
|
-
----------------------
|
|
479
|
-
✅ .agileflow
|
|
480
|
-
❌ .agileflow/agents - MISSING (REQUIRED)
|
|
481
|
-
✅ .agileflow/commands
|
|
482
|
-
✅ .agileflow/scripts
|
|
483
|
-
✅ .claude
|
|
484
|
-
✅ .claude/commands/agileflow
|
|
485
|
-
❌ docs/09-agents - MISSING (REQUIRED)
|
|
486
|
-
|
|
487
|
-
📜 Script Installation
|
|
488
|
-
----------------------
|
|
489
|
-
✅ agileflow-welcome.js
|
|
490
|
-
⚠️ archive-completed-stories.sh - exists but not executable
|
|
491
|
-
Fix: chmod +x .agileflow/scripts/archive-completed-stories.sh
|
|
492
|
-
✅ precompact-context.sh
|
|
493
|
-
|
|
494
|
-
🪝 Hook Configuration
|
|
495
|
-
---------------------
|
|
496
|
-
✅ .claude/settings.json is valid JSON
|
|
497
|
-
⚠️ SessionStart hooks: not configured
|
|
498
|
-
Run: /agileflow:configure to enable welcome display
|
|
499
|
-
⚠️ PreCompact hooks: not configured
|
|
500
|
-
Run: /agileflow:configure to enable context preservation
|
|
501
|
-
|
|
502
|
-
📋 JSON File Integrity
|
|
503
|
-
----------------------
|
|
504
|
-
❌ docs/00-meta/agileflow-metadata.json - NOT FOUND (REQUIRED)
|
|
505
|
-
❌ docs/09-agents/status.json - NOT FOUND (REQUIRED)
|
|
506
|
-
✅ .claude/settings.json (8KB)
|
|
507
|
-
|
|
508
|
-
⚡ Slash Commands
|
|
509
|
-
-----------------
|
|
510
|
-
✅ 79 slash commands installed
|
|
511
|
-
|
|
512
|
-
📊 Installation Summary
|
|
513
|
-
=======================
|
|
514
|
-
❌ Installation has 4 error(s) and 3 warning(s).
|
|
515
|
-
|
|
516
|
-
Required actions:
|
|
517
|
-
1. Re-run setup: npx agileflow setup --force
|
|
518
|
-
2. Check file permissions and ownership
|
|
519
|
-
3. Re-run validation: /agileflow:install
|
|
520
|
-
```
|
|
521
|
-
|
|
522
|
-
---
|
|
523
|
-
|
|
524
|
-
## Related Commands
|
|
525
|
-
|
|
526
|
-
- `/agileflow:diagnose` - Full system health diagnostics
|
|
527
|
-
- `/agileflow:maintain` - Periodic maintenance checks
|
|
528
|
-
- `/agileflow:configure` - Configure AgileFlow features
|
|
529
|
-
- `/agileflow:help` - Display AgileFlow overview
|
|
@@ -1,118 +0,0 @@
|
|
|
1
|
-
---
|
|
2
|
-
description: Deep explanation of code areas - not just what the code does, but WHY it was written this way, with git history and design reasoning
|
|
3
|
-
argument-hint: "[file|function|feature] [DEPTH=quick|thorough]"
|
|
4
|
-
---
|
|
5
|
-
|
|
6
|
-
# /agileflow:learn:explain
|
|
7
|
-
|
|
8
|
-
Get a deep "why" explanation of code areas. Goes beyond what the code does to explain why it was written this way, what alternatives were considered, and what historical context shaped it.
|
|
9
|
-
|
|
10
|
-
---
|
|
11
|
-
|
|
12
|
-
## Quick Reference
|
|
13
|
-
|
|
14
|
-
```
|
|
15
|
-
/agileflow:learn:explain src/auth/middleware.ts # Explain specific file
|
|
16
|
-
/agileflow:learn:explain handleCheckout # Explain a function
|
|
17
|
-
/agileflow:learn:explain "the caching layer" # Explain a concept/area
|
|
18
|
-
/agileflow:learn:explain app/api/ DEPTH=thorough # Thorough explanation
|
|
19
|
-
```
|
|
20
|
-
|
|
21
|
-
---
|
|
22
|
-
|
|
23
|
-
## How It Works
|
|
24
|
-
|
|
25
|
-
1. **Find the code** - Locate the target file, function, or feature
|
|
26
|
-
2. **Read the code** - Understand what it does
|
|
27
|
-
3. **Check git history** - Find when/why it was written or changed
|
|
28
|
-
4. **Analyze design decisions** - Explain the "why" behind the approach
|
|
29
|
-
5. **Surface alternatives** - What other approaches could have been used
|
|
30
|
-
6. **Present explanation** - Clear, educational explanation with context
|
|
31
|
-
|
|
32
|
-
---
|
|
33
|
-
|
|
34
|
-
## Step-by-Step Process
|
|
35
|
-
|
|
36
|
-
### STEP 1: Parse Arguments
|
|
37
|
-
|
|
38
|
-
```
|
|
39
|
-
TARGET = file path, function name, or feature description
|
|
40
|
-
DEPTH = quick (3-5 min read) or thorough (10-15 min read)
|
|
41
|
-
```
|
|
42
|
-
|
|
43
|
-
### STEP 2: Find and Read Code
|
|
44
|
-
|
|
45
|
-
1. If file path: read the file directly
|
|
46
|
-
2. If function name: search codebase for the function
|
|
47
|
-
3. If feature description: use `Explore` agent to find relevant files
|
|
48
|
-
|
|
49
|
-
### STEP 3: Analyze Git History
|
|
50
|
-
|
|
51
|
-
```bash
|
|
52
|
-
git log --follow --oneline {file} # See file history
|
|
53
|
-
git log -p --follow -S "{function}" -- . # Find when function was added/changed
|
|
54
|
-
git blame {file} # See who wrote each line and when
|
|
55
|
-
```
|
|
56
|
-
|
|
57
|
-
### STEP 4: Generate Explanation
|
|
58
|
-
|
|
59
|
-
Structure the explanation:
|
|
60
|
-
|
|
61
|
-
```markdown
|
|
62
|
-
## What This Code Does
|
|
63
|
-
|
|
64
|
-
{Clear explanation of the code's purpose and behavior}
|
|
65
|
-
|
|
66
|
-
## Why It's Written This Way
|
|
67
|
-
|
|
68
|
-
{Design reasoning - what constraints or requirements led to this approach}
|
|
69
|
-
|
|
70
|
-
### Historical Context
|
|
71
|
-
{Git history insights - when it was written, major changes, why changes were made}
|
|
72
|
-
|
|
73
|
-
### Design Decisions
|
|
74
|
-
| Decision | Choice Made | Why | Alternative Considered |
|
|
75
|
-
|----------|-------------|-----|----------------------|
|
|
76
|
-
| {decision} | {choice} | {reasoning} | {what else could have been done} |
|
|
77
|
-
|
|
78
|
-
## How It Connects
|
|
79
|
-
|
|
80
|
-
{Data flow diagram showing where this code fits in the system}
|
|
81
|
-
|
|
82
|
-
```mermaid
|
|
83
|
-
graph LR
|
|
84
|
-
A[Input] --> B[This Code] --> C[Output]
|
|
85
|
-
B --> D[Side Effects]
|
|
86
|
-
```
|
|
87
|
-
|
|
88
|
-
## Key Concepts
|
|
89
|
-
|
|
90
|
-
| Concept | Explanation |
|
|
91
|
-
|---------|-------------|
|
|
92
|
-
| {term} | {what it means in this context} |
|
|
93
|
-
|
|
94
|
-
## Gotchas
|
|
95
|
-
|
|
96
|
-
{Non-obvious behaviors, edge cases, or things to be careful about}
|
|
97
|
-
```
|
|
98
|
-
|
|
99
|
-
### STEP 5: Offer Follow-Up
|
|
100
|
-
|
|
101
|
-
```
|
|
102
|
-
Explanation complete for {target}.
|
|
103
|
-
|
|
104
|
-
Options:
|
|
105
|
-
- Explain a related area
|
|
106
|
-
- Tour the broader system this belongs to
|
|
107
|
-
- See similar patterns elsewhere in the codebase
|
|
108
|
-
- Done
|
|
109
|
-
```
|
|
110
|
-
|
|
111
|
-
---
|
|
112
|
-
|
|
113
|
-
## Related Commands
|
|
114
|
-
|
|
115
|
-
- `/agileflow:learn:tour` - Guided codebase walkthrough
|
|
116
|
-
- `/agileflow:learn:patterns` - Design patterns catalog
|
|
117
|
-
- `/agileflow:learn:glossary` - Domain terminology
|
|
118
|
-
- `/agileflow:context:full` - Full project context
|