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,151 +0,0 @@
|
|
|
1
|
-
# Integrations Expert - Self-Improve Workflow
|
|
2
|
-
|
|
3
|
-
**Purpose**: Automatically update expertise.yaml after completing integration work.
|
|
4
|
-
|
|
5
|
-
## When to Run
|
|
6
|
-
|
|
7
|
-
Run this workflow after:
|
|
8
|
-
- Adding a new third-party integration
|
|
9
|
-
- Implementing webhook handlers
|
|
10
|
-
- Updating API client implementations
|
|
11
|
-
- Discovering new integration patterns
|
|
12
|
-
- Adding new environment variables
|
|
13
|
-
|
|
14
|
-
## Workflow
|
|
15
|
-
|
|
16
|
-
### Step 1: Load Current Expertise
|
|
17
|
-
```
|
|
18
|
-
Read: packages/cli/src/core/experts/integrations/expertise.yaml
|
|
19
|
-
```
|
|
20
|
-
|
|
21
|
-
### Step 2: Analyze Changes Made
|
|
22
|
-
|
|
23
|
-
Review what was just implemented:
|
|
24
|
-
1. What new integration clients were created?
|
|
25
|
-
2. What webhook handlers were added?
|
|
26
|
-
3. What environment variables are required?
|
|
27
|
-
4. What error handling patterns were used?
|
|
28
|
-
5. What was learned during implementation?
|
|
29
|
-
|
|
30
|
-
### Step 3: Generate Diff
|
|
31
|
-
|
|
32
|
-
Identify what's new or changed:
|
|
33
|
-
- New integrations not in catalog
|
|
34
|
-
- New webhook endpoints
|
|
35
|
-
- New environment variables
|
|
36
|
-
- Pattern changes or improvements
|
|
37
|
-
- Gotchas and edge cases discovered
|
|
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 integrations_catalog if new service added:
|
|
53
|
-
```yaml
|
|
54
|
-
integrations_catalog:
|
|
55
|
-
category:
|
|
56
|
-
- name: ServiceName
|
|
57
|
-
env_vars: [VAR1, VAR2]
|
|
58
|
-
webhooks: [event.type1, event.type2]
|
|
59
|
-
```
|
|
60
|
-
|
|
61
|
-
### Step 5: Validate Update
|
|
62
|
-
|
|
63
|
-
Ensure the expertise file:
|
|
64
|
-
- Is valid YAML
|
|
65
|
-
- Has updated `last_updated` date
|
|
66
|
-
- Doesn't exceed ~200 lines
|
|
67
|
-
- All environment variables documented
|
|
68
|
-
|
|
69
|
-
## Learning Categories
|
|
70
|
-
|
|
71
|
-
### New Integrations
|
|
72
|
-
```yaml
|
|
73
|
-
learnings:
|
|
74
|
-
- date: 2025-12-16
|
|
75
|
-
insight: "Added Plaid integration for bank account linking"
|
|
76
|
-
files_affected:
|
|
77
|
-
- src/integrations/clients/PlaidClient.ts
|
|
78
|
-
- src/integrations/webhooks/PlaidWebhookHandler.ts
|
|
79
|
-
context: "US-0060: Bank account verification"
|
|
80
|
-
|
|
81
|
-
# Also update integrations_catalog:
|
|
82
|
-
integrations_catalog:
|
|
83
|
-
banking:
|
|
84
|
-
- name: Plaid
|
|
85
|
-
env_vars: [PLAID_CLIENT_ID, PLAID_SECRET, PLAID_ENV]
|
|
86
|
-
webhooks: [ITEM_LOGIN_REQUIRED, TRANSACTIONS_READY]
|
|
87
|
-
```
|
|
88
|
-
|
|
89
|
-
### Webhook Learnings
|
|
90
|
-
```yaml
|
|
91
|
-
learnings:
|
|
92
|
-
- date: 2025-12-16
|
|
93
|
-
insight: "Stripe webhooks require raw body for signature validation"
|
|
94
|
-
files_affected: [src/integrations/webhooks/StripeWebhookHandler.ts]
|
|
95
|
-
context: "US-0061: Fix webhook signature verification"
|
|
96
|
-
```
|
|
97
|
-
|
|
98
|
-
### Error Handling Discoveries
|
|
99
|
-
```yaml
|
|
100
|
-
learnings:
|
|
101
|
-
- date: 2025-12-16
|
|
102
|
-
insight: "Twilio returns 429 with Retry-After header - use that value for backoff"
|
|
103
|
-
files_affected: [src/integrations/clients/TwilioClient.ts]
|
|
104
|
-
context: "US-0062: Improve SMS retry logic"
|
|
105
|
-
```
|
|
106
|
-
|
|
107
|
-
### Security Insights
|
|
108
|
-
```yaml
|
|
109
|
-
learnings:
|
|
110
|
-
- date: 2025-12-16
|
|
111
|
-
insight: "Auth0 tokens must be validated server-side, not just decoded"
|
|
112
|
-
files_affected: [src/services/auth/Auth0Service.ts]
|
|
113
|
-
context: "US-0063: Security audit fixes"
|
|
114
|
-
```
|
|
115
|
-
|
|
116
|
-
## Example Update
|
|
117
|
-
|
|
118
|
-
Before work:
|
|
119
|
-
```yaml
|
|
120
|
-
integrations_catalog:
|
|
121
|
-
payment:
|
|
122
|
-
- name: Stripe
|
|
123
|
-
env_vars: [STRIPE_API_KEY, STRIPE_WEBHOOK_SECRET]
|
|
124
|
-
```
|
|
125
|
-
|
|
126
|
-
After adding PayPal:
|
|
127
|
-
```yaml
|
|
128
|
-
integrations_catalog:
|
|
129
|
-
payment:
|
|
130
|
-
- name: Stripe
|
|
131
|
-
env_vars: [STRIPE_API_KEY, STRIPE_WEBHOOK_SECRET]
|
|
132
|
-
- name: PayPal
|
|
133
|
-
env_vars: [PAYPAL_CLIENT_ID, PAYPAL_CLIENT_SECRET, PAYPAL_WEBHOOK_ID]
|
|
134
|
-
webhooks: [PAYMENT.CAPTURE.COMPLETED, PAYMENT.CAPTURE.DENIED]
|
|
135
|
-
|
|
136
|
-
learnings:
|
|
137
|
-
- date: 2025-12-16
|
|
138
|
-
insight: "PayPal webhook validation requires fetching verification from PayPal API"
|
|
139
|
-
files_affected:
|
|
140
|
-
- src/integrations/clients/PayPalClient.ts
|
|
141
|
-
- src/integrations/webhooks/PayPalWebhookHandler.ts
|
|
142
|
-
context: "US-0064: Add PayPal payment support"
|
|
143
|
-
```
|
|
144
|
-
|
|
145
|
-
## Key Principles
|
|
146
|
-
|
|
147
|
-
1. **Document All Env Vars**: Every integration needs documented configuration
|
|
148
|
-
2. **Webhook Security**: Always note signature validation requirements
|
|
149
|
-
3. **Error Patterns**: Document retry strategies and error handling
|
|
150
|
-
4. **Rate Limits**: Note any rate limiting behavior discovered
|
|
151
|
-
5. **Test Credentials**: Note if sandbox/test mode available
|
|
@@ -1,246 +0,0 @@
|
|
|
1
|
-
# Integrations Expert - Complete Workflow
|
|
2
|
-
|
|
3
|
-
**Purpose**: End-to-end workflow for implementing third-party integrations 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/integrations/expertise.yaml
|
|
18
|
-
```
|
|
19
|
-
|
|
20
|
-
Parse and internalize:
|
|
21
|
-
- Known integration client locations
|
|
22
|
-
- Existing integrations catalog
|
|
23
|
-
- Webhook handler patterns
|
|
24
|
-
- Error handling conventions
|
|
25
|
-
- Environment variable requirements
|
|
26
|
-
|
|
27
|
-
### 1.2 Validate Expertise Against Codebase
|
|
28
|
-
|
|
29
|
-
Before planning, verify expertise is current:
|
|
30
|
-
```bash
|
|
31
|
-
# Check key directories exist
|
|
32
|
-
ls src/integrations/clients/
|
|
33
|
-
ls src/integrations/webhooks/
|
|
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 if similar integration exists** (from catalog)
|
|
43
|
-
2. **Identify required patterns** (retry, webhook validation, etc.)
|
|
44
|
-
3. **List environment variables needed**
|
|
45
|
-
4. **Plan error handling strategy**
|
|
46
|
-
|
|
47
|
-
Example Plan:
|
|
48
|
-
```markdown
|
|
49
|
-
## Implementation Plan: Add Twilio SMS Integration
|
|
50
|
-
|
|
51
|
-
### From Expertise:
|
|
52
|
-
- Client location: src/integrations/clients/
|
|
53
|
-
- Webhook location: src/integrations/webhooks/
|
|
54
|
-
- Pattern: Retry with exponential backoff
|
|
55
|
-
- Pattern: Webhook signature validation
|
|
56
|
-
|
|
57
|
-
### Environment Variables:
|
|
58
|
-
- TWILIO_ACCOUNT_SID
|
|
59
|
-
- TWILIO_AUTH_TOKEN
|
|
60
|
-
- TWILIO_WEBHOOK_SECRET
|
|
61
|
-
|
|
62
|
-
### Files to Create:
|
|
63
|
-
- src/integrations/clients/TwilioClient.ts
|
|
64
|
-
- src/integrations/webhooks/TwilioWebhookHandler.ts
|
|
65
|
-
|
|
66
|
-
### Implementation Steps:
|
|
67
|
-
1. Create TwilioClient with retry logic
|
|
68
|
-
2. Implement SMS sending method
|
|
69
|
-
3. Create webhook handler with signature validation
|
|
70
|
-
4. Add environment variable documentation
|
|
71
|
-
5. Write integration tests with mocks
|
|
72
|
-
```
|
|
73
|
-
|
|
74
|
-
---
|
|
75
|
-
|
|
76
|
-
## Step 2: Build (Execute Plan)
|
|
77
|
-
|
|
78
|
-
### 2.1 Execute Implementation
|
|
79
|
-
|
|
80
|
-
Follow the plan exactly:
|
|
81
|
-
- Use file paths from expertise
|
|
82
|
-
- Apply patterns (retry, webhook validation) from expertise
|
|
83
|
-
- Follow security conventions (no hardcoded secrets)
|
|
84
|
-
|
|
85
|
-
### 2.2 Handle Discoveries
|
|
86
|
-
|
|
87
|
-
If you discover something not in expertise:
|
|
88
|
-
```markdown
|
|
89
|
-
## Discovery Log
|
|
90
|
-
- Found: Twilio returns 429 with Retry-After header
|
|
91
|
-
- Pattern: Queue-based rate limiting more effective than token bucket
|
|
92
|
-
- Gotcha: Webhook signature uses raw body, not parsed JSON
|
|
93
|
-
```
|
|
94
|
-
|
|
95
|
-
### 2.3 Security Checklist
|
|
96
|
-
|
|
97
|
-
Per expertise conventions:
|
|
98
|
-
- ✅ API keys in environment variables
|
|
99
|
-
- ✅ Webhook signatures validated
|
|
100
|
-
- ✅ No secrets in logs or errors
|
|
101
|
-
- ✅ Retry logic with exponential backoff
|
|
102
|
-
- ✅ Rate limiting respected
|
|
103
|
-
|
|
104
|
-
### 2.4 Capture Changes
|
|
105
|
-
|
|
106
|
-
Document what was actually changed:
|
|
107
|
-
```markdown
|
|
108
|
-
## Changes Made
|
|
109
|
-
- Created: src/integrations/clients/TwilioClient.ts
|
|
110
|
-
- Created: src/integrations/webhooks/TwilioWebhookHandler.ts
|
|
111
|
-
- Updated: .env.example (added Twilio vars)
|
|
112
|
-
- Created: src/integrations/__tests__/TwilioClient.test.ts
|
|
113
|
-
```
|
|
114
|
-
|
|
115
|
-
---
|
|
116
|
-
|
|
117
|
-
## Step 3: Self-Improve (Update Expertise)
|
|
118
|
-
|
|
119
|
-
### 3.1 Load Current Expertise
|
|
120
|
-
```
|
|
121
|
-
Read: packages/cli/src/core/experts/integrations/expertise.yaml
|
|
122
|
-
```
|
|
123
|
-
|
|
124
|
-
### 3.2 Identify Updates Needed
|
|
125
|
-
|
|
126
|
-
Compare discoveries with current expertise:
|
|
127
|
-
- New integration to add to catalog?
|
|
128
|
-
- New environment variables documented?
|
|
129
|
-
- New webhook endpoints?
|
|
130
|
-
- Error handling learnings?
|
|
131
|
-
|
|
132
|
-
### 3.3 Update Expertise File
|
|
133
|
-
|
|
134
|
-
Add to integrations_catalog:
|
|
135
|
-
```yaml
|
|
136
|
-
integrations_catalog:
|
|
137
|
-
messaging:
|
|
138
|
-
- name: Twilio
|
|
139
|
-
env_vars: [TWILIO_ACCOUNT_SID, TWILIO_AUTH_TOKEN, TWILIO_WEBHOOK_SECRET]
|
|
140
|
-
webhooks: [message.delivered, message.failed, message.received]
|
|
141
|
-
```
|
|
142
|
-
|
|
143
|
-
Add learning entry:
|
|
144
|
-
```yaml
|
|
145
|
-
learnings:
|
|
146
|
-
- date: 2025-12-16
|
|
147
|
-
insight: "Twilio webhook validation requires X-Twilio-Signature header and raw body"
|
|
148
|
-
files_affected:
|
|
149
|
-
- src/integrations/webhooks/TwilioWebhookHandler.ts
|
|
150
|
-
context: "US-0100: Add Twilio SMS support"
|
|
151
|
-
```
|
|
152
|
-
|
|
153
|
-
Update `last_updated` date.
|
|
154
|
-
|
|
155
|
-
### 3.4 Validate Update
|
|
156
|
-
|
|
157
|
-
Ensure expertise.yaml:
|
|
158
|
-
- Is valid YAML
|
|
159
|
-
- All env vars documented
|
|
160
|
-
- Reflects current integrations
|
|
161
|
-
|
|
162
|
-
---
|
|
163
|
-
|
|
164
|
-
## Quick Reference
|
|
165
|
-
|
|
166
|
-
### Before ANY Integration Work
|
|
167
|
-
```
|
|
168
|
-
1. Read expertise.yaml
|
|
169
|
-
2. Check integrations_catalog for similar services
|
|
170
|
-
3. Identify required patterns
|
|
171
|
-
4. Plan with security in mind
|
|
172
|
-
```
|
|
173
|
-
|
|
174
|
-
### After ANY Integration Work
|
|
175
|
-
```
|
|
176
|
-
1. Add new integration to catalog
|
|
177
|
-
2. Document all environment variables
|
|
178
|
-
3. Note webhook handling requirements
|
|
179
|
-
4. Update expertise.yaml
|
|
180
|
-
```
|
|
181
|
-
|
|
182
|
-
### Key Patterns (from expertise)
|
|
183
|
-
- API Client Pattern: Wrap SDK for testability
|
|
184
|
-
- Webhook Handler Pattern: Validate → Check idempotency → Process → Respond 200
|
|
185
|
-
- Retry Pattern: Exponential backoff with jitter
|
|
186
|
-
- Circuit Breaker: Stop calling failing services
|
|
187
|
-
|
|
188
|
-
### Security Conventions (from expertise)
|
|
189
|
-
- NEVER hardcode API keys
|
|
190
|
-
- ALWAYS validate webhook signatures
|
|
191
|
-
- ALWAYS implement retry with backoff
|
|
192
|
-
- ALWAYS log without secrets
|
|
193
|
-
|
|
194
|
-
---
|
|
195
|
-
|
|
196
|
-
## Example: Complete Integration Implementation
|
|
197
|
-
|
|
198
|
-
**Task**: Integrate Stripe for payments
|
|
199
|
-
|
|
200
|
-
### Plan Phase
|
|
201
|
-
```markdown
|
|
202
|
-
From expertise:
|
|
203
|
-
- Client pattern: src/integrations/clients/
|
|
204
|
-
- Webhook pattern: signature validation required
|
|
205
|
-
- Similar integration: See PayPal in catalog
|
|
206
|
-
|
|
207
|
-
Plan:
|
|
208
|
-
1. Create StripeClient.ts
|
|
209
|
-
2. Implement payment methods
|
|
210
|
-
3. Create webhook handler with signature validation
|
|
211
|
-
4. Add idempotency for webhook events
|
|
212
|
-
5. Document env vars
|
|
213
|
-
```
|
|
214
|
-
|
|
215
|
-
### Build Phase
|
|
216
|
-
```markdown
|
|
217
|
-
Created:
|
|
218
|
-
- src/integrations/clients/StripeClient.ts
|
|
219
|
-
- src/integrations/webhooks/StripeWebhookHandler.ts
|
|
220
|
-
|
|
221
|
-
Discoveries:
|
|
222
|
-
- Stripe requires raw body for webhook signature
|
|
223
|
-
- Need to use stripe.webhooks.constructEvent()
|
|
224
|
-
- Idempotency key useful for create operations
|
|
225
|
-
```
|
|
226
|
-
|
|
227
|
-
### Self-Improve Phase
|
|
228
|
-
```yaml
|
|
229
|
-
integrations_catalog:
|
|
230
|
-
payment:
|
|
231
|
-
- name: Stripe
|
|
232
|
-
env_vars: [STRIPE_API_KEY, STRIPE_WEBHOOK_SECRET]
|
|
233
|
-
webhooks: [payment_intent.succeeded, charge.refunded, subscription.updated]
|
|
234
|
-
|
|
235
|
-
learnings:
|
|
236
|
-
- date: 2025-12-16
|
|
237
|
-
insight: "Stripe webhooks need express.raw() middleware before json parsing"
|
|
238
|
-
files_affected:
|
|
239
|
-
- src/integrations/webhooks/StripeWebhookHandler.ts
|
|
240
|
-
- src/app.ts
|
|
241
|
-
context: "US-0101: Stripe payment integration"
|
|
242
|
-
```
|
|
243
|
-
|
|
244
|
-
---
|
|
245
|
-
|
|
246
|
-
This workflow ensures secure integrations and continuous learning.
|
|
@@ -1,125 +0,0 @@
|
|
|
1
|
-
# Mentor Expert - Domain Knowledge
|
|
2
|
-
# This file is the agent's "mental model" of the mentor/orchestration domain
|
|
3
|
-
# AUTO-UPDATED by self-improve.md after completing work
|
|
4
|
-
|
|
5
|
-
domain: mentor
|
|
6
|
-
last_updated: 2025-12-21
|
|
7
|
-
version: 1.1
|
|
8
|
-
|
|
9
|
-
# AgileFlow-specific mentor/babysit workflow (learned from actual codebase)
|
|
10
|
-
files:
|
|
11
|
-
coordination:
|
|
12
|
-
- path: docs/09-agents/status.json
|
|
13
|
-
purpose: "Single source of truth for story statuses"
|
|
14
|
-
fields: ["owner", "status", "priority", "estimate", "depends_on", "test_status"]
|
|
15
|
-
conventions: "Update after every status change"
|
|
16
|
-
- path: docs/09-agents/bus/log.jsonl
|
|
17
|
-
purpose: "Agent coordination message bus"
|
|
18
|
-
conventions: "Append-only JSON Lines, newest last"
|
|
19
|
-
|
|
20
|
-
planning:
|
|
21
|
-
- path: docs/05-epics/
|
|
22
|
-
purpose: "Epic definitions"
|
|
23
|
-
conventions: "EP-#### naming (e.g., EP-0001)"
|
|
24
|
-
- path: docs/06-stories/
|
|
25
|
-
purpose: "User stories"
|
|
26
|
-
conventions: "US-#### naming, organized by epic subdirectory"
|
|
27
|
-
- path: docs/07-testing/test-cases/
|
|
28
|
-
purpose: "Test stubs for stories"
|
|
29
|
-
conventions: "One per story"
|
|
30
|
-
|
|
31
|
-
research:
|
|
32
|
-
- path: docs/10-research/
|
|
33
|
-
purpose: "Technical research notes"
|
|
34
|
-
conventions: "YYYYMMDD-slug.md format"
|
|
35
|
-
example_notes:
|
|
36
|
-
- "20251216-agent-experts-self-improving-agents.md"
|
|
37
|
-
- "20251216-mermaid-js-diagramming.md"
|
|
38
|
-
- path: docs/03-decisions/
|
|
39
|
-
purpose: "Architecture Decision Records"
|
|
40
|
-
conventions: "adr-NNNN-title.md format"
|
|
41
|
-
|
|
42
|
-
project:
|
|
43
|
-
- path: CLAUDE.md
|
|
44
|
-
purpose: "Project context and conventions (internal)"
|
|
45
|
-
- path: docs/08-project/roadmap.md
|
|
46
|
-
purpose: "Product roadmap"
|
|
47
|
-
- path: docs/08-project/backlog.md
|
|
48
|
-
purpose: "Feature backlog"
|
|
49
|
-
|
|
50
|
-
agent_experts:
|
|
51
|
-
- path: packages/cli/src/core/experts/
|
|
52
|
-
purpose: "Agent expertise files (25 domains)"
|
|
53
|
-
pattern: "<domain>/expertise.yaml, question.md, self-improve.md, workflow.md"
|
|
54
|
-
- path: packages/cli/src/core/agents/
|
|
55
|
-
purpose: "Agent prompt files (26+ agents)"
|
|
56
|
-
pattern: "<agent>.md with YAML frontmatter"
|
|
57
|
-
|
|
58
|
-
relationships:
|
|
59
|
-
- parent: mentor
|
|
60
|
-
child: specialized_agents
|
|
61
|
-
type: coordinates
|
|
62
|
-
notes: "Mentor spawns Agent Experts with pre-loaded domain knowledge"
|
|
63
|
-
- parent: epics
|
|
64
|
-
child: stories
|
|
65
|
-
type: contains
|
|
66
|
-
notes: "Epics break down into 3-10 stories (EP-0001 had 6)"
|
|
67
|
-
- parent: research
|
|
68
|
-
child: planning
|
|
69
|
-
type: informs
|
|
70
|
-
notes: "Research informs epic planning (see EP-0001 research link)"
|
|
71
|
-
- parent: status_json
|
|
72
|
-
child: stories
|
|
73
|
-
type: tracks
|
|
74
|
-
notes: "status.json is single source of truth for all story tracking"
|
|
75
|
-
|
|
76
|
-
patterns:
|
|
77
|
-
- name: Babysit Workflow
|
|
78
|
-
description: "Interactive mentor guiding from idea to PR"
|
|
79
|
-
location: packages/cli/src/core/commands/babysit.md
|
|
80
|
-
flow: "Ask what to work on → Check status.json → Create/update stories → Spawn agents → Verify → Commit"
|
|
81
|
-
|
|
82
|
-
- name: Session Harness
|
|
83
|
-
description: "Test verification before marking complete"
|
|
84
|
-
commands:
|
|
85
|
-
- "/agileflow:verify STORY=US-XXXX"
|
|
86
|
-
- "/agileflow:baseline 'description'"
|
|
87
|
-
location: "Session init verifies build/tests"
|
|
88
|
-
|
|
89
|
-
- name: Story Status Flow
|
|
90
|
-
description: "Stories progress through defined states"
|
|
91
|
-
states: ["ready", "in_progress", "in_review", "done"]
|
|
92
|
-
location: docs/09-agents/status.json
|
|
93
|
-
|
|
94
|
-
- name: Agent Expertise Workflow
|
|
95
|
-
description: "Three-step: Plan → Build → Self-Improve"
|
|
96
|
-
location: packages/cli/src/core/experts/
|
|
97
|
-
benefit: "Agents accumulate learnings over time"
|
|
98
|
-
|
|
99
|
-
- name: Auto-Archival
|
|
100
|
-
description: "Completed stories archived after 7 days"
|
|
101
|
-
script: scripts/archive-completed-stories.sh
|
|
102
|
-
destination: "docs/09-agents/archive/YYYY-MM.json"
|
|
103
|
-
|
|
104
|
-
conventions:
|
|
105
|
-
- "Always check existing epics/stories in status.json before creating new"
|
|
106
|
-
- "Use /agileflow:verify before marking story in_review"
|
|
107
|
-
- "Update status.json after every status change"
|
|
108
|
-
- "WIP limit: max 2 stories per agent"
|
|
109
|
-
- "Stories typically 2-3 hours (not days)"
|
|
110
|
-
- "Spawn Agent Experts (not generic agents) for domain work"
|
|
111
|
-
- "Research notes inform epic planning"
|
|
112
|
-
- "NO AI attribution in commits (per CLAUDE.md)"
|
|
113
|
-
|
|
114
|
-
# Agent roster: AG-UI, AG-API, AG-CI, AG-DEVOPS, EPIC-PLANNER, ADR-WRITER, RESEARCH, MENTOR
|
|
115
|
-
# (details in babysit.md delegation framework - omitted here)
|
|
116
|
-
|
|
117
|
-
# Learnings (trimmed - keep 2 most actionable)
|
|
118
|
-
learnings:
|
|
119
|
-
- date: 2025-12-21
|
|
120
|
-
context: "Babysit workflow"
|
|
121
|
-
insight: "Guides from task selection through story creation, agent spawning, verification, and commit. Status.json tracks epics + stories."
|
|
122
|
-
|
|
123
|
-
- date: 2025-12-21
|
|
124
|
-
context: "Agent Expert system"
|
|
125
|
-
insight: "26 domain experts with expertise.yaml, question.md, self-improve.md, workflow.md. Agents load expertise first before tasks."
|
|
@@ -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}}
|