ratacat/claude-skills/research
Claude Code and agent skill by ratacat/claude-skills
- community
Checking that the SKILL.md file is still in the repository.
Deep web research with relevance scoring and knowledge graph storage. Use when researching topics, companies, people, or concepts. Performs Graph-of-Thoughts style exploration with parallel branching, relevance scoring, and synthesis into themed reports.
Install
npx vskill@latest install ratacat/claude-skills/researchSKILL.md
Deep Research Skill
A Graph-of-Thoughts research system that builds a knowledge graph through structured exploration, stores all findings in SQLite, and uses graph operations (merging, traversal, contradiction detection, relationship inference) to synthesize insights.
CRITICAL REQUIREMENTS
You MUST use the database for all operations. Every finding, every URL, every search query, every relationship MUST be recorded. The database is not optional—it is the core of this methodology. If you skip database operations, the research is invalid.
You MUST perform graph operations. After each exploration phase, you MUST run merging, relationship inference, and contradiction detection. These are not suggestions—they are required steps.
You MUST work iteratively. Do not try to gather all information then synthesize. Work in cycles: explore → store → analyze graph → identify gaps → explore gaps → repeat.
Arguments
Parse the user's input to extract:
topic: The research subject (required unless --list or --continue)--depth N: How many levels deep to explore (default: 2)--branches N: How many aspects to explore in parallel (default: 5)--continue "topic": Resume a previous research session--list: Show all saved research sessions
Database Setup
Before ANY research, initialize the database. This is mandatory:
Verify the database exists and has tables:
If tables are missing, the research CANNOT proceed.
PHASE 1: SESSION INITIALIZATION
1.1 Create Session
Immediately retrieve and store the session ID:
Store this session_id. You will use it in EVERY subsequent database operation.
1.2 Decompose Topic into Branches
Break the topic into {branches} distinct aspects. For each aspect, create an initial "lead" finding:
This seeds the graph with initial nodes to explore.
PHASE 2: EXPLORATION
For each unexplored lead (finding_type='lead' that hasn't been explored):
2.1 Generate Search Query
Create a focused search query for the lead. Record it BEFORE executing:
2.2 Execute Search
2.3 Record URLs
For EVERY URL in results, record it BEFORE fetching:
2.4 Fetch and Extract
For promising URLs (top 3-5), fetch content with WebFetch. After fetching, update status:
If fetch fails:
2.5 Create Findings
For EACH discrete piece of information extracted, create a finding:
Scoring Criteria (APPLY STRICTLY):
- 9-10: Directly answers a key question; novel insight; actionable
- 7-8: Useful context; supports or challenges other findings
- 4-6: Tangentially related; may be useful for completeness
- 1-3: Barely relevant; keep only if nothing better exists
- 0: Off-topic; do not insert
Finding Types:
fact: Verifiable piece of information with sourcelead: Promising direction requiring further explorationquestion: Unresolved question raised by the researchtheme: Recurring pattern observed across multiple sourcescontradiction: Conflicting information (see Phase 3.3)
2.6 Update Search Query Result Count
PHASE 3: GRAPH OPERATIONS
These operations are MANDATORY after each exploration cycle. Do not skip them.
3.1 MERGING: Detect and Combine Similar Findings
Similar findings fragment the graph and reduce insight quality. You MUST merge them.
Step 1: Identify Candidates
Query findings in the same branch that may be duplicates:
Step 2: Evaluate Similarity
For each pair, assess semantic similarity. Findings should be merged if:
- They state the same fact with different wording
- They cite the same source for the same claim
- One is a subset of the other
Step 3: Execute Merge
When merging finding B into finding A (keeping A):
Step 4: Record Merge
Log the merge for audit trail (add to content or create a merge log table if needed).
3.2 RELATIONSHIP INFERENCE: Build the Graph Edges
Findings without relationships are isolated nodes. You MUST connect them.
Relationship Types:
supports: Finding A provides evidence for Finding Bcontradicts: Finding A conflicts with Finding Belaborates: Finding A provides additional detail about Finding Brelated_to: Finding A and B discuss the same subtopic
Step 1: Query Unconnected Findings
Step 2: For Each Unconnected Finding, Find Related Findings
Step 3: Evaluate and Create Relationships
For each potential pair, determine if a relationship exists and its type. If yes:
Inference Rules:
- If Finding A cites a study and Finding B cites the same study →
related_to - If Finding A states X and Finding B provides mechanism for X →
supports - If Finding A says "X works" and Finding B says "X doesn't work" →
contradicts - If Finding A is general and Finding B is specific case →
elaborates
3.3 CONTRADICTION DETECTION
Contradictions are HIGH-VALUE findings. They indicate uncertainty, bias, or nuance.
Step 1: Query Potential Contradictions
Step 2: Evaluate Each Pair
Look for:
- Opposite claims about effectiveness
- Conflicting statistics or numbers
- Different conclusions from same evidence
- Mutually exclusive recommendations
Step 3: Record Contradiction
Contradictions scoring 9+ because they reveal important nuances.
3.4 ENTITY EXTRACTION AND LINKING
Entities enable cross-session knowledge and pattern detection.
Step 1: Extract Entities from New Findings
For each new finding, identify named entities:
- People (researchers, doctors, patients in case studies)
- Organizations (hospitals, research institutions, companies)
- Concepts (specific treatments, mechanisms, conditions)
- Technologies (devices, drugs, protocols)
Step 2: Create or Find Entity
Step 3: Link Finding to Entity
PHASE 4: GRAPH TRAVERSAL AND GAP ANALYSIS
After graph operations, analyze the graph structure to identify gaps.
4.1 Find Isolated Clusters
Isolated nodes indicate unexplored connections. Create leads to investigate them.
4.2 Find Weakly Supported Claims
Important claims need corroboration. Create leads to find supporting evidence.
4.3 Find Unresolved Questions
Each question is a gap. Prioritize by relevance score.
4.4 Identify Unexplored Leads
These are leads that haven't been followed. If depth_remaining > 0, explore them.
4.5 Create New Leads from Gaps
For each gap identified, create a lead finding:
PHASE 5: RECURSIVE EXPLORATION
If depth_remaining > 0 and unexplored leads exist:
5.1 Decrement Depth
This is the start of the file. Read the full SKILL.md on GitHub.
Security
- Security scanPassed, 100 of 100Pattern checks on the skill's files.
- Model reviewNot runA model review is scheduled for the next rescan.
Quality evaluation
- Task evaluationNot runNo evaluation yet. Run one in Skill Studio.
Source
- SKILL.md in the repositoryCheckingskills/research/skill.md
Popularity
- Repository stars
- 56
- Repository forks
- 9
- 7-day trend score
- 25
Stars and forks are for the whole GitHub repository, not this skill alone. Not refreshed yet.
Works with
Any agent vskill installs to: 56 targets in all. These 39 have a page on this site.
- Claude Code
- Cursor
- GitHub Copilot
- Windsurf
- Codex
- Gemini CLI
- Cline
- Amp
- Roo Code
- Goose
- Continue
- Kilo Code
- Junie
- Trae
- OpenHands
- Qwen Code
- AI Agent
- Tabnine Chat
- Sourcegraph Cody
- Amazon Q
- Firebase Genkit
- Sweep
- Devin
- Phind
- Mentat
- Claude Desktop
- Aider
- GPT Pilot
- Plandex
- bolt.new
- v0
- Replit Agent
- Anse
- TypingMind
- BetterChatGPT
- LibreChat
- Warp AI
- Pieces
- Fig AI
Embed badge
[](https://verified-skill.com/skills/ratacat/claude-skills/research)