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,74 +0,0 @@
|
|
|
1
|
-
# Analytics Expert - Question Workflow
|
|
2
|
-
|
|
3
|
-
**Purpose**: Answer questions about analytics and event tracking using expertise-first approach.
|
|
4
|
-
|
|
5
|
-
## Workflow
|
|
6
|
-
|
|
7
|
-
### Step 1: Load Expertise
|
|
8
|
-
```
|
|
9
|
-
Read: packages/cli/src/core/experts/analytics/expertise.yaml
|
|
10
|
-
```
|
|
11
|
-
|
|
12
|
-
Parse the expertise file to understand:
|
|
13
|
-
- Known tracking file locations
|
|
14
|
-
- Event naming conventions
|
|
15
|
-
- Event categories and schemas
|
|
16
|
-
- Key metrics definitions
|
|
17
|
-
- Privacy and consent patterns
|
|
18
|
-
|
|
19
|
-
### Step 2: Validate Against Codebase
|
|
20
|
-
|
|
21
|
-
Before answering, verify expertise is current:
|
|
22
|
-
1. Check if mentioned files/directories exist
|
|
23
|
-
2. Spot-check event catalog
|
|
24
|
-
3. Verify tracking implementation exists
|
|
25
|
-
4. Note any discrepancies for later self-improve
|
|
26
|
-
|
|
27
|
-
### Step 3: Answer with Expertise
|
|
28
|
-
|
|
29
|
-
When answering questions:
|
|
30
|
-
|
|
31
|
-
**If expertise covers the question:**
|
|
32
|
-
- Provide direct answer from expertise
|
|
33
|
-
- Include specific file paths
|
|
34
|
-
- Reference event naming conventions
|
|
35
|
-
- Include privacy considerations
|
|
36
|
-
- Skip unnecessary exploration
|
|
37
|
-
|
|
38
|
-
**If expertise is incomplete:**
|
|
39
|
-
- Search codebase for missing information
|
|
40
|
-
- Answer the question
|
|
41
|
-
- Note gaps for self-improve
|
|
42
|
-
|
|
43
|
-
### Step 4: Flag Updates Needed
|
|
44
|
-
|
|
45
|
-
If you discovered new information:
|
|
46
|
-
```
|
|
47
|
-
Note for self-improve:
|
|
48
|
-
- New event discovered: [event_name]
|
|
49
|
-
- Metric not documented: [metric]
|
|
50
|
-
- Schema changed: [event]
|
|
51
|
-
```
|
|
52
|
-
|
|
53
|
-
## Example Usage
|
|
54
|
-
|
|
55
|
-
**Question**: "How do we track button clicks?"
|
|
56
|
-
|
|
57
|
-
**Expertise-First Answer**:
|
|
58
|
-
1. Check expertise.yaml → patterns → Event Tracking Facade
|
|
59
|
-
2. Check event_categories → user_actions → button_clicked
|
|
60
|
-
3. Answer: "Use `analytics.track('button_clicked', { button_name: 'signup' })`. The tracking facade is in `src/analytics/`. Follow snake_case naming convention."
|
|
61
|
-
|
|
62
|
-
**Question**: "What are our key retention metrics?"
|
|
63
|
-
|
|
64
|
-
**Expertise-First Answer**:
|
|
65
|
-
1. Check expertise.yaml → key_metrics → retention
|
|
66
|
-
2. List: day_1_retention, day_7_retention, day_30_retention, churn_rate
|
|
67
|
-
3. Answer with definitions and where dashboards are defined
|
|
68
|
-
|
|
69
|
-
## Key Principles
|
|
70
|
-
|
|
71
|
-
1. **Expertise First**: Always check expertise.yaml before searching
|
|
72
|
-
2. **Privacy Focus**: Always mention consent requirements and PII restrictions
|
|
73
|
-
3. **Naming Conventions**: Enforce object_action snake_case naming
|
|
74
|
-
4. **Learn**: Note gaps for self-improve to fill later
|
|
@@ -1,163 +0,0 @@
|
|
|
1
|
-
# Analytics Expert - Self-Improve Workflow
|
|
2
|
-
|
|
3
|
-
**Purpose**: Automatically update expertise.yaml after completing analytics work.
|
|
4
|
-
|
|
5
|
-
## When to Run
|
|
6
|
-
|
|
7
|
-
Run this workflow after:
|
|
8
|
-
- Adding new event tracking
|
|
9
|
-
- Creating new metrics or dashboards
|
|
10
|
-
- Updating event schemas
|
|
11
|
-
- Implementing new analytics features
|
|
12
|
-
- Discovering privacy or data quality issues
|
|
13
|
-
|
|
14
|
-
## Workflow
|
|
15
|
-
|
|
16
|
-
### Step 1: Load Current Expertise
|
|
17
|
-
```
|
|
18
|
-
Read: packages/cli/src/core/experts/analytics/expertise.yaml
|
|
19
|
-
```
|
|
20
|
-
|
|
21
|
-
### Step 2: Analyze Changes Made
|
|
22
|
-
|
|
23
|
-
Review what was just implemented:
|
|
24
|
-
1. What new events were added?
|
|
25
|
-
2. What dashboards or metrics were created?
|
|
26
|
-
3. What schemas were defined?
|
|
27
|
-
4. What privacy considerations were addressed?
|
|
28
|
-
5. What was learned during implementation?
|
|
29
|
-
|
|
30
|
-
### Step 3: Generate Diff
|
|
31
|
-
|
|
32
|
-
Identify what's new or changed:
|
|
33
|
-
- New events not in event_categories
|
|
34
|
-
- New metrics not in key_metrics
|
|
35
|
-
- Schema changes
|
|
36
|
-
- New tracking patterns
|
|
37
|
-
- Privacy or compliance updates
|
|
38
|
-
|
|
39
|
-
### Step 4: Update Expertise
|
|
40
|
-
|
|
41
|
-
Add a new learning entry:
|
|
42
|
-
```yaml
|
|
43
|
-
learnings:
|
|
44
|
-
- date: YYYY-MM-DD
|
|
45
|
-
insight: "Brief description of what was learned"
|
|
46
|
-
files_affected:
|
|
47
|
-
- path/to/file1
|
|
48
|
-
- path/to/file2
|
|
49
|
-
context: "Story or task context"
|
|
50
|
-
```
|
|
51
|
-
|
|
52
|
-
Update event_categories if new events added:
|
|
53
|
-
```yaml
|
|
54
|
-
event_categories:
|
|
55
|
-
category_name:
|
|
56
|
-
- new_event_added
|
|
57
|
-
```
|
|
58
|
-
|
|
59
|
-
### Step 5: Validate Update
|
|
60
|
-
|
|
61
|
-
Ensure the expertise file:
|
|
62
|
-
- Is valid YAML
|
|
63
|
-
- Has updated `last_updated` date
|
|
64
|
-
- All events follow naming convention
|
|
65
|
-
- Privacy considerations documented
|
|
66
|
-
|
|
67
|
-
## Learning Categories
|
|
68
|
-
|
|
69
|
-
### New Events
|
|
70
|
-
```yaml
|
|
71
|
-
learnings:
|
|
72
|
-
- date: 2025-12-16
|
|
73
|
-
insight: "Added checkout funnel events: cart_viewed, checkout_started, payment_submitted"
|
|
74
|
-
files_affected:
|
|
75
|
-
- src/analytics/events/checkout.ts
|
|
76
|
-
- src/analytics/schemas/checkout.ts
|
|
77
|
-
context: "US-0070: Checkout funnel tracking"
|
|
78
|
-
|
|
79
|
-
# Also update event_categories:
|
|
80
|
-
event_categories:
|
|
81
|
-
conversions:
|
|
82
|
-
- cart_viewed
|
|
83
|
-
- checkout_started
|
|
84
|
-
- payment_submitted
|
|
85
|
-
- purchase_completed
|
|
86
|
-
```
|
|
87
|
-
|
|
88
|
-
### Dashboard Learnings
|
|
89
|
-
```yaml
|
|
90
|
-
learnings:
|
|
91
|
-
- date: 2025-12-16
|
|
92
|
-
insight: "Retention cohort dashboard requires BigQuery for performance"
|
|
93
|
-
files_affected: [docs/analytics/dashboards/retention.md]
|
|
94
|
-
context: "US-0071: Build retention dashboard"
|
|
95
|
-
```
|
|
96
|
-
|
|
97
|
-
### Schema Discoveries
|
|
98
|
-
```yaml
|
|
99
|
-
learnings:
|
|
100
|
-
- date: 2025-12-16
|
|
101
|
-
insight: "Event properties exceeding 100 keys cause Amplitude to drop events"
|
|
102
|
-
files_affected: [src/analytics/schemas/validation.ts]
|
|
103
|
-
context: "US-0072: Fix event validation"
|
|
104
|
-
```
|
|
105
|
-
|
|
106
|
-
### Privacy Insights
|
|
107
|
-
```yaml
|
|
108
|
-
learnings:
|
|
109
|
-
- date: 2025-12-16
|
|
110
|
-
insight: "Must hash user_id before sending to analytics per GDPR requirements"
|
|
111
|
-
files_affected:
|
|
112
|
-
- src/analytics/privacy.ts
|
|
113
|
-
- src/analytics/providers/AmplitudeProvider.ts
|
|
114
|
-
context: "US-0073: GDPR compliance update"
|
|
115
|
-
```
|
|
116
|
-
|
|
117
|
-
### A/B Testing Learnings
|
|
118
|
-
```yaml
|
|
119
|
-
learnings:
|
|
120
|
-
- date: 2025-12-16
|
|
121
|
-
insight: "Need minimum 10k users per variant for statistical significance on conversion"
|
|
122
|
-
files_affected: [docs/analytics/ab-testing.md]
|
|
123
|
-
context: "US-0074: Set up A/B test framework"
|
|
124
|
-
```
|
|
125
|
-
|
|
126
|
-
## Example Update
|
|
127
|
-
|
|
128
|
-
Before work:
|
|
129
|
-
```yaml
|
|
130
|
-
event_categories:
|
|
131
|
-
user_actions:
|
|
132
|
-
- button_clicked
|
|
133
|
-
- form_submitted
|
|
134
|
-
```
|
|
135
|
-
|
|
136
|
-
After adding search tracking:
|
|
137
|
-
```yaml
|
|
138
|
-
event_categories:
|
|
139
|
-
user_actions:
|
|
140
|
-
- button_clicked
|
|
141
|
-
- form_submitted
|
|
142
|
-
search:
|
|
143
|
-
- search_performed
|
|
144
|
-
- search_result_clicked
|
|
145
|
-
- search_filter_applied
|
|
146
|
-
- search_no_results
|
|
147
|
-
|
|
148
|
-
learnings:
|
|
149
|
-
- date: 2025-12-16
|
|
150
|
-
insight: "Search events need query_length and result_count for analysis"
|
|
151
|
-
files_affected:
|
|
152
|
-
- src/analytics/events/search.ts
|
|
153
|
-
- src/analytics/schemas/search.ts
|
|
154
|
-
context: "US-0075: Implement search analytics"
|
|
155
|
-
```
|
|
156
|
-
|
|
157
|
-
## Key Principles
|
|
158
|
-
|
|
159
|
-
1. **Event Naming**: Always use object_action snake_case format
|
|
160
|
-
2. **Privacy First**: Note any PII handling or consent requirements
|
|
161
|
-
3. **Schema Validation**: Document any schema constraints discovered
|
|
162
|
-
4. **Data Quality**: Note validation rules and data quality checks
|
|
163
|
-
5. **GDPR Compliance**: Always document privacy implications
|
|
@@ -1,272 +0,0 @@
|
|
|
1
|
-
# Analytics Expert - Complete Workflow
|
|
2
|
-
|
|
3
|
-
**Purpose**: End-to-end workflow for implementing analytics tracking with expertise-first approach.
|
|
4
|
-
|
|
5
|
-
## The Three-Step Workflow
|
|
6
|
-
|
|
7
|
-
```
|
|
8
|
-
Plan (with Expertise) → Build (Execute) → Self-Improve (Update Expertise)
|
|
9
|
-
```
|
|
10
|
-
|
|
11
|
-
---
|
|
12
|
-
|
|
13
|
-
## Step 1: Plan (with Expertise)
|
|
14
|
-
|
|
15
|
-
### 1.1 Load Expertise First
|
|
16
|
-
```
|
|
17
|
-
Read: packages/cli/src/core/experts/analytics/expertise.yaml
|
|
18
|
-
```
|
|
19
|
-
|
|
20
|
-
Parse and internalize:
|
|
21
|
-
- Known tracking file locations
|
|
22
|
-
- Event naming conventions (object_action snake_case)
|
|
23
|
-
- Existing event categories
|
|
24
|
-
- Key metrics definitions
|
|
25
|
-
- Privacy and consent patterns
|
|
26
|
-
|
|
27
|
-
### 1.2 Validate Expertise Against Codebase
|
|
28
|
-
|
|
29
|
-
Before planning, verify expertise is current:
|
|
30
|
-
```bash
|
|
31
|
-
# Check analytics implementation exists
|
|
32
|
-
ls src/analytics/
|
|
33
|
-
ls src/analytics/events/
|
|
34
|
-
```
|
|
35
|
-
|
|
36
|
-
Note any discrepancies for later update.
|
|
37
|
-
|
|
38
|
-
### 1.3 Create Detailed Plan
|
|
39
|
-
|
|
40
|
-
With expertise loaded, create implementation plan:
|
|
41
|
-
|
|
42
|
-
1. **Check existing event categories** (from expertise)
|
|
43
|
-
2. **Follow naming convention** (object_action snake_case)
|
|
44
|
-
3. **Define event schema** with required properties
|
|
45
|
-
4. **Plan privacy compliance** (consent check, no PII)
|
|
46
|
-
|
|
47
|
-
Example Plan:
|
|
48
|
-
```markdown
|
|
49
|
-
## Implementation Plan: Add Search Analytics
|
|
50
|
-
|
|
51
|
-
### From Expertise:
|
|
52
|
-
- Tracking facade: src/analytics/
|
|
53
|
-
- Event schemas: src/analytics/schemas/
|
|
54
|
-
- Naming convention: object_action snake_case
|
|
55
|
-
- Privacy: Check consent before tracking
|
|
56
|
-
|
|
57
|
-
### Events to Add:
|
|
58
|
-
- search_performed
|
|
59
|
-
- search_result_clicked
|
|
60
|
-
- search_filter_applied
|
|
61
|
-
- search_no_results
|
|
62
|
-
|
|
63
|
-
### Schema Definition:
|
|
64
|
-
```typescript
|
|
65
|
-
{
|
|
66
|
-
event_name: 'search_performed',
|
|
67
|
-
properties: {
|
|
68
|
-
query: string, // Search query (anonymized)
|
|
69
|
-
result_count: number,
|
|
70
|
-
filter_count: number,
|
|
71
|
-
search_type: 'global' | 'scoped'
|
|
72
|
-
}
|
|
73
|
-
}
|
|
74
|
-
```
|
|
75
|
-
|
|
76
|
-
### Implementation Steps:
|
|
77
|
-
1. Define event schemas in src/analytics/schemas/search.ts
|
|
78
|
-
2. Add events to catalog in src/analytics/events/search.ts
|
|
79
|
-
3. Implement tracking calls in search components
|
|
80
|
-
4. Verify consent check before tracking
|
|
81
|
-
5. Test events in development
|
|
82
|
-
```
|
|
83
|
-
|
|
84
|
-
---
|
|
85
|
-
|
|
86
|
-
## Step 2: Build (Execute Plan)
|
|
87
|
-
|
|
88
|
-
### 2.1 Execute Implementation
|
|
89
|
-
|
|
90
|
-
Follow the plan exactly:
|
|
91
|
-
- Use event naming convention from expertise
|
|
92
|
-
- Apply consent pattern from expertise
|
|
93
|
-
- Follow schema validation pattern
|
|
94
|
-
|
|
95
|
-
### 2.2 Handle Discoveries
|
|
96
|
-
|
|
97
|
-
If you discover something not in expertise:
|
|
98
|
-
```markdown
|
|
99
|
-
## Discovery Log
|
|
100
|
-
- Found: Amplitude has 100 property limit per event
|
|
101
|
-
- Pattern: Need to aggregate before sending
|
|
102
|
-
- Gotcha: User ID must be hashed for GDPR compliance
|
|
103
|
-
```
|
|
104
|
-
|
|
105
|
-
### 2.3 Privacy Checklist
|
|
106
|
-
|
|
107
|
-
Per expertise conventions:
|
|
108
|
-
- ✅ Consent checked before tracking
|
|
109
|
-
- ✅ No PII in event properties
|
|
110
|
-
- ✅ User ID hashed/anonymous
|
|
111
|
-
- ✅ Event schema validated
|
|
112
|
-
- ✅ Documented in event catalog
|
|
113
|
-
|
|
114
|
-
### 2.4 Capture Changes
|
|
115
|
-
|
|
116
|
-
Document what was actually changed:
|
|
117
|
-
```markdown
|
|
118
|
-
## Changes Made
|
|
119
|
-
- Created: src/analytics/schemas/search.ts
|
|
120
|
-
- Created: src/analytics/events/search.ts
|
|
121
|
-
- Modified: src/components/SearchBar.tsx (added tracking)
|
|
122
|
-
- Updated: docs/analytics/events.md (documented new events)
|
|
123
|
-
```
|
|
124
|
-
|
|
125
|
-
---
|
|
126
|
-
|
|
127
|
-
## Step 3: Self-Improve (Update Expertise)
|
|
128
|
-
|
|
129
|
-
### 3.1 Load Current Expertise
|
|
130
|
-
```
|
|
131
|
-
Read: packages/cli/src/core/experts/analytics/expertise.yaml
|
|
132
|
-
```
|
|
133
|
-
|
|
134
|
-
### 3.2 Identify Updates Needed
|
|
135
|
-
|
|
136
|
-
Compare discoveries with current expertise:
|
|
137
|
-
- New event categories to add?
|
|
138
|
-
- New metrics defined?
|
|
139
|
-
- Privacy learnings?
|
|
140
|
-
- Schema constraints discovered?
|
|
141
|
-
|
|
142
|
-
### 3.3 Update Expertise File
|
|
143
|
-
|
|
144
|
-
Add to event_categories:
|
|
145
|
-
```yaml
|
|
146
|
-
event_categories:
|
|
147
|
-
search:
|
|
148
|
-
- search_performed
|
|
149
|
-
- search_result_clicked
|
|
150
|
-
- search_filter_applied
|
|
151
|
-
- search_no_results
|
|
152
|
-
```
|
|
153
|
-
|
|
154
|
-
Add learning entry:
|
|
155
|
-
```yaml
|
|
156
|
-
learnings:
|
|
157
|
-
- date: 2025-12-16
|
|
158
|
-
insight: "Search events need query_length (not full query) to avoid PII"
|
|
159
|
-
files_affected:
|
|
160
|
-
- src/analytics/schemas/search.ts
|
|
161
|
-
- src/analytics/events/search.ts
|
|
162
|
-
context: "US-0110: Search analytics implementation"
|
|
163
|
-
```
|
|
164
|
-
|
|
165
|
-
Update `last_updated` date.
|
|
166
|
-
|
|
167
|
-
### 3.4 Validate Update
|
|
168
|
-
|
|
169
|
-
Ensure expertise.yaml:
|
|
170
|
-
- Is valid YAML
|
|
171
|
-
- All events follow naming convention
|
|
172
|
-
- Privacy considerations documented
|
|
173
|
-
|
|
174
|
-
---
|
|
175
|
-
|
|
176
|
-
## Quick Reference
|
|
177
|
-
|
|
178
|
-
### Before ANY Analytics Work
|
|
179
|
-
```
|
|
180
|
-
1. Read expertise.yaml
|
|
181
|
-
2. Check existing event_categories
|
|
182
|
-
3. Follow naming convention
|
|
183
|
-
4. Plan privacy compliance
|
|
184
|
-
```
|
|
185
|
-
|
|
186
|
-
### After ANY Analytics Work
|
|
187
|
-
```
|
|
188
|
-
1. Add new events to categories
|
|
189
|
-
2. Document any privacy considerations
|
|
190
|
-
3. Note schema constraints
|
|
191
|
-
4. Update expertise.yaml
|
|
192
|
-
```
|
|
193
|
-
|
|
194
|
-
### Event Naming Convention (from expertise)
|
|
195
|
-
- Format: `object_action` in `snake_case`
|
|
196
|
-
- Examples: `button_clicked`, `form_submitted`, `page_viewed`
|
|
197
|
-
- DO NOT: `buttonClick`, `FormSubmit`, `pageView`
|
|
198
|
-
|
|
199
|
-
### Privacy Conventions (from expertise)
|
|
200
|
-
- NEVER track PII (email, name, phone)
|
|
201
|
-
- ALWAYS check consent before tracking
|
|
202
|
-
- Hash user IDs before sending
|
|
203
|
-
- Validate events against schema
|
|
204
|
-
|
|
205
|
-
---
|
|
206
|
-
|
|
207
|
-
## Example: Complete Analytics Implementation
|
|
208
|
-
|
|
209
|
-
**Task**: Track checkout funnel
|
|
210
|
-
|
|
211
|
-
### Plan Phase
|
|
212
|
-
```markdown
|
|
213
|
-
From expertise:
|
|
214
|
-
- Event categories exist for conversions
|
|
215
|
-
- Must follow object_action naming
|
|
216
|
-
- Need consent check
|
|
217
|
-
|
|
218
|
-
Events to add:
|
|
219
|
-
- cart_viewed
|
|
220
|
-
- checkout_started
|
|
221
|
-
- payment_method_selected
|
|
222
|
-
- payment_submitted
|
|
223
|
-
- purchase_completed
|
|
224
|
-
- purchase_failed
|
|
225
|
-
```
|
|
226
|
-
|
|
227
|
-
### Build Phase
|
|
228
|
-
```markdown
|
|
229
|
-
Created:
|
|
230
|
-
- src/analytics/events/checkout.ts
|
|
231
|
-
- src/analytics/schemas/checkout.ts
|
|
232
|
-
|
|
233
|
-
Properties tracked:
|
|
234
|
-
- cart_total (number, not amount string)
|
|
235
|
-
- item_count (number)
|
|
236
|
-
- payment_method (string, e.g., 'card', 'paypal')
|
|
237
|
-
- currency (string, ISO code)
|
|
238
|
-
|
|
239
|
-
Discoveries:
|
|
240
|
-
- Need to track cart_id for funnel correlation
|
|
241
|
-
- Should track time_in_step for optimization
|
|
242
|
-
```
|
|
243
|
-
|
|
244
|
-
### Self-Improve Phase
|
|
245
|
-
```yaml
|
|
246
|
-
event_categories:
|
|
247
|
-
conversions:
|
|
248
|
-
- cart_viewed
|
|
249
|
-
- checkout_started
|
|
250
|
-
- payment_method_selected
|
|
251
|
-
- payment_submitted
|
|
252
|
-
- purchase_completed
|
|
253
|
-
- purchase_failed
|
|
254
|
-
|
|
255
|
-
key_metrics:
|
|
256
|
-
conversion:
|
|
257
|
-
- cart_to_checkout_rate
|
|
258
|
-
- checkout_completion_rate
|
|
259
|
-
- payment_success_rate
|
|
260
|
-
|
|
261
|
-
learnings:
|
|
262
|
-
- date: 2025-12-16
|
|
263
|
-
insight: "Checkout funnel needs cart_id to correlate events across sessions"
|
|
264
|
-
files_affected:
|
|
265
|
-
- src/analytics/events/checkout.ts
|
|
266
|
-
- src/analytics/schemas/checkout.ts
|
|
267
|
-
context: "US-0111: Checkout funnel tracking"
|
|
268
|
-
```
|
|
269
|
-
|
|
270
|
-
---
|
|
271
|
-
|
|
272
|
-
This workflow ensures privacy-compliant analytics and continuous improvement.
|
|
@@ -1,124 +0,0 @@
|
|
|
1
|
-
# API Expert - Mental Model
|
|
2
|
-
#
|
|
3
|
-
# This file represents the agent's understanding of API patterns.
|
|
4
|
-
# Populated with AgileFlow-specific CLI architecture knowledge.
|
|
5
|
-
#
|
|
6
|
-
# NOT a source of truth - always validate against actual code.
|
|
7
|
-
|
|
8
|
-
domain: api
|
|
9
|
-
last_updated: 2025-12-21
|
|
10
|
-
version: 1.1
|
|
11
|
-
|
|
12
|
-
# AgileFlow CLI architecture (not a web API - it's a Node.js CLI tool)
|
|
13
|
-
files:
|
|
14
|
-
cli_entry:
|
|
15
|
-
- path: packages/cli/tools/agileflow-npx.js
|
|
16
|
-
purpose: Main CLI entry point (npx agileflow)
|
|
17
|
-
role: "Routes to agileflow-cli.js for command execution"
|
|
18
|
-
- path: packages/cli/tools/cli/agileflow-cli.js
|
|
19
|
-
purpose: Command router using Commander.js
|
|
20
|
-
pattern: "Dynamically loads commands from commands/ directory"
|
|
21
|
-
|
|
22
|
-
commands:
|
|
23
|
-
- path: packages/cli/tools/cli/commands/
|
|
24
|
-
purpose: CLI command implementations
|
|
25
|
-
pattern: "<command>.js exports {name, description, options, action}"
|
|
26
|
-
examples:
|
|
27
|
-
- "setup.js - Interactive installation wizard"
|
|
28
|
-
- "status.js - Show installation status"
|
|
29
|
-
- "doctor.js - Diagnose and auto-fix issues"
|
|
30
|
-
- "list.js - List installed components"
|
|
31
|
-
- "update.js - Update AgileFlow version"
|
|
32
|
-
- "uninstall.js - Remove AgileFlow"
|
|
33
|
-
- "config.js - Manage configuration"
|
|
34
|
-
|
|
35
|
-
lib_utilities:
|
|
36
|
-
- path: packages/cli/tools/cli/lib/ui.js
|
|
37
|
-
purpose: CLI UI utilities (logo, prompts, colors)
|
|
38
|
-
exports: [displayLogo, displaySection, success, warning, error, info, promptInstall, confirm]
|
|
39
|
-
- path: packages/cli/tools/cli/lib/version-checker.js
|
|
40
|
-
purpose: npm version checking for updates
|
|
41
|
-
exports: [checkForUpdate, getCurrentVersion]
|
|
42
|
-
- path: packages/cli/tools/cli/lib/content-injector.js
|
|
43
|
-
purpose: Dynamic placeholder replacement (agent lists, command lists)
|
|
44
|
-
- path: packages/cli/tools/cli/lib/docs-setup.js
|
|
45
|
-
purpose: Documentation structure creation
|
|
46
|
-
- path: packages/cli/tools/cli/lib/npm-utils.js
|
|
47
|
-
purpose: npm package utilities
|
|
48
|
-
|
|
49
|
-
installers:
|
|
50
|
-
- path: packages/cli/tools/cli/installers/core/installer.js
|
|
51
|
-
purpose: Core installation logic (Installer class)
|
|
52
|
-
key_methods: [install, getStatus, countInstalledItems]
|
|
53
|
-
- path: packages/cli/tools/cli/installers/ide/
|
|
54
|
-
purpose: IDE-specific installers (Claude Code, Cursor, Windsurf)
|
|
55
|
-
|
|
56
|
-
relationships:
|
|
57
|
-
- name: command_structure
|
|
58
|
-
pattern: "Each command exports {name, description, options, action}"
|
|
59
|
-
loader: "agileflow-cli.js dynamically loads from commands/"
|
|
60
|
-
|
|
61
|
-
- name: ui_consistency
|
|
62
|
-
lib: "lib/ui.js"
|
|
63
|
-
usage: "All commands use same displayLogo, success, warning, error functions"
|
|
64
|
-
|
|
65
|
-
- name: installer_flow
|
|
66
|
-
entry: "setup.js"
|
|
67
|
-
core: "installers/core/installer.js"
|
|
68
|
-
ide: "installers/ide/manager.js"
|
|
69
|
-
|
|
70
|
-
patterns:
|
|
71
|
-
- name: Commander.js CLI
|
|
72
|
-
description: "Commands defined as objects with name, description, options, action"
|
|
73
|
-
library: "commander"
|
|
74
|
-
pattern: "program.command(name).description(...).option(...).action(...)"
|
|
75
|
-
|
|
76
|
-
- name: Async Actions
|
|
77
|
-
description: "All command actions are async functions"
|
|
78
|
-
pattern: "action: async (options) => { ... }"
|
|
79
|
-
|
|
80
|
-
- name: Error Handling
|
|
81
|
-
description: "Try-catch with chalk.red error display"
|
|
82
|
-
pattern: "try { ... } catch (err) { console.error(chalk.red('Error:'), err.message) }"
|
|
83
|
-
|
|
84
|
-
- name: Spinner Progress
|
|
85
|
-
description: "ora spinners for long operations"
|
|
86
|
-
library: "ora"
|
|
87
|
-
pattern: "const spinner = ora('...').start(); ... spinner.stop();"
|
|
88
|
-
|
|
89
|
-
- name: Dynamic Loading
|
|
90
|
-
description: "Commands dynamically loaded from directory"
|
|
91
|
-
location: "agileflow-cli.js"
|
|
92
|
-
pattern: "fs.readdirSync(commandsPath).filter(f => f.endsWith('.js'))"
|
|
93
|
-
|
|
94
|
-
conventions:
|
|
95
|
-
- "Commands export {name, description, options, action}"
|
|
96
|
-
- "Use chalk for colored output (green=success, yellow=warning, red=error)"
|
|
97
|
-
- "Use ora spinners for async operations"
|
|
98
|
-
- "Use inquirer for interactive prompts"
|
|
99
|
-
- "All actions are async functions"
|
|
100
|
-
- "Exit with process.exit(0) on success, process.exit(1) on error"
|
|
101
|
-
- "Support --directory option for project path"
|
|
102
|
-
- "Use fs-extra for filesystem operations"
|
|
103
|
-
|
|
104
|
-
# Learned from AgileFlow codebase exploration
|
|
105
|
-
learnings:
|
|
106
|
-
- date: 2025-12-21
|
|
107
|
-
context: "Analyzed AgileFlow CLI architecture"
|
|
108
|
-
insight: "AgileFlow is a Node.js CLI tool using Commander.js, not a REST API"
|
|
109
|
-
source: "packages/cli/tools/"
|
|
110
|
-
|
|
111
|
-
- date: 2025-12-21
|
|
112
|
-
context: "Analyzed command structure"
|
|
113
|
-
insight: "7 CLI commands (setup, status, doctor, list, update, uninstall, config) dynamically loaded"
|
|
114
|
-
source: "packages/cli/tools/cli/commands/"
|
|
115
|
-
|
|
116
|
-
- date: 2025-12-21
|
|
117
|
-
context: "Analyzed lib utilities"
|
|
118
|
-
insight: "Shared UI utilities (ui.js), version checking (version-checker.js), content injection (content-injector.js)"
|
|
119
|
-
source: "packages/cli/tools/cli/lib/"
|
|
120
|
-
|
|
121
|
-
- date: 2025-12-21
|
|
122
|
-
context: "Analyzed installer pattern"
|
|
123
|
-
insight: "Core Installer class with install, getStatus, countInstalledItems methods; IDE-specific installers for Claude/Cursor/Windsurf"
|
|
124
|
-
source: "packages/cli/tools/cli/installers/"
|
|
@@ -1,74 +0,0 @@
|
|
|
1
|
-
---
|
|
2
|
-
description: Ask questions about API - uses expertise for fast, accurate answers
|
|
3
|
-
argument-hint: <your question about endpoints, auth, validation, patterns>
|
|
4
|
-
variables:
|
|
5
|
-
EXPERTISE_FILE: packages/cli/src/core/experts/api/expertise.yaml
|
|
6
|
-
---
|
|
7
|
-
|
|
8
|
-
# API Expert - Question
|
|
9
|
-
|
|
10
|
-
You are an expert on the API domain for this codebase. You maintain a mental model (expertise file) that helps you answer questions quickly and accurately.
|
|
11
|
-
|
|
12
|
-
## CRITICAL: Expertise-First Workflow
|
|
13
|
-
|
|
14
|
-
**You MUST follow this workflow. Do not skip steps.**
|
|
15
|
-
|
|
16
|
-
### Step 1: Load Your Expertise
|
|
17
|
-
Read your expertise file at `{{EXPERTISE_FILE}}` FIRST, before doing anything else.
|
|
18
|
-
|
|
19
|
-
This file contains:
|
|
20
|
-
- Route/controller file locations
|
|
21
|
-
- Middleware structure
|
|
22
|
-
- Endpoint registry (if populated)
|
|
23
|
-
- Auth and validation patterns
|
|
24
|
-
- API conventions
|
|
25
|
-
- Recent learnings from past work
|
|
26
|
-
|
|
27
|
-
### Step 2: Validate Against Actual Code
|
|
28
|
-
Your expertise is a mental model, NOT the source of truth. The code is always the source of truth.
|
|
29
|
-
|
|
30
|
-
For the question being asked:
|
|
31
|
-
1. Check if referenced routes/controllers exist where expertise says
|
|
32
|
-
2. Verify auth patterns match actual middleware
|
|
33
|
-
3. Confirm validation schemas are as documented
|
|
34
|
-
4. Note any discrepancies (for self-improve later)
|
|
35
|
-
|
|
36
|
-
### Step 3: Answer the Question
|
|
37
|
-
With your validated mental model:
|
|
38
|
-
1. Answer based on your expertise + validation
|
|
39
|
-
2. Be specific - reference exact file paths and endpoint details
|
|
40
|
-
3. If expertise was wrong/stale, note it in your answer
|
|
41
|
-
4. If you don't know, say so (don't guess about API contracts)
|
|
42
|
-
|
|
43
|
-
## API-Specific Guidance
|
|
44
|
-
|
|
45
|
-
### Endpoint Questions
|
|
46
|
-
- Reference the exact route file from expertise
|
|
47
|
-
- Include HTTP method, path, auth requirements
|
|
48
|
-
- Show request/response schema if available
|
|
49
|
-
|
|
50
|
-
### Authentication Questions
|
|
51
|
-
- Reference middleware location from expertise
|
|
52
|
-
- Explain the auth flow (JWT, session, API key)
|
|
53
|
-
- Note which endpoints require auth
|
|
54
|
-
|
|
55
|
-
### Validation Questions
|
|
56
|
-
- Reference schema file locations
|
|
57
|
-
- Show validation rules and error responses
|
|
58
|
-
- Note which library is used (Zod, Yup, etc.)
|
|
59
|
-
|
|
60
|
-
### Error Handling Questions
|
|
61
|
-
- Reference error middleware from expertise
|
|
62
|
-
- Show error response format
|
|
63
|
-
- Explain status code usage
|
|
64
|
-
|
|
65
|
-
## Key Principles
|
|
66
|
-
|
|
67
|
-
- **Speed**: Use expertise to skip unnecessary searching
|
|
68
|
-
- **Accuracy**: Always validate against actual route files
|
|
69
|
-
- **Honesty**: Acknowledge when expertise is stale
|
|
70
|
-
- **Security**: Never expose sensitive patterns publicly
|
|
71
|
-
|
|
72
|
-
## Question
|
|
73
|
-
|
|
74
|
-
{{argument}}
|