@accelerationguy/accel 1.0.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/CLAUDE.md +19 -0
- package/LICENSE +33 -0
- package/README.md +275 -0
- package/bin/install.js +661 -0
- package/docs/getting-started.md +164 -0
- package/docs/module-guide.md +139 -0
- package/modules/drive/LICENSE +21 -0
- package/modules/drive/PAUL-VS-GSD.md +171 -0
- package/modules/drive/README.md +555 -0
- package/modules/drive/assets/terminal.svg +67 -0
- package/modules/drive/bin/install.js +210 -0
- package/modules/drive/integration.js +76 -0
- package/modules/drive/package.json +38 -0
- package/modules/drive/src/commands/add-phase.md +36 -0
- package/modules/drive/src/commands/apply.md +83 -0
- package/modules/drive/src/commands/assumptions.md +37 -0
- package/modules/drive/src/commands/audit.md +57 -0
- package/modules/drive/src/commands/complete-milestone.md +36 -0
- package/modules/drive/src/commands/config.md +175 -0
- package/modules/drive/src/commands/consider-issues.md +41 -0
- package/modules/drive/src/commands/discover.md +48 -0
- package/modules/drive/src/commands/discuss-milestone.md +33 -0
- package/modules/drive/src/commands/discuss.md +34 -0
- package/modules/drive/src/commands/flows.md +73 -0
- package/modules/drive/src/commands/handoff.md +201 -0
- package/modules/drive/src/commands/help.md +525 -0
- package/modules/drive/src/commands/init.md +54 -0
- package/modules/drive/src/commands/map-codebase.md +34 -0
- package/modules/drive/src/commands/milestone.md +34 -0
- package/modules/drive/src/commands/pause.md +44 -0
- package/modules/drive/src/commands/plan-fix.md +216 -0
- package/modules/drive/src/commands/plan.md +36 -0
- package/modules/drive/src/commands/progress.md +138 -0
- package/modules/drive/src/commands/register.md +29 -0
- package/modules/drive/src/commands/remove-phase.md +37 -0
- package/modules/drive/src/commands/research-phase.md +209 -0
- package/modules/drive/src/commands/research.md +47 -0
- package/modules/drive/src/commands/resume.md +49 -0
- package/modules/drive/src/commands/status.md +78 -0
- package/modules/drive/src/commands/unify.md +87 -0
- package/modules/drive/src/commands/verify.md +60 -0
- package/modules/drive/src/references/checkpoints.md +234 -0
- package/modules/drive/src/references/context-management.md +219 -0
- package/modules/drive/src/references/git-strategy.md +206 -0
- package/modules/drive/src/references/loop-phases.md +254 -0
- package/modules/drive/src/references/plan-format.md +263 -0
- package/modules/drive/src/references/quality-principles.md +152 -0
- package/modules/drive/src/references/research-quality-control.md +247 -0
- package/modules/drive/src/references/sonarqube-integration.md +244 -0
- package/modules/drive/src/references/specialized-workflow-integration.md +186 -0
- package/modules/drive/src/references/subagent-criteria.md +179 -0
- package/modules/drive/src/references/tdd.md +219 -0
- package/modules/drive/src/references/work-units.md +161 -0
- package/modules/drive/src/rules/commands.md +108 -0
- package/modules/drive/src/rules/references.md +107 -0
- package/modules/drive/src/rules/style.md +123 -0
- package/modules/drive/src/rules/templates.md +51 -0
- package/modules/drive/src/rules/workflows.md +133 -0
- package/modules/drive/src/templates/CONTEXT.md +88 -0
- package/modules/drive/src/templates/DEBUG.md +164 -0
- package/modules/drive/src/templates/DISCOVERY.md +148 -0
- package/modules/drive/src/templates/HANDOFF.md +77 -0
- package/modules/drive/src/templates/ISSUES.md +93 -0
- package/modules/drive/src/templates/MILESTONES.md +167 -0
- package/modules/drive/src/templates/PLAN.md +328 -0
- package/modules/drive/src/templates/PROJECT.md +219 -0
- package/modules/drive/src/templates/RESEARCH.md +130 -0
- package/modules/drive/src/templates/ROADMAP.md +328 -0
- package/modules/drive/src/templates/SPECIAL-FLOWS.md +70 -0
- package/modules/drive/src/templates/STATE.md +210 -0
- package/modules/drive/src/templates/SUMMARY.md +221 -0
- package/modules/drive/src/templates/UAT-ISSUES.md +139 -0
- package/modules/drive/src/templates/codebase/architecture.md +259 -0
- package/modules/drive/src/templates/codebase/concerns.md +329 -0
- package/modules/drive/src/templates/codebase/conventions.md +311 -0
- package/modules/drive/src/templates/codebase/integrations.md +284 -0
- package/modules/drive/src/templates/codebase/stack.md +190 -0
- package/modules/drive/src/templates/codebase/structure.md +287 -0
- package/modules/drive/src/templates/codebase/testing.md +484 -0
- package/modules/drive/src/templates/config.md +181 -0
- package/modules/drive/src/templates/milestone-archive.md +236 -0
- package/modules/drive/src/templates/milestone-context.md +190 -0
- package/modules/drive/src/templates/paul-json.md +147 -0
- package/modules/drive/src/vector-config/PAUL +26 -0
- package/modules/drive/src/vector-config/PAUL.manifest +11 -0
- package/modules/drive/src/workflows/apply-phase.md +393 -0
- package/modules/drive/src/workflows/audit-plan.md +344 -0
- package/modules/drive/src/workflows/complete-milestone.md +479 -0
- package/modules/drive/src/workflows/configure-special-flows.md +283 -0
- package/modules/drive/src/workflows/consider-issues.md +172 -0
- package/modules/drive/src/workflows/create-milestone.md +268 -0
- package/modules/drive/src/workflows/debug.md +292 -0
- package/modules/drive/src/workflows/discovery.md +187 -0
- package/modules/drive/src/workflows/discuss-milestone.md +245 -0
- package/modules/drive/src/workflows/discuss-phase.md +231 -0
- package/modules/drive/src/workflows/init-project.md +698 -0
- package/modules/drive/src/workflows/map-codebase.md +459 -0
- package/modules/drive/src/workflows/pause-work.md +259 -0
- package/modules/drive/src/workflows/phase-assumptions.md +181 -0
- package/modules/drive/src/workflows/plan-phase.md +385 -0
- package/modules/drive/src/workflows/quality-gate.md +263 -0
- package/modules/drive/src/workflows/register-manifest.md +107 -0
- package/modules/drive/src/workflows/research.md +241 -0
- package/modules/drive/src/workflows/resume-project.md +200 -0
- package/modules/drive/src/workflows/roadmap-management.md +334 -0
- package/modules/drive/src/workflows/transition-phase.md +368 -0
- package/modules/drive/src/workflows/unify-phase.md +290 -0
- package/modules/drive/src/workflows/verify-work.md +241 -0
- package/modules/forge/README.md +281 -0
- package/modules/forge/bin/install.js +200 -0
- package/modules/forge/package.json +32 -0
- package/modules/forge/skillsmith/rules/checklists-rules.md +42 -0
- package/modules/forge/skillsmith/rules/context-rules.md +43 -0
- package/modules/forge/skillsmith/rules/entry-point-rules.md +44 -0
- package/modules/forge/skillsmith/rules/frameworks-rules.md +43 -0
- package/modules/forge/skillsmith/rules/tasks-rules.md +52 -0
- package/modules/forge/skillsmith/rules/templates-rules.md +43 -0
- package/modules/forge/skillsmith/skillsmith.md +82 -0
- package/modules/forge/skillsmith/tasks/audit.md +277 -0
- package/modules/forge/skillsmith/tasks/discover.md +145 -0
- package/modules/forge/skillsmith/tasks/distill.md +276 -0
- package/modules/forge/skillsmith/tasks/scaffold.md +349 -0
- package/modules/forge/specs/checklists.md +193 -0
- package/modules/forge/specs/context.md +223 -0
- package/modules/forge/specs/entry-point.md +320 -0
- package/modules/forge/specs/frameworks.md +228 -0
- package/modules/forge/specs/rules.md +245 -0
- package/modules/forge/specs/tasks.md +344 -0
- package/modules/forge/specs/templates.md +335 -0
- package/modules/forge/terminal.svg +70 -0
- package/modules/ignition/README.md +245 -0
- package/modules/ignition/bin/install.js +184 -0
- package/modules/ignition/checklists/planning-quality.md +55 -0
- package/modules/ignition/data/application/config.md +21 -0
- package/modules/ignition/data/application/guide.md +51 -0
- package/modules/ignition/data/application/skill-loadout.md +11 -0
- package/modules/ignition/data/campaign/config.md +18 -0
- package/modules/ignition/data/campaign/guide.md +36 -0
- package/modules/ignition/data/campaign/skill-loadout.md +10 -0
- package/modules/ignition/data/client/config.md +18 -0
- package/modules/ignition/data/client/guide.md +36 -0
- package/modules/ignition/data/client/skill-loadout.md +11 -0
- package/modules/ignition/data/utility/config.md +18 -0
- package/modules/ignition/data/utility/guide.md +31 -0
- package/modules/ignition/data/utility/skill-loadout.md +8 -0
- package/modules/ignition/data/workflow/config.md +19 -0
- package/modules/ignition/data/workflow/guide.md +41 -0
- package/modules/ignition/data/workflow/skill-loadout.md +10 -0
- package/modules/ignition/integration.js +54 -0
- package/modules/ignition/package.json +35 -0
- package/modules/ignition/seed.md +81 -0
- package/modules/ignition/tasks/add-type.md +164 -0
- package/modules/ignition/tasks/graduate.md +182 -0
- package/modules/ignition/tasks/ideate.md +221 -0
- package/modules/ignition/tasks/launch.md +137 -0
- package/modules/ignition/tasks/status.md +71 -0
- package/modules/ignition/templates/planning-application.md +193 -0
- package/modules/ignition/templates/planning-campaign.md +138 -0
- package/modules/ignition/templates/planning-client.md +149 -0
- package/modules/ignition/templates/planning-utility.md +112 -0
- package/modules/ignition/templates/planning-workflow.md +125 -0
- package/modules/ignition/terminal.svg +74 -0
- package/modules/mission-control/CONTEXT-CONTINUITY-SPEC.md +293 -0
- package/modules/mission-control/CONTEXT-ENGINEERING-GUIDE.md +282 -0
- package/modules/mission-control/README.md +91 -0
- package/modules/mission-control/assets/terminal.svg +80 -0
- package/modules/mission-control/examples/entities.example.json +133 -0
- package/modules/mission-control/examples/projects.example.json +318 -0
- package/modules/mission-control/examples/state.example.json +183 -0
- package/modules/mission-control/examples/vector.example.json +245 -0
- package/modules/mission-control/mission-control/checklists/install-verification.md +46 -0
- package/modules/mission-control/mission-control/frameworks/framework-registry.md +83 -0
- package/modules/mission-control/mission-control/mission-control.md +83 -0
- package/modules/mission-control/mission-control/tasks/insights.md +73 -0
- package/modules/mission-control/mission-control/tasks/install.md +194 -0
- package/modules/mission-control/mission-control/tasks/status.md +125 -0
- package/modules/mission-control/schemas/entities.schema.json +89 -0
- package/modules/mission-control/schemas/projects.schema.json +221 -0
- package/modules/mission-control/schemas/state.schema.json +108 -0
- package/modules/mission-control/schemas/vector.schema.json +200 -0
- package/modules/momentum/README.md +678 -0
- package/modules/momentum/bin/install.js +563 -0
- package/modules/momentum/integration.js +131 -0
- package/modules/momentum/package.json +42 -0
- package/modules/momentum/schemas/entities.schema.json +89 -0
- package/modules/momentum/schemas/projects.schema.json +221 -0
- package/modules/momentum/schemas/state.schema.json +108 -0
- package/modules/momentum/src/commands/audit-claude-md.md +31 -0
- package/modules/momentum/src/commands/audit.md +33 -0
- package/modules/momentum/src/commands/groom.md +35 -0
- package/modules/momentum/src/commands/history.md +27 -0
- package/modules/momentum/src/commands/pulse.md +33 -0
- package/modules/momentum/src/commands/scaffold.md +33 -0
- package/modules/momentum/src/commands/status.md +28 -0
- package/modules/momentum/src/commands/surface-convert.md +35 -0
- package/modules/momentum/src/commands/surface-create.md +34 -0
- package/modules/momentum/src/commands/surface-list.md +27 -0
- package/modules/momentum/src/commands/vector-hygiene.md +33 -0
- package/modules/momentum/src/framework/context/momentum-principles.md +71 -0
- package/modules/momentum/src/framework/frameworks/audit-strategies.md +53 -0
- package/modules/momentum/src/framework/frameworks/satellite-registration.md +44 -0
- package/modules/momentum/src/framework/tasks/audit-claude-md.md +68 -0
- package/modules/momentum/src/framework/tasks/audit.md +64 -0
- package/modules/momentum/src/framework/tasks/groom.md +164 -0
- package/modules/momentum/src/framework/tasks/history.md +34 -0
- package/modules/momentum/src/framework/tasks/pulse.md +83 -0
- package/modules/momentum/src/framework/tasks/scaffold.md +202 -0
- package/modules/momentum/src/framework/tasks/status.md +35 -0
- package/modules/momentum/src/framework/tasks/surface-convert.md +143 -0
- package/modules/momentum/src/framework/tasks/surface-create.md +184 -0
- package/modules/momentum/src/framework/tasks/surface-list.md +42 -0
- package/modules/momentum/src/framework/tasks/vector-hygiene.md +160 -0
- package/modules/momentum/src/framework/templates/workspace-json.md +96 -0
- package/modules/momentum/src/hooks/_template.py +129 -0
- package/modules/momentum/src/hooks/active-hook.py +178 -0
- package/modules/momentum/src/hooks/backlog-hook.py +115 -0
- package/modules/momentum/src/hooks/mission-control-insights.py +169 -0
- package/modules/momentum/src/hooks/momentum-pulse-check.py +351 -0
- package/modules/momentum/src/hooks/operator.py +53 -0
- package/modules/momentum/src/hooks/psmm-injector.py +67 -0
- package/modules/momentum/src/hooks/satellite-detection.py +248 -0
- package/modules/momentum/src/packages/momentum-mcp/index.js +119 -0
- package/modules/momentum/src/packages/momentum-mcp/package.json +10 -0
- package/modules/momentum/src/packages/momentum-mcp/tools/entities.js +226 -0
- package/modules/momentum/src/packages/momentum-mcp/tools/operator.js +106 -0
- package/modules/momentum/src/packages/momentum-mcp/tools/projects.js +322 -0
- package/modules/momentum/src/packages/momentum-mcp/tools/psmm.js +206 -0
- package/modules/momentum/src/packages/momentum-mcp/tools/state.js +199 -0
- package/modules/momentum/src/packages/momentum-mcp/tools/surfaces.js +404 -0
- package/modules/momentum/src/skill/momentum.md +111 -0
- package/modules/momentum/src/tasks/groom.md +164 -0
- package/modules/momentum/src/templates/operator.json +66 -0
- package/modules/momentum/src/templates/workspace.json +111 -0
- package/modules/momentum/terminal.svg +77 -0
- package/modules/radar/README.md +1552 -0
- package/modules/radar/commands/audit.md +233 -0
- package/modules/radar/commands/guardrails.md +194 -0
- package/modules/radar/commands/init.md +207 -0
- package/modules/radar/commands/playbook.md +176 -0
- package/modules/radar/commands/remediate.md +156 -0
- package/modules/radar/commands/report.md +172 -0
- package/modules/radar/commands/resume.md +176 -0
- package/modules/radar/commands/status.md +148 -0
- package/modules/radar/commands/transform.md +205 -0
- package/modules/radar/commands/validate.md +177 -0
- package/modules/radar/docs/ARCHITECTURE.md +336 -0
- package/modules/radar/docs/GETTING-STARTED.md +287 -0
- package/modules/radar/docs/standards/agents.md +197 -0
- package/modules/radar/docs/standards/commands.md +250 -0
- package/modules/radar/docs/standards/domains.md +191 -0
- package/modules/radar/docs/standards/personas.md +211 -0
- package/modules/radar/docs/standards/rules.md +218 -0
- package/modules/radar/docs/standards/runtime.md +445 -0
- package/modules/radar/docs/standards/schemas.md +269 -0
- package/modules/radar/docs/standards/tools.md +273 -0
- package/modules/radar/docs/standards/workflows.md +254 -0
- package/modules/radar/docs/terminal.svg +72 -0
- package/modules/radar/docs/validation/convention-compliance-report.md +183 -0
- package/modules/radar/docs/validation/cross-reference-report.md +195 -0
- package/modules/radar/docs/validation/validation-summary.md +118 -0
- package/modules/radar/docs/validation/version-manifest.yaml +363 -0
- package/modules/radar/install.sh +711 -0
- package/modules/radar/integration.js +53 -0
- package/modules/radar/src/core/agents/architect.md +25 -0
- package/modules/radar/src/core/agents/compliance-officer.md +25 -0
- package/modules/radar/src/core/agents/data-engineer.md +25 -0
- package/modules/radar/src/core/agents/devils-advocate.md +22 -0
- package/modules/radar/src/core/agents/performance-engineer.md +25 -0
- package/modules/radar/src/core/agents/principal-engineer.md +23 -0
- package/modules/radar/src/core/agents/reality-gap-analyst.md +22 -0
- package/modules/radar/src/core/agents/security-engineer.md +25 -0
- package/modules/radar/src/core/agents/senior-app-engineer.md +25 -0
- package/modules/radar/src/core/agents/sre.md +25 -0
- package/modules/radar/src/core/agents/staff-engineer.md +23 -0
- package/modules/radar/src/core/agents/test-engineer.md +25 -0
- package/modules/radar/src/core/personas/architect.md +111 -0
- package/modules/radar/src/core/personas/compliance-officer.md +104 -0
- package/modules/radar/src/core/personas/data-engineer.md +113 -0
- package/modules/radar/src/core/personas/devils-advocate.md +105 -0
- package/modules/radar/src/core/personas/performance-engineer.md +119 -0
- package/modules/radar/src/core/personas/principal-engineer.md +119 -0
- package/modules/radar/src/core/personas/reality-gap-analyst.md +111 -0
- package/modules/radar/src/core/personas/security-engineer.md +108 -0
- package/modules/radar/src/core/personas/senior-app-engineer.md +111 -0
- package/modules/radar/src/core/personas/sre.md +117 -0
- package/modules/radar/src/core/personas/staff-engineer.md +109 -0
- package/modules/radar/src/core/personas/test-engineer.md +109 -0
- package/modules/radar/src/core/workflows/disagreement-resolution.md +183 -0
- package/modules/radar/src/core/workflows/phase-0-context.md +148 -0
- package/modules/radar/src/core/workflows/phase-1-reconnaissance.md +169 -0
- package/modules/radar/src/core/workflows/phase-2-domain-audits.md +190 -0
- package/modules/radar/src/core/workflows/phase-3-cross-domain.md +177 -0
- package/modules/radar/src/core/workflows/phase-4-adversarial-review.md +165 -0
- package/modules/radar/src/core/workflows/phase-5-report.md +189 -0
- package/modules/radar/src/core/workflows/phase-checkpoint.md +222 -0
- package/modules/radar/src/core/workflows/session-handoff.md +152 -0
- package/modules/radar/src/domains/00-context.md +201 -0
- package/modules/radar/src/domains/01-architecture.md +248 -0
- package/modules/radar/src/domains/02-data.md +224 -0
- package/modules/radar/src/domains/03-correctness.md +230 -0
- package/modules/radar/src/domains/04-security.md +274 -0
- package/modules/radar/src/domains/05-compliance.md +228 -0
- package/modules/radar/src/domains/06-testing.md +228 -0
- package/modules/radar/src/domains/07-reliability.md +246 -0
- package/modules/radar/src/domains/08-performance.md +247 -0
- package/modules/radar/src/domains/09-maintainability.md +271 -0
- package/modules/radar/src/domains/10-operability.md +250 -0
- package/modules/radar/src/domains/11-change-risk.md +246 -0
- package/modules/radar/src/domains/12-team-risk.md +221 -0
- package/modules/radar/src/domains/13-risk-synthesis.md +202 -0
- package/modules/radar/src/rules/agent-boundaries.md +78 -0
- package/modules/radar/src/rules/disagreement-protocol.md +76 -0
- package/modules/radar/src/rules/epistemic-hygiene.md +78 -0
- package/modules/radar/src/schemas/confidence.md +185 -0
- package/modules/radar/src/schemas/disagreement.md +238 -0
- package/modules/radar/src/schemas/finding.md +287 -0
- package/modules/radar/src/schemas/report-section.md +150 -0
- package/modules/radar/src/schemas/signal.md +108 -0
- package/modules/radar/src/tools/checkov.md +463 -0
- package/modules/radar/src/tools/git-history.md +581 -0
- package/modules/radar/src/tools/gitleaks.md +447 -0
- package/modules/radar/src/tools/grype.md +611 -0
- package/modules/radar/src/tools/semgrep.md +378 -0
- package/modules/radar/src/tools/sonarqube.md +550 -0
- package/modules/radar/src/tools/syft.md +539 -0
- package/modules/radar/src/tools/trivy.md +439 -0
- package/modules/radar/src/transform/agents/change-risk-modeler.md +24 -0
- package/modules/radar/src/transform/agents/execution-validator.md +24 -0
- package/modules/radar/src/transform/agents/guardrail-generator.md +24 -0
- package/modules/radar/src/transform/agents/pedagogy-agent.md +24 -0
- package/modules/radar/src/transform/agents/remediation-architect.md +24 -0
- package/modules/radar/src/transform/personas/change-risk-modeler.md +95 -0
- package/modules/radar/src/transform/personas/execution-validator.md +95 -0
- package/modules/radar/src/transform/personas/guardrail-generator.md +103 -0
- package/modules/radar/src/transform/personas/pedagogy-agent.md +105 -0
- package/modules/radar/src/transform/personas/remediation-architect.md +95 -0
- package/modules/radar/src/transform/rules/change-risk-rules.md +87 -0
- package/modules/radar/src/transform/rules/safety-governance.md +87 -0
- package/modules/radar/src/transform/schemas/change-risk.md +139 -0
- package/modules/radar/src/transform/schemas/intervention-level.md +207 -0
- package/modules/radar/src/transform/schemas/playbook.md +205 -0
- package/modules/radar/src/transform/schemas/verification-plan.md +134 -0
- package/modules/radar/src/transform/workflows/phase-6-remediation.md +148 -0
- package/modules/radar/src/transform/workflows/phase-7-risk-validation.md +161 -0
- package/modules/radar/src/transform/workflows/phase-8-execution-planning.md +159 -0
- package/modules/radar/src/transform/workflows/transform-safety.md +158 -0
- package/modules/vector/.vector-template/sessions/.gitkeep +0 -0
- package/modules/vector/.vector-template/vector.json +72 -0
- package/modules/vector/AUDIT-CLAUDEMD.md +154 -0
- package/modules/vector/INSTALL.md +185 -0
- package/modules/vector/LICENSE +21 -0
- package/modules/vector/README.md +409 -0
- package/modules/vector/VECTOR-BLOCK.md +57 -0
- package/modules/vector/assets/terminal.svg +68 -0
- package/modules/vector/bin/install.js +455 -0
- package/modules/vector/bin/migrate-v1-to-v2.sh +492 -0
- package/modules/vector/commands/help.md +46 -0
- package/modules/vector/hooks/vector-hook.py +775 -0
- package/modules/vector/mcp/index.js +118 -0
- package/modules/vector/mcp/package.json +10 -0
- package/modules/vector/mcp/tools/decisions.js +269 -0
- package/modules/vector/mcp/tools/domains.js +361 -0
- package/modules/vector/mcp/tools/staging.js +252 -0
- package/modules/vector/mcp/tools/vector-json.js +647 -0
- package/modules/vector/package.json +38 -0
- package/modules/vector/schemas/vector.schema.json +237 -0
- package/package.json +39 -0
- package/shared/branding/branding.js +70 -0
- package/shared/config/defaults.json +59 -0
- package/shared/events/README.md +175 -0
- package/shared/events/event-bus.js +134 -0
- package/shared/events/event_bus.py +255 -0
- package/shared/events/integrations.js +161 -0
- package/shared/events/schemas/audit-complete.schema.json +21 -0
- package/shared/events/schemas/phase-progress.schema.json +23 -0
- package/shared/events/schemas/plan-created.schema.json +21 -0
|
@@ -0,0 +1,263 @@
|
|
|
1
|
+
<purpose>
|
|
2
|
+
Run SonarQube quality scan, check gates, and update CONCERNS.md with findings.
|
|
3
|
+
|
|
4
|
+
Provides objective code quality metrics to inform planning decisions.
|
|
5
|
+
</purpose>
|
|
6
|
+
|
|
7
|
+
<when_to_use>
|
|
8
|
+
- Before planning new phases (baseline quality)
|
|
9
|
+
- After completing significant work
|
|
10
|
+
- When CONCERNS.md needs updating
|
|
11
|
+
- Manual quality check anytime
|
|
12
|
+
</when_to_use>
|
|
13
|
+
|
|
14
|
+
<philosophy>
|
|
15
|
+
**Quality as input, not gate:**
|
|
16
|
+
Quality metrics inform decisions but don't block work. A failing gate means "address this" not "stop everything."
|
|
17
|
+
|
|
18
|
+
**Automated CONCERNS.md:**
|
|
19
|
+
Manual concern tracking is tedious. Let tools find issues, humans prioritize them.
|
|
20
|
+
|
|
21
|
+
**Optional integration:**
|
|
22
|
+
SonarQube is not required. Workflow gracefully handles disabled state.
|
|
23
|
+
</philosophy>
|
|
24
|
+
|
|
25
|
+
<references>
|
|
26
|
+
@src/references/sonarqube-integration.md
|
|
27
|
+
@src/templates/config.md
|
|
28
|
+
@src/templates/codebase/concerns.md
|
|
29
|
+
</references>
|
|
30
|
+
|
|
31
|
+
<process>
|
|
32
|
+
|
|
33
|
+
<step name="check_config" priority="first">
|
|
34
|
+
1. Check if .drive/config.md exists:
|
|
35
|
+
```bash
|
|
36
|
+
ls .drive/config.md 2>/dev/null
|
|
37
|
+
```
|
|
38
|
+
|
|
39
|
+
2. If exists, read and check sonarqube.enabled
|
|
40
|
+
|
|
41
|
+
3. **If SonarQube disabled or config missing:**
|
|
42
|
+
```
|
|
43
|
+
SonarQube integration not enabled.
|
|
44
|
+
|
|
45
|
+
To enable:
|
|
46
|
+
1. Add to .drive/config.md:
|
|
47
|
+
sonarqube:
|
|
48
|
+
enabled: true
|
|
49
|
+
project_key: [your-project]
|
|
50
|
+
|
|
51
|
+
2. Create sonar-project.properties in project root
|
|
52
|
+
|
|
53
|
+
3. Run this workflow again
|
|
54
|
+
```
|
|
55
|
+
Exit workflow.
|
|
56
|
+
|
|
57
|
+
4. **If enabled:** Extract project_key, continue to verify_prerequisites.
|
|
58
|
+
</step>
|
|
59
|
+
|
|
60
|
+
<step name="verify_prerequisites">
|
|
61
|
+
1. Check sonar-project.properties exists:
|
|
62
|
+
```bash
|
|
63
|
+
ls sonar-project.properties 2>/dev/null
|
|
64
|
+
```
|
|
65
|
+
|
|
66
|
+
2. **If missing:**
|
|
67
|
+
```
|
|
68
|
+
Missing sonar-project.properties
|
|
69
|
+
|
|
70
|
+
Create with:
|
|
71
|
+
sonar.projectKey=[project_key from config]
|
|
72
|
+
sonar.projectName=[project name]
|
|
73
|
+
sonar.sources=src
|
|
74
|
+
|
|
75
|
+
Or use MCP to create project:
|
|
76
|
+
mcp__sonarqube__sonar_create_project
|
|
77
|
+
```
|
|
78
|
+
Exit workflow.
|
|
79
|
+
|
|
80
|
+
3. **If exists:** Continue to run_scan.
|
|
81
|
+
</step>
|
|
82
|
+
|
|
83
|
+
<step name="run_scan">
|
|
84
|
+
Run SonarQube scan using MCP:
|
|
85
|
+
|
|
86
|
+
```
|
|
87
|
+
mcp__sonarqube__sonar_scan
|
|
88
|
+
project_path: [current directory absolute path]
|
|
89
|
+
```
|
|
90
|
+
|
|
91
|
+
**Handle results:**
|
|
92
|
+
- Success: Continue to check_gates
|
|
93
|
+
- Failure: Report error, suggest troubleshooting
|
|
94
|
+
|
|
95
|
+
Display while scanning:
|
|
96
|
+
```
|
|
97
|
+
Running SonarQube scan...
|
|
98
|
+
Project: [project_key]
|
|
99
|
+
```
|
|
100
|
+
</step>
|
|
101
|
+
|
|
102
|
+
<step name="check_gates">
|
|
103
|
+
Get quality gate status:
|
|
104
|
+
|
|
105
|
+
```
|
|
106
|
+
mcp__sonarqube__sonar_get_metrics
|
|
107
|
+
project: [project_key]
|
|
108
|
+
```
|
|
109
|
+
|
|
110
|
+
**Parse response for:**
|
|
111
|
+
- Quality gate status (OK/ERROR)
|
|
112
|
+
- Bug count
|
|
113
|
+
- Vulnerability count
|
|
114
|
+
- Code smell count
|
|
115
|
+
- Coverage percentage
|
|
116
|
+
- Duplication percentage
|
|
117
|
+
|
|
118
|
+
Store metrics for report.
|
|
119
|
+
|
|
120
|
+
Continue to get_issues.
|
|
121
|
+
</step>
|
|
122
|
+
|
|
123
|
+
<step name="get_issues">
|
|
124
|
+
Fetch unresolved issues by severity:
|
|
125
|
+
|
|
126
|
+
```
|
|
127
|
+
mcp__sonarqube__sonar_get_issues
|
|
128
|
+
project: [project_key]
|
|
129
|
+
severity: "CRITICAL"
|
|
130
|
+
```
|
|
131
|
+
|
|
132
|
+
```
|
|
133
|
+
mcp__sonarqube__sonar_get_issues
|
|
134
|
+
project: [project_key]
|
|
135
|
+
severity: "MAJOR"
|
|
136
|
+
```
|
|
137
|
+
|
|
138
|
+
**For each issue, extract:**
|
|
139
|
+
- File path
|
|
140
|
+
- Line number (if available)
|
|
141
|
+
- Message
|
|
142
|
+
- Severity
|
|
143
|
+
- Type (BUG, VULNERABILITY, CODE_SMELL)
|
|
144
|
+
|
|
145
|
+
Group issues by severity for report.
|
|
146
|
+
|
|
147
|
+
Continue to update_concerns.
|
|
148
|
+
</step>
|
|
149
|
+
|
|
150
|
+
<step name="update_concerns">
|
|
151
|
+
Update .drive/codebase/CONCERNS.md with scan results.
|
|
152
|
+
|
|
153
|
+
**If CONCERNS.md doesn't exist:**
|
|
154
|
+
Create from template first.
|
|
155
|
+
|
|
156
|
+
**Add or update SonarQube section:**
|
|
157
|
+
|
|
158
|
+
```markdown
|
|
159
|
+
## SonarQube Analysis
|
|
160
|
+
|
|
161
|
+
**Last Scan:** [YYYY-MM-DD HH:MM]
|
|
162
|
+
**Quality Gate:** [PASSED/FAILED]
|
|
163
|
+
|
|
164
|
+
### Metrics
|
|
165
|
+
|
|
166
|
+
| Metric | Value |
|
|
167
|
+
|--------|-------|
|
|
168
|
+
| Bugs | [N] |
|
|
169
|
+
| Vulnerabilities | [N] |
|
|
170
|
+
| Code Smells | [N] |
|
|
171
|
+
| Coverage | [N]% |
|
|
172
|
+
| Duplications | [N]% |
|
|
173
|
+
|
|
174
|
+
### Critical Issues
|
|
175
|
+
|
|
176
|
+
[List CRITICAL issues with file paths]
|
|
177
|
+
|
|
178
|
+
**[Issue type]:** [message]
|
|
179
|
+
- File: `[path]`
|
|
180
|
+
|
|
181
|
+
### Major Issues
|
|
182
|
+
|
|
183
|
+
[List MAJOR issues, limit to top 10]
|
|
184
|
+
|
|
185
|
+
**[Issue type]:** [message]
|
|
186
|
+
- File: `[path]`
|
|
187
|
+
|
|
188
|
+
---
|
|
189
|
+
*Auto-generated by /drive:quality-gate*
|
|
190
|
+
*Run scan again to update*
|
|
191
|
+
```
|
|
192
|
+
|
|
193
|
+
**If section already exists:**
|
|
194
|
+
Replace with new data (don't append).
|
|
195
|
+
|
|
196
|
+
Continue to report_results.
|
|
197
|
+
</step>
|
|
198
|
+
|
|
199
|
+
<step name="report_results">
|
|
200
|
+
Display summary:
|
|
201
|
+
|
|
202
|
+
```
|
|
203
|
+
════════════════════════════════════════
|
|
204
|
+
QUALITY GATE: [PASSED/FAILED]
|
|
205
|
+
════════════════════════════════════════
|
|
206
|
+
|
|
207
|
+
Project: [project_key]
|
|
208
|
+
Scanned: [timestamp]
|
|
209
|
+
|
|
210
|
+
Metrics:
|
|
211
|
+
Bugs: [N]
|
|
212
|
+
Vulnerabilities: [N]
|
|
213
|
+
Code Smells: [N]
|
|
214
|
+
Coverage: [N]%
|
|
215
|
+
Duplications: [N]%
|
|
216
|
+
|
|
217
|
+
Issues:
|
|
218
|
+
CRITICAL: [N]
|
|
219
|
+
MAJOR: [N]
|
|
220
|
+
MINOR: [N]
|
|
221
|
+
|
|
222
|
+
Updated: .drive/codebase/CONCERNS.md
|
|
223
|
+
|
|
224
|
+
────────────────────────────────────────
|
|
225
|
+
[If FAILED:]
|
|
226
|
+
▶ NEXT: Address critical issues before continuing
|
|
227
|
+
|
|
228
|
+
[If PASSED:]
|
|
229
|
+
▶ Quality gate passed. Continue with planning.
|
|
230
|
+
────────────────────────────────────────
|
|
231
|
+
```
|
|
232
|
+
|
|
233
|
+
End workflow.
|
|
234
|
+
</step>
|
|
235
|
+
|
|
236
|
+
</process>
|
|
237
|
+
|
|
238
|
+
<output>
|
|
239
|
+
- Updated .drive/codebase/CONCERNS.md with SonarQube section
|
|
240
|
+
- Quality gate status displayed
|
|
241
|
+
- Actionable next steps based on results
|
|
242
|
+
</output>
|
|
243
|
+
|
|
244
|
+
<error_handling>
|
|
245
|
+
**SonarQube server unreachable:**
|
|
246
|
+
- Report connection error
|
|
247
|
+
- Suggest checking server status
|
|
248
|
+
- Provide manual scan instructions
|
|
249
|
+
|
|
250
|
+
**Scan timeout:**
|
|
251
|
+
- Report timeout
|
|
252
|
+
- Suggest running scan directly
|
|
253
|
+
- Note: large projects may need increased timeout
|
|
254
|
+
|
|
255
|
+
**MCP tools unavailable:**
|
|
256
|
+
- Report MCP error
|
|
257
|
+
- Suggest checking MCP server configuration
|
|
258
|
+
- Provide manual alternative
|
|
259
|
+
|
|
260
|
+
**No issues found:**
|
|
261
|
+
- Report clean scan
|
|
262
|
+
- Note in CONCERNS.md: "No significant concerns detected"
|
|
263
|
+
</error_handling>
|
|
@@ -0,0 +1,107 @@
|
|
|
1
|
+
<purpose>
|
|
2
|
+
Generate .drive/drive.json for an existing Drive project that predates v1.1. Reads current STATE.md to populate fields accurately, falls back to sensible defaults if STATE.md is unreadable.
|
|
3
|
+
</purpose>
|
|
4
|
+
|
|
5
|
+
<when_to_use>
|
|
6
|
+
- Project has .drive/ directory but no drive.json
|
|
7
|
+
- User needs Momentum satellite auto-detection to work for this project
|
|
8
|
+
- Migrating a pre-v1.1 project to v1.1+ infrastructure
|
|
9
|
+
</when_to_use>
|
|
10
|
+
|
|
11
|
+
<process>
|
|
12
|
+
|
|
13
|
+
<step name="validate_preconditions" priority="first">
|
|
14
|
+
1. Check .drive/ exists:
|
|
15
|
+
```bash
|
|
16
|
+
ls .drive/ 2>/dev/null
|
|
17
|
+
```
|
|
18
|
+
If missing: "No .drive/ directory found. Run /drive:init first."
|
|
19
|
+
Stop.
|
|
20
|
+
|
|
21
|
+
2. Check drive.json doesn't already exist:
|
|
22
|
+
```bash
|
|
23
|
+
ls .drive/drive.json 2>/dev/null
|
|
24
|
+
```
|
|
25
|
+
If exists: "drive.json already exists. Nothing to do. Momentum will detect this project on next session start."
|
|
26
|
+
Stop.
|
|
27
|
+
</step>
|
|
28
|
+
|
|
29
|
+
<step name="read_state">
|
|
30
|
+
Read .drive/STATE.md to extract current project state:
|
|
31
|
+
```bash
|
|
32
|
+
cat .drive/STATE.md 2>/dev/null
|
|
33
|
+
```
|
|
34
|
+
|
|
35
|
+
Extract from STATE.md (best-effort — use defaults if not found):
|
|
36
|
+
- **project name**: infer from current directory name (`basename $(pwd)`)
|
|
37
|
+
- **milestone name**: look for `Milestone:` line under `## Current Position`
|
|
38
|
+
- **milestone version**: look for version in parentheses on `Milestone:` line (e.g., `(v1.0.0)`)
|
|
39
|
+
- **milestone status**: if `MILESTONE COMPLETE` in the line → "complete"; if `In Progress` or active plans → "in_progress"; otherwise → "not_started"
|
|
40
|
+
- **phase number**: look for `Phase: N of M` line
|
|
41
|
+
- **phase name**: text after the number on the Phase line (e.g., `Phase: 3 of 7 (Auth Layer)` → "Auth Layer")
|
|
42
|
+
- **phase status**: if COMPLETE → "complete"; if Planning → "planning"; if active → "in_progress"; otherwise → "not_started"
|
|
43
|
+
- **loop position**: check Loop Position section — if all three ✓ or IDLE → "IDLE"; if PLAN ✓ but APPLY ○ → "PLAN"; if APPLY ✓ but UNIFY ○ → "APPLY"; if UNIFY in progress → "UNIFY"
|
|
44
|
+
|
|
45
|
+
**Defaults if STATE.md missing or unparseable:**
|
|
46
|
+
- name: directory name
|
|
47
|
+
- version: "0.1.0"
|
|
48
|
+
- milestone: name "None", version "0.1.0", status "not_started"
|
|
49
|
+
- phase: number 0, name "None", status "not_started"
|
|
50
|
+
- loop: plan null, position "IDLE"
|
|
51
|
+
</step>
|
|
52
|
+
|
|
53
|
+
<step name="create_paul_json">
|
|
54
|
+
Generate `.drive/drive.json` using extracted values:
|
|
55
|
+
|
|
56
|
+
```json
|
|
57
|
+
{
|
|
58
|
+
"name": "[project_name]",
|
|
59
|
+
"version": "[milestone_version]",
|
|
60
|
+
"milestone": {
|
|
61
|
+
"name": "[milestone_name]",
|
|
62
|
+
"version": "[milestone_version]",
|
|
63
|
+
"status": "[milestone_status]"
|
|
64
|
+
},
|
|
65
|
+
"phase": {
|
|
66
|
+
"number": [phase_number],
|
|
67
|
+
"name": "[phase_name]",
|
|
68
|
+
"status": "[phase_status]"
|
|
69
|
+
},
|
|
70
|
+
"loop": {
|
|
71
|
+
"plan": null,
|
|
72
|
+
"position": "[loop_position]"
|
|
73
|
+
},
|
|
74
|
+
"timestamps": {
|
|
75
|
+
"created_at": "[current ISO 8601 timestamp]",
|
|
76
|
+
"updated_at": "[current ISO 8601 timestamp]"
|
|
77
|
+
},
|
|
78
|
+
"satellite": {
|
|
79
|
+
"groom": true
|
|
80
|
+
}
|
|
81
|
+
}
|
|
82
|
+
```
|
|
83
|
+
|
|
84
|
+
Write to `.drive/drive.json`.
|
|
85
|
+
</step>
|
|
86
|
+
|
|
87
|
+
<step name="confirm">
|
|
88
|
+
Report:
|
|
89
|
+
```
|
|
90
|
+
drive.json created for [project_name]
|
|
91
|
+
|
|
92
|
+
.drive/drive.json registered with:
|
|
93
|
+
name: [project_name]
|
|
94
|
+
version: [version]
|
|
95
|
+
milestone: [milestone_name] ([milestone_status])
|
|
96
|
+
phase: [phase_number] — [phase_name] ([phase_status])
|
|
97
|
+
loop: [loop_position]
|
|
98
|
+
|
|
99
|
+
Momentum will auto-detect and register this project on next session start.
|
|
100
|
+
```
|
|
101
|
+
</step>
|
|
102
|
+
|
|
103
|
+
</process>
|
|
104
|
+
|
|
105
|
+
<output>
|
|
106
|
+
`.drive/drive.json` created with current project state populated from STATE.md.
|
|
107
|
+
</output>
|
|
@@ -0,0 +1,241 @@
|
|
|
1
|
+
<purpose>
|
|
2
|
+
Research a topic using subagents and save findings for main session review.
|
|
3
|
+
|
|
4
|
+
**Philosophy:** Subagents are appropriate for research because research is self-contained, has clear scope, can parallelize, and doesn't require iterative feedback.
|
|
5
|
+
|
|
6
|
+
**Key principle:** Main session always reviews findings. Never auto-integrate research.
|
|
7
|
+
</purpose>
|
|
8
|
+
|
|
9
|
+
<when_to_use>
|
|
10
|
+
- User needs information on a topic before planning
|
|
11
|
+
- Technical unknowns need investigation
|
|
12
|
+
- Documentation or patterns need gathering
|
|
13
|
+
- Multiple topics can be researched in parallel
|
|
14
|
+
</when_to_use>
|
|
15
|
+
|
|
16
|
+
<loop_context>
|
|
17
|
+
N/A - This is a pre-planning workflow, not a loop phase.
|
|
18
|
+
Research informs planning but doesn't gate it.
|
|
19
|
+
</loop_context>
|
|
20
|
+
|
|
21
|
+
<required_reading>
|
|
22
|
+
@~/.claude/drive-framework/references/subagent-criteria.md
|
|
23
|
+
</required_reading>
|
|
24
|
+
|
|
25
|
+
<references>
|
|
26
|
+
@src/templates/RESEARCH.md (output format)
|
|
27
|
+
</references>
|
|
28
|
+
|
|
29
|
+
<process>
|
|
30
|
+
|
|
31
|
+
<step name="validate_topic" priority="first">
|
|
32
|
+
1. Parse topic from $ARGUMENTS
|
|
33
|
+
|
|
34
|
+
**If argument missing:**
|
|
35
|
+
```
|
|
36
|
+
Error: Topic required.
|
|
37
|
+
|
|
38
|
+
Usage: /drive:research <topic> [--codebase | --web]
|
|
39
|
+
Examples:
|
|
40
|
+
/drive:research "nextjs app router patterns"
|
|
41
|
+
/drive:research "auth patterns in this codebase" --codebase
|
|
42
|
+
/drive:research "prisma vs drizzle comparison" --web
|
|
43
|
+
```
|
|
44
|
+
Exit workflow.
|
|
45
|
+
|
|
46
|
+
2. Check topic complexity against subagent-criteria.md:
|
|
47
|
+
- Is this substantial (15+ min research)? → Proceed with subagent
|
|
48
|
+
- Is this trivial (< 5 min lookup)? → Handle in main session
|
|
49
|
+
|
|
50
|
+
**If trivial:**
|
|
51
|
+
```
|
|
52
|
+
This looks like a quick lookup. Handling in main session...
|
|
53
|
+
|
|
54
|
+
[provide answer directly]
|
|
55
|
+
```
|
|
56
|
+
Exit workflow.
|
|
57
|
+
</step>
|
|
58
|
+
|
|
59
|
+
<step name="classify_research">
|
|
60
|
+
Determine research type:
|
|
61
|
+
|
|
62
|
+
**Codebase research (use Explore agent):**
|
|
63
|
+
- Questions about existing code patterns
|
|
64
|
+
- Finding implementations in the codebase
|
|
65
|
+
- Understanding architecture or conventions
|
|
66
|
+
- "How does X work in this project?"
|
|
67
|
+
|
|
68
|
+
**Web research (use general-purpose agent):**
|
|
69
|
+
- Documentation lookups
|
|
70
|
+
- Library comparisons
|
|
71
|
+
- Best practices research
|
|
72
|
+
- "What's the recommended approach for X?"
|
|
73
|
+
|
|
74
|
+
**Auto-detection logic:**
|
|
75
|
+
- Contains "codebase", "this project", "our code" → Codebase
|
|
76
|
+
- Contains "documentation", "library", "vs", "comparison" → Web
|
|
77
|
+
- References specific file paths → Codebase
|
|
78
|
+
- Default → Web (broader scope)
|
|
79
|
+
|
|
80
|
+
**Override with flags:**
|
|
81
|
+
- `--codebase` forces Explore agent
|
|
82
|
+
- `--web` forces general-purpose agent
|
|
83
|
+
|
|
84
|
+
Display:
|
|
85
|
+
```
|
|
86
|
+
Research type: {Codebase | Web}
|
|
87
|
+
Agent: {Explore | general-purpose}
|
|
88
|
+
|
|
89
|
+
Spawning research agent...
|
|
90
|
+
```
|
|
91
|
+
</step>
|
|
92
|
+
|
|
93
|
+
<step name="spawn_agent">
|
|
94
|
+
**Subagent criteria validation (from subagent-criteria.md):**
|
|
95
|
+
|
|
96
|
+
| Criterion | Check |
|
|
97
|
+
|-----------|-------|
|
|
98
|
+
| Task Independence | Research is self-contained ✓ |
|
|
99
|
+
| Clear Scope | Topic defines inputs/outputs ✓ |
|
|
100
|
+
| Parallel Value | Can run with other research ✓ |
|
|
101
|
+
| Complexity Sweet Spot | 15-30 min expected ✓ |
|
|
102
|
+
| Token Efficiency | Single spawn, consolidated return ✓ |
|
|
103
|
+
| State Compatibility | No blocking checkpoints ✓ |
|
|
104
|
+
|
|
105
|
+
**Spawn the appropriate agent:**
|
|
106
|
+
|
|
107
|
+
For **Codebase** research:
|
|
108
|
+
```
|
|
109
|
+
Use Task tool:
|
|
110
|
+
- subagent_type: Explore
|
|
111
|
+
- description: "Research: {topic}"
|
|
112
|
+
- prompt: |
|
|
113
|
+
Research the following topic in this codebase:
|
|
114
|
+
|
|
115
|
+
Topic: {topic}
|
|
116
|
+
|
|
117
|
+
Please find:
|
|
118
|
+
1. Relevant files and patterns
|
|
119
|
+
2. How this is currently implemented (if applicable)
|
|
120
|
+
3. Conventions being followed
|
|
121
|
+
4. Any related code or dependencies
|
|
122
|
+
|
|
123
|
+
Return findings in a structured format with file paths and code examples.
|
|
124
|
+
```
|
|
125
|
+
|
|
126
|
+
For **Web** research:
|
|
127
|
+
```
|
|
128
|
+
Use Task tool:
|
|
129
|
+
- subagent_type: general-purpose
|
|
130
|
+
- description: "Research: {topic}"
|
|
131
|
+
- prompt: |
|
|
132
|
+
Research the following topic:
|
|
133
|
+
|
|
134
|
+
Topic: {topic}
|
|
135
|
+
|
|
136
|
+
Please find:
|
|
137
|
+
1. Official documentation
|
|
138
|
+
2. Best practices and patterns
|
|
139
|
+
3. Pros/cons if comparing options
|
|
140
|
+
4. Example implementations
|
|
141
|
+
5. Common pitfalls to avoid
|
|
142
|
+
|
|
143
|
+
Use WebSearch and WebFetch as needed.
|
|
144
|
+
Return findings in a structured format with sources.
|
|
145
|
+
```
|
|
146
|
+
|
|
147
|
+
**For multiple topics (parallel):**
|
|
148
|
+
- Spawn multiple agents in single message
|
|
149
|
+
- Each agent researches one topic
|
|
150
|
+
- Consolidate findings when all complete
|
|
151
|
+
</step>
|
|
152
|
+
|
|
153
|
+
<step name="save_findings">
|
|
154
|
+
Create `.drive/research/{topic-slug}.md`:
|
|
155
|
+
|
|
156
|
+
1. Create research directory if needed:
|
|
157
|
+
```bash
|
|
158
|
+
mkdir -p .drive/research
|
|
159
|
+
```
|
|
160
|
+
|
|
161
|
+
2. Generate topic slug (lowercase, hyphens):
|
|
162
|
+
- "nextjs app router patterns" → "nextjs-app-router-patterns"
|
|
163
|
+
- "auth patterns in this codebase" → "auth-patterns-codebase"
|
|
164
|
+
|
|
165
|
+
3. Write findings using RESEARCH.md template format
|
|
166
|
+
|
|
167
|
+
4. Display:
|
|
168
|
+
```
|
|
169
|
+
════════════════════════════════════════
|
|
170
|
+
RESEARCH COMPLETE
|
|
171
|
+
════════════════════════════════════════
|
|
172
|
+
|
|
173
|
+
Topic: {topic}
|
|
174
|
+
Agent: {agent_type}
|
|
175
|
+
Output: .drive/research/{topic-slug}.md
|
|
176
|
+
|
|
177
|
+
Summary:
|
|
178
|
+
{key findings in 3-5 bullets}
|
|
179
|
+
|
|
180
|
+
────────────────────────────────────────
|
|
181
|
+
Review the findings above. This research informs but does not
|
|
182
|
+
automatically integrate into plans or code.
|
|
183
|
+
|
|
184
|
+
What's next?
|
|
185
|
+
[1] View full findings | [2] Research another topic | [3] Done
|
|
186
|
+
────────────────────────────────────────
|
|
187
|
+
```
|
|
188
|
+
</step>
|
|
189
|
+
|
|
190
|
+
</process>
|
|
191
|
+
|
|
192
|
+
<output>
|
|
193
|
+
- .drive/research/{topic-slug}.md created with findings
|
|
194
|
+
- Summary presented for review
|
|
195
|
+
- Main session can use findings for planning
|
|
196
|
+
</output>
|
|
197
|
+
|
|
198
|
+
<success_criteria>
|
|
199
|
+
- [ ] Topic validated (not trivial)
|
|
200
|
+
- [ ] Research type classified correctly
|
|
201
|
+
- [ ] Subagent criteria validated
|
|
202
|
+
- [ ] Appropriate agent spawned
|
|
203
|
+
- [ ] Findings saved to research directory
|
|
204
|
+
- [ ] Summary presented for review
|
|
205
|
+
</success_criteria>
|
|
206
|
+
|
|
207
|
+
<anti_patterns>
|
|
208
|
+
**Spawning for trivial lookups:**
|
|
209
|
+
DON'T: Spawn subagent for "what's the syntax for X"
|
|
210
|
+
DO: Answer directly if < 5 min lookup
|
|
211
|
+
|
|
212
|
+
**Auto-integrating findings:**
|
|
213
|
+
DON'T: Automatically apply research to code or plans
|
|
214
|
+
DO: Present findings for human review
|
|
215
|
+
|
|
216
|
+
**Using wrong agent type:**
|
|
217
|
+
DON'T: Use Explore for web documentation research
|
|
218
|
+
DO: Match agent type to research type
|
|
219
|
+
|
|
220
|
+
**Serial research chains:**
|
|
221
|
+
DON'T: Spawn agent A, wait, spawn agent B, wait
|
|
222
|
+
DO: Spawn independent agents in parallel
|
|
223
|
+
|
|
224
|
+
**Over-researching:**
|
|
225
|
+
DON'T: Research every possible topic
|
|
226
|
+
DO: Focus on genuine unknowns that inform decisions
|
|
227
|
+
</anti_patterns>
|
|
228
|
+
|
|
229
|
+
<error_handling>
|
|
230
|
+
**Subagent timeout:**
|
|
231
|
+
- Report partial findings if available
|
|
232
|
+
- Offer to retry or continue without
|
|
233
|
+
|
|
234
|
+
**No relevant findings:**
|
|
235
|
+
- Report that topic may be too specific
|
|
236
|
+
- Suggest broader or alternative search terms
|
|
237
|
+
|
|
238
|
+
**Agent error:**
|
|
239
|
+
- Report error
|
|
240
|
+
- Offer to retry with different approach or agent type
|
|
241
|
+
</error_handling>
|