research · weizhena — Claude Code skill: build a research outline
This skill does preliminary research on a topic and drafts an outline: a list of items to study plus the fields to capture for each. Useful before an academic review or a tech comparison.
npx skills add Weizhena/Deep-Research-skills --skill research -a claude-codeWhat research does
The skill runs in steps. It takes your topic, uses the model's own knowledge to list the main objects and a rough field framework, then asks through request_user_input what to add or drop. Next it launches one background web-search agent with a fixed prompt template: only the {xxx} variables change, the structure and wording stay as written. The agent returns extra items, new fields and source links, and writes no files.
Step three asks whether you already have a field definition file, and merges it with the draft if you do. You end up with two files under ./{topic_slug}/: outline.yaml with the item list and execution config, and fields.yaml with field definitions. Fields carry a detail_level of brief -> moderate -> detailed, and the uncertain list is reserved for the deep phase.
Before searching, the skill asks for a time range — the last 6 months, since 2024, or unlimited. Batch size and items per agent are confirmed the same way, and output_dir defaults to ./results. This is groundwork only: the deep pass runs from a separate command, so don't expect a finished report right after /research.
What it helps with
- draft an item list for a topic review
- define the field framework for a comparison table
- top up a draft with fresh sources from web search
- merge your own field definitions into the skill's draft
- prepare config for a parallel agent run
Example prompts for the agent
- /research history of AI coding
- /research vector database comparison
- /research model compression methods
How to install research
1Skills CLI (Vercel)
npx skills add Weizhena/Deep-Research-skills --skill research -a claude-code2Manually: put the files in place
~/.claude/skills/research/SKILL.mdCopy the whole skill folder; for one project use .claude/skills/research/
1Skills CLI (Vercel)
npx skills add Weizhena/Deep-Research-skills --skill research -a codex2Manually: put the files in place
.agents/skills/research/SKILL.mdFor all projects use ~/.agents/skills/
1Skills CLI (Vercel)
npx skills add Weizhena/Deep-Research-skills --skill research -a cursor2Manually: put the files in place
.cursor/skills/research/SKILL.mdCursor also reads .agents/skills/ and .claude/skills/
1GitHub CLI
gh skill install Weizhena/Deep-Research-skills research2Manually: put the files in place
.github/skills/research/SKILL.md1Skills CLI (Vercel)
npx skills add Weizhena/Deep-Research-skills --skill research -a gemini-cli2Platform CLI
gemini skills install https://github.com/Weizhena/Deep-Research-skills --path skills/research-codex-en/researchManually: put the files in place
.devin/skills/research/SKILL.mdThe legacy .windsurf/skills/ path still works
Skills CLI (Vercel)
npx skills add Weizhena/Deep-Research-skills --skill research -a opencodeClaude.ai
Zip the folder and upload it in Settings → Capabilities → Skills
Step by step, with commands for each platform: How to install skills in Claude Code: five ways
Questions about research
How do I install research in Claude?
Run npx skills add Weizhena/Deep-Research-skills --skill research -a claude-code. The skill lands at ~/.claude/skills/research/SKILL.md.
What does research do?
It builds a preliminary research plan: an item list, a field framework and two files, outline.yaml and fields.yaml. It also tops the draft up with web search results.
Does research write the report itself?
No. It is the preparation step; the deep pass runs from /research-deep. There are also /research-add-items and /research-add-fields for edits.
Source text
SKILL.md · MIT
---
name: research
description: Conduct preliminary research on a topic and generate research outline. For academic research, benchmark research, technology selection, etc.
---
# Research Skill - Preliminary Research
## Trigger
`/research <topic>`
## Workflow
### Step 1: Generate Initial Framework from Model Knowledge
Based on topic, use model's existing knowledge to generate:
- Main research objects/items list in this domain
- Suggested research field framework
Output {step1_output}, use request_user_input to confirm:
- Need to add/remove items?
- Does field framework meet requirements?
### Step 2: Web Search Supplement
Use request_user_input to ask for time range (e.g., last 6 months, since 2024, unlimited).
**Parameter Retrieval**:
- `{topic}`: User input research topic
- `{YYYY-MM-DD}`: Current date
- `{step1_output}`: Complete output from Step 1
- `{time_range}`: User specified time range
**Hard Constraint**: The following prompt must be strictly reproduced, only replacing variables in {xxx}, do not modify structure or wording.
Launch 1 web-search-agent (background), **Prompt Template**:
```python
prompt = f"""## Task
Research topic: {topic}
Current date: {YYYY-MM-DD}
Based on the following initial framework, supplement latest items and recommended research fields.
## Existing Framework
{step1_output}
## Goals
1. Verify if existing items are missing important objects
2. Supplement items based on missing objects
3. Continue searching for {topic} related items within {time_range} and supplement
4. Supplement new fields
## Output Requirements
Return structured results directly (do not write files):
### Supplementary Items
- item_name: Brief explanation (why it should be added)
...
### Recommended Supplementary Fields
- field_name: Field description (why this dimension is needed)
...
### Sources
- [Source1](url1)
- [Source2](url2)
"""
```
**One-shot Example** (assuming researching AI Coding History):
```
## Task
Research topic: AI Coding History
Current date: 2025-12-30
Based on the following initial framework, supplement latest items and recommended research fields.
## Existing Framework
### Items List
1. GitHub Copilot: Developed by Microsoft/GitHub, first mainstream AI coding assistant
2. Cursor: AI-first IDE, based on VSCode
...
### Field Framework
- Basic Info: name, release_date, company
- Technical Features: underlying_model, context_window
...
## Goals
1. Verify if existing items are missing important objects
2. Supplement items based on missing objects
3. Continue searching for AI Coding History related items within since 2024 and supplement
4. Supplement new fields
## Output Requirements
Return structured results directly (do not write files):
### Supplementary Items
- item_name: Brief explanation (why it should be added)
...
### Recommended Supplementary Fields
- field_name: Field description (why this dimension is needed)
...
### Sources
- [Source1](url1)
- [Source2](url2)
```
### Step 3: Ask User for Existing Fields
Use request_user_input to ask if user has existing field definition file, if so read and merge.
### Step 4: Generate Outline (Separate Files)
Merge {step1_output}, {step2_output} and user's existing fields, generate two files:
**outline.yaml** (items + config):
- topic: Research topic
- items: Research objects list
- execution:
- batch_size: Number of parallel agents (confirm with request_user_input)
- items_per_agent: Items per agent (confirm with request_user_input)
- output_dir: Results output directory (default: ./results)
**fields.yaml** (field definitions):
- Field categories and definitions
- Each field's name, description, detail_level
- detail_level hierarchy: brief -> moderate -> detailed
- uncertain: Uncertain fields list (reserved field, auto-filled in deep phase)
### Step 5: Output and Confirm
- Create directory: `./{topic_slug}/`
- Save: `outline.yaml` and `fields.yaml`
- Show to user for confirmation
## Output Path
```
{current_working_directory}/{topic_slug}/
├── outline.yaml # items list + execution config
└── fields.yaml # field definitions
```
## Follow-up Commands
- `/research-add-items` - Supplement items
- `/research-add-fields` - Supplement fields
- `/research-deep` - Start deep research
© Weizhena · MIT · Weizhena/Deep-Research-skills
Similar skills
Everything for Science and research →research by other authors comes first.