agileflow 3.4.3 → 4.0.0-alpha.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +238 -473
- package/README.md +22 -114
- package/bin/agileflow.js +15 -0
- package/bin/hooks/pre-bash.js +35 -0
- package/bin/hooks/pre-compact.js +34 -0
- package/bin/hooks/pre-edit.js +32 -0
- package/bin/hooks/pre-write.js +32 -0
- package/bin/hooks/session-start.js +42 -0
- package/bin/hooks/stop.js +34 -0
- package/content/plugins/ads/plugin.yaml +14 -0
- package/content/plugins/audit/plugin.yaml +14 -0
- package/content/plugins/core/hooks/babysit-mentor-injector.js +55 -0
- package/content/plugins/core/hooks/context-loader.js +169 -0
- package/content/plugins/core/hooks/damage-control-bash.js +78 -0
- package/content/plugins/core/hooks/damage-control-edit.js +76 -0
- package/content/plugins/core/hooks/damage-control-patterns.yaml +100 -0
- package/content/plugins/core/hooks/damage-control-write.js +72 -0
- package/content/plugins/core/hooks/pre-compact-state.js +90 -0
- package/content/plugins/core/hooks/session-welcome.js +19 -0
- package/content/plugins/core/plugin.yaml +82 -0
- package/content/plugins/core/skills/agileflow-adr/SKILL.md +179 -0
- package/content/plugins/core/skills/agileflow-babysit-mentor/SKILL.md +144 -0
- package/content/plugins/core/skills/agileflow-epic-planner/SKILL.md +179 -0
- package/content/plugins/core/skills/agileflow-status-updater/SKILL.md +132 -0
- package/content/plugins/core/skills/agileflow-story-writer/SKILL.md +200 -0
- package/content/plugins/council/plugin.yaml +14 -0
- package/content/plugins/seo/plugin.yaml +14 -0
- package/package.json +29 -49
- package/src/cli/commands/doctor.js +159 -0
- package/src/cli/commands/hook.js +80 -0
- package/src/cli/commands/setup.js +292 -0
- package/src/cli/commands/status.js +47 -0
- package/src/cli/commands/update.js +83 -0
- package/src/cli/index.js +73 -0
- package/src/cli/wizard/behaviors-picker.js +108 -0
- package/src/cli/wizard/ide-picker.js +57 -0
- package/src/cli/wizard/personalization.js +64 -0
- package/src/cli/wizard/plugin-picker.js +106 -0
- package/src/lib/hash.js +41 -0
- package/src/runtime/config/defaults.js +61 -0
- package/src/runtime/config/loader.js +117 -0
- package/src/runtime/config/schema.json +99 -0
- package/src/runtime/config/writer.js +55 -0
- package/src/runtime/hooks/aggregator.js +157 -0
- package/src/runtime/hooks/chain.js +93 -0
- package/src/runtime/hooks/logger.js +68 -0
- package/src/runtime/hooks/manifest-loader.js +228 -0
- package/src/runtime/hooks/orchestrator.js +322 -0
- package/src/runtime/ide/capabilities.js +111 -0
- package/src/runtime/ide/claude-code-settings.js +234 -0
- package/src/runtime/ide/claude-code-skills.js +202 -0
- package/src/runtime/installer/file-index.js +112 -0
- package/src/runtime/installer/install.js +329 -0
- package/src/runtime/installer/stash.js +61 -0
- package/src/runtime/installer/sync-engine.js +205 -0
- package/src/runtime/plugins/registry.js +132 -0
- package/src/runtime/plugins/resolver.js +138 -0
- package/src/runtime/plugins/validator.js +196 -0
- package/src/runtime/skills/validator.js +335 -0
- package/lib/README.md +0 -178
- package/lib/api-routes.js +0 -625
- package/lib/api-server.js +0 -278
- package/lib/cache-provider.js +0 -155
- package/lib/codebase-indexer.js +0 -819
- package/lib/colors.generated.js +0 -117
- package/lib/colors.js +0 -341
- package/lib/consent.js +0 -232
- package/lib/content-sanitizer.js +0 -464
- package/lib/correlation.js +0 -277
- package/lib/drivers/claude-driver.ts +0 -312
- package/lib/drivers/codex-driver.ts +0 -464
- package/lib/drivers/driver-manager.ts +0 -159
- package/lib/drivers/gemini-driver.ts +0 -498
- package/lib/drivers/index.ts +0 -17
- package/lib/error-codes.js +0 -590
- package/lib/errors.js +0 -670
- package/lib/feature-flags.js +0 -171
- package/lib/feedback.js +0 -595
- package/lib/file-cache.js +0 -541
- package/lib/flag-detection.js +0 -344
- package/lib/format-error.js +0 -156
- package/lib/gate-runner.js +0 -282
- package/lib/generator-factory.js +0 -333
- package/lib/git-operations.js +0 -266
- package/lib/lazy-require.js +0 -59
- package/lib/lock-file.js +0 -144
- package/lib/logger.js +0 -106
- package/lib/merge-operations.js +0 -1006
- package/lib/path-resolver.js +0 -544
- package/lib/path-utils.js +0 -49
- package/lib/paths.js +0 -291
- package/lib/placeholder-registry.js +0 -822
- package/lib/process-executor.js +0 -214
- package/lib/progress.js +0 -334
- package/lib/protocol/driver.ts +0 -354
- package/lib/protocol/index.ts +0 -12
- package/lib/protocol/ir.ts +0 -271
- package/lib/registry-cache.js +0 -80
- package/lib/registry-di.js +0 -358
- package/lib/result-schema.js +0 -363
- package/lib/result.js +0 -210
- package/lib/session-display.js +0 -331
- package/lib/session-operations.js +0 -611
- package/lib/session-registry.js +0 -484
- package/lib/session-state-machine.js +0 -465
- package/lib/session-switching.js +0 -191
- package/lib/skill-loader.js +0 -213
- package/lib/smart-json-file.js +0 -682
- package/lib/state-machine.js +0 -286
- package/lib/table-formatter.js +0 -519
- package/lib/template-loader.js +0 -143
- package/lib/transient-status.js +0 -374
- package/lib/ui-manager.js +0 -612
- package/lib/validate-args.js +0 -213
- package/lib/validate-commands.js +0 -308
- package/lib/validate-names.js +0 -143
- package/lib/validate-paths.js +0 -434
- package/lib/validate.js +0 -134
- package/lib/worktree-operations.js +0 -201
- package/lib/yaml-utils.js +0 -164
- package/scripts/README.md +0 -267
- package/scripts/af +0 -34
- package/scripts/agent-loop.js +0 -879
- package/scripts/agileflow-configure.js +0 -368
- package/scripts/agileflow-statusline.sh +0 -857
- package/scripts/agileflow-welcome.js +0 -2246
- package/scripts/api-server-runner.js +0 -177
- package/scripts/archive-completed-stories.sh +0 -308
- package/scripts/auto-self-improve.js +0 -326
- package/scripts/automation-run-due.js +0 -128
- package/scripts/babysit-clear-restore.js +0 -154
- package/scripts/babysit-context-restore.js +0 -89
- package/scripts/backfill-ideation-status.js +0 -128
- package/scripts/batch-pmap-loop.js +0 -551
- package/scripts/check-sessions.js +0 -116
- package/scripts/check-update.js +0 -282
- package/scripts/ci-summary.js +0 -294
- package/scripts/claude-smart.sh +0 -85
- package/scripts/claude-tmux.sh +0 -737
- package/scripts/claude-watchdog.sh +0 -225
- package/scripts/clear-active-command.js +0 -48
- package/scripts/compress-status.sh +0 -116
- package/scripts/context-loader.js +0 -310
- package/scripts/damage-control/bash-tool-damage-control.js +0 -22
- package/scripts/damage-control/edit-tool-damage-control.js +0 -19
- package/scripts/damage-control/patterns.yaml +0 -227
- package/scripts/damage-control/write-tool-damage-control.js +0 -19
- package/scripts/damage-control-bash.js +0 -51
- package/scripts/damage-control-edit.js +0 -48
- package/scripts/damage-control-multi-agent.js +0 -231
- package/scripts/damage-control-write.js +0 -48
- package/scripts/dependency-check.js +0 -311
- package/scripts/document-repl.js +0 -793
- package/scripts/expertise-metrics.sh +0 -264
- package/scripts/generate-all.sh +0 -77
- package/scripts/generate-colors.js +0 -314
- package/scripts/generators/agent-registry.js +0 -183
- package/scripts/generators/command-registry.js +0 -166
- package/scripts/generators/index.js +0 -85
- package/scripts/generators/inject-babysit.js +0 -191
- package/scripts/generators/inject-help.js +0 -125
- package/scripts/generators/inject-readme.js +0 -166
- package/scripts/generators/skill-registry.js +0 -188
- package/scripts/get-env.js +0 -225
- package/scripts/init.sh +0 -76
- package/scripts/lib/README-portable-tasks.md +0 -424
- package/scripts/lib/ac-test-matcher.js +0 -452
- package/scripts/lib/audit-cleanup.js +0 -250
- package/scripts/lib/audit-registry.js +0 -340
- package/scripts/lib/automation-registry.js +0 -544
- package/scripts/lib/automation-runner.js +0 -476
- package/scripts/lib/browser-qa-evidence.js +0 -409
- package/scripts/lib/browser-qa-status.js +0 -192
- package/scripts/lib/bus-utils.js +0 -473
- package/scripts/lib/colors.generated.sh +0 -82
- package/scripts/lib/colors.sh +0 -46
- package/scripts/lib/command-prereqs.js +0 -280
- package/scripts/lib/concurrency-limiter.js +0 -511
- package/scripts/lib/configure-detect.js +0 -596
- package/scripts/lib/configure-features.js +0 -1927
- package/scripts/lib/configure-repair.js +0 -327
- package/scripts/lib/configure-utils.js +0 -114
- package/scripts/lib/context-formatter.js +0 -1158
- package/scripts/lib/context-loader.js +0 -840
- package/scripts/lib/counter.js +0 -103
- package/scripts/lib/damage-control-utils.js +0 -619
- package/scripts/lib/feature-catalog.js +0 -332
- package/scripts/lib/file-lock.js +0 -392
- package/scripts/lib/file-tracking.js +0 -735
- package/scripts/lib/frontmatter-parser.js +0 -133
- package/scripts/lib/gate-enforcer.js +0 -295
- package/scripts/lib/hook-metrics.js +0 -324
- package/scripts/lib/ideation-index.js +0 -1205
- package/scripts/lib/json-utils.sh +0 -162
- package/scripts/lib/lifecycle-detector.js +0 -125
- package/scripts/lib/model-profiles.js +0 -118
- package/scripts/lib/portable-tasks-cli.js +0 -274
- package/scripts/lib/portable-tasks.js +0 -479
- package/scripts/lib/process-cleanup.js +0 -527
- package/scripts/lib/quality-gates.js +0 -788
- package/scripts/lib/scale-detector.js +0 -396
- package/scripts/lib/sessionRegistry.js +0 -678
- package/scripts/lib/signal-detectors.js +0 -867
- package/scripts/lib/skill-catalog.js +0 -557
- package/scripts/lib/skill-recommender.js +0 -311
- package/scripts/lib/state-migrator.js +0 -353
- package/scripts/lib/status-task-bridge.js +0 -522
- package/scripts/lib/status-writer.js +0 -255
- package/scripts/lib/story-claiming.js +0 -704
- package/scripts/lib/story-state-machine.js +0 -437
- package/scripts/lib/sync-ideation-status.js +0 -291
- package/scripts/lib/task-registry-cache.js +0 -490
- package/scripts/lib/task-registry.js +0 -1191
- package/scripts/lib/task-sync.js +0 -230
- package/scripts/lib/tdd-phase-manager.js +0 -455
- package/scripts/lib/team-events.js +0 -510
- package/scripts/lib/tmux-audit-monitor.js +0 -612
- package/scripts/lib/tmux-group-colors.js +0 -113
- package/scripts/lib/tool-registry.yaml +0 -241
- package/scripts/lib/tool-shed.js +0 -441
- package/scripts/lib/validation-registry.js +0 -177
- package/scripts/messaging-bridge.js +0 -561
- package/scripts/migrate-ideation-index.js +0 -553
- package/scripts/native-team-observer.js +0 -219
- package/scripts/obtain-context.js +0 -272
- package/scripts/pre-push-check.sh +0 -46
- package/scripts/precompact-context.sh +0 -306
- package/scripts/query-codebase.js +0 -543
- package/scripts/ralph-loop.js +0 -1278
- package/scripts/resume-session.sh +0 -121
- package/scripts/screenshot-verifier.js +0 -215
- package/scripts/session-boundary.js +0 -138
- package/scripts/session-coordinator.sh +0 -232
- package/scripts/session-manager.js +0 -546
- package/scripts/smart-detect.js +0 -449
- package/scripts/spawn-audit-sessions.js +0 -877
- package/scripts/spawn-parallel.js +0 -751
- package/scripts/strip-ai-attribution.js +0 -63
- package/scripts/task-completed-gate.js +0 -237
- package/scripts/team-manager.js +0 -596
- package/scripts/team-status-display.js +0 -200
- package/scripts/teammate-idle-gate.js +0 -237
- package/scripts/test-session-boundary.js +0 -80
- package/scripts/tmux-close-windows.sh +0 -180
- package/scripts/tmux-restore-window.sh +0 -67
- package/scripts/tmux-save-closed-window.sh +0 -35
- package/scripts/tui/App.js +0 -151
- package/scripts/tui/Dashboard.js +0 -277
- package/scripts/tui/blessed/data/watcher.js +0 -180
- package/scripts/tui/blessed/index.js +0 -244
- package/scripts/tui/blessed/panels/output.js +0 -101
- package/scripts/tui/blessed/panels/sessions.js +0 -150
- package/scripts/tui/blessed/panels/trace.js +0 -97
- package/scripts/tui/blessed/ui/help.js +0 -77
- package/scripts/tui/blessed/ui/screen.js +0 -52
- package/scripts/tui/blessed/ui/statusbar.js +0 -47
- package/scripts/tui/blessed/ui/tabbar.js +0 -99
- package/scripts/tui/index.js +0 -70
- package/scripts/tui/lib/crashRecovery.js +0 -304
- package/scripts/tui/lib/eventStream.js +0 -309
- package/scripts/tui/lib/keyboard.js +0 -261
- package/scripts/tui/lib/loopControl.js +0 -371
- package/scripts/tui/panels/OutputPanel.js +0 -240
- package/scripts/tui/panels/SessionPanel.js +0 -170
- package/scripts/tui/panels/TracePanel.js +0 -298
- package/scripts/tui/simple-tui.js +0 -510
- package/scripts/validate-expertise.sh +0 -263
- package/scripts/validate-tokens.sh +0 -73
- package/scripts/validators/README.md +0 -143
- package/scripts/validators/component-validator.js +0 -239
- package/scripts/validators/json-schema-validator.js +0 -186
- package/scripts/validators/markdown-validator.js +0 -152
- package/scripts/validators/migration-validator.js +0 -129
- package/scripts/validators/security-validator.js +0 -380
- package/scripts/validators/story-format-validator.js +0 -197
- package/scripts/validators/test-result-validator.js +0 -114
- package/scripts/validators/workflow-validator.js +0 -247
- package/scripts/welcome-deferred.js +0 -437
- package/scripts/worktree-create.sh +0 -111
- package/src/core/agents/a11y-analyzer-aria.md +0 -155
- package/src/core/agents/a11y-analyzer-forms.md +0 -162
- package/src/core/agents/a11y-analyzer-keyboard.md +0 -175
- package/src/core/agents/a11y-analyzer-semantic.md +0 -153
- package/src/core/agents/a11y-analyzer-visual.md +0 -158
- package/src/core/agents/a11y-consensus.md +0 -248
- package/src/core/agents/accessibility.md +0 -515
- package/src/core/agents/adr-writer.md +0 -463
- package/src/core/agents/ads-audit-budget.md +0 -181
- package/src/core/agents/ads-audit-compliance.md +0 -169
- package/src/core/agents/ads-audit-creative.md +0 -164
- package/src/core/agents/ads-audit-google.md +0 -226
- package/src/core/agents/ads-audit-meta.md +0 -183
- package/src/core/agents/ads-audit-tracking.md +0 -197
- package/src/core/agents/ads-consensus.md +0 -396
- package/src/core/agents/ads-generate.md +0 -145
- package/src/core/agents/ads-performance-tracker.md +0 -197
- package/src/core/agents/analytics.md +0 -617
- package/src/core/agents/api-quality-analyzer-conventions.md +0 -148
- package/src/core/agents/api-quality-analyzer-docs.md +0 -176
- package/src/core/agents/api-quality-analyzer-errors.md +0 -183
- package/src/core/agents/api-quality-analyzer-pagination.md +0 -171
- package/src/core/agents/api-quality-analyzer-versioning.md +0 -143
- package/src/core/agents/api-quality-consensus.md +0 -214
- package/src/core/agents/api-validator.md +0 -183
- package/src/core/agents/api.md +0 -665
- package/src/core/agents/arch-analyzer-circular.md +0 -148
- package/src/core/agents/arch-analyzer-complexity.md +0 -171
- package/src/core/agents/arch-analyzer-coupling.md +0 -146
- package/src/core/agents/arch-analyzer-layering.md +0 -151
- package/src/core/agents/arch-analyzer-patterns.md +0 -162
- package/src/core/agents/arch-consensus.md +0 -227
- package/src/core/agents/brainstorm-analyzer-features.md +0 -169
- package/src/core/agents/brainstorm-analyzer-growth.md +0 -161
- package/src/core/agents/brainstorm-analyzer-integration.md +0 -172
- package/src/core/agents/brainstorm-analyzer-market.md +0 -147
- package/src/core/agents/brainstorm-analyzer-ux.md +0 -167
- package/src/core/agents/brainstorm-consensus.md +0 -237
- package/src/core/agents/browser-qa.md +0 -328
- package/src/core/agents/ci.md +0 -511
- package/src/core/agents/code-reviewer.md +0 -288
- package/src/core/agents/codebase-query.md +0 -266
- package/src/core/agents/completeness-analyzer-api.md +0 -190
- package/src/core/agents/completeness-analyzer-conditional.md +0 -201
- package/src/core/agents/completeness-analyzer-handlers.md +0 -159
- package/src/core/agents/completeness-analyzer-imports.md +0 -159
- package/src/core/agents/completeness-analyzer-routes.md +0 -182
- package/src/core/agents/completeness-analyzer-state.md +0 -188
- package/src/core/agents/completeness-analyzer-stubs.md +0 -198
- package/src/core/agents/completeness-consensus.md +0 -286
- package/src/core/agents/compliance.md +0 -509
- package/src/core/agents/council-advocate.md +0 -206
- package/src/core/agents/council-analyst.md +0 -252
- package/src/core/agents/council-optimist.md +0 -170
- package/src/core/agents/database.md +0 -601
- package/src/core/agents/datamigration.md +0 -699
- package/src/core/agents/design.md +0 -525
- package/src/core/agents/devops.md +0 -720
- package/src/core/agents/documentation.md +0 -504
- package/src/core/agents/epic-planner.md +0 -480
- package/src/core/agents/error-analyzer.md +0 -201
- package/src/core/agents/integrations.md +0 -603
- package/src/core/agents/legal-analyzer-a11y.md +0 -110
- package/src/core/agents/legal-analyzer-ai.md +0 -117
- package/src/core/agents/legal-analyzer-consumer.md +0 -108
- package/src/core/agents/legal-analyzer-content.md +0 -113
- package/src/core/agents/legal-analyzer-international.md +0 -115
- package/src/core/agents/legal-analyzer-licensing.md +0 -115
- package/src/core/agents/legal-analyzer-privacy.md +0 -108
- package/src/core/agents/legal-analyzer-security.md +0 -112
- package/src/core/agents/legal-analyzer-terms.md +0 -111
- package/src/core/agents/legal-consensus.md +0 -242
- package/src/core/agents/logic-analyzer-edge.md +0 -170
- package/src/core/agents/logic-analyzer-flow.md +0 -253
- package/src/core/agents/logic-analyzer-invariant.md +0 -206
- package/src/core/agents/logic-analyzer-race.md +0 -266
- package/src/core/agents/logic-analyzer-type.md +0 -217
- package/src/core/agents/logic-consensus.md +0 -253
- package/src/core/agents/mentor.md +0 -654
- package/src/core/agents/mobile.md +0 -501
- package/src/core/agents/monitoring.md +0 -537
- package/src/core/agents/multi-expert.md +0 -311
- package/src/core/agents/orchestrator.md +0 -749
- package/src/core/agents/perf-analyzer-assets.md +0 -174
- package/src/core/agents/perf-analyzer-bundle.md +0 -165
- package/src/core/agents/perf-analyzer-caching.md +0 -160
- package/src/core/agents/perf-analyzer-compute.md +0 -165
- package/src/core/agents/perf-analyzer-memory.md +0 -182
- package/src/core/agents/perf-analyzer-network.md +0 -157
- package/src/core/agents/perf-analyzer-queries.md +0 -155
- package/src/core/agents/perf-analyzer-rendering.md +0 -156
- package/src/core/agents/perf-consensus.md +0 -280
- package/src/core/agents/performance.md +0 -492
- package/src/core/agents/product.md +0 -535
- package/src/core/agents/qa.md +0 -765
- package/src/core/agents/readme-updater.md +0 -579
- package/src/core/agents/refactor.md +0 -558
- package/src/core/agents/research.md +0 -453
- package/src/core/agents/rlm-subcore.md +0 -207
- package/src/core/agents/schema-validator.md +0 -454
- package/src/core/agents/security-analyzer-api.md +0 -199
- package/src/core/agents/security-analyzer-auth.md +0 -160
- package/src/core/agents/security-analyzer-authz.md +0 -168
- package/src/core/agents/security-analyzer-deps.md +0 -147
- package/src/core/agents/security-analyzer-infra.md +0 -176
- package/src/core/agents/security-analyzer-injection.md +0 -148
- package/src/core/agents/security-analyzer-input.md +0 -191
- package/src/core/agents/security-analyzer-secrets.md +0 -175
- package/src/core/agents/security-consensus.md +0 -276
- package/src/core/agents/security.md +0 -486
- package/src/core/agents/seo-analyzer-content.md +0 -167
- package/src/core/agents/seo-analyzer-images.md +0 -187
- package/src/core/agents/seo-analyzer-performance.md +0 -206
- package/src/core/agents/seo-analyzer-schema.md +0 -176
- package/src/core/agents/seo-analyzer-sitemap.md +0 -172
- package/src/core/agents/seo-analyzer-technical.md +0 -144
- package/src/core/agents/seo-consensus.md +0 -289
- package/src/core/agents/team-coordinator.md +0 -333
- package/src/core/agents/team-lead.md +0 -171
- package/src/core/agents/test-analyzer-assertions.md +0 -181
- package/src/core/agents/test-analyzer-coverage.md +0 -183
- package/src/core/agents/test-analyzer-fragility.md +0 -185
- package/src/core/agents/test-analyzer-integration.md +0 -155
- package/src/core/agents/test-analyzer-maintenance.md +0 -173
- package/src/core/agents/test-analyzer-mocking.md +0 -178
- package/src/core/agents/test-analyzer-patterns.md +0 -189
- package/src/core/agents/test-analyzer-structure.md +0 -177
- package/src/core/agents/test-consensus.md +0 -294
- package/src/core/agents/testing.md +0 -527
- package/src/core/agents/ui-validator.md +0 -331
- package/src/core/agents/ui.md +0 -1227
- package/src/core/commands/adr/list.md +0 -191
- package/src/core/commands/adr/update.md +0 -258
- package/src/core/commands/adr/view.md +0 -274
- package/src/core/commands/adr.md +0 -394
- package/src/core/commands/ads/audit.md +0 -453
- package/src/core/commands/ads/budget.md +0 -97
- package/src/core/commands/ads/competitor.md +0 -112
- package/src/core/commands/ads/creative.md +0 -85
- package/src/core/commands/ads/generate.md +0 -238
- package/src/core/commands/ads/google.md +0 -112
- package/src/core/commands/ads/health.md +0 -327
- package/src/core/commands/ads/landing.md +0 -119
- package/src/core/commands/ads/linkedin.md +0 -112
- package/src/core/commands/ads/meta.md +0 -91
- package/src/core/commands/ads/microsoft.md +0 -115
- package/src/core/commands/ads/plan.md +0 -321
- package/src/core/commands/ads/test-plan.md +0 -317
- package/src/core/commands/ads/tiktok.md +0 -129
- package/src/core/commands/ads/track.md +0 -288
- package/src/core/commands/ads/youtube.md +0 -124
- package/src/core/commands/ads.md +0 -140
- package/src/core/commands/agent.md +0 -256
- package/src/core/commands/api.md +0 -267
- package/src/core/commands/assign.md +0 -369
- package/src/core/commands/audit.md +0 -531
- package/src/core/commands/auto.md +0 -556
- package/src/core/commands/automate.md +0 -415
- package/src/core/commands/babysit.md +0 -643
- package/src/core/commands/baseline.md +0 -743
- package/src/core/commands/batch.md +0 -551
- package/src/core/commands/blockers.md +0 -602
- package/src/core/commands/board.md +0 -509
- package/src/core/commands/browser-qa.md +0 -240
- package/src/core/commands/changelog.md +0 -582
- package/src/core/commands/choose.md +0 -430
- package/src/core/commands/ci.md +0 -330
- package/src/core/commands/code/accessibility.md +0 -363
- package/src/core/commands/code/api.md +0 -313
- package/src/core/commands/code/architecture.md +0 -313
- package/src/core/commands/code/completeness.md +0 -519
- package/src/core/commands/code/legal.md +0 -509
- package/src/core/commands/code/logic.md +0 -432
- package/src/core/commands/code/performance.md +0 -506
- package/src/core/commands/code/security.md +0 -509
- package/src/core/commands/code/test.md +0 -505
- package/src/core/commands/compress.md +0 -408
- package/src/core/commands/configure.md +0 -1159
- package/src/core/commands/context/export.md +0 -296
- package/src/core/commands/context/full.md +0 -353
- package/src/core/commands/context/note.md +0 -380
- package/src/core/commands/council.md +0 -592
- package/src/core/commands/debt.md +0 -491
- package/src/core/commands/deploy.md +0 -864
- package/src/core/commands/deps.md +0 -728
- package/src/core/commands/diagnose.md +0 -404
- package/src/core/commands/docs.md +0 -469
- package/src/core/commands/epic/edit.md +0 -213
- package/src/core/commands/epic/list.md +0 -190
- package/src/core/commands/epic/view.md +0 -267
- package/src/core/commands/epic.md +0 -477
- package/src/core/commands/export.md +0 -238
- package/src/core/commands/feedback.md +0 -603
- package/src/core/commands/handoff.md +0 -386
- package/src/core/commands/help.md +0 -194
- package/src/core/commands/ideate/brief.md +0 -363
- package/src/core/commands/ideate/discover.md +0 -399
- package/src/core/commands/ideate/features.md +0 -497
- package/src/core/commands/ideate/history.md +0 -403
- package/src/core/commands/ideate/new.md +0 -900
- package/src/core/commands/impact.md +0 -407
- package/src/core/commands/install.md +0 -529
- package/src/core/commands/learn/explain.md +0 -118
- package/src/core/commands/learn/glossary.md +0 -135
- package/src/core/commands/learn/patterns.md +0 -138
- package/src/core/commands/learn/tour.md +0 -126
- package/src/core/commands/maintain.md +0 -558
- package/src/core/commands/metrics.md +0 -844
- package/src/core/commands/migrate/codemods.md +0 -151
- package/src/core/commands/migrate/plan.md +0 -131
- package/src/core/commands/migrate/scan.md +0 -114
- package/src/core/commands/migrate/validate.md +0 -119
- package/src/core/commands/multi-expert.md +0 -447
- package/src/core/commands/packages.md +0 -535
- package/src/core/commands/pr.md +0 -337
- package/src/core/commands/readme-sync.md +0 -329
- package/src/core/commands/research/analyze.md +0 -798
- package/src/core/commands/research/ask.md +0 -864
- package/src/core/commands/research/import.md +0 -1025
- package/src/core/commands/research/list.md +0 -273
- package/src/core/commands/research/synthesize.md +0 -928
- package/src/core/commands/research/view.md +0 -323
- package/src/core/commands/retro.md +0 -795
- package/src/core/commands/review.md +0 -694
- package/src/core/commands/rlm.md +0 -446
- package/src/core/commands/roadmap/analyze.md +0 -400
- package/src/core/commands/rpi.md +0 -633
- package/src/core/commands/seo/audit.md +0 -444
- package/src/core/commands/seo/competitor.md +0 -174
- package/src/core/commands/seo/content.md +0 -107
- package/src/core/commands/seo/geo.md +0 -229
- package/src/core/commands/seo/hreflang.md +0 -140
- package/src/core/commands/seo/images.md +0 -96
- package/src/core/commands/seo/page.md +0 -198
- package/src/core/commands/seo/plan.md +0 -163
- package/src/core/commands/seo/programmatic.md +0 -131
- package/src/core/commands/seo/references/cwv-thresholds.md +0 -64
- package/src/core/commands/seo/references/eeat-framework.md +0 -110
- package/src/core/commands/seo/references/quality-gates.md +0 -91
- package/src/core/commands/seo/references/schema-types.md +0 -102
- package/src/core/commands/seo/schema.md +0 -183
- package/src/core/commands/seo/sitemap.md +0 -97
- package/src/core/commands/seo/technical.md +0 -100
- package/src/core/commands/seo.md +0 -107
- package/src/core/commands/session/cleanup.md +0 -452
- package/src/core/commands/session/end.md +0 -865
- package/src/core/commands/session/history.md +0 -293
- package/src/core/commands/session/init.md +0 -210
- package/src/core/commands/session/new.md +0 -827
- package/src/core/commands/session/resume.md +0 -291
- package/src/core/commands/session/spawn.md +0 -205
- package/src/core/commands/session/status.md +0 -274
- package/src/core/commands/skill/list.md +0 -139
- package/src/core/commands/skill/recommend.md +0 -216
- package/src/core/commands/sprint.md +0 -714
- package/src/core/commands/status/undo.md +0 -191
- package/src/core/commands/status.md +0 -423
- package/src/core/commands/story/edit.md +0 -204
- package/src/core/commands/story/list.md +0 -199
- package/src/core/commands/story/view.md +0 -312
- package/src/core/commands/story-validate.md +0 -491
- package/src/core/commands/story.md +0 -465
- package/src/core/commands/tdd-next.md +0 -238
- package/src/core/commands/tdd.md +0 -211
- package/src/core/commands/team/guide.md +0 -688
- package/src/core/commands/team/list.md +0 -59
- package/src/core/commands/team/start.md +0 -130
- package/src/core/commands/team/status.md +0 -66
- package/src/core/commands/team/stop.md +0 -78
- package/src/core/commands/template.md +0 -644
- package/src/core/commands/tests.md +0 -731
- package/src/core/commands/update.md +0 -591
- package/src/core/commands/validate-expertise.md +0 -305
- package/src/core/commands/velocity.md +0 -630
- package/src/core/commands/verify.md +0 -534
- package/src/core/commands/whats-new.md +0 -201
- package/src/core/commands/workflow.md +0 -449
- package/src/core/council/sessions/.gitkeep +0 -0
- package/src/core/council/shared_reasoning.template.md +0 -106
- package/src/core/experts/README.md +0 -236
- package/src/core/experts/_core-expertise.yaml +0 -105
- package/src/core/experts/accessibility/expertise.yaml +0 -115
- package/src/core/experts/accessibility/question.md +0 -41
- package/src/core/experts/accessibility/self-improve.md +0 -45
- package/src/core/experts/accessibility/workflow.md +0 -59
- package/src/core/experts/adr-writer/expertise.yaml +0 -138
- package/src/core/experts/adr-writer/question.md +0 -56
- package/src/core/experts/adr-writer/self-improve.md +0 -106
- package/src/core/experts/adr-writer/workflow.md +0 -184
- package/src/core/experts/analytics/expertise.yaml +0 -119
- package/src/core/experts/analytics/question.md +0 -74
- package/src/core/experts/analytics/self-improve.md +0 -163
- package/src/core/experts/analytics/workflow.md +0 -272
- package/src/core/experts/api/expertise.yaml +0 -124
- package/src/core/experts/api/question.md +0 -74
- package/src/core/experts/api/self-improve.md +0 -122
- package/src/core/experts/api/workflow.md +0 -248
- package/src/core/experts/ci/expertise.yaml +0 -106
- package/src/core/experts/ci/question.md +0 -69
- package/src/core/experts/ci/self-improve.md +0 -100
- package/src/core/experts/ci/workflow.md +0 -145
- package/src/core/experts/codebase-query/expertise.yaml +0 -121
- package/src/core/experts/codebase-query/question.md +0 -73
- package/src/core/experts/codebase-query/self-improve.md +0 -105
- package/src/core/experts/compliance/expertise.yaml +0 -101
- package/src/core/experts/compliance/question.md +0 -56
- package/src/core/experts/compliance/self-improve.md +0 -106
- package/src/core/experts/compliance/workflow.md +0 -184
- package/src/core/experts/database/expertise.yaml +0 -109
- package/src/core/experts/database/question.md +0 -74
- package/src/core/experts/database/self-improve.md +0 -121
- package/src/core/experts/database/workflow.md +0 -234
- package/src/core/experts/datamigration/expertise.yaml +0 -141
- package/src/core/experts/datamigration/question.md +0 -56
- package/src/core/experts/datamigration/self-improve.md +0 -106
- package/src/core/experts/datamigration/workflow.md +0 -184
- package/src/core/experts/design/expertise.yaml +0 -116
- package/src/core/experts/design/question.md +0 -56
- package/src/core/experts/design/self-improve.md +0 -106
- package/src/core/experts/design/workflow.md +0 -184
- package/src/core/experts/devops/expertise.yaml +0 -116
- package/src/core/experts/devops/question.md +0 -68
- package/src/core/experts/devops/self-improve.md +0 -102
- package/src/core/experts/devops/workflow.md +0 -142
- package/src/core/experts/documentation/expertise.yaml +0 -126
- package/src/core/experts/documentation/question.md +0 -41
- package/src/core/experts/documentation/self-improve.md +0 -45
- package/src/core/experts/documentation/workflow.md +0 -55
- package/src/core/experts/epic-planner/expertise.yaml +0 -144
- package/src/core/experts/epic-planner/question.md +0 -56
- package/src/core/experts/epic-planner/self-improve.md +0 -106
- package/src/core/experts/epic-planner/workflow.md +0 -184
- package/src/core/experts/integrations/expertise.yaml +0 -113
- package/src/core/experts/integrations/question.md +0 -74
- package/src/core/experts/integrations/self-improve.md +0 -151
- package/src/core/experts/integrations/workflow.md +0 -246
- package/src/core/experts/mentor/expertise.yaml +0 -125
- package/src/core/experts/mentor/question.md +0 -56
- package/src/core/experts/mentor/self-improve.md +0 -106
- package/src/core/experts/mentor/workflow.md +0 -184
- package/src/core/experts/mobile/expertise.yaml +0 -136
- package/src/core/experts/mobile/question.md +0 -72
- package/src/core/experts/mobile/self-improve.md +0 -140
- package/src/core/experts/mobile/workflow.md +0 -240
- package/src/core/experts/monitoring/expertise.yaml +0 -132
- package/src/core/experts/monitoring/question.md +0 -76
- package/src/core/experts/monitoring/self-improve.md +0 -150
- package/src/core/experts/monitoring/workflow.md +0 -264
- package/src/core/experts/performance/expertise.yaml +0 -68
- package/src/core/experts/performance/question.md +0 -41
- package/src/core/experts/performance/self-improve.md +0 -45
- package/src/core/experts/performance/workflow.md +0 -61
- package/src/core/experts/product/expertise.yaml +0 -143
- package/src/core/experts/product/question.md +0 -56
- package/src/core/experts/product/self-improve.md +0 -106
- package/src/core/experts/product/workflow.md +0 -184
- package/src/core/experts/qa/expertise.yaml +0 -110
- package/src/core/experts/qa/question.md +0 -56
- package/src/core/experts/qa/self-improve.md +0 -106
- package/src/core/experts/qa/workflow.md +0 -184
- package/src/core/experts/readme-updater/expertise.yaml +0 -141
- package/src/core/experts/readme-updater/question.md +0 -56
- package/src/core/experts/readme-updater/self-improve.md +0 -106
- package/src/core/experts/readme-updater/workflow.md +0 -184
- package/src/core/experts/refactor/expertise.yaml +0 -135
- package/src/core/experts/refactor/question.md +0 -41
- package/src/core/experts/refactor/self-improve.md +0 -45
- package/src/core/experts/refactor/workflow.md +0 -57
- package/src/core/experts/research/expertise.yaml +0 -143
- package/src/core/experts/research/question.md +0 -56
- package/src/core/experts/research/self-improve.md +0 -106
- package/src/core/experts/research/workflow.md +0 -184
- package/src/core/experts/security/expertise.yaml +0 -117
- package/src/core/experts/security/question.md +0 -77
- package/src/core/experts/security/self-improve.md +0 -102
- package/src/core/experts/security/workflow.md +0 -152
- package/src/core/experts/templates/expertise-template.yaml +0 -67
- package/src/core/experts/templates/question-template.md +0 -56
- package/src/core/experts/templates/self-improve-template.md +0 -106
- package/src/core/experts/templates/workflow-template.md +0 -184
- package/src/core/experts/testing/expertise.yaml +0 -112
- package/src/core/experts/testing/question.md +0 -68
- package/src/core/experts/testing/self-improve.md +0 -102
- package/src/core/experts/testing/workflow.md +0 -143
- package/src/core/experts/ui/expertise.yaml +0 -133
- package/src/core/experts/ui/question.md +0 -74
- package/src/core/experts/ui/self-improve.md +0 -122
- package/src/core/experts/ui/workflow.md +0 -262
- package/src/core/knowledge/ads/ad-audit-checklist-scoring.md +0 -424
- package/src/core/knowledge/ads/ad-optimization-logic.md +0 -590
- package/src/core/knowledge/ads/ad-technical-specifications.md +0 -385
- package/src/core/knowledge/ads/definitive-advertising-reference-2026.md +0 -506
- package/src/core/knowledge/ads/paid-advertising-research-2026.md +0 -445
- package/src/core/profiles/COMPARISON.md +0 -170
- package/src/core/profiles/README.md +0 -178
- package/src/core/profiles/claude-code.yaml +0 -111
- package/src/core/profiles/codex.yaml +0 -103
- package/src/core/profiles/cursor.yaml +0 -134
- package/src/core/profiles/examples.js +0 -250
- package/src/core/profiles/loader.js +0 -235
- package/src/core/profiles/windsurf.yaml +0 -159
- package/src/core/skills/_learnings/README.md +0 -91
- package/src/core/skills/_learnings/_template.yaml +0 -106
- package/src/core/skills/_learnings/code-review.yaml +0 -118
- package/src/core/skills/_learnings/commit.yaml +0 -69
- package/src/core/skills/_learnings/story-writer.yaml +0 -71
- package/src/core/teams/backend.json +0 -41
- package/src/core/teams/builder-validator.json +0 -51
- package/src/core/teams/code-review.json +0 -41
- package/src/core/teams/frontend.json +0 -41
- package/src/core/teams/fullstack.json +0 -41
- package/src/core/teams/logic-audit.json +0 -53
- package/src/core/teams/perf-audit.json +0 -71
- package/src/core/teams/qa.json +0 -41
- package/src/core/teams/security-audit.json +0 -71
- package/src/core/teams/solo.json +0 -35
- package/src/core/teams/test-audit.json +0 -71
- package/src/core/templates/CONTEXT.md.example +0 -49
- package/src/core/templates/README-template.md +0 -16
- package/src/core/templates/adr-template.md +0 -28
- package/src/core/templates/agent-coordination-pattern.md +0 -38
- package/src/core/templates/agent-profile-template.md +0 -51
- package/src/core/templates/agileflow-metadata.json +0 -150
- package/src/core/templates/browser-qa-spec.yaml +0 -94
- package/src/core/templates/ci-workflow.yml +0 -74
- package/src/core/templates/claude-settings.advanced.example.json +0 -75
- package/src/core/templates/claude-settings.example.json +0 -26
- package/src/core/templates/command-documentation.md +0 -187
- package/src/core/templates/command-prerequisites.yaml +0 -169
- package/src/core/templates/comms-note-template.md +0 -24
- package/src/core/templates/damage-control-patterns.yaml +0 -243
- package/src/core/templates/environment.json +0 -18
- package/src/core/templates/epic-template.md +0 -27
- package/src/core/templates/plan-template.md +0 -125
- package/src/core/templates/preserve-rules-common.md +0 -107
- package/src/core/templates/preserve-rules.json +0 -42
- package/src/core/templates/proactive-action-spec.md +0 -29
- package/src/core/templates/product-brief.md +0 -136
- package/src/core/templates/quality-gate-priorities.md +0 -34
- package/src/core/templates/research-template.md +0 -44
- package/src/core/templates/session-harness-protocol.md +0 -128
- package/src/core/templates/session-state.json +0 -56
- package/src/core/templates/story-lifecycle.md +0 -213
- package/src/core/templates/story-template.md +0 -92
- package/src/core/templates/tdd-test-template.js +0 -241
- package/src/core/templates/worktrees-guide.md +0 -231
- package/tools/agileflow-npx.js +0 -52
- package/tools/cli/agileflow-cli.js +0 -72
- package/tools/cli/commands/config.js +0 -285
- package/tools/cli/commands/doctor.js +0 -496
- package/tools/cli/commands/list.js +0 -385
- package/tools/cli/commands/session.js +0 -1176
- package/tools/cli/commands/setup.js +0 -255
- package/tools/cli/commands/status.js +0 -101
- package/tools/cli/commands/tui.js +0 -56
- package/tools/cli/commands/uninstall.js +0 -155
- package/tools/cli/commands/update.js +0 -299
- package/tools/cli/installers/core/installer.js +0 -892
- package/tools/cli/installers/ide/_base-ide.js +0 -518
- package/tools/cli/installers/ide/_interface.js +0 -238
- package/tools/cli/installers/ide/claude-code.js +0 -432
- package/tools/cli/installers/ide/codex.js +0 -426
- package/tools/cli/installers/ide/cursor.js +0 -217
- package/tools/cli/installers/ide/manager.js +0 -222
- package/tools/cli/installers/ide/windsurf.js +0 -282
- package/tools/cli/lib/command-context.js +0 -382
- package/tools/cli/lib/config-manager.js +0 -446
- package/tools/cli/lib/content-injector.js +0 -969
- package/tools/cli/lib/content-transformer.js +0 -496
- package/tools/cli/lib/docs-setup.js +0 -464
- package/tools/cli/lib/error-handler.js +0 -165
- package/tools/cli/lib/ide-error-factory.js +0 -421
- package/tools/cli/lib/ide-errors.js +0 -367
- package/tools/cli/lib/ide-generator.js +0 -357
- package/tools/cli/lib/ide-health-monitor.js +0 -364
- package/tools/cli/lib/ide-registry.js +0 -297
- package/tools/cli/lib/npm-utils.js +0 -103
- package/tools/cli/lib/self-update.js +0 -148
- package/tools/cli/lib/ui.js +0 -211
- package/tools/cli/lib/utils.js +0 -87
- package/tools/cli/lib/validation-middleware.js +0 -491
- package/tools/cli/lib/version-checker.js +0 -95
- package/tools/postinstall.js +0 -190
|
@@ -1,317 +0,0 @@
|
|
|
1
|
-
---
|
|
2
|
-
description: CPC-first test planning — structured test matrix with budget allocation, CPC thresholds, winner/kill rules, and graduation criteria
|
|
3
|
-
argument-hint: "[BUDGET=100] [DURATION=3d] [VARIANTS=from-generate]"
|
|
4
|
-
compact_context:
|
|
5
|
-
priority: medium
|
|
6
|
-
preserve_rules:
|
|
7
|
-
- "ACTIVE COMMAND: /agileflow:ads:test-plan - CPC-first test planning"
|
|
8
|
-
- "Generate structured test matrix with decision criteria"
|
|
9
|
-
- "CPC threshold methodology: $100/3-day test, winner/kill rules"
|
|
10
|
-
- "Output includes budget allocation, measurement criteria, graduation rules"
|
|
11
|
-
state_fields:
|
|
12
|
-
- test_budget
|
|
13
|
-
- duration
|
|
14
|
-
- variants
|
|
15
|
-
- platform
|
|
16
|
-
---
|
|
17
|
-
|
|
18
|
-
# /agileflow:ads:test-plan
|
|
19
|
-
|
|
20
|
-
Generate a structured A/B testing plan with budget allocation, CPC-first decision criteria, winner/kill rules, and graduation strategy. Based on the CPC-first testing methodology where cheap clicks validate messaging before optimizing for conversions.
|
|
21
|
-
|
|
22
|
-
---
|
|
23
|
-
|
|
24
|
-
## Quick Reference
|
|
25
|
-
|
|
26
|
-
```
|
|
27
|
-
/agileflow:ads:test-plan # Interactive (recommended)
|
|
28
|
-
/agileflow:ads:test-plan BUDGET=300 DURATION=5d # Custom budget/duration
|
|
29
|
-
/agileflow:ads:test-plan VARIANTS=from-generate # Use variants from /ads:generate
|
|
30
|
-
/agileflow:ads:test-plan BUDGET=100 PLATFORM=meta # Meta-specific test plan
|
|
31
|
-
```
|
|
32
|
-
|
|
33
|
-
---
|
|
34
|
-
|
|
35
|
-
## Arguments
|
|
36
|
-
|
|
37
|
-
| Argument | Values | Default | Description |
|
|
38
|
-
|----------|--------|---------|-------------|
|
|
39
|
-
| BUDGET | Dollar amount | $100 | Total test budget per round |
|
|
40
|
-
| DURATION | Days | 3d | Test duration before decision |
|
|
41
|
-
| VARIANTS | from-generate, manual, or count | from-generate | Source of ad variants to test |
|
|
42
|
-
| PLATFORM | meta, google, linkedin, tiktok | meta | Platform to test on |
|
|
43
|
-
|
|
44
|
-
---
|
|
45
|
-
|
|
46
|
-
## CPC-First Testing Methodology
|
|
47
|
-
|
|
48
|
-
### Why CPC First?
|
|
49
|
-
|
|
50
|
-
```
|
|
51
|
-
Traditional: Optimize for conversions → need 50+ conversions per variant → $$$
|
|
52
|
-
CPC-First: Optimize for clicks → need 100+ clicks per variant → $
|
|
53
|
-
|
|
54
|
-
CPC validates MESSAGE RESONANCE at 1/50th the cost.
|
|
55
|
-
Only graduate winners to conversion optimization.
|
|
56
|
-
```
|
|
57
|
-
|
|
58
|
-
### The 3-Stage Funnel
|
|
59
|
-
|
|
60
|
-
```
|
|
61
|
-
Stage 1: CPC Test ($100, 3 days)
|
|
62
|
-
→ Does the message resonate? (CTR + CPC)
|
|
63
|
-
→ Kill: CPC > 2x average
|
|
64
|
-
→ Graduate: CPC < average AND CTR > 1%
|
|
65
|
-
|
|
66
|
-
Stage 2: Landing Page Test ($300, 7 days)
|
|
67
|
-
→ Do clicks convert? (CVR + CPA)
|
|
68
|
-
→ Kill: CVR < 1% after 200+ clicks
|
|
69
|
-
→ Graduate: CPA < 2x target
|
|
70
|
-
|
|
71
|
-
Stage 3: Scale Test ($1000+, 14 days)
|
|
72
|
-
→ Does it scale profitably? (ROAS + volume)
|
|
73
|
-
→ Kill: ROAS < 1.5x at 2x budget
|
|
74
|
-
→ Graduate: ROAS > 2x → move to always-on
|
|
75
|
-
```
|
|
76
|
-
|
|
77
|
-
---
|
|
78
|
-
|
|
79
|
-
## Multi-Step Discovery Flow
|
|
80
|
-
|
|
81
|
-
### STEP 1: Test Context
|
|
82
|
-
|
|
83
|
-
```xml
|
|
84
|
-
<invoke name="AskUserQuestion">
|
|
85
|
-
<parameter name="questions">[
|
|
86
|
-
{
|
|
87
|
-
"question": "What stage of testing are you at?",
|
|
88
|
-
"header": "Test Stage",
|
|
89
|
-
"multiSelect": false,
|
|
90
|
-
"options": [
|
|
91
|
-
{"label": "Stage 1: Message testing (Recommended)", "description": "CPC-first — validate which angles/hooks resonate before spending on conversions"},
|
|
92
|
-
{"label": "Stage 2: Landing page testing", "description": "I have winning ad copy, now testing landing page variants"},
|
|
93
|
-
{"label": "Stage 3: Scale testing", "description": "I have winning ads + landing pages, testing budget scaling"},
|
|
94
|
-
{"label": "Full funnel from scratch", "description": "Generate a complete 3-stage test plan"}
|
|
95
|
-
]
|
|
96
|
-
},
|
|
97
|
-
{
|
|
98
|
-
"question": "How many ad variants do you want to test?",
|
|
99
|
-
"header": "Variants",
|
|
100
|
-
"multiSelect": false,
|
|
101
|
-
"options": [
|
|
102
|
-
{"label": "Use variants from /ads:generate (Recommended)", "description": "Pull variants from the most recent ads-copy generation"},
|
|
103
|
-
{"label": "5 variants (minimum viable test)", "description": "Test 5 angles with $20 each"},
|
|
104
|
-
{"label": "10 variants (standard test)", "description": "Test 10 variants with $10 each"},
|
|
105
|
-
{"label": "20 variants (comprehensive)", "description": "Test 20 variants — requires $200+ budget"}
|
|
106
|
-
]
|
|
107
|
-
}
|
|
108
|
-
]</parameter>
|
|
109
|
-
</invoke>
|
|
110
|
-
```
|
|
111
|
-
|
|
112
|
-
### STEP 2: Check for Existing Variants
|
|
113
|
-
|
|
114
|
-
If VARIANTS=from-generate, look for recent ad copy:
|
|
115
|
-
|
|
116
|
-
```
|
|
117
|
-
docs/08-project/ads-copy/ads-copy-{YYYYMMDD}.md
|
|
118
|
-
```
|
|
119
|
-
|
|
120
|
-
If found, extract angle names and variant counts. If not found, suggest running `/agileflow:ads:generate` first.
|
|
121
|
-
|
|
122
|
-
### STEP 3: Generate Test Plan
|
|
123
|
-
|
|
124
|
-
Based on stage, budget, and variants, generate the test matrix.
|
|
125
|
-
|
|
126
|
-
---
|
|
127
|
-
|
|
128
|
-
## Output Format
|
|
129
|
-
|
|
130
|
-
```markdown
|
|
131
|
-
# Ad Testing Plan
|
|
132
|
-
|
|
133
|
-
**Generated**: {YYYY-MM-DD}
|
|
134
|
-
**Platform**: {platform}
|
|
135
|
-
**Total Budget**: ${total across all stages}
|
|
136
|
-
**Methodology**: CPC-First → CVR → Scale
|
|
137
|
-
|
|
138
|
-
---
|
|
139
|
-
|
|
140
|
-
## Stage 1: Message Resonance Test (CPC-First)
|
|
141
|
-
|
|
142
|
-
**Budget**: ${budget}
|
|
143
|
-
**Duration**: {duration}
|
|
144
|
-
**Objective**: Traffic (optimize for link clicks)
|
|
145
|
-
**Bidding**: Lowest cost (no cap)
|
|
146
|
-
|
|
147
|
-
### Test Matrix
|
|
148
|
-
|
|
149
|
-
| Variant | Angle | Headline | Daily Budget | Min Clicks | Decision By |
|
|
150
|
-
|---------|-------|----------|-------------|------------|-------------|
|
|
151
|
-
| A | Pain Point | "{headline}" | ${daily} | 33 | {date} |
|
|
152
|
-
| B | Outcome | "{headline}" | ${daily} | 33 | {date} |
|
|
153
|
-
| C | Social Proof | "{headline}" | ${daily} | 33 | {date} |
|
|
154
|
-
| D | Urgency | "{headline}" | ${daily} | 33 | {date} |
|
|
155
|
-
| E | Contrarian | "{headline}" | ${daily} | 33 | {date} |
|
|
156
|
-
|
|
157
|
-
### Decision Criteria
|
|
158
|
-
|
|
159
|
-
| Metric | Kill | Hold | Graduate |
|
|
160
|
-
|--------|------|------|----------|
|
|
161
|
-
| **CPC** | > ${2x_avg} | ${avg} - ${2x_avg} | < ${avg} |
|
|
162
|
-
| **CTR** | < 0.5% | 0.5% - 1.0% | > 1.0% |
|
|
163
|
-
| **Impressions** | < 500 (insufficient data) | 500-1000 | > 1000 |
|
|
164
|
-
|
|
165
|
-
### Decision Rules
|
|
166
|
-
|
|
167
|
-
1. **Kill immediately** if CPC > 2x average after 50+ clicks
|
|
168
|
-
2. **Hold** if CPC is average but CTR is borderline — extend 2 more days
|
|
169
|
-
3. **Graduate** if CPC < average AND CTR > 1.0% — move to Stage 2
|
|
170
|
-
4. **Minimum data**: Do NOT make decisions with < 100 impressions per variant
|
|
171
|
-
5. **Time minimum**: Run at least 48 hours to capture day-of-week variance
|
|
172
|
-
|
|
173
|
-
### Expected Outcomes
|
|
174
|
-
|
|
175
|
-
At $100 budget with ~$1.50 CPC:
|
|
176
|
-
- ~67 total clicks across 5 variants
|
|
177
|
-
- ~13 clicks per variant (marginal — consider $200 for statistical confidence)
|
|
178
|
-
- Expected: 1-2 clear winners, 1-2 kills, 1-2 holds
|
|
179
|
-
|
|
180
|
-
### Budget Scaling (if budget allows)
|
|
181
|
-
|
|
182
|
-
| Budget | Variants | Clicks/Variant | Confidence |
|
|
183
|
-
|--------|----------|---------------|------------|
|
|
184
|
-
| $100 | 5 | ~13 | Low (directional only) |
|
|
185
|
-
| $200 | 5 | ~27 | Medium (clear signal) |
|
|
186
|
-
| $300 | 5 | ~40 | High (statistically significant) |
|
|
187
|
-
| $500 | 10 | ~33 | High (wider angle coverage) |
|
|
188
|
-
|
|
189
|
-
---
|
|
190
|
-
|
|
191
|
-
## Stage 2: Conversion Validation Test
|
|
192
|
-
|
|
193
|
-
**Budget**: ${stage2_budget}
|
|
194
|
-
**Duration**: 7 days
|
|
195
|
-
**Objective**: Conversions (optimize for leads/purchases)
|
|
196
|
-
**Bidding**: Target CPA (set at 1.5x current CPA)
|
|
197
|
-
|
|
198
|
-
### Graduates from Stage 1
|
|
199
|
-
{Only variants that passed Stage 1 criteria}
|
|
200
|
-
|
|
201
|
-
| Variant | Angle | Stage 1 CPC | Stage 1 CTR | Daily Budget |
|
|
202
|
-
|---------|-------|-------------|-------------|-------------|
|
|
203
|
-
| {winner} | {angle} | ${cpc} | {ctr}% | ${daily} |
|
|
204
|
-
|
|
205
|
-
### Decision Criteria
|
|
206
|
-
|
|
207
|
-
| Metric | Kill | Hold | Graduate |
|
|
208
|
-
|--------|------|------|----------|
|
|
209
|
-
| **CPA** | > 3x target | 1.5x - 3x target | < 1.5x target |
|
|
210
|
-
| **CVR** | < 1% after 200+ clicks | 1% - 3% | > 3% |
|
|
211
|
-
| **ROAS** (e-commerce) | < 1:1 | 1:1 - 2:1 | > 2:1 |
|
|
212
|
-
|
|
213
|
-
### The 3x Kill Rule
|
|
214
|
-
|
|
215
|
-
> **If any campaign's CPA exceeds 3x your target CPA, pause it immediately.**
|
|
216
|
-
> No exceptions. No "let it learn longer." Kill it, iterate the creative, relaunch.
|
|
217
|
-
|
|
218
|
-
---
|
|
219
|
-
|
|
220
|
-
## Stage 3: Scale Test
|
|
221
|
-
|
|
222
|
-
**Budget**: ${stage3_budget}
|
|
223
|
-
**Duration**: 14 days
|
|
224
|
-
**Objective**: Profitable scale
|
|
225
|
-
**Bidding**: Target CPA or Target ROAS
|
|
226
|
-
|
|
227
|
-
### Scaling Rules
|
|
228
|
-
|
|
229
|
-
1. **20% Rule**: Never increase budget more than 20% per day
|
|
230
|
-
2. **Learning Phase**: After budget changes, wait 3-5 days before judging
|
|
231
|
-
3. **Diminishing Returns**: Track CPA at each budget level:
|
|
232
|
-
|
|
233
|
-
| Budget Level | Expected CPA | Actual CPA | CPA Delta | Action |
|
|
234
|
-
|-------------|-------------|-----------|-----------|--------|
|
|
235
|
-
| Baseline ${x} | ${target} | — | — | — |
|
|
236
|
-
| +20% ${x*1.2} | ${target*1.1} | — | — | Continue if < 1.5x |
|
|
237
|
-
| +20% ${x*1.44} | ${target*1.2} | — | — | Pause if > 2x |
|
|
238
|
-
| +20% ${x*1.73} | ${target*1.3} | — | — | — |
|
|
239
|
-
|
|
240
|
-
4. **Exit criteria**: Stop scaling when CPA increase per 20% budget step exceeds 15%
|
|
241
|
-
|
|
242
|
-
---
|
|
243
|
-
|
|
244
|
-
## Test Calendar
|
|
245
|
-
|
|
246
|
-
| Week | Stage | Action | Budget | Key Metric |
|
|
247
|
-
|------|-------|--------|--------|-----------|
|
|
248
|
-
| 1 | Setup | Create campaigns, install tracking | $0 | Pixel fires ✓ |
|
|
249
|
-
| 1-2 | Stage 1 | CPC message test | ${s1} | CPC + CTR |
|
|
250
|
-
| 2 | Decision | Kill/Hold/Graduate | — | — |
|
|
251
|
-
| 2-3 | Stage 2 | Conversion test (winners) | ${s2} | CPA + CVR |
|
|
252
|
-
| 3 | Decision | Kill/Graduate | — | — |
|
|
253
|
-
| 4-5 | Stage 3 | Scale test | ${s3} | ROAS at scale |
|
|
254
|
-
| 6 | Evergreen | Move winners to always-on | ${ongoing} | Monitor weekly |
|
|
255
|
-
|
|
256
|
-
---
|
|
257
|
-
|
|
258
|
-
## Tracking Requirements
|
|
259
|
-
|
|
260
|
-
Before starting ANY test:
|
|
261
|
-
|
|
262
|
-
- [ ] Conversion pixel/tag installed and firing
|
|
263
|
-
- [ ] Conversion events defined (lead, purchase, sign-up)
|
|
264
|
-
- [ ] UTM parameters on all ad URLs: `utm_source={platform}&utm_medium=paid&utm_campaign={test_name}&utm_content={variant}`
|
|
265
|
-
- [ ] Google Analytics or equivalent receiving data
|
|
266
|
-
- [ ] Baseline metrics recorded (current CPC, CTR, CPA if available)
|
|
267
|
-
|
|
268
|
-
---
|
|
269
|
-
|
|
270
|
-
## Post-Test Analysis Template
|
|
271
|
-
|
|
272
|
-
After each stage, record:
|
|
273
|
-
|
|
274
|
-
| Variant | Impressions | Clicks | CTR | CPC | Conversions | CVR | CPA | Decision |
|
|
275
|
-
|---------|------------|--------|-----|-----|------------|-----|-----|----------|
|
|
276
|
-
| A | — | — | — | — | — | — | — | Kill/Hold/Graduate |
|
|
277
|
-
```
|
|
278
|
-
|
|
279
|
-
Save test plan to `docs/08-project/ads-test-plans/test-plan-{YYYYMMDD}.md`.
|
|
280
|
-
|
|
281
|
-
---
|
|
282
|
-
|
|
283
|
-
## Present Results
|
|
284
|
-
|
|
285
|
-
```xml
|
|
286
|
-
<invoke name="AskUserQuestion">
|
|
287
|
-
<parameter name="questions">[{
|
|
288
|
-
"question": "Test plan generated: {N} variants across {stages} stages, ${total_budget} total budget, {duration} timeline. Ready to launch?",
|
|
289
|
-
"header": "Next steps",
|
|
290
|
-
"multiSelect": false,
|
|
291
|
-
"options": [
|
|
292
|
-
{"label": "Generate ad variants to test (Recommended)", "description": "Run /agileflow:ads:generate to create the ad copy for this test plan"},
|
|
293
|
-
{"label": "Adjust budget or duration", "description": "Modify the test parameters before finalizing"},
|
|
294
|
-
{"label": "Review tracking setup", "description": "Verify conversion tracking is properly configured before testing"},
|
|
295
|
-
{"label": "Export for platform", "description": "Format the test plan as platform-specific campaign structure"}
|
|
296
|
-
]
|
|
297
|
-
}]</parameter>
|
|
298
|
-
</invoke>
|
|
299
|
-
```
|
|
300
|
-
|
|
301
|
-
---
|
|
302
|
-
|
|
303
|
-
<!-- COMPACT_SUMMARY_START -->
|
|
304
|
-
## Compact Summary
|
|
305
|
-
|
|
306
|
-
**Command**: `/agileflow:ads:test-plan` - CPC-first A/B test planning
|
|
307
|
-
|
|
308
|
-
**Methodology**: Stage 1 (CPC message test, $100/3d) → Stage 2 (CVR validation, $300/7d) → Stage 3 (Scale test, $1000+/14d)
|
|
309
|
-
|
|
310
|
-
**Key Rules**: 3x Kill Rule, 20% scaling rule, 48h minimum data, 100+ impressions before decisions
|
|
311
|
-
|
|
312
|
-
**Output**: Test matrix with decision criteria, scaling rules, and timeline
|
|
313
|
-
|
|
314
|
-
**Usage**: `/agileflow:ads:test-plan [BUDGET=100] [DURATION=3d] [VARIANTS=from-generate]`
|
|
315
|
-
|
|
316
|
-
**File**: `docs/08-project/ads-test-plans/test-plan-{YYYYMMDD}.md`
|
|
317
|
-
<!-- COMPACT_SUMMARY_END -->
|
|
@@ -1,129 +0,0 @@
|
|
|
1
|
-
---
|
|
2
|
-
description: TikTok Ads audit with 8 checks for learning phase management, budget minimums, creative safe zones, and platform-specific optimization
|
|
3
|
-
argument-hint: "<account-data>"
|
|
4
|
-
compact_context:
|
|
5
|
-
priority: medium
|
|
6
|
-
preserve_rules:
|
|
7
|
-
- "ACTIVE COMMAND: /agileflow:ads:tiktok - TikTok Ads audit"
|
|
8
|
-
- "Inline command - 8 checks, no separate agent needed"
|
|
9
|
-
- "Min budget: $50/day campaign, $20/day ad group"
|
|
10
|
-
- "Learning phase: 50 conversions in 7 days"
|
|
11
|
-
state_fields:
|
|
12
|
-
- tiktok_score
|
|
13
|
-
---
|
|
14
|
-
|
|
15
|
-
# /agileflow:ads:tiktok
|
|
16
|
-
|
|
17
|
-
Run an inline audit on a TikTok Ads account with 8 focused checks. TikTok requires creative-first strategy and strict learning phase management.
|
|
18
|
-
|
|
19
|
-
---
|
|
20
|
-
|
|
21
|
-
## Quick Reference
|
|
22
|
-
|
|
23
|
-
```
|
|
24
|
-
/agileflow:ads:tiktok <account-data> # TikTok Ads audit
|
|
25
|
-
```
|
|
26
|
-
|
|
27
|
-
---
|
|
28
|
-
|
|
29
|
-
## The 8 Checks
|
|
30
|
-
|
|
31
|
-
| # | Check | Severity | Pass Criteria |
|
|
32
|
-
|---|-------|----------|---------------|
|
|
33
|
-
| TT-1 | TikTok Pixel installed | CRITICAL | Pixel on all pages, Events API preferred |
|
|
34
|
-
| TT-2 | Learning phase management | CRITICAL | 50 conversions in 7 days per ad group |
|
|
35
|
-
| TT-3 | Budget meets minimum | CRITICAL | $50/day campaign, $20/day ad group |
|
|
36
|
-
| TT-4 | Creative safe zones | HIGH | Key content within center 720x900px |
|
|
37
|
-
| TT-5 | Video-first creatives | HIGH | All ads are video (no static images) |
|
|
38
|
-
| TT-6 | UGC/authentic style | HIGH | Native-feeling content (not polished ads) |
|
|
39
|
-
| TT-7 | Sound-on design | MEDIUM | Audio is integral, not optional |
|
|
40
|
-
| TT-8 | Creative refresh < 14 days | HIGH | New creatives every 1-2 weeks |
|
|
41
|
-
|
|
42
|
-
---
|
|
43
|
-
|
|
44
|
-
## Process
|
|
45
|
-
|
|
46
|
-
### STEP 1: Apply All 8 Checks
|
|
47
|
-
|
|
48
|
-
Review the account data against each check. For TikTok specifically:
|
|
49
|
-
|
|
50
|
-
**Learning phase is critical**:
|
|
51
|
-
- TikTok needs 50 conversions in 7 days per ad group to exit learning
|
|
52
|
-
- At $20/day minimum: $140/week = 50 conversions needed
|
|
53
|
-
- That requires CPA < $2.80 - often unrealistic
|
|
54
|
-
- **Solution**: Optimize for upper-funnel events (View Content, Add to Cart) until volume builds
|
|
55
|
-
|
|
56
|
-
**Creative safe zones**:
|
|
57
|
-
```
|
|
58
|
-
+---------------------------+
|
|
59
|
-
| Username (130px) |
|
|
60
|
-
| |
|
|
61
|
-
| +----------------+ |
|
|
62
|
-
| | | |
|
|
63
|
-
| | SAFE ZONE | |
|
|
64
|
-
| | 720 x 900px | |
|
|
65
|
-
| | | |
|
|
66
|
-
| +----------------+ |
|
|
67
|
-
| |btns |
|
|
68
|
-
| CTA + Nav (170px) | |
|
|
69
|
-
+---------------------------+
|
|
70
|
-
```
|
|
71
|
-
|
|
72
|
-
**Creative best practices**:
|
|
73
|
-
- First 3 seconds: Hook with pattern interrupt
|
|
74
|
-
- 15-30 second sweet spot for most objectives
|
|
75
|
-
- Vertical 9:16 only (no landscape)
|
|
76
|
-
- Captions/text overlay for sound-off viewing
|
|
77
|
-
- Trend-aware content outperforms polished ads
|
|
78
|
-
|
|
79
|
-
### STEP 2: Score
|
|
80
|
-
|
|
81
|
-
```
|
|
82
|
-
TikTok Score = 100 - sum(severity_deductions)
|
|
83
|
-
```
|
|
84
|
-
|
|
85
|
-
Deductions: CRITICAL (-15), HIGH (-8), MEDIUM (-4), LOW (-2)
|
|
86
|
-
|
|
87
|
-
### STEP 3: Output
|
|
88
|
-
|
|
89
|
-
```markdown
|
|
90
|
-
## TikTok Ads Audit
|
|
91
|
-
|
|
92
|
-
**TikTok Score**: {X}/100
|
|
93
|
-
|
|
94
|
-
| Check | Status | Notes |
|
|
95
|
-
|-------|--------|-------|
|
|
96
|
-
| TT-1 Pixel/Events API | PASS/FAIL | {details} |
|
|
97
|
-
| TT-2 Learning phase | PASS/FAIL | {conversion volume} |
|
|
98
|
-
| TT-3 Budget minimum | PASS/FAIL | ${daily}/day |
|
|
99
|
-
| TT-4 Safe zones | PASS/FAIL | {creative analysis} |
|
|
100
|
-
| TT-5 Video-first | PASS/FAIL | {format types} |
|
|
101
|
-
| TT-6 UGC style | PASS/FAIL | {creative style} |
|
|
102
|
-
| TT-7 Sound-on | PASS/FAIL | {audio strategy} |
|
|
103
|
-
| TT-8 Creative refresh | PASS/FAIL | {last refresh date} |
|
|
104
|
-
|
|
105
|
-
### Key Recommendations
|
|
106
|
-
1. {Top priority fix}
|
|
107
|
-
2. {Second priority}
|
|
108
|
-
3. {Third priority}
|
|
109
|
-
|
|
110
|
-
### TikTok-Specific Tips
|
|
111
|
-
- "Don't make ads, make TikToks" - native > polished
|
|
112
|
-
- Spark Ads (boosting organic) often outperform traditional ads
|
|
113
|
-
- Creative fatigue hits faster on TikTok (7-14 days vs 30 on Meta)
|
|
114
|
-
- Use Creative Center for trending sounds and formats
|
|
115
|
-
```
|
|
116
|
-
|
|
117
|
-
---
|
|
118
|
-
|
|
119
|
-
<!-- COMPACT_SUMMARY_START -->
|
|
120
|
-
## Compact Summary
|
|
121
|
-
|
|
122
|
-
**Command**: `/agileflow:ads:tiktok` - TikTok Ads audit
|
|
123
|
-
|
|
124
|
-
**Checks**: 8 (inline, no separate agent)
|
|
125
|
-
|
|
126
|
-
**Key**: $50/day min, 50 conv/7 days learning, video-only, UGC style
|
|
127
|
-
|
|
128
|
-
**Quick Usage**: `/agileflow:ads:tiktok <account-data>`
|
|
129
|
-
<!-- COMPACT_SUMMARY_END -->
|