@atlashub/smartstack-cli 3.39.0 → 3.40.0
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/.documentation/apex.html +644 -644
- package/.documentation/css/styles.css +2320 -2320
- package/.documentation/init.html +1377 -1377
- package/.documentation/js/app.js +780 -780
- package/.documentation/prd-json-v2.0.0.md +396 -396
- package/.documentation/testing-ba-e2e.md +462 -462
- package/config/default-config.json +95 -95
- package/config/mcp-defaults.json +62 -62
- package/config/settings.json +53 -53
- package/config/settings.local.example.json +16 -16
- package/dist/index.js.map +1 -1
- package/dist/mcp-entry.mjs +6 -4
- package/dist/mcp-entry.mjs.map +1 -1
- package/package.json +115 -115
- package/scripts/extract-api-endpoints.ts +325 -325
- package/scripts/extract-business-rules.ts +440 -440
- package/scripts/generate-doc-with-mock-ui.ts +804 -804
- package/scripts/health-check.sh +168 -168
- package/scripts/postinstall.js +18 -18
- package/templates/agents/action.md +37 -37
- package/templates/agents/ba-reader.md +378 -378
- package/templates/agents/ba-writer.md +861 -861
- package/templates/agents/code-reviewer.md +163 -163
- package/templates/agents/db-reader.md +149 -149
- package/templates/agents/docs-context-reader.md +143 -143
- package/templates/agents/docs-sync-checker.md +122 -122
- package/templates/agents/efcore/conflicts.md +84 -84
- package/templates/agents/efcore/db-deploy.md +74 -74
- package/templates/agents/efcore/db-reset.md +85 -85
- package/templates/agents/efcore/db-seed.md +61 -61
- package/templates/agents/efcore/db-status.md +86 -86
- package/templates/agents/efcore/migration.md +186 -186
- package/templates/agents/efcore/rebase-snapshot.md +108 -108
- package/templates/agents/efcore/scan.md +92 -92
- package/templates/agents/efcore/squash.md +161 -161
- package/templates/agents/explore-codebase.md +66 -66
- package/templates/agents/explore-docs.md +98 -98
- package/templates/agents/fix-grammar.md +50 -50
- package/templates/agents/gitflow/abort.md +45 -45
- package/templates/agents/gitflow/cleanup.md +96 -96
- package/templates/agents/gitflow/commit.md +236 -236
- package/templates/agents/gitflow/exec.md +48 -48
- package/templates/agents/gitflow/finish.md +146 -146
- package/templates/agents/gitflow/init-clone.md +199 -199
- package/templates/agents/gitflow/init-detect.md +137 -137
- package/templates/agents/gitflow/init-validate.md +225 -225
- package/templates/agents/gitflow/init.md +340 -340
- package/templates/agents/gitflow/merge.md +145 -145
- package/templates/agents/gitflow/plan.md +42 -42
- package/templates/agents/gitflow/pr.md +191 -191
- package/templates/agents/gitflow/review.md +49 -49
- package/templates/agents/gitflow/start.md +147 -147
- package/templates/agents/gitflow/status.md +95 -95
- package/templates/agents/mcp-healthcheck.md +163 -163
- package/templates/agents/snipper.md +37 -37
- package/templates/agents/websearch.md +46 -46
- package/templates/hooks/appsettings-guard.sh +76 -76
- package/templates/hooks/docs-drift-check.md +96 -96
- package/templates/hooks/ef-migration-check.md +139 -139
- package/templates/hooks/hooks.json +58 -58
- package/templates/hooks/mcp-check.md +64 -64
- package/templates/hooks/ralph-mcp-logger.sh +46 -46
- package/templates/hooks/ralph-session-end.sh +69 -69
- package/templates/hooks/stop-hook.sh +177 -177
- package/templates/hooks/wsl-dotnet-cleanup.sh +24 -24
- package/templates/mcp-scaffolding/component.tsx.hbs +318 -318
- package/templates/mcp-scaffolding/controller.cs.hbs +192 -192
- package/templates/mcp-scaffolding/entity-extension.cs.hbs +239 -239
- package/templates/mcp-scaffolding/frontend/api-client.ts.hbs +116 -116
- package/templates/mcp-scaffolding/frontend/nav-routes.ts.hbs +133 -133
- package/templates/mcp-scaffolding/frontend/routes.tsx.hbs +126 -126
- package/templates/mcp-scaffolding/migrations/seed-roles.cs.hbs +261 -261
- package/templates/mcp-scaffolding/service-extension.cs.hbs +53 -53
- package/templates/mcp-scaffolding/tests/controller.test.cs.hbs +436 -436
- package/templates/mcp-scaffolding/tests/entity.test.cs.hbs +239 -239
- package/templates/mcp-scaffolding/tests/repository.test.cs.hbs +441 -441
- package/templates/mcp-scaffolding/tests/security.test.cs.hbs +442 -442
- package/templates/mcp-scaffolding/tests/service.test.cs.hbs +402 -402
- package/templates/mcp-scaffolding/tests/validator.test.cs.hbs +428 -428
- package/templates/project/DependencyInjection.Application.cs.template +25 -25
- package/templates/project/DependencyInjection.Infrastructure.cs.template +61 -61
- package/templates/project/DesignTimeExtensionsDbContextFactory.cs.template +70 -70
- package/templates/project/ExampleEntity.cs.template +116 -116
- package/templates/project/ExampleEntityConfiguration.cs.template +64 -64
- package/templates/project/ExampleService.cs.template +146 -146
- package/templates/project/ExtensionsDbContext.cs.template +41 -41
- package/templates/project/IExtensionsDbContext.cs.template +22 -22
- package/templates/project/Program.cs.template +47 -47
- package/templates/project/README.md +79 -79
- package/templates/project/api.ts.template +12 -12
- package/templates/project/appsettings.json.template +170 -170
- package/templates/project/claude-settings.json.template +5 -5
- package/templates/project/test-frontend/msw/handlers.ts +58 -58
- package/templates/project/test-frontend/msw/server.ts +25 -25
- package/templates/project/test-frontend/setup.ts +16 -16
- package/templates/project/test-frontend/test-utils.tsx +59 -59
- package/templates/project/test-frontend/vitest.config.ts +31 -31
- package/templates/ralph/README.md +93 -93
- package/templates/ralph/ralph.config.yaml +113 -113
- package/templates/scripts/setup-ralph-loop.sh +173 -173
- package/templates/skills/_resources/config-safety.md +61 -61
- package/templates/skills/_resources/context-digest-template.md +53 -53
- package/templates/skills/_resources/doc-context-cache.md +60 -60
- package/templates/skills/_resources/docs-manifest-schema.md +155 -155
- package/templates/skills/_resources/formatting-guide.md +124 -124
- package/templates/skills/_resources/mcp-validate-documentation-spec.md +181 -181
- package/templates/skills/_shared.md +228 -228
- package/templates/skills/admin/SKILL.md +48 -48
- package/templates/skills/ai-prompt/SKILL.md +107 -107
- package/templates/skills/ai-prompt/steps/step-00-init.md +47 -47
- package/templates/skills/ai-prompt/steps/step-01-implementation.md +122 -122
- package/templates/skills/apex/SKILL.md +168 -168
- package/templates/skills/apex/_shared.md +141 -141
- package/templates/skills/apex/references/agent-teams-protocol.md +164 -164
- package/templates/skills/apex/references/analysis-methods.md +141 -141
- package/templates/skills/apex/references/challenge-questions.md +145 -145
- package/templates/skills/apex/references/code-generation.md +412 -412
- package/templates/skills/apex/references/core-seed-data.md +1437 -1437
- package/templates/skills/apex/references/error-classification.md +144 -144
- package/templates/skills/apex/references/examine-build-validation.md +82 -82
- package/templates/skills/apex/references/execution-frontend-gates.md +177 -177
- package/templates/skills/apex/references/execution-frontend-patterns.md +105 -105
- package/templates/skills/apex/references/execution-layer1-rules.md +96 -96
- package/templates/skills/apex/references/initialization-challenge-flow.md +110 -110
- package/templates/skills/apex/references/planning-layer-mapping.md +151 -151
- package/templates/skills/apex/references/post-checks.md +1584 -1584
- package/templates/skills/apex/references/smartstack-api.md +1053 -1053
- package/templates/skills/apex/references/smartstack-frontend.md +1571 -1571
- package/templates/skills/apex/references/smartstack-layers.md +402 -402
- package/templates/skills/apex/steps/step-00-init.md +307 -307
- package/templates/skills/apex/steps/step-01-analyze.md +165 -165
- package/templates/skills/apex/steps/step-02-plan.md +144 -144
- package/templates/skills/apex/steps/step-03-execute.md +328 -328
- package/templates/skills/apex/steps/step-04-examine.md +263 -263
- package/templates/skills/apex/steps/step-05-deep-review.md +129 -129
- package/templates/skills/apex/steps/step-06-resolve.md +101 -101
- package/templates/skills/apex/steps/step-07-tests.md +238 -238
- package/templates/skills/apex/steps/step-08-run-tests.md +125 -125
- package/templates/skills/application/SKILL.md +4 -4
- package/templates/skills/application/references/application-roles-template.md +227 -227
- package/templates/skills/application/references/backend-controller-hierarchy.md +58 -58
- package/templates/skills/application/references/backend-entity-seeding.md +72 -72
- package/templates/skills/application/references/backend-seeding-and-dto-output.md +83 -83
- package/templates/skills/application/references/backend-table-prefix-mapping.md +79 -79
- package/templates/skills/application/references/backend-verification.md +88 -88
- package/templates/skills/application/references/frontend-i18n-and-output.md +67 -67
- package/templates/skills/application/references/frontend-route-naming.md +117 -117
- package/templates/skills/application/references/frontend-route-wiring-app-tsx.md +107 -107
- package/templates/skills/application/references/frontend-verification.md +156 -156
- package/templates/skills/application/references/migration-checklist-troubleshooting.md +1 -1
- package/templates/skills/application/references/provider-template.md +177 -177
- package/templates/skills/application/references/roles-client-project-handling.md +55 -55
- package/templates/skills/application/references/roles-fallback-procedure.md +149 -149
- package/templates/skills/application/references/test-coverage-requirements.md +213 -213
- package/templates/skills/application/references/test-frontend.md +73 -73
- package/templates/skills/application/references/test-prerequisites.md +72 -72
- package/templates/skills/application/steps/step-05-frontend.md +176 -176
- package/templates/skills/application/steps/step-06-migration.md +193 -193
- package/templates/skills/application/steps/step-07-tests.md +356 -356
- package/templates/skills/application/steps/step-08-documentation.md +137 -137
- package/templates/skills/application/templates-backend.md +463 -463
- package/templates/skills/application/templates-frontend.md +685 -685
- package/templates/skills/application/templates-i18n.md +520 -520
- package/templates/skills/application/templates-seed.md +1096 -1096
- package/templates/skills/business-analyse/SKILL.md +327 -327
- package/templates/skills/business-analyse/_architecture.md +123 -123
- package/templates/skills/business-analyse/_elicitation.md +206 -206
- package/templates/skills/business-analyse/_module-loop.md +115 -115
- package/templates/skills/business-analyse/_shared.md +383 -383
- package/templates/skills/business-analyse/_suggestions.md +34 -34
- package/templates/skills/business-analyse/html/ba-interactive.html +4477 -4477
- package/templates/skills/business-analyse/html/build-html.js +77 -77
- package/templates/skills/business-analyse/html/src/scripts/01-data-init.js +150 -150
- package/templates/skills/business-analyse/html/src/scripts/02-navigation.js +227 -227
- package/templates/skills/business-analyse/html/src/scripts/03-render-cadrage.js +199 -199
- package/templates/skills/business-analyse/html/src/scripts/04-render-modules.js +205 -205
- package/templates/skills/business-analyse/html/src/scripts/05-render-specs.js +647 -647
- package/templates/skills/business-analyse/html/src/scripts/06-render-consolidation.js +195 -195
- package/templates/skills/business-analyse/html/src/scripts/07-render-handoff.js +92 -92
- package/templates/skills/business-analyse/html/src/scripts/08-editing.js +135 -135
- package/templates/skills/business-analyse/html/src/scripts/09-export.js +168 -168
- package/templates/skills/business-analyse/html/src/scripts/10-comments.js +171 -171
- package/templates/skills/business-analyse/html/src/scripts/11-review-panel.js +166 -166
- package/templates/skills/business-analyse/html/src/styles/01-variables.css +38 -38
- package/templates/skills/business-analyse/html/src/styles/02-layout.css +101 -101
- package/templates/skills/business-analyse/html/src/styles/03-navigation.css +120 -120
- package/templates/skills/business-analyse/html/src/styles/04-cards.css +196 -196
- package/templates/skills/business-analyse/html/src/styles/05-modules.css +454 -454
- package/templates/skills/business-analyse/html/src/styles/06-wireframes.css +272 -272
- package/templates/skills/business-analyse/html/src/styles/07-comments.css +184 -184
- package/templates/skills/business-analyse/html/src/styles/08-review-panel.css +241 -241
- package/templates/skills/business-analyse/html/src/template.html +516 -516
- package/templates/skills/business-analyse/patterns/suggestion-catalog.md +546 -546
- package/templates/skills/business-analyse/questionnaire/00-application.md +160 -160
- package/templates/skills/business-analyse/questionnaire/00b-project.md +85 -85
- package/templates/skills/business-analyse/questionnaire/01-context.md +185 -185
- package/templates/skills/business-analyse/questionnaire/02-stakeholders.md +189 -189
- package/templates/skills/business-analyse/questionnaire/03-scope.md +164 -164
- package/templates/skills/business-analyse/questionnaire/04-data.md +88 -88
- package/templates/skills/business-analyse/questionnaire/05-integrations.md +58 -58
- package/templates/skills/business-analyse/questionnaire/06-security.md +68 -68
- package/templates/skills/business-analyse/questionnaire/07-ui.md +76 -76
- package/templates/skills/business-analyse/questionnaire/08-performance.md +42 -42
- package/templates/skills/business-analyse/questionnaire/09-constraints.md +45 -45
- package/templates/skills/business-analyse/questionnaire/10-documentation.md +43 -43
- package/templates/skills/business-analyse/questionnaire/11-data-lifecycle.md +59 -59
- package/templates/skills/business-analyse/questionnaire/12-migration.md +58 -58
- package/templates/skills/business-analyse/questionnaire/13-cross-module.md +69 -69
- package/templates/skills/business-analyse/questionnaire/14-risk-assumptions.md +135 -135
- package/templates/skills/business-analyse/questionnaire/15-success-metrics.md +136 -136
- package/templates/skills/business-analyse/questionnaire.md +337 -337
- package/templates/skills/business-analyse/react/application-viewer.md +242 -242
- package/templates/skills/business-analyse/react/components.md +551 -551
- package/templates/skills/business-analyse/react/i18n-template.md +306 -306
- package/templates/skills/business-analyse/references/acceptance-criteria.md +169 -169
- package/templates/skills/business-analyse/references/agent-module-prompt.md +362 -362
- package/templates/skills/business-analyse/references/agent-pooling-best-practices.md +557 -557
- package/templates/skills/business-analyse/references/analysis-semantic-checks.md +190 -190
- package/templates/skills/business-analyse/references/cache-warming-strategy.md +566 -566
- package/templates/skills/business-analyse/references/cadrage-challenge-patterns.md +41 -41
- package/templates/skills/business-analyse/references/cadrage-coverage-matrix.md +74 -74
- package/templates/skills/business-analyse/references/cadrage-pre-analysis.md +115 -115
- package/templates/skills/business-analyse/references/cadrage-shared-modules.md +68 -69
- package/templates/skills/business-analyse/references/cadrage-structure-cards.md +85 -85
- package/templates/skills/business-analyse/references/compilation-structure-cards.md +297 -297
- package/templates/skills/business-analyse/references/consolidation-structural-checks.md +107 -107
- package/templates/skills/business-analyse/references/deploy-data-build.md +180 -180
- package/templates/skills/business-analyse/references/deploy-modes.md +118 -118
- package/templates/skills/business-analyse/references/detection-strategies.md +424 -424
- package/templates/skills/business-analyse/references/entity-architecture-decision.md +218 -218
- package/templates/skills/business-analyse/references/handoff-file-templates.md +120 -120
- package/templates/skills/business-analyse/references/handoff-mappings.md +81 -81
- package/templates/skills/business-analyse/references/handoff-seeddata-generation.md +312 -312
- package/templates/skills/business-analyse/references/html-data-mapping.md +299 -299
- package/templates/skills/business-analyse/references/init-schema-deployment.md +65 -65
- package/templates/skills/business-analyse/references/naming-conventions.md +243 -243
- package/templates/skills/business-analyse/references/prd-generation.md +258 -258
- package/templates/skills/business-analyse/references/review-data-mapping.md +363 -363
- package/templates/skills/business-analyse/references/robustness-checks.md +542 -542
- package/templates/skills/business-analyse/references/spec-auto-inference.md +111 -111
- package/templates/skills/business-analyse/references/team-orchestration.md +1022 -1022
- package/templates/skills/business-analyse/references/ui-dashboard-spec.md +85 -85
- package/templates/skills/business-analyse/references/ui-resource-cards.md +259 -259
- package/templates/skills/business-analyse/references/validate-incremental-html.md +121 -121
- package/templates/skills/business-analyse/references/validation-checklist.md +347 -347
- package/templates/skills/business-analyse/references/wireframe-svg-style-guide.md +335 -335
- package/templates/skills/business-analyse/schemas/application-schema.json +453 -453
- package/templates/skills/business-analyse/schemas/feature-schema.json +53 -53
- package/templates/skills/business-analyse/schemas/project-schema.json +485 -485
- package/templates/skills/business-analyse/schemas/sections/analysis-schema.json +201 -201
- package/templates/skills/business-analyse/schemas/sections/discovery-schema.json +82 -82
- package/templates/skills/business-analyse/schemas/sections/handoff-schema.json +80 -80
- package/templates/skills/business-analyse/schemas/sections/metadata-schema.json +70 -70
- package/templates/skills/business-analyse/schemas/sections/specification-schema.json +547 -547
- package/templates/skills/business-analyse/schemas/sections/validation-schema.json +93 -93
- package/templates/skills/business-analyse/schemas/shared/common-defs.json +226 -226
- package/templates/skills/business-analyse/steps/step-00-init.md +575 -576
- package/templates/skills/business-analyse/steps/step-01-cadrage.md +767 -767
- package/templates/skills/business-analyse/steps/step-01b-applications.md +419 -419
- package/templates/skills/business-analyse/steps/step-02-decomposition.md +387 -387
- package/templates/skills/business-analyse/steps/step-03a-data.md +16 -16
- package/templates/skills/business-analyse/steps/step-03a1-setup.md +506 -506
- package/templates/skills/business-analyse/steps/step-03a2-analysis.md +252 -252
- package/templates/skills/business-analyse/steps/step-03b-ui.md +425 -425
- package/templates/skills/business-analyse/steps/step-03c-compile.md +611 -611
- package/templates/skills/business-analyse/steps/step-03d-validate.md +783 -783
- package/templates/skills/business-analyse/steps/step-04-consolidation.md +17 -17
- package/templates/skills/business-analyse/steps/step-04a-collect.md +415 -415
- package/templates/skills/business-analyse/steps/step-04b-analyze.md +163 -163
- package/templates/skills/business-analyse/steps/step-04c-decide.md +186 -186
- package/templates/skills/business-analyse/steps/step-05a-handoff.md +840 -840
- package/templates/skills/business-analyse/steps/step-05b-deploy.md +522 -522
- package/templates/skills/business-analyse/steps/step-05c-ralph-readiness.md +703 -703
- package/templates/skills/business-analyse/steps/step-06-review.md +278 -278
- package/templates/skills/business-analyse/templates/tpl-frd.md +168 -168
- package/templates/skills/business-analyse/templates/tpl-handoff.md +186 -186
- package/templates/skills/business-analyse/templates/tpl-launch-displays.md +59 -59
- package/templates/skills/business-analyse/templates/tpl-progress.md +172 -172
- package/templates/skills/business-analyse/templates-frd.md +476 -476
- package/templates/skills/business-analyse/templates-react.md +574 -574
- package/templates/skills/cc-agent/SKILL.md +129 -129
- package/templates/skills/cc-agent/references/agent-behavior-patterns.md +95 -95
- package/templates/skills/cc-agent/references/agent-frontmatter.md +213 -213
- package/templates/skills/cc-agent/references/permission-modes.md +102 -102
- package/templates/skills/cc-agent/references/tools-reference.md +144 -144
- package/templates/skills/cc-agent/steps/step-00-init.md +134 -134
- package/templates/skills/cc-agent/steps/step-01-design.md +186 -186
- package/templates/skills/cc-agent/steps/step-02-generate.md +131 -131
- package/templates/skills/cc-agent/steps/step-03-validate.md +130 -130
- package/templates/skills/cc-agent/templates/agent-categorized.md +67 -67
- package/templates/skills/cc-agent/templates/agent-standalone.md +56 -56
- package/templates/skills/cc-agent/templates/agent-with-skills.md +94 -94
- package/templates/skills/cc-audit/SKILL.md +108 -108
- package/templates/skills/cc-audit/references/agent-checklist.md +91 -91
- package/templates/skills/cc-audit/references/hook-checklist.md +110 -110
- package/templates/skills/cc-audit/references/skill-checklist.md +70 -70
- package/templates/skills/cc-audit/steps/step-00-init.md +98 -98
- package/templates/skills/cc-audit/steps/step-01-scan.md +142 -142
- package/templates/skills/cc-audit/steps/step-02-analyze.md +158 -158
- package/templates/skills/cc-audit/steps/step-03-report.md +142 -142
- package/templates/skills/cc-skill/SKILL.md +134 -134
- package/templates/skills/cc-skill/references/best-practices.md +167 -167
- package/templates/skills/cc-skill/references/frontmatter-reference.md +182 -182
- package/templates/skills/cc-skill/references/skill-patterns.md +199 -199
- package/templates/skills/cc-skill/steps/step-00-init.md +119 -119
- package/templates/skills/cc-skill/steps/step-01-design.md +199 -199
- package/templates/skills/cc-skill/steps/step-02-generate.md +145 -145
- package/templates/skills/cc-skill/steps/step-03-steps.md +151 -151
- package/templates/skills/cc-skill/steps/step-04-validate.md +124 -124
- package/templates/skills/cc-skill/templates/skill-forked.md +85 -85
- package/templates/skills/cc-skill/templates/skill-progressive.md +102 -102
- package/templates/skills/cc-skill/templates/skill-simple.md +75 -75
- package/templates/skills/cc-skill/templates/step-template.md +82 -82
- package/templates/skills/check-version/SKILL.md +196 -196
- package/templates/skills/controller/SKILL.md +162 -162
- package/templates/skills/controller/postman-templates.md +614 -614
- package/templates/skills/controller/references/controller-code-templates.md +159 -159
- package/templates/skills/controller/references/mcp-scaffold-workflow.md +209 -209
- package/templates/skills/controller/references/permission-sync-templates.md +149 -149
- package/templates/skills/controller/steps/step-00-init.md +193 -191
- package/templates/skills/controller/steps/step-01-analyze.md +146 -146
- package/templates/skills/controller/steps/step-02-plan.md +176 -176
- package/templates/skills/controller/steps/step-03-generate.md +189 -189
- package/templates/skills/controller/steps/step-04-perms.md +80 -80
- package/templates/skills/controller/steps/step-05-validate.md +107 -107
- package/templates/skills/controller/templates.md +1555 -1555
- package/templates/skills/debug/SKILL.md +70 -70
- package/templates/skills/debug/references/team-protocol.md +232 -232
- package/templates/skills/debug/steps/step-00-init.md +57 -57
- package/templates/skills/debug/steps/step-01-analyze.md +219 -219
- package/templates/skills/debug/steps/step-02-resolve.md +85 -85
- package/templates/skills/documentation/SKILL.md +132 -132
- package/templates/skills/documentation/data-schema.md +227 -227
- package/templates/skills/documentation/steps/step-00-init.md +70 -70
- package/templates/skills/documentation/steps/step-01-scan.md +113 -113
- package/templates/skills/documentation/steps/step-02-generate.md +231 -231
- package/templates/skills/documentation/steps/step-03-validate.md +251 -238
- package/templates/skills/documentation/templates.md +662 -663
- package/templates/skills/efcore/SKILL.md +167 -167
- package/templates/skills/efcore/references/both-contexts.md +32 -32
- package/templates/skills/efcore/references/database-operations.md +67 -67
- package/templates/skills/efcore/references/destructive-operations.md +38 -38
- package/templates/skills/efcore/references/reset-operations.md +81 -81
- package/templates/skills/efcore/references/seed-methods.md +86 -86
- package/templates/skills/efcore/references/shared-init-functions.md +250 -250
- package/templates/skills/efcore/references/sql-objects-injection.md +61 -61
- package/templates/skills/efcore/references/troubleshooting.md +81 -81
- package/templates/skills/efcore/references/zero-downtime-patterns.md +227 -227
- package/templates/skills/efcore/steps/db/step-deploy.md +217 -217
- package/templates/skills/efcore/steps/db/step-reset.md +186 -186
- package/templates/skills/efcore/steps/db/step-seed.md +166 -166
- package/templates/skills/efcore/steps/db/step-status.md +173 -173
- package/templates/skills/efcore/steps/migration/step-00-init.md +102 -102
- package/templates/skills/efcore/steps/migration/step-01-check.md +164 -164
- package/templates/skills/efcore/steps/migration/step-02-create.md +160 -160
- package/templates/skills/efcore/steps/migration/step-03-validate.md +168 -168
- package/templates/skills/efcore/steps/rebase-snapshot/step-00-init.md +173 -173
- package/templates/skills/efcore/steps/rebase-snapshot/step-01-backup.md +100 -100
- package/templates/skills/efcore/steps/rebase-snapshot/step-02-fetch.md +115 -115
- package/templates/skills/efcore/steps/rebase-snapshot/step-03-create.md +112 -112
- package/templates/skills/efcore/steps/rebase-snapshot/step-04-validate.md +157 -157
- package/templates/skills/efcore/steps/shared/step-00-init.md +131 -131
- package/templates/skills/efcore/steps/squash/step-00-init.md +141 -141
- package/templates/skills/efcore/steps/squash/step-01-backup.md +120 -120
- package/templates/skills/efcore/steps/squash/step-02-fetch.md +168 -168
- package/templates/skills/efcore/steps/squash/step-03-create.md +184 -184
- package/templates/skills/efcore/steps/squash/step-04-validate.md +174 -174
- package/templates/skills/explore/SKILL.md +98 -98
- package/templates/skills/feature-full/SKILL.md +111 -111
- package/templates/skills/feature-full/steps/step-00-init.md +57 -57
- package/templates/skills/feature-full/steps/step-01-implementation.md +120 -120
- package/templates/skills/gitflow/SKILL.md +377 -377
- package/templates/skills/gitflow/_shared.md +620 -620
- package/templates/skills/gitflow/phases/abort.md +189 -189
- package/templates/skills/gitflow/phases/cleanup.md +234 -234
- package/templates/skills/gitflow/phases/status.md +192 -192
- package/templates/skills/gitflow/references/commit-message-generation.md +58 -58
- package/templates/skills/gitflow/references/commit-migration-validation.md +49 -49
- package/templates/skills/gitflow/references/finish-cleanup.md +55 -55
- package/templates/skills/gitflow/references/finish-version-bumping.md +45 -45
- package/templates/skills/gitflow/references/init-config-template.md +135 -135
- package/templates/skills/gitflow/references/init-environment-detection.md +41 -41
- package/templates/skills/gitflow/references/init-name-normalization.md +103 -103
- package/templates/skills/gitflow/references/init-questions.md +185 -185
- package/templates/skills/gitflow/references/init-structure-creation.md +75 -75
- package/templates/skills/gitflow/references/init-version-detection.md +21 -21
- package/templates/skills/gitflow/references/init-workspace-detection.md +43 -43
- package/templates/skills/gitflow/references/merge-ci-status.md +36 -36
- package/templates/skills/gitflow/references/merge-execution.md +62 -62
- package/templates/skills/gitflow/references/merge-pr-context.md +76 -76
- package/templates/skills/gitflow/references/plan-template.md +69 -69
- package/templates/skills/gitflow/references/pr-build-checks.md +60 -60
- package/templates/skills/gitflow/references/pr-generation.md +58 -58
- package/templates/skills/gitflow/references/start-branch-normalization.md +28 -28
- package/templates/skills/gitflow/references/start-efcore-preflight.md +70 -70
- package/templates/skills/gitflow/references/start-local-config.md +113 -113
- package/templates/skills/gitflow/references/start-worktree-creation.md +50 -50
- package/templates/skills/gitflow/references/sync-push-verify.md +44 -44
- package/templates/skills/gitflow/references/sync-rebase-conflicts.md +38 -38
- package/templates/skills/gitflow/steps/step-commit.md +199 -199
- package/templates/skills/gitflow/steps/step-finish.md +147 -147
- package/templates/skills/gitflow/steps/step-init.md +190 -190
- package/templates/skills/gitflow/steps/step-merge.md +85 -85
- package/templates/skills/gitflow/steps/step-plan.md +151 -151
- package/templates/skills/gitflow/steps/step-pr.md +199 -199
- package/templates/skills/gitflow/steps/step-start.md +195 -195
- package/templates/skills/gitflow/steps/step-sync.md +161 -161
- package/templates/skills/gitflow/templates/config.json +72 -72
- package/templates/skills/mcp/SKILL.md +62 -62
- package/templates/skills/mcp/steps/step-01-healthcheck.md +108 -108
- package/templates/skills/mcp/steps/step-02-tools.md +73 -73
- package/templates/skills/notification/SKILL.md +173 -173
- package/templates/skills/quick-search/SKILL.md +99 -99
- package/templates/skills/ralph-loop/SKILL.md +234 -234
- package/templates/skills/ralph-loop/references/category-completeness.md +185 -185
- package/templates/skills/ralph-loop/references/category-rules.md +96 -96
- package/templates/skills/ralph-loop/references/compact-loop.md +300 -300
- package/templates/skills/ralph-loop/references/init-resume-recovery.md +127 -127
- package/templates/skills/ralph-loop/references/module-transition.md +151 -151
- package/templates/skills/ralph-loop/references/multi-module-queue.md +171 -171
- package/templates/skills/ralph-loop/references/parallel-execution.md +246 -246
- package/templates/skills/ralph-loop/references/section-splitting.md +439 -439
- package/templates/skills/ralph-loop/references/task-transform-legacy.md +256 -256
- package/templates/skills/ralph-loop/references/team-orchestration.md +547 -547
- package/templates/skills/ralph-loop/steps/step-00-init.md +150 -150
- package/templates/skills/ralph-loop/steps/step-01-task.md +174 -174
- package/templates/skills/ralph-loop/steps/step-02-execute.md +177 -177
- package/templates/skills/ralph-loop/steps/step-03-commit.md +92 -92
- package/templates/skills/ralph-loop/steps/step-04-check.md +207 -207
- package/templates/skills/ralph-loop/steps/step-05-report.md +175 -175
- package/templates/skills/refactor/SKILL.md +56 -56
- package/templates/skills/refactor/steps/step-01-discover.md +60 -60
- package/templates/skills/refactor/steps/step-02-execute.md +67 -67
- package/templates/skills/review-code/SKILL.md +94 -94
- package/templates/skills/review-code/references/clean-code-principles.md +292 -292
- package/templates/skills/review-code/references/code-quality-metrics.md +174 -174
- package/templates/skills/review-code/references/feedback-patterns.md +149 -149
- package/templates/skills/review-code/references/owasp-api-top10.md +243 -243
- package/templates/skills/review-code/references/security-checklist.md +212 -212
- package/templates/skills/review-code/steps/step-01-smartstack.md +96 -96
- package/templates/skills/review-code/steps/step-02-detailed-review.md +80 -80
- package/templates/skills/review-code/steps/step-03-react.md +44 -44
- package/templates/skills/ui-components/SKILL.md +137 -137
- package/templates/skills/ui-components/accessibility.md +170 -170
- package/templates/skills/ui-components/patterns/dashboard-chart.md +327 -327
- package/templates/skills/ui-components/patterns/data-table.md +39 -39
- package/templates/skills/ui-components/patterns/entity-card.md +77 -77
- package/templates/skills/ui-components/patterns/grid-layout.md +91 -91
- package/templates/skills/ui-components/patterns/kanban.md +43 -43
- package/templates/skills/ui-components/responsive-guidelines.md +278 -278
- package/templates/skills/ui-components/style-guide.md +113 -113
- package/templates/skills/utils/SKILL.md +44 -44
- package/templates/skills/utils/subcommands/test-web-config.md +152 -152
- package/templates/skills/utils/subcommands/test-web.md +123 -123
- package/templates/skills/validate/SKILL.md +181 -181
- package/templates/skills/validate-feature/SKILL.md +101 -101
- package/templates/skills/validate-feature/references/api-smoke-tests.md +140 -140
- package/templates/skills/validate-feature/references/db-validation-checks.md +180 -180
- package/templates/skills/validate-feature/steps/step-00-dependencies.md +121 -121
- package/templates/skills/validate-feature/steps/step-01-compile.md +39 -39
- package/templates/skills/validate-feature/steps/step-02-unit-tests.md +45 -45
- package/templates/skills/validate-feature/steps/step-03-integration-tests.md +53 -53
- package/templates/skills/validate-feature/steps/step-04-api-smoke.md +94 -94
- package/templates/skills/validate-feature/steps/step-05-db-validation.md +149 -149
- package/templates/skills/workflow/SKILL.md +127 -127
- package/templates/skills/workflow/steps/step-00-init.md +57 -57
- package/templates/skills/workflow/steps/step-01-implementation.md +84 -84
- package/templates/test-web/api-health.json +38 -38
- package/templates/test-web/minimal.json +19 -19
- package/templates/test-web/npm-package.json +46 -46
- package/templates/test-web/seo-check.json +54 -54
|
@@ -1,557 +1,557 @@
|
|
|
1
|
-
# Agent Pooling Best Practices
|
|
2
|
-
|
|
3
|
-
> **Objective:** Minimize agent proliferation and token waste by reusing agents strategically.
|
|
4
|
-
|
|
5
|
-
## Problem Statement
|
|
6
|
-
|
|
7
|
-
**Observed issue:** Business-analyse sessions create 20-24 subagents, many of which are ultra-short (4-13 lines) for trivial tasks like summaries or consolidations.
|
|
8
|
-
|
|
9
|
-
**Impact:**
|
|
10
|
-
- Organizational overhead (tracking 24 agents)
|
|
11
|
-
- Token waste (spawning + context setup for each agent)
|
|
12
|
-
- Complexity in debugging and monitoring
|
|
13
|
-
- 1540+ lines of JSONL logs for a single session
|
|
14
|
-
|
|
15
|
-
**Goal:** Reduce to 5-7 agents per session while maintaining quality and parallelism.
|
|
16
|
-
|
|
17
|
-
---
|
|
18
|
-
|
|
19
|
-
## Agent Pooling Strategy
|
|
20
|
-
|
|
21
|
-
### Core Principle
|
|
22
|
-
|
|
23
|
-
> **Reuse agents for sequential operations, spawn new agents only for genuine parallelism.**
|
|
24
|
-
|
|
25
|
-
### When to Spawn a NEW Agent
|
|
26
|
-
|
|
27
|
-
✅ **Spawn new agent when:**
|
|
28
|
-
1. **Parallel operations** - Multiple independent tasks can run simultaneously
|
|
29
|
-
- Example: Specifying 2+ modules in parallel (step-03)
|
|
30
|
-
- Example: Reading multiple PRD files concurrently (step-05)
|
|
31
|
-
|
|
32
|
-
2. **Domain separation** - Task requires fundamentally different expertise
|
|
33
|
-
- Example: ba-writer for JSON writes, Explore for codebase search
|
|
34
|
-
- Example: MCP healthcheck vs. code generation
|
|
35
|
-
|
|
36
|
-
3. **Long-running tasks** - Task will take multiple turns and could block main flow
|
|
37
|
-
- Example: Deep codebase exploration with 10+ searches
|
|
38
|
-
- Example: Complex validation requiring many file reads
|
|
39
|
-
|
|
40
|
-
### When to REUSE Existing Agent
|
|
41
|
-
|
|
42
|
-
✅ **Reuse agent when:**
|
|
43
|
-
1. **Sequential operations** - Tasks depend on previous results
|
|
44
|
-
- Example: Read module 1 → process → read module 2 → process
|
|
45
|
-
- Example: Validate → fix → re-validate
|
|
46
|
-
|
|
47
|
-
2. **Same domain** - Task uses same tools and context as previous
|
|
48
|
-
- Example: Multiple ba-writer calls in step-05 module loop
|
|
49
|
-
- Example: Multiple ba-reader calls for different modules
|
|
50
|
-
|
|
51
|
-
3. **Short tasks** - Task will complete in 1-2 turns
|
|
52
|
-
- Example: Generate summary (inline, not separate agent)
|
|
53
|
-
- Example: Format output (inline, not separate agent)
|
|
54
|
-
|
|
55
|
-
4. **Consolidation** - Aggregating results from multiple sources
|
|
56
|
-
- Example: Combine module summaries into master (inline)
|
|
57
|
-
- Example: Build dependency graph from module data (inline)
|
|
58
|
-
|
|
59
|
-
---
|
|
60
|
-
|
|
61
|
-
## Anti-Patterns to Avoid
|
|
62
|
-
|
|
63
|
-
### ❌ Anti-Pattern 1: Ultra-Short Summary Agents
|
|
64
|
-
|
|
65
|
-
**Bad:**
|
|
66
|
-
```
|
|
67
|
-
FOR each module:
|
|
68
|
-
Spawn agent "summarize-module-{i}"
|
|
69
|
-
Agent reads module → generates 4-line summary → exits
|
|
70
|
-
```
|
|
71
|
-
|
|
72
|
-
**Result:** 5 agents created for 20 total lines of output
|
|
73
|
-
|
|
74
|
-
**Good:**
|
|
75
|
-
```
|
|
76
|
-
Main agent reads all modules sequentially
|
|
77
|
-
Generates summaries inline
|
|
78
|
-
Returns consolidated result
|
|
79
|
-
```
|
|
80
|
-
|
|
81
|
-
**Result:** 1 agent, same output, 80% fewer tokens
|
|
82
|
-
|
|
83
|
-
---
|
|
84
|
-
|
|
85
|
-
### ❌ Anti-Pattern 2: Spawning for Every Step Transition
|
|
86
|
-
|
|
87
|
-
**Bad:**
|
|
88
|
-
```
|
|
89
|
-
Step 03a: Spawn agent-data
|
|
90
|
-
→ Agent completes → exits
|
|
91
|
-
Step 03b: Spawn agent-ui
|
|
92
|
-
→ Agent completes → exits
|
|
93
|
-
Step 03c: Spawn agent-compile
|
|
94
|
-
→ Agent completes → exits
|
|
95
|
-
```
|
|
96
|
-
|
|
97
|
-
**Result:** 3 agents per module, 15 agents for 5 modules
|
|
98
|
-
|
|
99
|
-
**Good:**
|
|
100
|
-
```
|
|
101
|
-
Step 03: Spawn ONE agent-module-spec
|
|
102
|
-
→ Agent executes 03a → 03b → 03c internally
|
|
103
|
-
→ Agent exits after module complete
|
|
104
|
-
```
|
|
105
|
-
|
|
106
|
-
**Result:** 5 agents for 5 modules (1 per module)
|
|
107
|
-
|
|
108
|
-
---
|
|
109
|
-
|
|
110
|
-
### ❌ Anti-Pattern 3: Parallel Agents for Sequential Dependency
|
|
111
|
-
|
|
112
|
-
**Bad:**
|
|
113
|
-
```
|
|
114
|
-
Spawn agent-read-master (reads master feature.json)
|
|
115
|
-
Spawn agent-read-module-1 (reads module 1 feature.json)
|
|
116
|
-
Spawn agent-consolidate (waits for both, then merges)
|
|
117
|
-
```
|
|
118
|
-
|
|
119
|
-
**Result:** 3 agents when 2 have sequential dependency
|
|
120
|
-
|
|
121
|
-
**Good:**
|
|
122
|
-
```
|
|
123
|
-
Spawn agent-consolidate
|
|
124
|
-
→ Reads master
|
|
125
|
-
→ Reads module 1
|
|
126
|
-
→ Merges inline
|
|
127
|
-
→ Returns result
|
|
128
|
-
```
|
|
129
|
-
|
|
130
|
-
**Result:** 1 agent, same output, faster execution
|
|
131
|
-
|
|
132
|
-
---
|
|
133
|
-
|
|
134
|
-
## Implementation Patterns
|
|
135
|
-
|
|
136
|
-
### Pattern 1: Module Loop with Single Agent
|
|
137
|
-
|
|
138
|
-
**Scenario:** Step 03 - Specify 5 modules sequentially
|
|
139
|
-
|
|
140
|
-
**Recommended:**
|
|
141
|
-
```
|
|
142
|
-
1. Main flow spawns ONE agent: "ba-module-orchestrator"
|
|
143
|
-
2. Agent receives: modules[], currentModuleIndex
|
|
144
|
-
3. Agent executes loop:
|
|
145
|
-
FOR i = 0; i < modules.length; i++:
|
|
146
|
-
Execute step-03a (data)
|
|
147
|
-
Execute step-03b (ui)
|
|
148
|
-
Execute step-03c (compile)
|
|
149
|
-
Execute step-03d (validate)
|
|
150
|
-
Write module feature.json
|
|
151
|
-
Advance to next module
|
|
152
|
-
4. Agent exits when all modules specified
|
|
153
|
-
```
|
|
154
|
-
|
|
155
|
-
**Result:** 1 agent for all 5 modules (vs. 20 agents in current implementation)
|
|
156
|
-
|
|
157
|
-
**Exception:** If modules have NO dependencies and can be specified in parallel:
|
|
158
|
-
- Spawn 2-3 agents maximum
|
|
159
|
-
- Each agent handles 1-2 modules
|
|
160
|
-
- Results merged by main flow
|
|
161
|
-
|
|
162
|
-
---
|
|
163
|
-
|
|
164
|
-
### Pattern 2: Batch Operations with Checkpoints
|
|
165
|
-
|
|
166
|
-
**Scenario:** Step 05a - Generate handoff for 5 modules
|
|
167
|
-
|
|
168
|
-
**Recommended:**
|
|
169
|
-
```
|
|
170
|
-
1. Main flow spawns ONE agent: "ba-handoff-generator"
|
|
171
|
-
2. Agent receives: modules[], master feature.json
|
|
172
|
-
3. Agent executes batch:
|
|
173
|
-
FOR each module:
|
|
174
|
-
Calculate complexity
|
|
175
|
-
Map files to create (7 categories)
|
|
176
|
-
Map business rules to code
|
|
177
|
-
Generate API endpoint summary
|
|
178
|
-
Write to module feature.json
|
|
179
|
-
CHECKPOINT: Display progress "✓ Module {i+1}/5 complete"
|
|
180
|
-
4. After ALL modules: Write master handoff
|
|
181
|
-
5. Agent exits
|
|
182
|
-
```
|
|
183
|
-
|
|
184
|
-
**Result:** 1 agent for all handoff generation (vs. 5-10 agents in current)
|
|
185
|
-
|
|
186
|
-
**Checkpoint benefits:**
|
|
187
|
-
- User sees progress
|
|
188
|
-
- Agent can be interrupted/resumed if needed
|
|
189
|
-
- Failures isolated to specific module
|
|
190
|
-
|
|
191
|
-
---
|
|
192
|
-
|
|
193
|
-
### Pattern 3: Parallel Domain Operations
|
|
194
|
-
|
|
195
|
-
**Scenario:** Step 00 - Initialize schemas + scan existing features + create config
|
|
196
|
-
|
|
197
|
-
**Recommended:**
|
|
198
|
-
```
|
|
199
|
-
1. Spawn agent-deploy-schemas (deploy 9 schema files)
|
|
200
|
-
2. Spawn agent-scan-features (glob + read existing features)
|
|
201
|
-
3. Main flow waits for both
|
|
202
|
-
4. Main flow creates config (inline)
|
|
203
|
-
5. Main flow creates master feature.json (inline via ba-writer)
|
|
204
|
-
```
|
|
205
|
-
|
|
206
|
-
**Result:** 2 agents for genuinely parallel tasks
|
|
207
|
-
|
|
208
|
-
**Why parallel:**
|
|
209
|
-
- Schema deployment and feature scanning are independent
|
|
210
|
-
- Both are I/O-bound (file operations)
|
|
211
|
-
- No shared state until merge
|
|
212
|
-
|
|
213
|
-
---
|
|
214
|
-
|
|
215
|
-
### Pattern 4: Layer-Based Parallel Spawn (RECOMMENDED for Step 03)
|
|
216
|
-
|
|
217
|
-
**Scenario:** Step 03 - Specify modules across dependency layers
|
|
218
|
-
|
|
219
|
-
**Recommended:**
|
|
220
|
-
```
|
|
221
|
-
FOR each layer in dependencyGraph.layers:
|
|
222
|
-
|
|
223
|
-
1. Pre-analyze: Identify cross-module touchpoints between modules in this layer
|
|
224
|
-
→ Shared entities, FK overlaps, naming conventions, shared lookups
|
|
225
|
-
→ Build coordinationNotes per module
|
|
226
|
-
|
|
227
|
-
2. Spawn ALL layer agents in parallel (1 Task per module, ALL in ONE message)
|
|
228
|
-
→ Each agent receives: module context + completedModulesSummary + coordinationNotes
|
|
229
|
-
|
|
230
|
-
3. Handle cross-module queries during execution (team lead relays)
|
|
231
|
-
→ Agent sends CROSS_MODULE_QUERY → team lead routes → answer forwarded
|
|
232
|
-
|
|
233
|
-
4. Wait for ALL PROPOSAL_READY from this layer
|
|
234
|
-
|
|
235
|
-
5. Display cross-module interaction analysis (bird's-eye view)
|
|
236
|
-
→ Detected interactions, resolved queries, attention points
|
|
237
|
-
|
|
238
|
-
6. Review each module individually with user (quality-first)
|
|
239
|
-
→ Approve, revise, or see detail per module
|
|
240
|
-
|
|
241
|
-
7. Layer consistency check (FK names, permissions, i18n, seed data IDs)
|
|
242
|
-
→ Auto-fix if inconsistency found
|
|
243
|
-
|
|
244
|
-
8. Shutdown ALL layer agents
|
|
245
|
-
|
|
246
|
-
9. Rebuild completedModulesSummary for next layer
|
|
247
|
-
|
|
248
|
-
10. Proceed to next layer
|
|
249
|
-
```
|
|
250
|
-
|
|
251
|
-
**Result:**
|
|
252
|
-
- 4 agents for 4 modules (same count as sequential)
|
|
253
|
-
- But wall-clock reduced by ~50-66% for apps with parallel layers
|
|
254
|
-
- Cross-module consistency guaranteed by pre-injection + relay + consistency check
|
|
255
|
-
- Each agent has fresh context (zero accumulation)
|
|
256
|
-
|
|
257
|
-
**Why this pattern works:**
|
|
258
|
-
- Dependency layers already computed by step-02 topological sort
|
|
259
|
-
- Modules in the same layer have NO direct dependencies (by definition)
|
|
260
|
-
- Pre-injection prevents most cross-module issues before they happen
|
|
261
|
-
- Runtime relay catches unexpected edge cases
|
|
262
|
-
- Consistency check catches anything missed by both mechanisms
|
|
263
|
-
|
|
264
|
-
---
|
|
265
|
-
|
|
266
|
-
## Metrics & Monitoring
|
|
267
|
-
|
|
268
|
-
### Target Metrics (per BA session)
|
|
269
|
-
|
|
270
|
-
| Metric | Current | Target (agent pooling) | Target (team mode) | Improvement |
|
|
271
|
-
|--------|---------|----------------------|-------------------|-------------|
|
|
272
|
-
| Total agents | 24 | 5-7 | 3-6 (1/module + consolidation + handoff) | 75-88% reduction |
|
|
273
|
-
| Ultra-short agents (<20 lines) | 4 | 0 | 0 | 100% elimination |
|
|
274
|
-
| Agents per module loop | 4-5 | 1 | 1 (autonomous, full context) | 80% reduction |
|
|
275
|
-
| JSONL log lines | 1540 | <500 | <300 | 68-81% reduction |
|
|
276
|
-
| Context exhaustion risk | HIGH (3%) | MEDIUM | **ZERO** (each agent fresh) | Eliminated |
|
|
277
|
-
| Max context per agent | 100% (single conv) | ~80% | ~40-60% (one module only) | 40-60% reduction |
|
|
278
|
-
|
|
279
|
-
### Agent Spawn Decision Checklist
|
|
280
|
-
|
|
281
|
-
Before spawning a new agent, ask:
|
|
282
|
-
|
|
283
|
-
1. ☐ Can this be done inline in current agent? (80% of cases: YES)
|
|
284
|
-
2. ☐ Can I reuse an existing agent? (10% of cases: YES)
|
|
285
|
-
3. ☐ Is this truly parallel? (5% of cases: YES)
|
|
286
|
-
4. ☐ Is this a different domain? (5% of cases: YES)
|
|
287
|
-
|
|
288
|
-
If ALL answers are NO → spawn new agent.
|
|
289
|
-
Otherwise → inline or reuse.
|
|
290
|
-
|
|
291
|
-
---
|
|
292
|
-
|
|
293
|
-
## Step-by-Step Migration Guide
|
|
294
|
-
|
|
295
|
-
### Step 00: Init
|
|
296
|
-
|
|
297
|
-
**Current:** 3-4 agents (schema deploy, scan, config, create)
|
|
298
|
-
**Target:** 1-2 agents
|
|
299
|
-
|
|
300
|
-
**Changes:**
|
|
301
|
-
- Inline config creation
|
|
302
|
-
- Inline master feature.json creation via ba-writer
|
|
303
|
-
- Keep schema deployment as separate agent (parallel with scan)
|
|
304
|
-
|
|
305
|
-
---
|
|
306
|
-
|
|
307
|
-
### Step 01: Cadrage
|
|
308
|
-
|
|
309
|
-
**Current:** 2-3 agents (questionnaire, suggestions, write)
|
|
310
|
-
**Target:** 1 agent
|
|
311
|
-
|
|
312
|
-
**Changes:**
|
|
313
|
-
- ONE agent executes entire cadrage
|
|
314
|
-
- Inline questionnaire processing
|
|
315
|
-
- Inline suggestion generation
|
|
316
|
-
- Single ba-writer call at end
|
|
317
|
-
|
|
318
|
-
---
|
|
319
|
-
|
|
320
|
-
### Step 02: Decomposition
|
|
321
|
-
|
|
322
|
-
**Current:** 3-4 agents (analysis, dependency graph, client checkpoint, write)
|
|
323
|
-
**Target:** 1 agent
|
|
324
|
-
|
|
325
|
-
**Changes:**
|
|
326
|
-
- ONE agent for decomposition
|
|
327
|
-
- Inline dependency graph calculation
|
|
328
|
-
- Inline client checkpoint (AskUserQuestion)
|
|
329
|
-
- Single ba-writer call for modules + dependencyGraph
|
|
330
|
-
|
|
331
|
-
---
|
|
332
|
-
|
|
333
|
-
### Step 03: Module Specification (BIGGEST IMPACT)
|
|
334
|
-
|
|
335
|
-
**Current:** 4-5 agents PER module × 5 modules = 20-25 agents
|
|
336
|
-
**Target:** 1 agent per module, parallel within dependency layers
|
|
337
|
-
|
|
338
|
-
**Implementation (team mode with parallel layers):**
|
|
339
|
-
- ONE agent PER module, each executing 03a → 03b → 03c → 03d autonomously
|
|
340
|
-
- Modules in the same dependency layer spawn **simultaneously** (parallel)
|
|
341
|
-
- Modules in different layers spawn **sequentially** (dependency order)
|
|
342
|
-
- Team lead pre-injects cross-module coordination notes before spawning
|
|
343
|
-
- Runtime cross-module queries relayed by team lead between parallel agents
|
|
344
|
-
- Layer consistency check after all modules in a layer are approved
|
|
345
|
-
|
|
346
|
-
**Example (4 modules, 3 layers):**
|
|
347
|
-
```
|
|
348
|
-
Layer 0: [Customers, Products] → 2 agents in parallel
|
|
349
|
-
Layer 1: [Orders] → 1 agent (after layer 0 complete)
|
|
350
|
-
Layer 2: [Invoices] → 1 agent (after layer 1 complete)
|
|
351
|
-
Total: 4 agents, but wall-clock = 3 layers (not 4 sequential)
|
|
352
|
-
```
|
|
353
|
-
|
|
354
|
-
---
|
|
355
|
-
|
|
356
|
-
### Step 04: Consolidation
|
|
357
|
-
|
|
358
|
-
**Current:** 2-3 agents (cross-module validation, E2E flows, write)
|
|
359
|
-
**Target:** 1 agent
|
|
360
|
-
|
|
361
|
-
**Changes:**
|
|
362
|
-
- ONE agent for consolidation
|
|
363
|
-
- Inline cross-module interaction detection
|
|
364
|
-
- Inline E2E flow generation
|
|
365
|
-
- Single ba-writer call
|
|
366
|
-
|
|
367
|
-
---
|
|
368
|
-
|
|
369
|
-
### Step 05: Handoff & Deploy
|
|
370
|
-
|
|
371
|
-
**Current:** 5-7 agents (handoff per module + master + PRD generation + HTML deploy)
|
|
372
|
-
**Target:** 2-3 agents
|
|
373
|
-
|
|
374
|
-
**Changes:**
|
|
375
|
-
- ONE agent for all handoff generation (modules + master)
|
|
376
|
-
- ONE agent for artifact deployment (PRD + HTML + manifest)
|
|
377
|
-
- Optional: ONE agent for validation (step-05c)
|
|
378
|
-
|
|
379
|
-
---
|
|
380
|
-
|
|
381
|
-
## Cache Warming Strategy
|
|
382
|
-
|
|
383
|
-
> **Complement to agent pooling:** Pre-load frequently-used files to reduce redundant reads.
|
|
384
|
-
|
|
385
|
-
### Step 00: Pre-Load Core Context
|
|
386
|
-
|
|
387
|
-
```
|
|
388
|
-
At Step-00 initialization:
|
|
389
|
-
1. Read + cache all 9 schemas
|
|
390
|
-
2. Read + cache master feature template
|
|
391
|
-
3. Read + cache questionnaire templates
|
|
392
|
-
4. Read + cache suggestion catalog
|
|
393
|
-
|
|
394
|
-
Result: 90% of Step-01 context pre-loaded, no re-reads needed
|
|
395
|
-
```
|
|
396
|
-
|
|
397
|
-
### Step 03: Pre-Load Module Context
|
|
398
|
-
|
|
399
|
-
```
|
|
400
|
-
At start of module loop:
|
|
401
|
-
1. Read + cache application context (from master)
|
|
402
|
-
2. Read + cache completed module summaries (via ba-reader)
|
|
403
|
-
3. Read + cache shared patterns and templates
|
|
404
|
-
|
|
405
|
-
Result: 70% of per-module context pre-loaded
|
|
406
|
-
```
|
|
407
|
-
|
|
408
|
-
### Benefits
|
|
409
|
-
|
|
410
|
-
- 15-20% token savings across session
|
|
411
|
-
- Faster agent execution (no wait for file reads)
|
|
412
|
-
- Reduced risk of file read failures
|
|
413
|
-
- Better cache hit rates (98.5% cache read in analysis → 50% reduction with warming)
|
|
414
|
-
|
|
415
|
-
---
|
|
416
|
-
|
|
417
|
-
## Rollout Plan
|
|
418
|
-
|
|
419
|
-
### Phase 1: Quick Wins (Week 1)
|
|
420
|
-
|
|
421
|
-
1. ✅ Eliminate ultra-short summary agents
|
|
422
|
-
- Make summaries inline in calling agent
|
|
423
|
-
- Remove dedicated "summary-request" agents
|
|
424
|
-
|
|
425
|
-
2. ✅ Consolidate Step 01 + 02 to 1 agent each
|
|
426
|
-
- Combine questionnaire + suggestions + write
|
|
427
|
-
- Combine decomposition + dependency + write
|
|
428
|
-
|
|
429
|
-
**Expected impact:** 30% reduction in agent count
|
|
430
|
-
|
|
431
|
-
---
|
|
432
|
-
|
|
433
|
-
### Phase 2: Module Loop Optimization (Week 2)
|
|
434
|
-
|
|
435
|
-
1. ✅ Refactor Step 03 to use 1 agent per module (or 1 for all)
|
|
436
|
-
- Agent executes 03a → 03b → 03c → 03d internally
|
|
437
|
-
- Display progress checkpoints
|
|
438
|
-
- Single ba-writer call per module
|
|
439
|
-
|
|
440
|
-
**Expected impact:** 60% reduction in agent count
|
|
441
|
-
|
|
442
|
-
---
|
|
443
|
-
|
|
444
|
-
### Phase 3: Handoff & Deploy Optimization (Week 3)
|
|
445
|
-
|
|
446
|
-
1. ✅ Consolidate Step 05a to 1 agent for all modules
|
|
447
|
-
- Batch handoff generation
|
|
448
|
-
- Progress checkpoints
|
|
449
|
-
|
|
450
|
-
2. ✅ Consolidate Step 05b to 1 agent for all artifacts
|
|
451
|
-
- PRD generation + HTML deploy + manifest
|
|
452
|
-
|
|
453
|
-
**Expected impact:** 70% reduction in agent count
|
|
454
|
-
|
|
455
|
-
---
|
|
456
|
-
|
|
457
|
-
### Phase 4: Cache Warming (Week 4)
|
|
458
|
-
|
|
459
|
-
1. ✅ Implement pre-loading in Step 00
|
|
460
|
-
2. ✅ Implement context caching in Step 03
|
|
461
|
-
3. ✅ Monitor cache hit rates
|
|
462
|
-
|
|
463
|
-
**Expected impact:** 15-20% token savings
|
|
464
|
-
|
|
465
|
-
---
|
|
466
|
-
|
|
467
|
-
## Monitoring & Success Criteria
|
|
468
|
-
|
|
469
|
-
### Before Optimization (Baseline)
|
|
470
|
-
|
|
471
|
-
```
|
|
472
|
-
Session: Business-analyse for HumanResources application
|
|
473
|
-
- Total agents: 24
|
|
474
|
-
- Ultra-short agents: 4
|
|
475
|
-
- JSONL lines: 1540
|
|
476
|
-
- Tokens (largest agent): 106,881
|
|
477
|
-
- Cache efficiency: 98.5% read (inefficient)
|
|
478
|
-
```
|
|
479
|
-
|
|
480
|
-
### After Optimization — Agent Pooling (Target)
|
|
481
|
-
|
|
482
|
-
```
|
|
483
|
-
Session: Business-analyse for HumanResources application
|
|
484
|
-
- Total agents: 5-7
|
|
485
|
-
- Ultra-short agents: 0
|
|
486
|
-
- JSONL lines: <500
|
|
487
|
-
- Tokens (largest agent): <80,000
|
|
488
|
-
- Cache efficiency: 50-60% read (optimal)
|
|
489
|
-
```
|
|
490
|
-
|
|
491
|
-
### After Optimization — Team Mode with Parallel Layers (Target, RECOMMENDED)
|
|
492
|
-
|
|
493
|
-
```
|
|
494
|
-
Session: Business-analyse for HumanResources application (4 modules, 3 layers)
|
|
495
|
-
- Team lead context: <50% (never exhausted)
|
|
496
|
-
- Module agents: 4 (1 per module, parallel within layers, each ~40-60% context)
|
|
497
|
-
- Consolidation agent: 1 (~30-40% context)
|
|
498
|
-
- Handoff agent: 1 (~40-50% context)
|
|
499
|
-
- Total agents: 6
|
|
500
|
-
- Context exhaustion: ZERO (each agent has fresh context window)
|
|
501
|
-
- User interaction: Propose & Review (user validates complete proposals)
|
|
502
|
-
- Wall-clock: ~50% reduction vs sequential (layer 0 runs 2 modules in parallel)
|
|
503
|
-
- Cross-module quality: pre-injection + relay + consistency check
|
|
504
|
-
```
|
|
505
|
-
|
|
506
|
-
### Success Metrics
|
|
507
|
-
|
|
508
|
-
- ✅ Agent count reduced by 75-88%
|
|
509
|
-
- ✅ Ultra-short agents eliminated
|
|
510
|
-
- ✅ JSONL complexity reduced by 68-81%
|
|
511
|
-
- ✅ **Context exhaustion eliminated** (team mode)
|
|
512
|
-
- ✅ Token usage distributed across parallel agents (team mode)
|
|
513
|
-
- ✅ **Wall-clock time reduced by ~50-66%** (parallel layer execution)
|
|
514
|
-
- ✅ **Cross-module consistency guaranteed** (pre-injection + relay + consistency check)
|
|
515
|
-
- ✅ Same or better output quality (cross-module coordination improves integration)
|
|
516
|
-
|
|
517
|
-
---
|
|
518
|
-
|
|
519
|
-
## References
|
|
520
|
-
|
|
521
|
-
- **Analysis Report:** Session 03b76b8b-ea1c-4f1e-a636-bd46b0c33e02
|
|
522
|
-
- **File Size Management:** See ba-writer.md § File Size Management
|
|
523
|
-
- **Cache Strategy:** See MEMORY.md § Cache Warming Strategy
|
|
524
|
-
- **Agent Types:** See Task tool documentation
|
|
525
|
-
|
|
526
|
-
---
|
|
527
|
-
|
|
528
|
-
## Quick Reference Card
|
|
529
|
-
|
|
530
|
-
### ✅ DO
|
|
531
|
-
|
|
532
|
-
- Reuse agents for sequential operations
|
|
533
|
-
- Spawn 1 agent per logical phase (not per sub-step)
|
|
534
|
-
- Spawn ALL same-layer agents in parallel (one message, multiple Task calls)
|
|
535
|
-
- Pre-inject coordination notes for parallel agents
|
|
536
|
-
- Handle cross-module queries via relay protocol
|
|
537
|
-
- Run layer consistency check after parallel approvals
|
|
538
|
-
- Do summaries/formatting inline
|
|
539
|
-
- Pre-load context at phase start
|
|
540
|
-
- Display progress checkpoints
|
|
541
|
-
- Use ba-writer for all JSON operations
|
|
542
|
-
|
|
543
|
-
### ❌ DON'T
|
|
544
|
-
|
|
545
|
-
- Spawn agents for trivial tasks (<20 lines output)
|
|
546
|
-
- Spawn new agent for each step transition
|
|
547
|
-
- Spawn agents for sequential dependencies
|
|
548
|
-
- Spawn agents from different dependency layers in parallel
|
|
549
|
-
- Re-read same files multiple times
|
|
550
|
-
- Create summary-only agents
|
|
551
|
-
- Spawn more than N+2 agents per BA session (N modules + consolidation + handoff)
|
|
552
|
-
|
|
553
|
-
---
|
|
554
|
-
|
|
555
|
-
**Last Updated:** 2026-02-15
|
|
556
|
-
**Version:** 2.0 (parallel layer execution)
|
|
557
|
-
**Author:** SmartStack CLI Team
|
|
1
|
+
# Agent Pooling Best Practices
|
|
2
|
+
|
|
3
|
+
> **Objective:** Minimize agent proliferation and token waste by reusing agents strategically.
|
|
4
|
+
|
|
5
|
+
## Problem Statement
|
|
6
|
+
|
|
7
|
+
**Observed issue:** Business-analyse sessions create 20-24 subagents, many of which are ultra-short (4-13 lines) for trivial tasks like summaries or consolidations.
|
|
8
|
+
|
|
9
|
+
**Impact:**
|
|
10
|
+
- Organizational overhead (tracking 24 agents)
|
|
11
|
+
- Token waste (spawning + context setup for each agent)
|
|
12
|
+
- Complexity in debugging and monitoring
|
|
13
|
+
- 1540+ lines of JSONL logs for a single session
|
|
14
|
+
|
|
15
|
+
**Goal:** Reduce to 5-7 agents per session while maintaining quality and parallelism.
|
|
16
|
+
|
|
17
|
+
---
|
|
18
|
+
|
|
19
|
+
## Agent Pooling Strategy
|
|
20
|
+
|
|
21
|
+
### Core Principle
|
|
22
|
+
|
|
23
|
+
> **Reuse agents for sequential operations, spawn new agents only for genuine parallelism.**
|
|
24
|
+
|
|
25
|
+
### When to Spawn a NEW Agent
|
|
26
|
+
|
|
27
|
+
✅ **Spawn new agent when:**
|
|
28
|
+
1. **Parallel operations** - Multiple independent tasks can run simultaneously
|
|
29
|
+
- Example: Specifying 2+ modules in parallel (step-03)
|
|
30
|
+
- Example: Reading multiple PRD files concurrently (step-05)
|
|
31
|
+
|
|
32
|
+
2. **Domain separation** - Task requires fundamentally different expertise
|
|
33
|
+
- Example: ba-writer for JSON writes, Explore for codebase search
|
|
34
|
+
- Example: MCP healthcheck vs. code generation
|
|
35
|
+
|
|
36
|
+
3. **Long-running tasks** - Task will take multiple turns and could block main flow
|
|
37
|
+
- Example: Deep codebase exploration with 10+ searches
|
|
38
|
+
- Example: Complex validation requiring many file reads
|
|
39
|
+
|
|
40
|
+
### When to REUSE Existing Agent
|
|
41
|
+
|
|
42
|
+
✅ **Reuse agent when:**
|
|
43
|
+
1. **Sequential operations** - Tasks depend on previous results
|
|
44
|
+
- Example: Read module 1 → process → read module 2 → process
|
|
45
|
+
- Example: Validate → fix → re-validate
|
|
46
|
+
|
|
47
|
+
2. **Same domain** - Task uses same tools and context as previous
|
|
48
|
+
- Example: Multiple ba-writer calls in step-05 module loop
|
|
49
|
+
- Example: Multiple ba-reader calls for different modules
|
|
50
|
+
|
|
51
|
+
3. **Short tasks** - Task will complete in 1-2 turns
|
|
52
|
+
- Example: Generate summary (inline, not separate agent)
|
|
53
|
+
- Example: Format output (inline, not separate agent)
|
|
54
|
+
|
|
55
|
+
4. **Consolidation** - Aggregating results from multiple sources
|
|
56
|
+
- Example: Combine module summaries into master (inline)
|
|
57
|
+
- Example: Build dependency graph from module data (inline)
|
|
58
|
+
|
|
59
|
+
---
|
|
60
|
+
|
|
61
|
+
## Anti-Patterns to Avoid
|
|
62
|
+
|
|
63
|
+
### ❌ Anti-Pattern 1: Ultra-Short Summary Agents
|
|
64
|
+
|
|
65
|
+
**Bad:**
|
|
66
|
+
```
|
|
67
|
+
FOR each module:
|
|
68
|
+
Spawn agent "summarize-module-{i}"
|
|
69
|
+
Agent reads module → generates 4-line summary → exits
|
|
70
|
+
```
|
|
71
|
+
|
|
72
|
+
**Result:** 5 agents created for 20 total lines of output
|
|
73
|
+
|
|
74
|
+
**Good:**
|
|
75
|
+
```
|
|
76
|
+
Main agent reads all modules sequentially
|
|
77
|
+
Generates summaries inline
|
|
78
|
+
Returns consolidated result
|
|
79
|
+
```
|
|
80
|
+
|
|
81
|
+
**Result:** 1 agent, same output, 80% fewer tokens
|
|
82
|
+
|
|
83
|
+
---
|
|
84
|
+
|
|
85
|
+
### ❌ Anti-Pattern 2: Spawning for Every Step Transition
|
|
86
|
+
|
|
87
|
+
**Bad:**
|
|
88
|
+
```
|
|
89
|
+
Step 03a: Spawn agent-data
|
|
90
|
+
→ Agent completes → exits
|
|
91
|
+
Step 03b: Spawn agent-ui
|
|
92
|
+
→ Agent completes → exits
|
|
93
|
+
Step 03c: Spawn agent-compile
|
|
94
|
+
→ Agent completes → exits
|
|
95
|
+
```
|
|
96
|
+
|
|
97
|
+
**Result:** 3 agents per module, 15 agents for 5 modules
|
|
98
|
+
|
|
99
|
+
**Good:**
|
|
100
|
+
```
|
|
101
|
+
Step 03: Spawn ONE agent-module-spec
|
|
102
|
+
→ Agent executes 03a → 03b → 03c internally
|
|
103
|
+
→ Agent exits after module complete
|
|
104
|
+
```
|
|
105
|
+
|
|
106
|
+
**Result:** 5 agents for 5 modules (1 per module)
|
|
107
|
+
|
|
108
|
+
---
|
|
109
|
+
|
|
110
|
+
### ❌ Anti-Pattern 3: Parallel Agents for Sequential Dependency
|
|
111
|
+
|
|
112
|
+
**Bad:**
|
|
113
|
+
```
|
|
114
|
+
Spawn agent-read-master (reads master feature.json)
|
|
115
|
+
Spawn agent-read-module-1 (reads module 1 feature.json)
|
|
116
|
+
Spawn agent-consolidate (waits for both, then merges)
|
|
117
|
+
```
|
|
118
|
+
|
|
119
|
+
**Result:** 3 agents when 2 have sequential dependency
|
|
120
|
+
|
|
121
|
+
**Good:**
|
|
122
|
+
```
|
|
123
|
+
Spawn agent-consolidate
|
|
124
|
+
→ Reads master
|
|
125
|
+
→ Reads module 1
|
|
126
|
+
→ Merges inline
|
|
127
|
+
→ Returns result
|
|
128
|
+
```
|
|
129
|
+
|
|
130
|
+
**Result:** 1 agent, same output, faster execution
|
|
131
|
+
|
|
132
|
+
---
|
|
133
|
+
|
|
134
|
+
## Implementation Patterns
|
|
135
|
+
|
|
136
|
+
### Pattern 1: Module Loop with Single Agent
|
|
137
|
+
|
|
138
|
+
**Scenario:** Step 03 - Specify 5 modules sequentially
|
|
139
|
+
|
|
140
|
+
**Recommended:**
|
|
141
|
+
```
|
|
142
|
+
1. Main flow spawns ONE agent: "ba-module-orchestrator"
|
|
143
|
+
2. Agent receives: modules[], currentModuleIndex
|
|
144
|
+
3. Agent executes loop:
|
|
145
|
+
FOR i = 0; i < modules.length; i++:
|
|
146
|
+
Execute step-03a (data)
|
|
147
|
+
Execute step-03b (ui)
|
|
148
|
+
Execute step-03c (compile)
|
|
149
|
+
Execute step-03d (validate)
|
|
150
|
+
Write module feature.json
|
|
151
|
+
Advance to next module
|
|
152
|
+
4. Agent exits when all modules specified
|
|
153
|
+
```
|
|
154
|
+
|
|
155
|
+
**Result:** 1 agent for all 5 modules (vs. 20 agents in current implementation)
|
|
156
|
+
|
|
157
|
+
**Exception:** If modules have NO dependencies and can be specified in parallel:
|
|
158
|
+
- Spawn 2-3 agents maximum
|
|
159
|
+
- Each agent handles 1-2 modules
|
|
160
|
+
- Results merged by main flow
|
|
161
|
+
|
|
162
|
+
---
|
|
163
|
+
|
|
164
|
+
### Pattern 2: Batch Operations with Checkpoints
|
|
165
|
+
|
|
166
|
+
**Scenario:** Step 05a - Generate handoff for 5 modules
|
|
167
|
+
|
|
168
|
+
**Recommended:**
|
|
169
|
+
```
|
|
170
|
+
1. Main flow spawns ONE agent: "ba-handoff-generator"
|
|
171
|
+
2. Agent receives: modules[], master feature.json
|
|
172
|
+
3. Agent executes batch:
|
|
173
|
+
FOR each module:
|
|
174
|
+
Calculate complexity
|
|
175
|
+
Map files to create (7 categories)
|
|
176
|
+
Map business rules to code
|
|
177
|
+
Generate API endpoint summary
|
|
178
|
+
Write to module feature.json
|
|
179
|
+
CHECKPOINT: Display progress "✓ Module {i+1}/5 complete"
|
|
180
|
+
4. After ALL modules: Write master handoff
|
|
181
|
+
5. Agent exits
|
|
182
|
+
```
|
|
183
|
+
|
|
184
|
+
**Result:** 1 agent for all handoff generation (vs. 5-10 agents in current)
|
|
185
|
+
|
|
186
|
+
**Checkpoint benefits:**
|
|
187
|
+
- User sees progress
|
|
188
|
+
- Agent can be interrupted/resumed if needed
|
|
189
|
+
- Failures isolated to specific module
|
|
190
|
+
|
|
191
|
+
---
|
|
192
|
+
|
|
193
|
+
### Pattern 3: Parallel Domain Operations
|
|
194
|
+
|
|
195
|
+
**Scenario:** Step 00 - Initialize schemas + scan existing features + create config
|
|
196
|
+
|
|
197
|
+
**Recommended:**
|
|
198
|
+
```
|
|
199
|
+
1. Spawn agent-deploy-schemas (deploy 9 schema files)
|
|
200
|
+
2. Spawn agent-scan-features (glob + read existing features)
|
|
201
|
+
3. Main flow waits for both
|
|
202
|
+
4. Main flow creates config (inline)
|
|
203
|
+
5. Main flow creates master feature.json (inline via ba-writer)
|
|
204
|
+
```
|
|
205
|
+
|
|
206
|
+
**Result:** 2 agents for genuinely parallel tasks
|
|
207
|
+
|
|
208
|
+
**Why parallel:**
|
|
209
|
+
- Schema deployment and feature scanning are independent
|
|
210
|
+
- Both are I/O-bound (file operations)
|
|
211
|
+
- No shared state until merge
|
|
212
|
+
|
|
213
|
+
---
|
|
214
|
+
|
|
215
|
+
### Pattern 4: Layer-Based Parallel Spawn (RECOMMENDED for Step 03)
|
|
216
|
+
|
|
217
|
+
**Scenario:** Step 03 - Specify modules across dependency layers
|
|
218
|
+
|
|
219
|
+
**Recommended:**
|
|
220
|
+
```
|
|
221
|
+
FOR each layer in dependencyGraph.layers:
|
|
222
|
+
|
|
223
|
+
1. Pre-analyze: Identify cross-module touchpoints between modules in this layer
|
|
224
|
+
→ Shared entities, FK overlaps, naming conventions, shared lookups
|
|
225
|
+
→ Build coordinationNotes per module
|
|
226
|
+
|
|
227
|
+
2. Spawn ALL layer agents in parallel (1 Task per module, ALL in ONE message)
|
|
228
|
+
→ Each agent receives: module context + completedModulesSummary + coordinationNotes
|
|
229
|
+
|
|
230
|
+
3. Handle cross-module queries during execution (team lead relays)
|
|
231
|
+
→ Agent sends CROSS_MODULE_QUERY → team lead routes → answer forwarded
|
|
232
|
+
|
|
233
|
+
4. Wait for ALL PROPOSAL_READY from this layer
|
|
234
|
+
|
|
235
|
+
5. Display cross-module interaction analysis (bird's-eye view)
|
|
236
|
+
→ Detected interactions, resolved queries, attention points
|
|
237
|
+
|
|
238
|
+
6. Review each module individually with user (quality-first)
|
|
239
|
+
→ Approve, revise, or see detail per module
|
|
240
|
+
|
|
241
|
+
7. Layer consistency check (FK names, permissions, i18n, seed data IDs)
|
|
242
|
+
→ Auto-fix if inconsistency found
|
|
243
|
+
|
|
244
|
+
8. Shutdown ALL layer agents
|
|
245
|
+
|
|
246
|
+
9. Rebuild completedModulesSummary for next layer
|
|
247
|
+
|
|
248
|
+
10. Proceed to next layer
|
|
249
|
+
```
|
|
250
|
+
|
|
251
|
+
**Result:**
|
|
252
|
+
- 4 agents for 4 modules (same count as sequential)
|
|
253
|
+
- But wall-clock reduced by ~50-66% for apps with parallel layers
|
|
254
|
+
- Cross-module consistency guaranteed by pre-injection + relay + consistency check
|
|
255
|
+
- Each agent has fresh context (zero accumulation)
|
|
256
|
+
|
|
257
|
+
**Why this pattern works:**
|
|
258
|
+
- Dependency layers already computed by step-02 topological sort
|
|
259
|
+
- Modules in the same layer have NO direct dependencies (by definition)
|
|
260
|
+
- Pre-injection prevents most cross-module issues before they happen
|
|
261
|
+
- Runtime relay catches unexpected edge cases
|
|
262
|
+
- Consistency check catches anything missed by both mechanisms
|
|
263
|
+
|
|
264
|
+
---
|
|
265
|
+
|
|
266
|
+
## Metrics & Monitoring
|
|
267
|
+
|
|
268
|
+
### Target Metrics (per BA session)
|
|
269
|
+
|
|
270
|
+
| Metric | Current | Target (agent pooling) | Target (team mode) | Improvement |
|
|
271
|
+
|--------|---------|----------------------|-------------------|-------------|
|
|
272
|
+
| Total agents | 24 | 5-7 | 3-6 (1/module + consolidation + handoff) | 75-88% reduction |
|
|
273
|
+
| Ultra-short agents (<20 lines) | 4 | 0 | 0 | 100% elimination |
|
|
274
|
+
| Agents per module loop | 4-5 | 1 | 1 (autonomous, full context) | 80% reduction |
|
|
275
|
+
| JSONL log lines | 1540 | <500 | <300 | 68-81% reduction |
|
|
276
|
+
| Context exhaustion risk | HIGH (3%) | MEDIUM | **ZERO** (each agent fresh) | Eliminated |
|
|
277
|
+
| Max context per agent | 100% (single conv) | ~80% | ~40-60% (one module only) | 40-60% reduction |
|
|
278
|
+
|
|
279
|
+
### Agent Spawn Decision Checklist
|
|
280
|
+
|
|
281
|
+
Before spawning a new agent, ask:
|
|
282
|
+
|
|
283
|
+
1. ☐ Can this be done inline in current agent? (80% of cases: YES)
|
|
284
|
+
2. ☐ Can I reuse an existing agent? (10% of cases: YES)
|
|
285
|
+
3. ☐ Is this truly parallel? (5% of cases: YES)
|
|
286
|
+
4. ☐ Is this a different domain? (5% of cases: YES)
|
|
287
|
+
|
|
288
|
+
If ALL answers are NO → spawn new agent.
|
|
289
|
+
Otherwise → inline or reuse.
|
|
290
|
+
|
|
291
|
+
---
|
|
292
|
+
|
|
293
|
+
## Step-by-Step Migration Guide
|
|
294
|
+
|
|
295
|
+
### Step 00: Init
|
|
296
|
+
|
|
297
|
+
**Current:** 3-4 agents (schema deploy, scan, config, create)
|
|
298
|
+
**Target:** 1-2 agents
|
|
299
|
+
|
|
300
|
+
**Changes:**
|
|
301
|
+
- Inline config creation
|
|
302
|
+
- Inline master feature.json creation via ba-writer
|
|
303
|
+
- Keep schema deployment as separate agent (parallel with scan)
|
|
304
|
+
|
|
305
|
+
---
|
|
306
|
+
|
|
307
|
+
### Step 01: Cadrage
|
|
308
|
+
|
|
309
|
+
**Current:** 2-3 agents (questionnaire, suggestions, write)
|
|
310
|
+
**Target:** 1 agent
|
|
311
|
+
|
|
312
|
+
**Changes:**
|
|
313
|
+
- ONE agent executes entire cadrage
|
|
314
|
+
- Inline questionnaire processing
|
|
315
|
+
- Inline suggestion generation
|
|
316
|
+
- Single ba-writer call at end
|
|
317
|
+
|
|
318
|
+
---
|
|
319
|
+
|
|
320
|
+
### Step 02: Decomposition
|
|
321
|
+
|
|
322
|
+
**Current:** 3-4 agents (analysis, dependency graph, client checkpoint, write)
|
|
323
|
+
**Target:** 1 agent
|
|
324
|
+
|
|
325
|
+
**Changes:**
|
|
326
|
+
- ONE agent for decomposition
|
|
327
|
+
- Inline dependency graph calculation
|
|
328
|
+
- Inline client checkpoint (AskUserQuestion)
|
|
329
|
+
- Single ba-writer call for modules + dependencyGraph
|
|
330
|
+
|
|
331
|
+
---
|
|
332
|
+
|
|
333
|
+
### Step 03: Module Specification (BIGGEST IMPACT)
|
|
334
|
+
|
|
335
|
+
**Current:** 4-5 agents PER module × 5 modules = 20-25 agents
|
|
336
|
+
**Target:** 1 agent per module, parallel within dependency layers
|
|
337
|
+
|
|
338
|
+
**Implementation (team mode with parallel layers):**
|
|
339
|
+
- ONE agent PER module, each executing 03a → 03b → 03c → 03d autonomously
|
|
340
|
+
- Modules in the same dependency layer spawn **simultaneously** (parallel)
|
|
341
|
+
- Modules in different layers spawn **sequentially** (dependency order)
|
|
342
|
+
- Team lead pre-injects cross-module coordination notes before spawning
|
|
343
|
+
- Runtime cross-module queries relayed by team lead between parallel agents
|
|
344
|
+
- Layer consistency check after all modules in a layer are approved
|
|
345
|
+
|
|
346
|
+
**Example (4 modules, 3 layers):**
|
|
347
|
+
```
|
|
348
|
+
Layer 0: [Customers, Products] → 2 agents in parallel
|
|
349
|
+
Layer 1: [Orders] → 1 agent (after layer 0 complete)
|
|
350
|
+
Layer 2: [Invoices] → 1 agent (after layer 1 complete)
|
|
351
|
+
Total: 4 agents, but wall-clock = 3 layers (not 4 sequential)
|
|
352
|
+
```
|
|
353
|
+
|
|
354
|
+
---
|
|
355
|
+
|
|
356
|
+
### Step 04: Consolidation
|
|
357
|
+
|
|
358
|
+
**Current:** 2-3 agents (cross-module validation, E2E flows, write)
|
|
359
|
+
**Target:** 1 agent
|
|
360
|
+
|
|
361
|
+
**Changes:**
|
|
362
|
+
- ONE agent for consolidation
|
|
363
|
+
- Inline cross-module interaction detection
|
|
364
|
+
- Inline E2E flow generation
|
|
365
|
+
- Single ba-writer call
|
|
366
|
+
|
|
367
|
+
---
|
|
368
|
+
|
|
369
|
+
### Step 05: Handoff & Deploy
|
|
370
|
+
|
|
371
|
+
**Current:** 5-7 agents (handoff per module + master + PRD generation + HTML deploy)
|
|
372
|
+
**Target:** 2-3 agents
|
|
373
|
+
|
|
374
|
+
**Changes:**
|
|
375
|
+
- ONE agent for all handoff generation (modules + master)
|
|
376
|
+
- ONE agent for artifact deployment (PRD + HTML + manifest)
|
|
377
|
+
- Optional: ONE agent for validation (step-05c)
|
|
378
|
+
|
|
379
|
+
---
|
|
380
|
+
|
|
381
|
+
## Cache Warming Strategy
|
|
382
|
+
|
|
383
|
+
> **Complement to agent pooling:** Pre-load frequently-used files to reduce redundant reads.
|
|
384
|
+
|
|
385
|
+
### Step 00: Pre-Load Core Context
|
|
386
|
+
|
|
387
|
+
```
|
|
388
|
+
At Step-00 initialization:
|
|
389
|
+
1. Read + cache all 9 schemas
|
|
390
|
+
2. Read + cache master feature template
|
|
391
|
+
3. Read + cache questionnaire templates
|
|
392
|
+
4. Read + cache suggestion catalog
|
|
393
|
+
|
|
394
|
+
Result: 90% of Step-01 context pre-loaded, no re-reads needed
|
|
395
|
+
```
|
|
396
|
+
|
|
397
|
+
### Step 03: Pre-Load Module Context
|
|
398
|
+
|
|
399
|
+
```
|
|
400
|
+
At start of module loop:
|
|
401
|
+
1. Read + cache application context (from master)
|
|
402
|
+
2. Read + cache completed module summaries (via ba-reader)
|
|
403
|
+
3. Read + cache shared patterns and templates
|
|
404
|
+
|
|
405
|
+
Result: 70% of per-module context pre-loaded
|
|
406
|
+
```
|
|
407
|
+
|
|
408
|
+
### Benefits
|
|
409
|
+
|
|
410
|
+
- 15-20% token savings across session
|
|
411
|
+
- Faster agent execution (no wait for file reads)
|
|
412
|
+
- Reduced risk of file read failures
|
|
413
|
+
- Better cache hit rates (98.5% cache read in analysis → 50% reduction with warming)
|
|
414
|
+
|
|
415
|
+
---
|
|
416
|
+
|
|
417
|
+
## Rollout Plan
|
|
418
|
+
|
|
419
|
+
### Phase 1: Quick Wins (Week 1)
|
|
420
|
+
|
|
421
|
+
1. ✅ Eliminate ultra-short summary agents
|
|
422
|
+
- Make summaries inline in calling agent
|
|
423
|
+
- Remove dedicated "summary-request" agents
|
|
424
|
+
|
|
425
|
+
2. ✅ Consolidate Step 01 + 02 to 1 agent each
|
|
426
|
+
- Combine questionnaire + suggestions + write
|
|
427
|
+
- Combine decomposition + dependency + write
|
|
428
|
+
|
|
429
|
+
**Expected impact:** 30% reduction in agent count
|
|
430
|
+
|
|
431
|
+
---
|
|
432
|
+
|
|
433
|
+
### Phase 2: Module Loop Optimization (Week 2)
|
|
434
|
+
|
|
435
|
+
1. ✅ Refactor Step 03 to use 1 agent per module (or 1 for all)
|
|
436
|
+
- Agent executes 03a → 03b → 03c → 03d internally
|
|
437
|
+
- Display progress checkpoints
|
|
438
|
+
- Single ba-writer call per module
|
|
439
|
+
|
|
440
|
+
**Expected impact:** 60% reduction in agent count
|
|
441
|
+
|
|
442
|
+
---
|
|
443
|
+
|
|
444
|
+
### Phase 3: Handoff & Deploy Optimization (Week 3)
|
|
445
|
+
|
|
446
|
+
1. ✅ Consolidate Step 05a to 1 agent for all modules
|
|
447
|
+
- Batch handoff generation
|
|
448
|
+
- Progress checkpoints
|
|
449
|
+
|
|
450
|
+
2. ✅ Consolidate Step 05b to 1 agent for all artifacts
|
|
451
|
+
- PRD generation + HTML deploy + manifest
|
|
452
|
+
|
|
453
|
+
**Expected impact:** 70% reduction in agent count
|
|
454
|
+
|
|
455
|
+
---
|
|
456
|
+
|
|
457
|
+
### Phase 4: Cache Warming (Week 4)
|
|
458
|
+
|
|
459
|
+
1. ✅ Implement pre-loading in Step 00
|
|
460
|
+
2. ✅ Implement context caching in Step 03
|
|
461
|
+
3. ✅ Monitor cache hit rates
|
|
462
|
+
|
|
463
|
+
**Expected impact:** 15-20% token savings
|
|
464
|
+
|
|
465
|
+
---
|
|
466
|
+
|
|
467
|
+
## Monitoring & Success Criteria
|
|
468
|
+
|
|
469
|
+
### Before Optimization (Baseline)
|
|
470
|
+
|
|
471
|
+
```
|
|
472
|
+
Session: Business-analyse for HumanResources application
|
|
473
|
+
- Total agents: 24
|
|
474
|
+
- Ultra-short agents: 4
|
|
475
|
+
- JSONL lines: 1540
|
|
476
|
+
- Tokens (largest agent): 106,881
|
|
477
|
+
- Cache efficiency: 98.5% read (inefficient)
|
|
478
|
+
```
|
|
479
|
+
|
|
480
|
+
### After Optimization — Agent Pooling (Target)
|
|
481
|
+
|
|
482
|
+
```
|
|
483
|
+
Session: Business-analyse for HumanResources application
|
|
484
|
+
- Total agents: 5-7
|
|
485
|
+
- Ultra-short agents: 0
|
|
486
|
+
- JSONL lines: <500
|
|
487
|
+
- Tokens (largest agent): <80,000
|
|
488
|
+
- Cache efficiency: 50-60% read (optimal)
|
|
489
|
+
```
|
|
490
|
+
|
|
491
|
+
### After Optimization — Team Mode with Parallel Layers (Target, RECOMMENDED)
|
|
492
|
+
|
|
493
|
+
```
|
|
494
|
+
Session: Business-analyse for HumanResources application (4 modules, 3 layers)
|
|
495
|
+
- Team lead context: <50% (never exhausted)
|
|
496
|
+
- Module agents: 4 (1 per module, parallel within layers, each ~40-60% context)
|
|
497
|
+
- Consolidation agent: 1 (~30-40% context)
|
|
498
|
+
- Handoff agent: 1 (~40-50% context)
|
|
499
|
+
- Total agents: 6
|
|
500
|
+
- Context exhaustion: ZERO (each agent has fresh context window)
|
|
501
|
+
- User interaction: Propose & Review (user validates complete proposals)
|
|
502
|
+
- Wall-clock: ~50% reduction vs sequential (layer 0 runs 2 modules in parallel)
|
|
503
|
+
- Cross-module quality: pre-injection + relay + consistency check
|
|
504
|
+
```
|
|
505
|
+
|
|
506
|
+
### Success Metrics
|
|
507
|
+
|
|
508
|
+
- ✅ Agent count reduced by 75-88%
|
|
509
|
+
- ✅ Ultra-short agents eliminated
|
|
510
|
+
- ✅ JSONL complexity reduced by 68-81%
|
|
511
|
+
- ✅ **Context exhaustion eliminated** (team mode)
|
|
512
|
+
- ✅ Token usage distributed across parallel agents (team mode)
|
|
513
|
+
- ✅ **Wall-clock time reduced by ~50-66%** (parallel layer execution)
|
|
514
|
+
- ✅ **Cross-module consistency guaranteed** (pre-injection + relay + consistency check)
|
|
515
|
+
- ✅ Same or better output quality (cross-module coordination improves integration)
|
|
516
|
+
|
|
517
|
+
---
|
|
518
|
+
|
|
519
|
+
## References
|
|
520
|
+
|
|
521
|
+
- **Analysis Report:** Session 03b76b8b-ea1c-4f1e-a636-bd46b0c33e02
|
|
522
|
+
- **File Size Management:** See ba-writer.md § File Size Management
|
|
523
|
+
- **Cache Strategy:** See MEMORY.md § Cache Warming Strategy
|
|
524
|
+
- **Agent Types:** See Task tool documentation
|
|
525
|
+
|
|
526
|
+
---
|
|
527
|
+
|
|
528
|
+
## Quick Reference Card
|
|
529
|
+
|
|
530
|
+
### ✅ DO
|
|
531
|
+
|
|
532
|
+
- Reuse agents for sequential operations
|
|
533
|
+
- Spawn 1 agent per logical phase (not per sub-step)
|
|
534
|
+
- Spawn ALL same-layer agents in parallel (one message, multiple Task calls)
|
|
535
|
+
- Pre-inject coordination notes for parallel agents
|
|
536
|
+
- Handle cross-module queries via relay protocol
|
|
537
|
+
- Run layer consistency check after parallel approvals
|
|
538
|
+
- Do summaries/formatting inline
|
|
539
|
+
- Pre-load context at phase start
|
|
540
|
+
- Display progress checkpoints
|
|
541
|
+
- Use ba-writer for all JSON operations
|
|
542
|
+
|
|
543
|
+
### ❌ DON'T
|
|
544
|
+
|
|
545
|
+
- Spawn agents for trivial tasks (<20 lines output)
|
|
546
|
+
- Spawn new agent for each step transition
|
|
547
|
+
- Spawn agents for sequential dependencies
|
|
548
|
+
- Spawn agents from different dependency layers in parallel
|
|
549
|
+
- Re-read same files multiple times
|
|
550
|
+
- Create summary-only agents
|
|
551
|
+
- Spawn more than N+2 agents per BA session (N modules + consolidation + handoff)
|
|
552
|
+
|
|
553
|
+
---
|
|
554
|
+
|
|
555
|
+
**Last Updated:** 2026-02-15
|
|
556
|
+
**Version:** 2.0 (parallel layer execution)
|
|
557
|
+
**Author:** SmartStack CLI Team
|