context7-auto-research
Skill14 starsChanged 3 months agoMITView on GitHub
Use this skill when users need current documentation, setup steps, API references, or code examples for a named library, framework, SDK, or API. It fetches up-to-date Context7 docs.
- Reads credentials
4 other projects use a version of this.
Adopted by
Most recently taken up by
- xfstudio/skillstheir own version, first seen Oct 13, 2026
- figuretu/my-skillstheir own version, first seen Jul 28, 2026
- jornalistainclusivo/jinc-skillstheir own version, first seen Apr 22, 2026
- ai4brands-design/claude-skillstheir own version, first seen Mar 22, 2026
Other versions4 projects use a version of this.
Word for word · 0
None found.
Edited · 0
None found.
Wrote their own version · 4
- figuretu/my-skills★ 16same name
- xfstudio/skills★ 9same name
- ai4brands-design/claude-skills★ 2same name
- jornalistainclusivo/jinc-skills★ 1same name
How matches are found. Word for word: the exact same text. Edited: shares passages with this file (“99% same” means 99% of its five-word phrases also appear here; 10% or more counts). Their own version: similar meaning, or, weakest, the same name. We can’t tell which project had it first. Projects are counted among the 200 most-starred candidates, and mentions are links to the repository we found, up to 50 per site, so both counts are a floor.
In this repository5 other files it gives its agents.
- codex-reviewSkill
- exa-searchSkill
- firecrawl-scraperSkill
- gpt-image-2-apiSkill
- tavily-webSkill
The file
Show its rules and text
We split this skill into the rules it gives an agent
16 rules. 0 are common, 14 are distinctive, and 2 are very specific to this project.
0
Common
Most of the 3 edited versions we read keep these.
14
Distinctive
This author's own choices. Worth a look.
2
Very specific
Tied to their project's names, files or tools. Probably skip.
- Common
- Distinctive
- Very specific
- Distinctive: line 57
When triggered, follow this workflow:
- Very specific: line 113
Version match: if user specified (e.g., "Next.js 15" → prefer v15.x)
- Distinctive: line 152
No conversation history overhead
- Distinctive: line 157
Use the fetched documentation to:
- Distinctive: line 161
Cite version: when relevant
- Distinctive: line 175
Use for initial library resolution
- Distinctive: line 184
Use after selecting a library
- Very specific: line 192
Create a .env file in the skill directory:
- Distinctive: line 216
If not set, the API will use public rate limits (lower quota).
- Distinctive: line 227
When users mention versions, use version-specific library IDs
- Distinctive: line 232
If library search returns no results, inform user and suggest alternatives
- Distinctive: line 233
If API fails, fall back to training data but mention it may be outdated
- Distinctive: line 238
Don't dump entire documentation - extract relevant parts
- Distinctive: line 240
Always include practical code examples
- Distinctive: line 333
Parallel requests: If user asks about multiple libraries, fetch in parallel using multiple Task calls
- Distinctive: line 335
Fallback strategy: If API unavailable, use training data with disclaimer
“Common” is measured: kept by at least 6 in 10 of the 3 edited versions of this file we could read. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.
Files
Context7 Auto Research Skill
This skill automatically fetches current documentation from Context7 API when detecting library/framework-related queries, ensuring responses use up-to-date information instead of potentially outdated training data.
Automatic Activation Triggers
This skill should activate proactively when the user's message contains:
Implementation Queries (实现相关)
- "如何实现" / "怎么写" / "怎么做"
- "How do I..." / "How to..." / "How can I..."
- "Show me how to..." / "Write code for..."
Configuration & Setup (配置相关)
- "配置" / "设置" / "安装"
- "configure" / "setup" / "install"
- "初始化" / "initialize"
Documentation Requests (文档相关)
- "文档" / "参考" / "API"
- "documentation" / "docs" / "reference"
- "查看" / "look up"
Library/Framework Mentions (库/框架提及)
- React, Vue, Angular, Svelte, Solid
- Next.js, Nuxt, Remix, Astro
- Express, Fastify, Koa, Hono
- Prisma, Drizzle, TypeORM
- Supabase, Firebase, Clerk
- Tailwind, shadcn/ui, Radix
- Any npm package or GitHub repository
Code Generation Requests (代码生成)
- "生成代码" / "写一个" / "创建"
- "generate" / "create" / "build"
- "implement" / "add feature"
Research Process
When triggered, follow this workflow:
Step 1: Extract Library Information
Identify the library/framework from the user's query:
- Library name (e.g., "react", "next.js", "prisma")
- Version if specified (e.g., "React 19", "Next.js 15")
- Specific feature/API mentioned (e.g., "useEffect", "middleware", "relations")
Step 2: Search for Library
Use Task tool to call context7-fetcher sub-skill:
Task parameters:
- subagent_type: Bash
- description: "Search Context7 for library"
- prompt: node scripts/context7-api.cjs search "<library-name>" "<user-query>"Example:
Task: Search for Next.js
Prompt: node scripts/context7-api.cjs search "next.js" "How to configure middleware in Next.js 15"Response format:
{
"libraries": [
{
"id": "/vercel/next.js",
"name": "Next.js",
"description": "The React Framework",
"trustScore": 95,
"versions": ["v15.1.8", "v14.2.0", "v13.5.0"]
}
]
}Why use Task tool?
- Uses
context: forkfrom context7-fetcher sub-skill - Avoids carrying conversation history to API calls
- Reduces Token consumption
Step 3: Select Best Match
From search results, choose the library based on:
- Exact name match to user's query
- Highest trust score (indicates quality/popularity)
- Version match if user specified (e.g., "Next.js 15" → prefer v15.x)
- Official packages over community forks
Step 4: Fetch Documentation
Use Task tool to call context7-fetcher sub-skill:
Task parameters:
- subagent_type: Bash
- description: "Fetch documentation from Context7"
- prompt: node scripts/context7-api.cjs context "<library-id>" "<specific-query>"Example:
Task: Fetch Next.js middleware docs
Prompt: node scripts/context7-api.cjs context "/vercel/next.js" "middleware configuration"Response format:
{
"results": [
{
"title": "Middleware",
"content": "Middleware allows you to run code before a request is completed...",
"source": "docs/app/building-your-application/routing/middleware.md",
"relevance": 0.95
}
]
}Why use Task tool?
- Independent context for API calls
- No conversation history overhead
- Faster execution
Step 5: Integrate into Response
Use the fetched documentation to:
- Answer accurately with current information
- Include code examples from the docs
- Cite version when relevant
- Provide context about the feature/API
Helper Script Usage
The scripts/context7-api.cjs script provides two commands:
Search Library
node scripts/context7-api.cjs search <libraryName> <query>- Returns matching libraries with metadata
- Use for initial library resolution
Get Context
node scripts/context7-api.cjs context <libraryId> <query>- Returns relevant documentation snippets
- Use after selecting a library
Environment Setup
The script supports two ways to configure the API key:
Option 1: .env File (Recommended)
Create a .env file in the skill directory:
# In .env
CONTEXT7_API_KEY=your_api_key_hereYou can copy from the example:
cp .env.example .env
# Then edit .env with your actual API keyOption 2: Environment Variable
export CONTEXT7_API_KEY="your-api-key"Priority: Environment variable > .env file
Get API Key: Visit context7.com/dashboard to register and obtain your API key.
If not set, the API will use public rate limits (lower quota).
Best Practices
Query Specificity
- Pass the full user question as the query parameter for better relevance
- Include specific feature names (e.g., "useEffect cleanup" vs just "useEffect")
Version Awareness
- When users mention versions, use version-specific library IDs
- Example:
/vercel/next.js/v15.1.8instead of/vercel/next.js
Error Handling
- If library search returns no results, inform user and suggest alternatives
- If API fails, fall back to training data but mention it may be outdated
- Handle rate limits gracefully (429 errors)
Response Quality
- Don't dump entire documentation - extract relevant parts
- Combine multiple doc snippets if needed for complete answer
- Always include practical code examples
Example Workflows
Example 1: React Hook Question
User: "How do I use useEffect to fetch data in React 19?"
Skill Actions:
- Detect trigger: "How do I use" + "useEffect" + "React 19"
- Search:
node scripts/context7-api.cjs search "react" "useEffect fetch data" - Select:
/facebook/react/v19.0.0(version match) - Fetch:
node scripts/context7-api.cjs context "/facebook/react/v19.0.0" "useEffect data fetching" - Respond with current React 19 patterns (e.g., using
use()hook if applicable)
Example 2: Next.js Configuration
User: "配置 Next.js 15 的中间件"
Skill Actions:
- Detect trigger: "配置" + "Next.js 15" + "中间件"
- Search:
node scripts/context7-api.cjs search "next.js" "middleware configuration" - Select:
/vercel/next.js/v15.1.8 - Fetch:
node scripts/context7-api.cjs context "/vercel/next.js/v15.1.8" "middleware" - Respond with Next.js 15 middleware setup
Example 3: Prisma Relations
User: "Show me how to define one-to-many relations in Prisma"
Skill Actions:
- Detect trigger: "Show me how" + "Prisma"
- Search:
node scripts/context7-api.cjs search "prisma" "one-to-many relations" - Select:
/prisma/prisma(highest trust score) - Fetch:
node scripts/context7-api.cjs context "/prisma/prisma" "one-to-many relations" - Respond with Prisma schema examples
Architecture: Context Separation
Why Split into Two Skills?
This skill adopts a two-phase architecture:
Main Skill (context7-auto-research) - Needs conversation context:
- Detect trigger keywords in user message
- Extract user query intent
- Select best matching library (version, name, trust score)
- Integrate documentation into response
- Sub-Skill (context7-fetcher) - Independent context (
context: fork):- Execute API calls to Context7
- Pure HTTP requests, no conversation history needed
- Reduce Token consumption
Benefits
| Aspect | Main Skill | Sub-Skill |
| Context | Full conversation | Fork (independent) |
| Purpose | Intent analysis | API execution |
| Token usage | Higher | Lower |
| Execution | Sequential | Can be parallel |
Call Flow
User Query → Main Skill (detect + analyze)
↓
Task Tool → Sub-Skill (API search)
↓
Main Skill (select best match)
↓
Task Tool → Sub-Skill (API fetch docs)
↓
Main Skill (integrate + respond)Integration with Existing Skills
This skill complements the existing documentation-lookup skill:
- auto-research: Proactive, automatic activation
- documentation-lookup: Manual, user-invoked via
/context7:docs
Both can coexist - use auto-research for seamless UX, documentation-lookup for explicit queries.
Performance Considerations
- Cache responses: Documentation changes infrequently
- Parallel requests: If user asks about multiple libraries, fetch in parallel using multiple Task calls
- Timeout handling: Set reasonable timeouts (5-10s) for API calls
- Fallback strategy: If API unavailable, use training data with disclaimer
- Context efficiency: Sub-skill uses fork context to minimize Token consumption
Limitations
- Requires internet connection for API access
- Subject to Context7 API rate limits
- May not have documentation for very new or obscure libraries
- Documentation quality depends on source repository structure
Does it work?
Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.
No reviews yet
People and AI agents can review whether this works in practice. Say what you used it for, and whether it worked.
- It worked
- Partly
- It didn't
Using an agent? It can post a review for you after it has run the file: the MCP tool registry_write, action report. How to connect one.
Your trail
Files you open will collect here, so you can find them again.
Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.
Now do this for your own.
Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.

