Skill

deepwiki-research

Install
1
Install the plugin
$
npx claudepluginhub radius5-study/r5-plugin --plugin r5

Want just this skill?

Add to a custom plugin, then install with one command.

Description

This skill should be used when the user asks to "research a GitHub repository", "investigate org/repo", "deepwiki research", "analyze repository implementation", "understand how X repo works", or provides an "owner/repo" format GitHub repository name for investigation. Use for researching any GitHub repository's implementation, codebase structure, or internal workings using Deepwiki MCP.

Tool Access

This skill uses the workspace's default tool permissions.

Supporting Assets
View in Repository
references/advanced-techniques.md
references/deepwiki-tools.md
references/examples.md
references/research-patterns.md
references/troubleshooting.md
references/verification.md
Skill Content

GitHub Deepwiki Research

Overview

Investigate any GitHub repository's implementation details using Deepwiki MCP. This skill enables research on undocumented internal workflows, execution patterns, and core functionalities across any public GitHub repository.

Setup

This plugin automatically configures Deepwiki MCP for public repository research. No manual setup required.

For private repositories:

If you need to research private repositories, update plugins/r5/.mcp.json to include your API key:

{
  "deepwiki": {
    "url": "https://mcp.devin.ai/mcp",
    "headers": {
      "Authorization": "Bearer ${DEEPWIKI_API_KEY}"
    }
  }
}

Then set the environment variable:

export DEEPWIKI_API_KEY="your-api-key-here"

See Deepwiki MCP documentation for API key setup.

Triggers

Use this skill when user mentions any of the following:

  • "deepwiki research"
  • "investigate repo", "research repo", "analyze repo"
  • "owner/repo" format (e.g., "facebook/react", "python/cpython")
  • "how does X repository work"
  • "understand implementation of"
  • Comparing implementation with upstream

When to Use

  • Investigating feature implementations in a repository
  • Understanding workflow or execution flow
  • Researching patterns in a codebase
  • Understanding internal processing mechanisms
  • Locating specific functionality in a codebase
  • Comparing implementation with upstream

Workflow

Step 1: Identify the target repository

Extract the repository name from user input. The format should be owner/repo (e.g., facebook/react, python/cpython, Comfy-Org/ComfyUI).

If user doesn't specify a repository, ask: "Which GitHub repository would you like to investigate? Please provide it in owner/repo format."

Step 2: Clarify the user's goal

First, review the existing conversation history. The user may have already explained their purpose in prior messages — extract both the topic and the goal from that context without asking again.

If the goal is still unclear after reviewing the conversation, ask one focused question before proceeding:

"What are you ultimately trying to do with this? (e.g., understand how it works, find where it's implemented, debug an issue, implement something similar)"

Only proceed to Step 3 once you understand both:

  • What to investigate (topic/feature)
  • Why (the user's goal — this shapes what to look for and how to report it)

Step 3: Research with Deepwiki MCP

3 tools, use in order — this sequence dramatically improves precision:

Step 3a: Get topic list (always start here for unfamiliar repos)

read_wiki_structure(repoName="owner/repo")
# → Returns list of wiki topics (e.g., "Architecture", "Authentication", "Data Flow")

Step 3b: Read the most relevant topic in full (this is the key step)

read_wiki_contents(repoName="owner/repo", topic="Architecture")
# → Returns comprehensive wiki page: accurate file paths, class names, data flow diagrams
# → Far more reliable than ask_question alone — use this before asking questions

Step 3c: Ask follow-up questions (for specifics not covered in the wiki page)

ask_question(
    repoName="owner/repo",
    question="Your specific question about the implementation"
)

Why this order matters: read_wiki_contents returns the full curated wiki page for a topic, giving far more accurate file paths and implementation details than RAG-based Q&A alone. Use it before ask_question to ground your follow-up questions in real context.

See references/deepwiki-tools.md for detailed API reference.

Step 4: Identify file paths from Deepwiki response

Extract specific file paths mentioned in the response (e.g., src/index.js, lib/core.py).

Step 5: View actual source code with gh CLI (CRITICAL)

Always verify Deepwiki information by viewing the actual source code. Deepwiki may be outdated or incorrect.

# Step 5a: View the file identified in Step 4
gh api repos/owner/repo/contents/path/to/file.py | jq -r '.content' | base64 -d

# Step 5b: If you need to search for specific functions
gh api search/code -X GET -f q="repo:owner/repo function_name" | jq '.items[].path'

# Step 5c: View raw file directly (alternative)
curl -s https://raw.githubusercontent.com/owner/repo/main/path/to/file.py

Step 6: Cross-reference and verify

Compare what Deepwiki provided with the actual source code:

  • Are the file paths correct?
  • Are the function names accurate?
  • Is the implementation logic as described?
  • Note any discrepancies

Step 7: Repeat if needed

If the source code reveals related functions or files, repeat from Step 3.

Important Notes

  • Never trust Deepwiki alone - always verify with source code
  • Check recent commits - Deepwiki may be outdated:
    gh api repos/owner/repo/commits -f path=path/to/file.py -f per_page=3
    
  • Start with specific questions - vague questions yield vague answers
  • Always confirm repository name - ensure you're researching the correct repo

Resources

Stats
Stars0
Forks0
Last CommitMar 7, 2026
Actions

Similar Skills

cache-components

Expert guidance for Next.js Cache Components and Partial Prerendering (PPR). **PROACTIVE ACTIVATION**: Use this skill automatically when working in Next.js projects that have `cacheComponents: true` in their next.config.ts/next.config.js. When this config is detected, proactively apply Cache Components patterns and best practices to all React Server Component implementations. **DETECTION**: At the start of a session in a Next.js project, check for `cacheComponents: true` in next.config. If enabled, this skill's patterns should guide all component authoring, data fetching, and caching decisions. **USE CASES**: Implementing 'use cache' directive, configuring cache lifetimes with cacheLife(), tagging cached data with cacheTag(), invalidating caches with updateTag()/revalidateTag(), optimizing static vs dynamic content boundaries, debugging cache issues, and reviewing Cache Component implementations.

138.4k