Gate 0 research phase for pre-dev workflow. Dispatches 4 parallel research agents to gather codebase patterns, external best practices, framework documentation, and UX/product research BEFORE creating PRD/TRD. Outputs research.md with file:line references and user research findings.
Purpose: Gather comprehensive research BEFORE writing planning documents, ensuring PRDs and TRDs are grounded in codebase reality and industry best practices.
Traditional: Request → PRD → Discover problems during implementation
Research-First: Request → Research → Informed PRD → Smoother implementation
Research prevents: Reinventing existing patterns, ignoring conventions, missing framework constraints, repeating solved problems
BLOCKING GATE: Before dispatching agents, determine the research mode.
| Mode | When to Use | Example |
|---|---|---|
| greenfield |
| No existing patterns |
| "Add GraphQL API" (when project has none) |
| modification | Extending existing functionality | "Add pagination to user list API" |
| integration | Connecting external systems | "Integrate Stripe payments" |
If unclear, ask:
Before starting research: Is this (1) Greenfield - new capability, (2) Modification - extends existing, or (3) Integration - connects external systems?
Mode affects agent priority:
Run 4 agents in PARALLEL (single message, 4 Task calls):
| Agent | Prompt Focus | Mode |
|---|---|---|
ring:repo-research-analyst | Codebase patterns for [feature]. Search docs/solutions/ knowledge base. Return file:line references. | PRIMARY in modification |
ring:best-practices-researcher | External best practices for [feature]. Use Context7 + WebSearch. Return URLs. | PRIMARY in greenfield |
ring:framework-docs-researcher | Tech stack docs for [feature]. Detect versions from manifests. Use Context7. Return version constraints. | PRIMARY in integration |
ring:product-designer | User problem validation, personas, competitive UX analysis, design constraints for [feature]. Mode: ux-research. | PRIMARY in greenfield, SECONDARY in others |
Task invocation for product-designer:
Task(
subagent_type="ring:product-designer",
prompt="Analyze user needs for [feature]. Mode: ux-research. Return: problem validation, preliminary personas, competitive analysis, design constraints."
)
If TopologyConfig is provided (from command's topology discovery):
---