Capture user's feature request verbatim as Phase 1 of epoch
Capture the user's feature request verbatim in a beads task, then classify, research, and explore. This is the immutable record that all subsequent phases reference.
See ../protocol/CONSTRAINTS.md for coding standards.
-> Full workflow in PROCESS.md
Given user provides request when capturing then store verbatim without paraphrasing should never summarize or interpret
Given request captured when classifying then use aura:p1-user:s1_1-classify label should never use other labels for the initial capture
Given classification complete when user confirms research depth run s1_2-research and s1_3-explore in parallel skip research depth confirmation
Given Phase 1 complete when proceeding then invoke /aura:user-elicit for Phase 2 should never skip to proposal
| Sub-step | Label | Description | Parallel? |
|---|---|---|---|
| s1_1-classify | aura:p1-user:s1_1-classify | Capture verbatim + classify along 4 axes | Sequential (first) |
| s1_2-research | aura:p1-user:s1_2-research | Find domain standards, prior art | Parallel with s1_3 |
| s1_3-explore | aura:p1-user:s1_3-explore | Codebase exploration for integration points | Parallel with s1_2 |
Get the user's request verbatim:
AskUserQuestion: "What feature or change would you like to request?"
Create the request task:
bd create --labels "aura:p1-user:s1_1-classify" \
--title "REQUEST: {{short summary}}" \
--description "{{VERBATIM user request - do not edit}}" \
--assignee architect
Classify along 4 axes:
Record classification via comment on the request task:
bd comments add {{request-task-id}} \
"Classification: scope={{scope}}, complexity={{complexity}}, risk={{risk}}, novelty={{novelty}}"
After classification, confirm research depth with the user:
AskUserQuestion:
question: "Based on classification ({{scope}}, {{complexity}}, {{risk}}, {{novelty}}), how deep should research go?"
header: "Research Depth"
options:
- label: "Quick scan"
description: "Familiar domain, low complexity — brief prior art check"
- label: "Standard research"
description: "Moderate complexity or some novelty — find existing patterns and standards"
- label: "Deep dive"
description: "High complexity, new territory, or high risk — thorough domain analysis"
Record the user's depth choice, then spawn two parallel agents:
bd comments add {{request-task-id}} \
"Research depth: {{depth}} (user confirmed)"
Spawn both agents in parallel (via Task tool with run_in_background: true). Each agent invokes its dedicated skill:
Invoke /aura:research with:
The /aura:research skill handles the full research workflow: depth-scoped checklist, structured report written to docs/research/<topic>.md, and summary comment on the REQUEST task.
See skills/research/SKILL.md for full procedure, output format, and examples.
Depth determines scope:
| Depth | Local | Web | Deliverable |
|---|---|---|---|
| Quick scan | Grep project for related patterns, check README/docs | None | 1-paragraph summary of local findings |
| Standard research | Local scan + check project dependencies, related repos | Search for domain standards, established patterns | List of prior art with relevance notes |
| Deep dive | Full local analysis + dependency tree | Search for competing solutions, RFCs, academic papers, well-regarded projects | Structured report: standards found, competing approaches, recommended direction |
Research checklist:
Record findings as a comment on the REQUEST task:
bd comments add {{request-task-id}} \
"Research findings ({{depth}}):
- Standards: {{list or 'none found'}}
- Prior art: {{list of projects/solutions}}
- Patterns: {{established approaches}}
- Recommendation: {{brief direction}}
- Full report: docs/research/{{topic}}.md"
Invoke /aura:explore with:
The /aura:explore skill handles the full exploration workflow: depth-scoped checklist, structured findings, and summary comment on the REQUEST task.
See skills/explore/SKILL.md for full procedure, output format, and examples.
Exploration checklist:
Depth determines thoroughness:
| Depth | Scope | Tools |
|---|---|---|
| Quick scan | Grep for keywords, check obvious entry points | Glob, Grep |
| Standard research | Trace data flow, map dependencies, read related modules | Glob, Grep, Read |
| Deep dive | Full dependency graph, architectural analysis, identify all touchpoints | Glob, Grep, Read, Bash (for build/dep tools) |
Record findings as a comment on the REQUEST task:
bd comments add {{request-task-id}} \
"Explore findings ({{depth}}):
- Entry points: {{list of files/functions}}
- Related types: {{existing types/schemas}}
- Dependencies: {{modules this would use}}
- Patterns: {{how similar features work here}}
- Conflicts: {{potential issues or 'none'}}"
Both agents must complete before proceeding to Phase 2. Their findings are recorded as comments on the REQUEST task, available for the elicitation survey and proposal phases.
User says: "I want to add a logout button to the header that clears the session and redirects to the login page"
bd create --labels "aura:p1-user:s1_1-classify" \
--title "REQUEST: Add logout button to header" \
--description "I want to add a logout button to the header that clears the session and redirects to the login page" \
--assignee architect
# Returns: bd-abc123
bd comments add bd-abc123 \
"Classification: scope=module, complexity=low, risk=internal-only, novelty=familiar"
After Phase 1 completes, invoke /aura:user-elicit to begin requirements elicitation (Phase 2).
The elicit task will block this request task:
bd dep add {{request-task-id}} --blocked-by {{elicit-task-id}}