npx skills add https://github.com/adoval4/context7 --skill context7使用 Context7 API 检索库和框架当前、特定版本的文档。
代理沙盒自动提供以下环境变量:
CONTEXT7_API_KEY - Context7 API 密钥(可选 - 未认证访问可用,但速率限制较低)在以下地址获取免费 API 密钥:https://context7.com/dashboard
在需要库或框架文档时使用:
优先级: 对于库文档,优先使用 Context7 而非网络搜索,以确保版本特定的准确性。
按名称搜索可用的库。在获取文档之前使用此功能来查找正确的库 ID。
端点:GET https://context7.com/api/v2/libs/search
查询参数:
query (必需)- 您的问题或任务(用于相关性排名)libraryName (必需)- 要搜索的库名称(例如,"react"、"nextjs"、"django")Retrieve current, version-specific documentation for libraries and frameworks using the Context7 API.
The following environment variables are automatically provided by the agent sandbox:
CONTEXT7_API_KEY - Context7 API key (optional - unauthenticated access works but has lower rate limits)Get a free API key at: https://context7.com/dashboard
Use whenever you need library or framework documentation:
Priority: Use Context7 BEFORE web search for library documentation to ensure version-specific accuracy.
Search for available libraries by name. Use this to find the correct library ID before fetching documentation.
Endpoint : GET https://context7.com/api/v2/libs/search
广告位招租
在这里展示您的产品或服务
触达数万 AI 开发者,精准高效
示例:
# 搜索 React 库
curl "https://context7.com/api/v2/libs/search?libraryName=react&query=hooks" \
-H "Authorization: Bearer ${CONTEXT7_API_KEY}"
# 未认证(速率限制较低)
curl "https://context7.com/api/v2/libs/search?libraryName=react&query=hooks"
响应:
{
"results": [
{
"id": "/facebook/react",
"title": "React",
"description": "A JavaScript library for building user interfaces",
"totalSnippets": 1250,
"trustScore": 95,
"benchmarkScore": 88,
"versions": ["v18.2.0", "v17.0.2"]
}
]
}
重要提示:响应是一个包含 results 数组的对象,而不是一个普通数组。请始终先访问 .results(例如,在 Python 中使用 data["results"][0],在 jq 中使用 .results[0])。
提示:
id 字段进行下一步versions 数组以查看可用版本检索特定库的文档上下文。根据您的查询返回相关的文档片段。
端点:GET https://context7.com/api/v2/context
查询参数:
query (必需)- 您的问题或任务(用于相关性排名)libraryId (必需)- 来自搜索的库标识符(例如,/facebook/react)type (可选)- 响应格式:json(默认)或 txt示例:
# 获取 React useEffect 文档(JSON 格式)
curl "https://context7.com/api/v2/context?libraryId=/facebook/react&query=useEffect" \
-H "Authorization: Bearer ${CONTEXT7_API_KEY}"
# 获取文本格式的文档(更适合 LLM 提示)
curl "https://context7.com/api/v2/context?libraryId=/facebook/react&query=useEffect&type=txt" \
-H "Authorization: Bearer ${CONTEXT7_API_KEY}"
# 未认证(速率限制较低)
curl "https://context7.com/api/v2/context?libraryId=/facebook/react&query=useEffect&type=txt"
响应(JSON 格式):
[
{
"title": "Using the Effect Hook",
"content": "The Effect Hook lets you perform side effects...",
"source": "react.dev/reference/react/useEffect"
}
]
响应(文本格式):返回可直接用于 LLM 提示的纯文本。
提示:
type=txt 以获得更易于解析的简洁输出/vercel/next.js/v15.1.8# 步骤 1:搜索库
LIBRARY_SEARCH=$(curl -s "https://context7.com/api/v2/libs/search?libraryName=react&query=state%20management" \
-H "Authorization: Bearer ${CONTEXT7_API_KEY}")
# 提取库 ID(第一个结果 - 响应有一个 "results" 数组包装器)
LIBRARY_ID=$(echo "$LIBRARY_SEARCH" | jq -r '.results[0].id')
echo "找到库:$LIBRARY_ID"
# 步骤 2:获取文档上下文
DOCS=$(curl -s "https://context7.com/api/v2/context?libraryId=$LIBRARY_ID&query=How%20do%20I%20use%20useState&type=txt" \
-H "Authorization: Bearer ${CONTEXT7_API_KEY}")
echo "$DOCS"
Context7 API 使用标准 HTTP 状态码:
| 代码 | 描述 | 操作 |
|---|---|---|
| 200 | 成功 | 正常处理响应 |
| 202 | 已接受 - 库未最终确定 | 稍后等待并重试 |
| 400 | 错误请求 - 参数无效 | 检查查询参数 |
| 401 | 未授权 - API 密钥无效 | 检查 CONTEXT7_API_KEY 格式 |
| 404 | 未找到 - 库不存在 | 验证库 ID |
| 429 | 请求过多 - 超出速率限制 | 等待并使用退避策略重试 |
| 500 | 内部服务器错误 | 使用退避策略重试 |
速率限制:
&type=txt 以获得更易于解析的简洁输出/library-name/vX.Y.Z 以获得一致的结果# 研究 Django REST Framework 身份验证
LIBRARY_ID=$(curl -s "https://context7.com/api/v2/libs/search?libraryName=django-rest-framework&query=authentication" \
-H "Authorization: Bearer ${CONTEXT7_API_KEY}" | jq -r '.results[0].id')
curl -s "https://context7.com/api/v2/context?libraryId=$LIBRARY_ID&query=token%20authentication&type=txt" \
-H "Authorization: Bearer ${CONTEXT7_API_KEY}"
# 验证 Next.js 15 App Router API
curl -s "https://context7.com/api/v2/context?libraryId=/vercel/next.js/v15.1.8&query=app%20router%20layout&type=txt" \
-H "Authorization: Bearer ${CONTEXT7_API_KEY}"
# 回答 "如何使用 React hooks?"
LIBRARY_ID="/facebook/react"
curl -s "https://context7.com/api/v2/context?libraryId=$LIBRARY_ID&query=hooks%20usage&type=txt" \
-H "Authorization: Bearer ${CONTEXT7_API_KEY}"
每周安装数
1
代码仓库
首次出现
1 天前
安全审计
安装于
amp1
cline1
opencode1
cursor1
kimi-cli1
codex1
Query Parameters :
query (required) - Your question or task (used for relevance ranking)libraryName (required) - Library name to search for (e.g., "react", "nextjs", "django")Example :
# Search for React library
curl "https://context7.com/api/v2/libs/search?libraryName=react&query=hooks" \
-H "Authorization: Bearer ${CONTEXT7_API_KEY}"
# Unauthenticated (lower rate limits)
curl "https://context7.com/api/v2/libs/search?libraryName=react&query=hooks"
Response :
{
"results": [
{
"id": "/facebook/react",
"title": "React",
"description": "A JavaScript library for building user interfaces",
"totalSnippets": 1250,
"trustScore": 95,
"benchmarkScore": 88,
"versions": ["v18.2.0", "v17.0.2"]
}
]
}
IMPORTANT : The response is an object with a results array, NOT a plain array. Always access .results first (e.g., data["results"][0] in Python, .results[0] in jq).
Tips :
id field from the response for the next stepversions array to see available versionsRetrieve documentation context for a specific library. Returns relevant documentation snippets based on your query.
Endpoint : GET https://context7.com/api/v2/context
Query Parameters :
query (required) - Your question or task (used for relevance ranking)libraryId (required) - Library identifier from search (e.g., /facebook/react)type (optional) - Response format: json (default) or txtExample :
# Get React useEffect documentation (JSON format)
curl "https://context7.com/api/v2/context?libraryId=/facebook/react&query=useEffect" \
-H "Authorization: Bearer ${CONTEXT7_API_KEY}"
# Get documentation in text format (better for LLM prompts)
curl "https://context7.com/api/v2/context?libraryId=/facebook/react&query=useEffect&type=txt" \
-H "Authorization: Bearer ${CONTEXT7_API_KEY}"
# Unauthenticated (lower rate limits)
curl "https://context7.com/api/v2/context?libraryId=/facebook/react&query=useEffect&type=txt"
Response (JSON format) :
[
{
"title": "Using the Effect Hook",
"content": "The Effect Hook lets you perform side effects...",
"source": "react.dev/reference/react/useEffect"
}
]
Response (Text format) : Returns plain text ready for LLM prompts.
Tips :
type=txt for cleaner output that's easier to parse/vercel/next.js/v15.1.8# Step 1: Search for the library
LIBRARY_SEARCH=$(curl -s "https://context7.com/api/v2/libs/search?libraryName=react&query=state%20management" \
-H "Authorization: Bearer ${CONTEXT7_API_KEY}")
# Extract library ID (first result - response has a "results" array wrapper)
LIBRARY_ID=$(echo "$LIBRARY_SEARCH" | jq -r '.results[0].id')
echo "Found library: $LIBRARY_ID"
# Step 2: Get documentation context
DOCS=$(curl -s "https://context7.com/api/v2/context?libraryId=$LIBRARY_ID&query=How%20do%20I%20use%20useState&type=txt" \
-H "Authorization: Bearer ${CONTEXT7_API_KEY}")
echo "$DOCS"
The Context7 API uses standard HTTP status codes:
| Code | Description | Action |
|---|---|---|
| 200 | Success | Process the response normally |
| 202 | Accepted - Library not finalized | Wait and retry later |
| 400 | Bad Request - Invalid parameters | Check query parameters |
| 401 | Unauthorized - Invalid API key | Check CONTEXT7_API_KEY format |
| 404 | Not Found - Library doesn't exist | Verify the library ID |
| 429 | Too Many Requests - Rate limit exceeded | Wait and retry with backoff |
| 500 | Internal Server Error | Retry with backoff |
Rate Limits :
&type=txt for cleaner output that's easier to parse/library-name/vX.Y.Z for consistent results# Research Django REST Framework authentication
LIBRARY_ID=$(curl -s "https://context7.com/api/v2/libs/search?libraryName=django-rest-framework&query=authentication" \
-H "Authorization: Bearer ${CONTEXT7_API_KEY}" | jq -r '.results[0].id')
curl -s "https://context7.com/api/v2/context?libraryId=$LIBRARY_ID&query=token%20authentication&type=txt" \
-H "Authorization: Bearer ${CONTEXT7_API_KEY}"
# Verify Next.js 15 App Router API
curl -s "https://context7.com/api/v2/context?libraryId=/vercel/next.js/v15.1.8&query=app%20router%20layout&type=txt" \
-H "Authorization: Bearer ${CONTEXT7_API_KEY}"
# Answer "How do I use React hooks?"
LIBRARY_ID="/facebook/react"
curl -s "https://context7.com/api/v2/context?libraryId=$LIBRARY_ID&query=hooks%20usage&type=txt" \
-H "Authorization: Bearer ${CONTEXT7_API_KEY}"
Weekly Installs
1
Repository
First Seen
1 day ago
Security Audits
Installed on
amp1
cline1
opencode1
cursor1
kimi-cli1
codex1
agent-browser 浏览器自动化工具 - Vercel Labs 命令行网页操作与测试
147,400 周安装