一键导入
research
Deep research on a topic using codebase analysis, library docs, and web search — writes the report plus its primary sources to raw/research/<slug>/
用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
菜单
Deep research on a topic using codebase analysis, library docs, and web search — writes the report plus its primary sources to raw/research/<slug>/
用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
基于 SOC 职业分类
| name | research |
| description | Deep research on a topic using codebase analysis, library docs, and web search — writes the report plus its primary sources to raw/research/<slug>/ |
| category | researching |
| model | claude-sonnet-4-6 |
| effort | high |
| argument-hint | <topic or question to research> |
| disable-model-invocation | false |
| user-invocable | true |
Always obey .docs/guides/mcp-tools.md. Read it now if not already in context.
Run /primer first if you have not already this session.
Perform comprehensive research on a topic by combining codebase analysis, library documentation, and web research. Produce actionable findings with implementation suggestions, and persist the report together with its primary sources as ground-truth files under raw/research/<slug>/ so they can later be /wiki-ingested into the knowledge base.
Research Topic: $ARGUMENTS
$ARGUMENTSjob-queue). The output directory is raw/research/<slug>/. A prior run's files are immutable ground truth — never overwrite or edit them. Writing new files into raw/ is allowed; if a target file (index.md / sources.md) already exists, write the next free numeric sibling instead — index-2.md, then index-3.md, and so on. The new -N file must not repeat data already present in the prior file(s) — read the existing report first and capture only what is new, changed, or contradicts it, cross-referencing the prior file for everything unchanged (e.g. > Builds on [index.md](index.md); this update covers …). Treat existing research as read-only context you may cite, not as a file to update in place.Collect primary sources as you go. Throughout Phases 2–3, keep a running register of every primary source you actually rely on — its type (codebase / Context7 / web), its locator (file path + symbol, library id, or URL), the date accessed, and the specific excerpt(s) or facts it contributed. You will write this register out in Phase 5. A "primary source" is the document you drew the claim from, not your paraphrase of it.
Use MCP Serena to understand the current state of the codebase as it relates to the topic.
mcp__serena__list_memories → mcp__serena__read_memory) for relevant project contextPROJECT_STATUS.md and CLAUDE.md for constraints, conventions, and architectural decisionswiki/work/tasks/ for any related active or completed tasksmcp__serena__get_symbols_overview on relevant files/directories to understand architecturemcp__serena__search_for_pattern to find imports, package usage, and existing integrations related to the topicmcp__serena__find_symbol to locate relevant functions, classes, and componentspackage.json, config files, and environment setup for relevant dependencies and settingsDocument what already exists that any solution must work with:
For each relevant library or framework identified:
mcp__context7__resolve-library-id(libraryName="<library>")mcp__context7__query-docs(libraryId="<id>", query="<specific question>")Use Context7 for:
NOTE: Brave Search supports up to 50 requests per second — parallel searches are allowed.
Use Brave Search for:
"<topic> best practices 2025")"<topic> common mistakes")"<library A> vs <library B>")"<topic> production experience")When the research involves choosing packages or tools:
"best <category> library for <framework> 2025")Present a clear, structured summary:
For each viable approach, present:
| Criteria | Option A | Option B | Option C |
|---|---|---|---|
| Approach | Brief description | Brief description | Brief description |
| Pros | Key advantages | Key advantages | Key advantages |
| Cons | Key drawbacks | Key drawbacks | Key drawbacks |
| Complexity | Low/Medium/High | Low/Medium/High | Low/Medium/High |
| Dependencies | New deps needed | New deps needed | New deps needed |
| Codebase fit | How well it fits | How well it fits | How well it fits |
| Maintenance | Ongoing cost | Ongoing cost | Ongoing cost |
Suggest concrete next steps:
To create a task: /task-add <description based on findings>The synthesis from Phase 4 is the report; the register from the Phase 1 callout is the primary sources. Persist both under raw/research/<slug>/ using the Write tool (do not rely only on the chat transcript). Create the directory if it does not exist. Write two files — and honor the Phase 1 no-overwrite rule: if index.md or sources.md already exists, write index-2.md / sources-2.md (then -3, …) carrying only non-redundant new/changed content with a cross-reference back to the prior file.
index.md — the research report---
topic: <the research question, verbatim>
slug: <slug>
researched: <YYYY-MM-DD>
sources: [./sources.md]
---
# Research: <Topic>
> One-paragraph executive summary — the answer and the recommendation in brief.
## Research Questions
- <the 3–5 concrete questions from Phase 1>
## Current State (Codebase)
<what exists today relevant to the topic — cite file paths + symbols>
## Key Findings
<most important discoveries, each with an inline citation to a source id in sources.md, e.g. [S3]>
## Constraints
<what any solution must account for>
## Solution Comparison
<the Phase 4b table, if multiple approaches exist — omit if not applicable>
## Recommendation
<recommended approach and why; implementation outline; risks & mitigations>
## Next Steps
<the Phase 4d suggestions>
sources.md — the primary-source registerEvery source you actually relied on, one row per source, with a stable id (S1, S2, …) that the report cites. Keep the excerpt to the specific fact you used — enough to verify the claim without re-fetching.
---
topic: <the research question, verbatim>
slug: <slug>
researched: <YYYY-MM-DD>
---
# Primary Sources — <Topic>
| ID | Type | Locator | Accessed | What it contributed |
|----|------|---------|----------|---------------------|
| S1 | codebase | `path/to/file.ts::SymbolName` | <YYYY-MM-DD> | <fact drawn from it> |
| S2 | context7 | `<library-id>` — "<query>" | <YYYY-MM-DD> | <fact / API detail> |
| S3 | web | <full URL> | <YYYY-MM-DD> | <fact, with a short quoted excerpt> |
## Excerpts
### S3 — <source title>
<URL>
> <verbatim quoted excerpt that supports the cited claim>
Rules for this phase:
After writing the files, tell the user:
raw/research/<slug>/index.md and raw/research/<slug>/sources.md)raw/ ground-truth source: "Run /wiki-ingest raw/research/<slug>/index.md to synthesize this research into the knowledge base."/task-add or /decision-create suggested by the findingsraw/research/<slug>/ (index.md + sources.md) with the Write tool — the report is not done until it is persisted as a ground-truth sourceraw/ files: if a target already exists, write <name>-2.md / -3.md instead, carrying only non-redundant new/changed data with a cross-reference to the prior filesources.md is a source you actually consulted; mark unsupported claims as inferences rather than inventing citationsraw/research/ is the only raw/ path this skill may write to — never modify or delete anything elsewhere under raw/File a new bug report in wiki/work/bugs/ with required-on-report fields and append it to the bug index
Audit all project functionality at a high level and produce a 2-3 minute demo run book plus a Marp slideshow
Orchestrator for parallel agent teams. When invoked with a roadmap file path, drives every item through the full tackle → uat-generate → uat-auto pipeline until complete. When invoked with a task file path, runs that pipeline once and stops.
Refresh codebase context via Serena memories
Append a new item (task link or inline) to an existing roadmap in wiki/work/roadmaps/, optionally under a named phase
Create a structured execution-plan roadmap in wiki/work/roadmaps/ via short Socratic Q&A — captures goal, phases, and the initial hybrid (task-link OR inline) checklist