agileflow 3.4.2 → 4.0.0-alpha.1
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 +235 -494
- 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/session-welcome.js +19 -0
- package/content/plugins/core/plugin.yaml +34 -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 +254 -0
- package/src/cli/commands/status.js +47 -0
- package/src/cli/commands/update.js +82 -0
- package/src/cli/index.js +73 -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 +45 -0
- package/src/runtime/config/loader.js +118 -0
- package/src/runtime/config/schema.json +76 -0
- package/src/runtime/config/writer.js +54 -0
- package/src/runtime/hooks/aggregator.js +133 -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 +306 -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/claude-cli-bridge.js +0 -215
- 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/dashboard-automations.js +0 -130
- package/lib/dashboard-git.js +0 -254
- package/lib/dashboard-inbox.js +0 -64
- package/lib/dashboard-protocol.js +0 -605
- package/lib/dashboard-server.js +0 -1296
- package/lib/dashboard-session.js +0 -136
- package/lib/dashboard-status.js +0 -72
- package/lib/dashboard-terminal.js +0 -354
- package/lib/dashboard-websocket.js +0 -88
- 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 -819
- 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-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/dashboard-serve.js +0 -336
- 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 -761
- package/scripts/lib/scale-detector.js +0 -396
- package/scripts/lib/sessionRegistry.js +0 -678
- package/scripts/lib/signal-detectors.js +0 -880
- 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 -611
- 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 -437
- 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 -347
- package/src/core/commands/code/api.md +0 -297
- package/src/core/commands/code/architecture.md +0 -297
- package/src/core/commands/code/completeness.md +0 -503
- package/src/core/commands/code/legal.md +0 -493
- package/src/core/commands/code/logic.md +0 -416
- package/src/core/commands/code/performance.md +0 -490
- package/src/core/commands/code/security.md +0 -493
- package/src/core/commands/code/test.md +0 -489
- 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 -496
- package/src/core/commands/ideate/history.md +0 -403
- package/src/core/commands/ideate/new.md +0 -899
- 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 -428
- 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/serve.md +0 -127
- 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/serve.js +0 -492
- 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,144 +0,0 @@
|
|
|
1
|
-
# Epic Planner Expert - Domain Knowledge
|
|
2
|
-
# This file is the agent's "mental model" of the epic planning domain
|
|
3
|
-
# AUTO-UPDATED by self-improve.md after completing work
|
|
4
|
-
|
|
5
|
-
domain: epic-planner
|
|
6
|
-
last_updated: 2025-12-21
|
|
7
|
-
version: 1.1
|
|
8
|
-
|
|
9
|
-
# AgileFlow-specific epic planning structure (learned from actual codebase)
|
|
10
|
-
files:
|
|
11
|
-
epics:
|
|
12
|
-
- path: docs/05-epics/
|
|
13
|
-
purpose: "Epic definitions with goals and metrics"
|
|
14
|
-
conventions: "EP-#### naming (e.g., EP-0001)"
|
|
15
|
-
example: "ep-0001-agent-expert-pilot.md"
|
|
16
|
-
- path: docs/00-meta/templates/epic-template.md
|
|
17
|
-
purpose: "Epic template with sections: Goal, Problem Statement, Solution, Stories, etc."
|
|
18
|
-
|
|
19
|
-
stories:
|
|
20
|
-
- path: docs/06-stories/
|
|
21
|
-
purpose: "User stories organized by epic subdirectory"
|
|
22
|
-
conventions: "US-#### naming (e.g., US-0001)"
|
|
23
|
-
subdirectory_pattern: "stories/<epic-id>/ for grouping"
|
|
24
|
-
- path: docs/00-meta/templates/story-template.md
|
|
25
|
-
purpose: "Story template with AC, test stub, estimates"
|
|
26
|
-
|
|
27
|
-
testing:
|
|
28
|
-
- path: docs/07-testing/test-cases/
|
|
29
|
-
purpose: "Test case stubs per story"
|
|
30
|
-
conventions: "One file per US-####"
|
|
31
|
-
- path: docs/09-agents/status.json
|
|
32
|
-
purpose: "Story test_status tracking (passing/failing/not_run)"
|
|
33
|
-
|
|
34
|
-
research:
|
|
35
|
-
- path: docs/10-research/
|
|
36
|
-
purpose: "Technical research to inform planning"
|
|
37
|
-
naming: "YYYYMMDD-slug.md format"
|
|
38
|
-
- path: docs/03-decisions/
|
|
39
|
-
purpose: "ADRs constraining architecture"
|
|
40
|
-
naming: "adr-NNNN-title.md format"
|
|
41
|
-
|
|
42
|
-
coordination:
|
|
43
|
-
- path: docs/09-agents/status.json
|
|
44
|
-
purpose: "Single source of truth for story tracking"
|
|
45
|
-
fields: ["owner", "status", "priority", "estimate", "depends_on", "test_status"]
|
|
46
|
-
- path: docs/09-agents/bus/log.jsonl
|
|
47
|
-
purpose: "Agent coordination messages (append-only)"
|
|
48
|
-
|
|
49
|
-
relationships:
|
|
50
|
-
- parent: epics
|
|
51
|
-
child: stories
|
|
52
|
-
type: decomposes_into
|
|
53
|
-
notes: "Epics decompose into 3-10 stories; EP-0001 had 6 stories"
|
|
54
|
-
- parent: stories
|
|
55
|
-
child: test_cases
|
|
56
|
-
type: has
|
|
57
|
-
notes: "Each story has test case stub in docs/07-testing/"
|
|
58
|
-
- parent: stories
|
|
59
|
-
child: agents
|
|
60
|
-
type: assigned_to
|
|
61
|
-
notes: "Stories assigned via owner field in status.json"
|
|
62
|
-
- parent: research
|
|
63
|
-
child: epics
|
|
64
|
-
type: informs
|
|
65
|
-
notes: "Research notes link to epics (see EP-0001 referencing research)"
|
|
66
|
-
|
|
67
|
-
patterns:
|
|
68
|
-
- name: INVEST Criteria
|
|
69
|
-
description: "Independent, Negotiable, Valuable, Estimable, Small, Testable"
|
|
70
|
-
location: N/A
|
|
71
|
-
example: "Validate each story against INVEST"
|
|
72
|
-
|
|
73
|
-
- name: Vertical Slices
|
|
74
|
-
description: "Each story delivers user-visible value"
|
|
75
|
-
location: docs/06-stories/
|
|
76
|
-
example: "Full feature slice, not horizontal layers"
|
|
77
|
-
|
|
78
|
-
- name: Story Table in Epic
|
|
79
|
-
description: "Epic markdown includes story table with ID, Title, Owner, Status, Estimate"
|
|
80
|
-
location: docs/05-epics/ep-0001-agent-expert-pilot.md
|
|
81
|
-
example: "| US-0001 | Expert Directory Structure | AG-DEVOPS | ready | 2h |"
|
|
82
|
-
|
|
83
|
-
- name: Story Status Flow
|
|
84
|
-
description: "Stories progress: ready → in_progress → in_review → done"
|
|
85
|
-
location: docs/09-agents/status.json
|
|
86
|
-
example: "Update status field as work progresses"
|
|
87
|
-
|
|
88
|
-
- name: Hour-Based Estimates
|
|
89
|
-
description: "Stories estimated in hours (2h, 3h) not days"
|
|
90
|
-
location: docs/05-epics/ep-0001-agent-expert-pilot.md
|
|
91
|
-
example: "Total Estimate: ~15 hours"
|
|
92
|
-
|
|
93
|
-
conventions:
|
|
94
|
-
- "Stories typically 2-3 hours (not days)"
|
|
95
|
-
- "Status.json is single source of truth for story tracking"
|
|
96
|
-
- "Test stub created with story in docs/07-testing/test-cases/"
|
|
97
|
-
- "Dependencies listed in depends_on array in status.json"
|
|
98
|
-
- "Stories assigned via owner field (AG-UI, AG-API, AG-DEVOPS, etc.)"
|
|
99
|
-
- "Research notes referenced in epic with relative links"
|
|
100
|
-
- "Exit criteria checklist at bottom of epic ([ ] checkboxes)"
|
|
101
|
-
- "Epics have Problem Statement, Solution, Success Criteria sections"
|
|
102
|
-
|
|
103
|
-
agent_assignments:
|
|
104
|
-
AG-UI:
|
|
105
|
-
- "Frontend components"
|
|
106
|
-
- "Styling and design systems"
|
|
107
|
-
- "Accessibility"
|
|
108
|
-
- "User interactions"
|
|
109
|
-
AG-API:
|
|
110
|
-
- "Backend endpoints"
|
|
111
|
-
- "Business logic"
|
|
112
|
-
- "Data models"
|
|
113
|
-
- "Database access"
|
|
114
|
-
AG-CI:
|
|
115
|
-
- "Test infrastructure"
|
|
116
|
-
- "CI/CD pipelines"
|
|
117
|
-
- "Code quality tools"
|
|
118
|
-
AG-DEVOPS:
|
|
119
|
-
- "Deployment"
|
|
120
|
-
- "Dependencies"
|
|
121
|
-
- "Technical debt"
|
|
122
|
-
- "Expert system infrastructure"
|
|
123
|
-
|
|
124
|
-
# Learned from AgileFlow codebase exploration
|
|
125
|
-
learnings:
|
|
126
|
-
- date: 2025-12-21
|
|
127
|
-
context: "Analyzed EP-0001 epic structure"
|
|
128
|
-
insight: "Epics include Problem Statement, Solution, Success Criteria, Stories table, Architecture Context, Dependencies, Risks, Exit Criteria sections"
|
|
129
|
-
source: "docs/05-epics/ep-0001-agent-expert-pilot.md"
|
|
130
|
-
|
|
131
|
-
- date: 2025-12-21
|
|
132
|
-
context: "Analyzed story tracking system"
|
|
133
|
-
insight: "status.json tracks stories with owner, status, priority, estimate, depends_on, test_status fields; updated timestamp at root"
|
|
134
|
-
source: "docs/09-agents/status.json"
|
|
135
|
-
|
|
136
|
-
- date: 2025-12-21
|
|
137
|
-
context: "Analyzed EP-0001 completion pattern"
|
|
138
|
-
insight: "Epic with 6 stories, ~15 hours total; stories ranged 2h-3h each; all marked done with test_status: passing"
|
|
139
|
-
source: "docs/05-epics/ep-0001-agent-expert-pilot.md, docs/09-agents/status.json"
|
|
140
|
-
|
|
141
|
-
- date: 2025-12-21
|
|
142
|
-
context: "Analyzed research integration"
|
|
143
|
-
insight: "Epics reference research notes with relative links (../10-research/YYYYMMDD-slug.md)"
|
|
144
|
-
source: "docs/05-epics/ep-0001-agent-expert-pilot.md"
|
|
@@ -1,56 +0,0 @@
|
|
|
1
|
-
---
|
|
2
|
-
description: Ask questions about {{DOMAIN}} - uses expertise for fast, accurate answers
|
|
3
|
-
argument-hint: <your question>
|
|
4
|
-
variables:
|
|
5
|
-
EXPERTISE_FILE: packages/cli/src/core/experts/{{DOMAIN}}/expertise.yaml
|
|
6
|
-
---
|
|
7
|
-
|
|
8
|
-
# {{DOMAIN_TITLE}} Expert - Question
|
|
9
|
-
|
|
10
|
-
You are an expert on the {{DOMAIN}} 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
|
-
- Key file locations you already know
|
|
21
|
-
- Relationships between entities
|
|
22
|
-
- Patterns and conventions to follow
|
|
23
|
-
- Recent learnings from past work
|
|
24
|
-
|
|
25
|
-
### Step 2: Validate Against Actual Code
|
|
26
|
-
Your expertise is a mental model, NOT the source of truth. The code is always the source of truth.
|
|
27
|
-
|
|
28
|
-
For each relevant piece of expertise:
|
|
29
|
-
1. Check if the file/pattern still exists
|
|
30
|
-
2. Verify your understanding matches current code
|
|
31
|
-
3. Note any discrepancies (for self-improve later)
|
|
32
|
-
|
|
33
|
-
### Step 3: Answer the Question
|
|
34
|
-
With your validated mental model:
|
|
35
|
-
1. Answer based on your expertise + validation
|
|
36
|
-
2. Be specific - reference exact file paths
|
|
37
|
-
3. If expertise was wrong, note it in your answer
|
|
38
|
-
4. If you don't know, say so (don't guess)
|
|
39
|
-
|
|
40
|
-
## Key Principles
|
|
41
|
-
|
|
42
|
-
- **Speed**: Use expertise to skip unnecessary searching
|
|
43
|
-
- **Accuracy**: Always validate against actual code
|
|
44
|
-
- **Honesty**: Acknowledge when expertise is stale
|
|
45
|
-
- **Learning**: Note discrepancies for self-improve
|
|
46
|
-
|
|
47
|
-
## Anti-Patterns to Avoid
|
|
48
|
-
|
|
49
|
-
- Reading expertise but ignoring it
|
|
50
|
-
- Searching the codebase before checking expertise
|
|
51
|
-
- Trusting expertise blindly without validation
|
|
52
|
-
- Giving vague answers when expertise has specifics
|
|
53
|
-
|
|
54
|
-
## Question
|
|
55
|
-
|
|
56
|
-
{{argument}}
|
|
@@ -1,106 +0,0 @@
|
|
|
1
|
-
---
|
|
2
|
-
description: Update {{DOMAIN}} expertise after making changes
|
|
3
|
-
argument-hint: [optional context about what changed]
|
|
4
|
-
variables:
|
|
5
|
-
EXPERTISE_FILE: packages/cli/src/core/experts/{{DOMAIN}}/expertise.yaml
|
|
6
|
-
---
|
|
7
|
-
|
|
8
|
-
# {{DOMAIN_TITLE}} Expert - Self-Improve
|
|
9
|
-
|
|
10
|
-
You are updating your mental model (expertise file) to reflect changes in the codebase. This keeps your expertise accurate and useful for future tasks.
|
|
11
|
-
|
|
12
|
-
## CRITICAL: Self-Improve Workflow
|
|
13
|
-
|
|
14
|
-
### Step 1: Read Current Expertise
|
|
15
|
-
Load your expertise file at `{{EXPERTISE_FILE}}`.
|
|
16
|
-
|
|
17
|
-
Understand what you currently know about:
|
|
18
|
-
- File locations
|
|
19
|
-
- Relationships
|
|
20
|
-
- Patterns
|
|
21
|
-
- Conventions
|
|
22
|
-
|
|
23
|
-
### Step 2: Analyze What Changed
|
|
24
|
-
Identify changes using one of these methods:
|
|
25
|
-
|
|
26
|
-
**If git diff available:**
|
|
27
|
-
```bash
|
|
28
|
-
git diff HEAD~1 --name-only | grep -E "{{DOMAIN_PATTERN}}"
|
|
29
|
-
```
|
|
30
|
-
|
|
31
|
-
**If context provided:**
|
|
32
|
-
Use the argument/context to understand what changed.
|
|
33
|
-
|
|
34
|
-
**If neither:**
|
|
35
|
-
Compare expertise file against actual codebase state.
|
|
36
|
-
|
|
37
|
-
### Step 3: Update Expertise
|
|
38
|
-
|
|
39
|
-
**Update `files` section if:**
|
|
40
|
-
- New files were added to the domain
|
|
41
|
-
- Files were moved or renamed
|
|
42
|
-
- Key exports changed
|
|
43
|
-
- Purpose or conventions changed
|
|
44
|
-
|
|
45
|
-
**Update `relationships` section if:**
|
|
46
|
-
- New relationships were created
|
|
47
|
-
- Existing relationships changed
|
|
48
|
-
- Relationships were removed
|
|
49
|
-
|
|
50
|
-
**Update `patterns` section if:**
|
|
51
|
-
- New patterns were introduced
|
|
52
|
-
- Existing patterns were modified
|
|
53
|
-
- Better patterns discovered
|
|
54
|
-
|
|
55
|
-
**Update `conventions` section if:**
|
|
56
|
-
- New conventions established
|
|
57
|
-
- Existing conventions changed
|
|
58
|
-
- Conventions deprecated
|
|
59
|
-
|
|
60
|
-
**ALWAYS add to `learnings` section:**
|
|
61
|
-
```yaml
|
|
62
|
-
learnings:
|
|
63
|
-
- date: {{TODAY}}
|
|
64
|
-
insight: "Brief description of what was learned"
|
|
65
|
-
files_affected: [list, of, files]
|
|
66
|
-
context: "What triggered this learning (story ID, task, etc.)"
|
|
67
|
-
```
|
|
68
|
-
|
|
69
|
-
### Step 4: Validate Updated Model
|
|
70
|
-
After updating, verify:
|
|
71
|
-
1. All file paths in expertise still exist
|
|
72
|
-
2. Relationships match actual code structure
|
|
73
|
-
3. Patterns are still used as described
|
|
74
|
-
4. No contradictions in the expertise file
|
|
75
|
-
|
|
76
|
-
### Step 5: Write Updated Expertise
|
|
77
|
-
Save the updated expertise.yaml file.
|
|
78
|
-
|
|
79
|
-
## Rules for Self-Improve
|
|
80
|
-
|
|
81
|
-
### DO:
|
|
82
|
-
- Add only verified information
|
|
83
|
-
- Remove stale/incorrect entries
|
|
84
|
-
- Keep entries focused on {{DOMAIN}} domain only
|
|
85
|
-
- Use specific file paths, not vague descriptions
|
|
86
|
-
- Date all learnings entries
|
|
87
|
-
|
|
88
|
-
### DON'T:
|
|
89
|
-
- Add speculative information
|
|
90
|
-
- Keep outdated entries "just in case"
|
|
91
|
-
- Add knowledge from other domains
|
|
92
|
-
- Make expertise file too large (keep it focused)
|
|
93
|
-
- Forget to update last_updated timestamp
|
|
94
|
-
|
|
95
|
-
## Quality Checklist
|
|
96
|
-
|
|
97
|
-
Before saving:
|
|
98
|
-
- [ ] `last_updated` timestamp is current
|
|
99
|
-
- [ ] All file paths verified to exist
|
|
100
|
-
- [ ] New learnings entry added with today's date
|
|
101
|
-
- [ ] No duplicate entries
|
|
102
|
-
- [ ] Expertise stays under 200 lines (focused)
|
|
103
|
-
|
|
104
|
-
## Context
|
|
105
|
-
|
|
106
|
-
{{argument}}
|
|
@@ -1,184 +0,0 @@
|
|
|
1
|
-
---
|
|
2
|
-
description: Plan, build, and improve {{DOMAIN}} feature with expertise-driven workflow
|
|
3
|
-
argument-hint: <feature description>
|
|
4
|
-
variables:
|
|
5
|
-
EXPERTISE_FILE: packages/cli/src/core/experts/{{DOMAIN}}/expertise.yaml
|
|
6
|
-
DOMAIN_PATTERN: "{{DOMAIN_GLOB_PATTERN}}"
|
|
7
|
-
---
|
|
8
|
-
|
|
9
|
-
# {{DOMAIN_TITLE}} Expert: Plan → Build → Self-Improve
|
|
10
|
-
|
|
11
|
-
You are executing a complete feature implementation with automatic knowledge capture. This workflow ensures you leverage existing expertise, execute efficiently, and capture learnings for future tasks.
|
|
12
|
-
|
|
13
|
-
## CRITICAL: Three-Step Workflow
|
|
14
|
-
|
|
15
|
-
**You MUST follow this exact sequence. Do not skip steps.**
|
|
16
|
-
|
|
17
|
-
---
|
|
18
|
-
|
|
19
|
-
## Step 1: PLAN (Expertise-Informed)
|
|
20
|
-
|
|
21
|
-
### 1.1 Load Your Expertise
|
|
22
|
-
Read your expertise file at `{{EXPERTISE_FILE}}` FIRST.
|
|
23
|
-
|
|
24
|
-
Extract from it:
|
|
25
|
-
- Relevant file locations for this feature
|
|
26
|
-
- Existing patterns you should follow
|
|
27
|
-
- Relationships to consider
|
|
28
|
-
- Recent learnings that might apply
|
|
29
|
-
|
|
30
|
-
### 1.2 Validate Against Codebase
|
|
31
|
-
Before planning, verify your expertise is accurate:
|
|
32
|
-
- Check that referenced files still exist
|
|
33
|
-
- Confirm patterns match current code
|
|
34
|
-
- Note any discrepancies
|
|
35
|
-
|
|
36
|
-
### 1.3 Create Implementation Plan
|
|
37
|
-
Based on validated expertise, create a specific plan:
|
|
38
|
-
|
|
39
|
-
```markdown
|
|
40
|
-
## Implementation Plan
|
|
41
|
-
|
|
42
|
-
### Files to Create/Modify
|
|
43
|
-
1. [exact file path] - [what changes]
|
|
44
|
-
2. [exact file path] - [what changes]
|
|
45
|
-
|
|
46
|
-
### Pattern to Follow
|
|
47
|
-
[Reference specific pattern from expertise]
|
|
48
|
-
|
|
49
|
-
### Dependencies
|
|
50
|
-
[What must exist before this work]
|
|
51
|
-
|
|
52
|
-
### Validation
|
|
53
|
-
[How to verify the implementation works]
|
|
54
|
-
```
|
|
55
|
-
|
|
56
|
-
**Output**: A detailed plan with exact file paths and specific changes.
|
|
57
|
-
|
|
58
|
-
---
|
|
59
|
-
|
|
60
|
-
## Step 2: BUILD (Execute Plan)
|
|
61
|
-
|
|
62
|
-
### 2.1 Pre-Build Verification
|
|
63
|
-
Before making changes:
|
|
64
|
-
- Ensure all dependencies from plan exist
|
|
65
|
-
- Verify you have the required permissions/access
|
|
66
|
-
- Check for any blocking issues
|
|
67
|
-
|
|
68
|
-
### 2.2 Execute the Plan
|
|
69
|
-
Follow your implementation plan exactly:
|
|
70
|
-
- Create/modify files in the specified order
|
|
71
|
-
- Apply patterns consistently
|
|
72
|
-
- Add appropriate tests if applicable
|
|
73
|
-
|
|
74
|
-
### 2.3 Capture Changes
|
|
75
|
-
After building, document what changed:
|
|
76
|
-
|
|
77
|
-
```bash
|
|
78
|
-
# Capture the diff for self-improve
|
|
79
|
-
git diff --name-only
|
|
80
|
-
git diff HEAD
|
|
81
|
-
```
|
|
82
|
-
|
|
83
|
-
### 2.4 Validate Build
|
|
84
|
-
Verify the implementation:
|
|
85
|
-
- Run relevant tests
|
|
86
|
-
- Check for type/lint errors
|
|
87
|
-
- Verify the feature works as intended
|
|
88
|
-
|
|
89
|
-
**Output**: Working code changes with captured diff.
|
|
90
|
-
|
|
91
|
-
**On Failure**: Stop and report the error. Do NOT proceed to self-improve.
|
|
92
|
-
|
|
93
|
-
---
|
|
94
|
-
|
|
95
|
-
## Step 3: SELF-IMPROVE (Update Expertise)
|
|
96
|
-
|
|
97
|
-
**ONLY run this step if Step 2 succeeded.**
|
|
98
|
-
|
|
99
|
-
### 3.1 Analyze What Changed
|
|
100
|
-
Review the git diff and identify:
|
|
101
|
-
- New files added to your domain
|
|
102
|
-
- New patterns introduced
|
|
103
|
-
- Relationships created or changed
|
|
104
|
-
- Conventions established
|
|
105
|
-
|
|
106
|
-
### 3.2 Update Expertise File
|
|
107
|
-
Read and update `{{EXPERTISE_FILE}}`:
|
|
108
|
-
|
|
109
|
-
**Update `files` section if:**
|
|
110
|
-
- New files were added
|
|
111
|
-
- Files were moved or renamed
|
|
112
|
-
|
|
113
|
-
**Update `relationships` section if:**
|
|
114
|
-
- New entities or relationships created
|
|
115
|
-
- Cardinality changed
|
|
116
|
-
|
|
117
|
-
**Update `patterns` section if:**
|
|
118
|
-
- New implementation patterns used
|
|
119
|
-
- Better approaches discovered
|
|
120
|
-
|
|
121
|
-
**Update `conventions` section if:**
|
|
122
|
-
- New naming conventions applied
|
|
123
|
-
- New structural conventions established
|
|
124
|
-
|
|
125
|
-
### 3.3 Add Learnings Entry
|
|
126
|
-
**ALWAYS** add a new learnings entry:
|
|
127
|
-
|
|
128
|
-
```yaml
|
|
129
|
-
learnings:
|
|
130
|
-
- date: {{TODAY}}
|
|
131
|
-
insight: "Brief description of what was learned"
|
|
132
|
-
files_affected:
|
|
133
|
-
- path/to/file1
|
|
134
|
-
- path/to/file2
|
|
135
|
-
context: "Feature: {{argument}}"
|
|
136
|
-
```
|
|
137
|
-
|
|
138
|
-
### 3.4 Validate Updated Expertise
|
|
139
|
-
Before saving:
|
|
140
|
-
- [ ] All file paths exist
|
|
141
|
-
- [ ] Relationships match code
|
|
142
|
-
- [ ] `last_updated` is current
|
|
143
|
-
- [ ] No duplicates added
|
|
144
|
-
- [ ] File stays focused (<200 lines)
|
|
145
|
-
|
|
146
|
-
### 3.5 Save Expertise
|
|
147
|
-
Write the updated expertise.yaml file.
|
|
148
|
-
|
|
149
|
-
---
|
|
150
|
-
|
|
151
|
-
## Error Handling
|
|
152
|
-
|
|
153
|
-
### If Plan Step Fails
|
|
154
|
-
- Report what information is missing
|
|
155
|
-
- Suggest how to resolve (update expertise, provide context)
|
|
156
|
-
- Do NOT proceed to build
|
|
157
|
-
|
|
158
|
-
### If Build Step Fails
|
|
159
|
-
- Report the specific error
|
|
160
|
-
- Capture partial progress if any
|
|
161
|
-
- Do NOT proceed to self-improve
|
|
162
|
-
- Consider if expertise needs correction
|
|
163
|
-
|
|
164
|
-
### If Self-Improve Step Fails
|
|
165
|
-
- Report what couldn't be updated
|
|
166
|
-
- Save what you can
|
|
167
|
-
- Build step is still valid
|
|
168
|
-
|
|
169
|
-
---
|
|
170
|
-
|
|
171
|
-
## Context Protection Notes
|
|
172
|
-
|
|
173
|
-
This workflow is designed for context efficiency:
|
|
174
|
-
- **Orchestrator**: Passes minimal data between steps
|
|
175
|
-
- **Sub-agents**: Each step can run in isolated context if needed
|
|
176
|
-
- **Token efficiency**: Expertise file provides compressed knowledge
|
|
177
|
-
|
|
178
|
-
For large features, consider running each step as a separate sub-agent invocation.
|
|
179
|
-
|
|
180
|
-
---
|
|
181
|
-
|
|
182
|
-
## Feature Request
|
|
183
|
-
|
|
184
|
-
{{argument}}
|
|
@@ -1,113 +0,0 @@
|
|
|
1
|
-
# Integrations Expert - Domain Knowledge
|
|
2
|
-
# This file is the agent's "mental model" of the integrations domain
|
|
3
|
-
# AUTO-UPDATED by self-improve.md after completing work
|
|
4
|
-
|
|
5
|
-
domain: integrations
|
|
6
|
-
last_updated: 2025-12-21
|
|
7
|
-
version: 1.1
|
|
8
|
-
|
|
9
|
-
files:
|
|
10
|
-
clients:
|
|
11
|
-
- path: src/integrations/
|
|
12
|
-
purpose: "Third-party API client implementations"
|
|
13
|
-
key_exports: []
|
|
14
|
-
conventions: "One client per service (StripeClient, TwilioClient)"
|
|
15
|
-
- path: src/integrations/clients/
|
|
16
|
-
purpose: "API client classes for external services"
|
|
17
|
-
conventions: "Named *Client.ts"
|
|
18
|
-
- path: src/integrations/webhooks/
|
|
19
|
-
purpose: "Webhook receivers and handlers"
|
|
20
|
-
conventions: "Named *WebhookHandler.ts"
|
|
21
|
-
|
|
22
|
-
configuration:
|
|
23
|
-
- path: src/config/integrations.ts
|
|
24
|
-
purpose: "Integration configuration and API key management"
|
|
25
|
-
conventions: "All secrets from environment variables"
|
|
26
|
-
- path: .env.example
|
|
27
|
-
purpose: "Template for required environment variables"
|
|
28
|
-
conventions: "Document all integration API keys here"
|
|
29
|
-
|
|
30
|
-
types:
|
|
31
|
-
- path: src/types/integrations/
|
|
32
|
-
purpose: "TypeScript types for external service responses"
|
|
33
|
-
conventions: "Match external API response schemas"
|
|
34
|
-
|
|
35
|
-
services:
|
|
36
|
-
- path: src/services/payment/
|
|
37
|
-
purpose: "Payment processing service layer"
|
|
38
|
-
conventions: "Wraps Stripe/PayPal/Square clients"
|
|
39
|
-
- path: src/services/email/
|
|
40
|
-
purpose: "Email delivery service layer"
|
|
41
|
-
conventions: "Wraps SendGrid/Mailgun/SES"
|
|
42
|
-
- path: src/services/auth/
|
|
43
|
-
purpose: "Authentication provider integrations"
|
|
44
|
-
conventions: "OAuth flows for Google/GitHub/Auth0"
|
|
45
|
-
|
|
46
|
-
relationships:
|
|
47
|
-
- parent: services
|
|
48
|
-
child: clients
|
|
49
|
-
type: uses
|
|
50
|
-
notes: "Service layer uses API clients"
|
|
51
|
-
- parent: webhooks
|
|
52
|
-
child: services
|
|
53
|
-
type: triggers
|
|
54
|
-
notes: "Webhooks trigger service layer actions"
|
|
55
|
-
- parent: api_endpoints
|
|
56
|
-
child: services
|
|
57
|
-
type: calls
|
|
58
|
-
notes: "API endpoints call integration services"
|
|
59
|
-
|
|
60
|
-
patterns:
|
|
61
|
-
- name: API Client Pattern
|
|
62
|
-
description: "Wrap third-party SDK with custom client for testability"
|
|
63
|
-
location: src/integrations/clients/
|
|
64
|
-
example: |
|
|
65
|
-
class StripeClient {
|
|
66
|
-
constructor(apiKey: string) { ... }
|
|
67
|
-
async createPayment(amount: number) { ... }
|
|
68
|
-
}
|
|
69
|
-
|
|
70
|
-
- name: Webhook Handler Pattern
|
|
71
|
-
description: "Validate signature, parse event, handle idempotently"
|
|
72
|
-
location: src/integrations/webhooks/
|
|
73
|
-
example: |
|
|
74
|
-
1. Validate webhook signature
|
|
75
|
-
2. Check if event already processed (idempotency)
|
|
76
|
-
3. Parse and route to handler
|
|
77
|
-
4. Respond 200 immediately
|
|
78
|
-
|
|
79
|
-
- name: Retry with Exponential Backoff
|
|
80
|
-
description: "Retry failed external requests with increasing delays"
|
|
81
|
-
location: src/integrations/clients/
|
|
82
|
-
example: "1s, 2s, 4s, 8s delays with jitter"
|
|
83
|
-
|
|
84
|
-
- name: Circuit Breaker
|
|
85
|
-
description: "Stop calling failing services to prevent cascade failures"
|
|
86
|
-
location: src/integrations/clients/
|
|
87
|
-
example: "Open circuit after 5 consecutive failures"
|
|
88
|
-
|
|
89
|
-
- name: Rate Limiting
|
|
90
|
-
description: "Respect external service rate limits"
|
|
91
|
-
location: src/integrations/clients/
|
|
92
|
-
example: "Token bucket or queue-based rate limiting"
|
|
93
|
-
|
|
94
|
-
conventions:
|
|
95
|
-
- "NEVER hardcode API keys - use environment variables"
|
|
96
|
-
- "ALWAYS validate webhook signatures before processing"
|
|
97
|
-
- "ALWAYS implement retry logic with exponential backoff"
|
|
98
|
-
- "ALWAYS log external service calls (without secrets)"
|
|
99
|
-
- "ALWAYS handle rate limiting gracefully"
|
|
100
|
-
- "Implement idempotency for webhook handlers"
|
|
101
|
-
- "Use circuit breaker for unreliable services"
|
|
102
|
-
- "Mock external services in tests"
|
|
103
|
-
- "Document all required environment variables"
|
|
104
|
-
|
|
105
|
-
# Learnings (trimmed - keep 2 most actionable)
|
|
106
|
-
learnings:
|
|
107
|
-
- date: 2025-12-21
|
|
108
|
-
context: "IDE integration pattern"
|
|
109
|
-
insight: "IDE-specific installers in installers/ide/ handle different config dirs (.claude/, .cursor/, .windsurf/). Shared logic in _base-ide.js, overrides per IDE."
|
|
110
|
-
|
|
111
|
-
- date: 2025-12-21
|
|
112
|
-
context: "Content injection"
|
|
113
|
-
insight: "Placeholders ({{AGENT_LIST}}, {{COMMAND_LIST}}) in source files replaced at install time. Zero runtime overhead."
|
|
@@ -1,74 +0,0 @@
|
|
|
1
|
-
# Integrations Expert - Question Workflow
|
|
2
|
-
|
|
3
|
-
**Purpose**: Answer questions about third-party integrations using expertise-first approach.
|
|
4
|
-
|
|
5
|
-
## Workflow
|
|
6
|
-
|
|
7
|
-
### Step 1: Load Expertise
|
|
8
|
-
```
|
|
9
|
-
Read: packages/cli/src/core/experts/integrations/expertise.yaml
|
|
10
|
-
```
|
|
11
|
-
|
|
12
|
-
Parse the expertise file to understand:
|
|
13
|
-
- Known integration client locations
|
|
14
|
-
- Webhook handler patterns
|
|
15
|
-
- Environment variable conventions
|
|
16
|
-
- Retry and error handling patterns
|
|
17
|
-
- Active integrations catalog
|
|
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 integration clients mentioned
|
|
24
|
-
3. Verify environment variables documented
|
|
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 patterns (retry logic, webhook validation)
|
|
35
|
-
- Include required environment variables
|
|
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 integration discovered: [service]
|
|
49
|
-
- Webhook endpoint not documented: [path]
|
|
50
|
-
- Environment variable missing: [var]
|
|
51
|
-
```
|
|
52
|
-
|
|
53
|
-
## Example Usage
|
|
54
|
-
|
|
55
|
-
**Question**: "Where is the Stripe integration?"
|
|
56
|
-
|
|
57
|
-
**Expertise-First Answer**:
|
|
58
|
-
1. Check expertise.yaml → integrations_catalog → payment → Stripe
|
|
59
|
-
2. Check file locations → `src/integrations/clients/`
|
|
60
|
-
3. Answer: "Stripe client is in `src/integrations/clients/StripeClient.ts`. Required env vars: `STRIPE_API_KEY`, `STRIPE_WEBHOOK_SECRET`. Webhook handlers in `src/integrations/webhooks/`."
|
|
61
|
-
|
|
62
|
-
**Question**: "How do we handle webhook signature validation?"
|
|
63
|
-
|
|
64
|
-
**Expertise-First Answer**:
|
|
65
|
-
1. Check expertise.yaml → patterns → Webhook Handler Pattern
|
|
66
|
-
2. Reference the pattern description
|
|
67
|
-
3. Answer with specific implementation location
|
|
68
|
-
|
|
69
|
-
## Key Principles
|
|
70
|
-
|
|
71
|
-
1. **Expertise First**: Always check expertise.yaml before searching
|
|
72
|
-
2. **Security Focus**: Always mention required env vars and signature validation
|
|
73
|
-
3. **Be Specific**: Provide exact file paths and required configuration
|
|
74
|
-
4. **Learn**: Note gaps for self-improve to fill later
|