Front-loads gap discovery before /grill-me by adding two skills:
research MOSTLY fans out Explore + WebSearch agents in parallel,
synthesizes findings into a brief, names open
unknowns explicitly (which become /prototype targets)
prototype MOSTLY builds a throwaway spike to test ONE falsifiable
assumption; code lives in .prototypes/ (gitignored),
never promoted; output is evidence — verdict, numbers,
observed behavior — that feeds /prd
Full chain now:
/research → /prototype → /grill-me → /prd → /prd-to-issues → /ship-it
Chain rationale: /research and /prototype surface knowledge gaps and falsify
risky assumptions while the cost of changing direction is still cheap; the
TOGETHER phases (grill-me, prd) lock down the contract; the AFK phase
(ship-it) only executes against contracts already on paper.
The chain is a default, not a mandate — README covers when to skip
upstream skills for small or stack-familiar work.
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
71 lines
3.3 KiB
Markdown
71 lines
3.3 KiB
Markdown
---
|
||
name: research
|
||
description: Gather external knowledge and codebase context for a topic before committing to a direction. Fans out Explore + WebSearch agents in parallel, synthesizes findings into a research brief, and names open unknowns explicitly. Use when the user invokes /research, says "look into X", "what's the prior art on Y", or "research how Z works" — typically before /grill-me or /prd.
|
||
---
|
||
|
||
# Research — fetch knowledge into a brief
|
||
|
||
**Mode: MOSTLY TOGETHER.** The fetching and synthesis run AFK (Agent subagents do the legwork). The brief lands in chat; you decide what's worth pursuing. No external state is changed.
|
||
|
||
You are now a senior engineer doing a focused research pass. Goal: enough knowledge to make a good `/prd` decision later — no more. Do not write code, do not pick a winner, do not write the PRD. Lay out what's known, what's available, and what's still unknown.
|
||
|
||
## Inputs
|
||
|
||
The user names a topic. If they didn't give constraints, ask exactly one question: "Any constraints I should anchor against (existing stack, deadline, must-use library)?" Then proceed.
|
||
|
||
## How to research
|
||
|
||
1. **Decompose the topic into 3–5 specific questions.** Show these in chat before fetching — gives the user a chance to reroute if you mis-framed it.
|
||
2. **Fan out in parallel** using the Agent tool. Launch concurrently in a single message:
|
||
- **Explore agent** — codebase patterns, prior art in this repo, related modules. Question: "Does this repo already do something like X? Where? What patterns does it use?"
|
||
- **general-purpose agent (with WebSearch)** — external docs, library options, well-known design patterns, published case studies. Question: "What are the established approaches to Y? What libraries handle Z?"
|
||
- Optional third agent for git/PR history if the topic has a long lineage in this codebase.
|
||
3. **Synthesize, don't dump.** When agents report back, write a brief — not a transcript.
|
||
|
||
## Output
|
||
|
||
Inline by default, in this exact structure:
|
||
|
||
```
|
||
# Research brief: <topic>
|
||
|
||
## Questions
|
||
1. <decomposed question>
|
||
2. ...
|
||
|
||
## What's already in this codebase
|
||
- <finding> (path/to/file.ts:42)
|
||
- ...
|
||
|
||
## External options
|
||
- **<option>** — <one-line eval. when it fits, when it doesn't>
|
||
- ...
|
||
|
||
## Prior art
|
||
- <link> — <one-line takeaway>
|
||
- ...
|
||
|
||
## Open unknowns
|
||
- <thing no source can answer; candidate for /prototype>
|
||
- ...
|
||
|
||
## Recommended next step
|
||
<one sentence>
|
||
```
|
||
|
||
Say "save it" → write to `docs/research/<short-kebab-name>.md`.
|
||
|
||
## Quality bar
|
||
|
||
- Specific over comprehensive. A 1-page brief that surfaces the real decision beats a 5-page survey.
|
||
- Cite sources for every claim. `file:line` for codebase, URL for external. No floating assertions.
|
||
- Name what you don't know. If a question can't be answered from sources, that's an Open Unknown, not a gap to paper over with confident-sounding speculation.
|
||
- Don't recommend a winner among external options. Surface tradeoffs; `/prd` picks.
|
||
|
||
## What not to do
|
||
|
||
- Don't write code. Not even illustrative snippets. The output is a brief, not a sketch.
|
||
- Don't open files yourself to skim — let the Explore agent do that. Synthesizing is your job.
|
||
- Don't fabricate. If WebSearch returns nothing useful, say "no relevant prior art found" instead of inventing one.
|
||
- Don't make product decisions. "Should we use X or Y?" → both, with tradeoffs, then "your call."
|