context7
A skill for retrieving the latest library documentation using Context7. Use when the user asks about how to use a library, requests code examples, or instructs to "use context7". Prevents hallucinations based on outdated training data and provides up-to-date API information.
Savant verdict: Review advised
Security analysis or source-hub review identified patterns requiring attention.
Live evaluation
Not evaluated yet. Workspaces can request a live evaluation.
Security assessment
Scan pending.
Structure
- No license declaredConfirm you may reuse this skill before importing it into your repository.
- The source hub's security checks flagged this skillSnyk: warn (Risk: MEDIUM · 1 issue)
SKILL.md
---
name: context7
description: A skill for retrieving the latest library documentation using Context7. Use when the user asks about how to use a library, requests code examples, or instructs to "use context7". Prevents hallucinations based on outdated training data and provides up-to-date API information.
---
# Context7
## Overview
Context7 is a service that provides LLMs with the latest library documentation. It prevents hallucinations from outdated training data or non-existent APIs, enabling retrieval of version-specific accurate documentation and code examples.
## When to Use
Use this skill in the following cases:
1. **Explicit instruction**: When the user instructs "use context7" or "check the latest documentation"
2. **Library usage questions**: When asked about how to use a specific library's API, hooks, or functions
3. **Code example requests**: When asked for code examples using a specific library
4. **Version-specific information**: When library information for a specific version is needed
5. **Uncertain API information**: When your knowledge might be outdated and latest information verification is needed
## Workflow
### Step 1: Resolve Library ID
First, obtain the Context7 ID for the target library.
**API call:**
```bash
curl "https://context7.com/api/v2/libs/search?libraryName=LIBRARY_NAME&query=CONTEXT_QUERY" \
-H "Authorization: Bearer $CONTEXT7_API_KEY"
```
**Example:**
```bash
# Search for React library
curl "https://context7.com/api/v2/libs/search?libraryName=react&query=hooks" \
-H "Authorization: Bearer $CONTEXT7_API_KEY"
```
**Criteria for selecting from response:**
- `trustScore`: Trust score (higher is better)
- `totalSnippets`: Number of available documents (more means richer information)
- `versions`: Verify that the required version is included
### Step 2: Retrieve Documentation
Use the resolved library ID to retrieve specific documentation.
**API call:**
```bash
curl "https://context7.com/api/v2/context?libraryId=LIBRARY_ID&query=SPECIFIC_QUERY" \
-H "Authorization: Bearer $CONTEXT7_API_KEY"
```
**Example:**
```bash
# Retrieve information about React's useEffect
curl "https://context7.com/api/v2/context?libraryId=/facebook/react&query=useEffect cleanup function" \
-H "Authorization: Bearer $CONTEXT7_API_KEY"
```
**Query best practices:**
- Use specific queries ("useEffect cleanup function" rather than "hooks")
- Be clear about the purpose ("authentication middleware", "form validation", etc.)
### Step 3: Respond to User
Respond to the user's question based on the retrieved documentation.
**Information to include in the response:**
- Retrieved code examples
- API explanations
- Documentation source URLs (for reference)
## Examples
### Example 1: React Hook Usage
**User:** "How do I write a cleanup function with React's useEffect?"
**Execution steps:**
1. Library search: `libraryName=react`, `query=useEffect cleanup`
2. Documentation retrieval: `libraryId=/facebook/react`, `query=useEffect cleanup function`
3. Respond with the latest code examples and best practices
### Example 2: Next.js Routing
**User:** "Use context7 to show me how to implement authentication middleware with Next.js App Router"
**Execution steps:**
1. Library search: `libraryName=next.js`, `query=middleware authentication`
2. Documentation retrieval: `libraryId=/vercel/next.js`, `query=middleware authentication route protection`
3. Respond with the latest App Router compatible middleware implementation
### Example 3: Multiple Libraries Combination
**User:** "How to create a button component using TailwindCSS and shadcn/ui"
**Execution steps:**
1. Resolve IDs for each library
2. Retrieve documentation for both
3. Respond with a combined implementation example
## Error Handling
| Error | Solution |
|-------|----------|
| 404 (Not Found) | Search again with a different library name (e.g., "nextjs" → "next.js") |
| 429 (Rate Limit) | Wait a moment and retry |
| Empty response | Retry with a more general query |
## Resources
For detailed API specifications, see `references/api_reference.md`.
- Endpoint details
- Response field descriptions
- Rate limit information
- Error code list