context7 について
Context7を通じて、最新かつバージョンに応じたライブラリのドキュメントやコード例を取得するスキルです。最新情報が必要なAPIの質問に適しています。
主な機能
- 01ライブラリIDの解決
- 02指定したドキュメントの取得
- 03利用可能なバージョンの確認
- 04具体的なクエリで検索
活用シーン
- 01回答前のライブラリAPI確認
- 02特定ライブラリのコード例の検索
- 03指定バージョンのドキュメント確認
インストール
コマンドをコピーしてターミナルで実行します。
$
npx skills add https:/ / github.com/ dotneet/ claude-code-marketplace --skill context7インストール後、Claude Code で/context7を入力して読み込まれたか確認します。
同梱ファイルreferences/api_reference.md
詳細
Context7
概要
Context7 は、LLM に最新のライブラリドキュメントを提供するサービスです。古い学習データや存在しない API によるハルシネーションを防ぎ、バージョン固有の正確なドキュメントやコード例を取得できるようにします。
使用するタイミング
次の場合にこのスキルを使用します。
- 明示的な指示:「context7 を使って」や「最新のドキュメントを確認して」とユーザーから指示された場合
- ライブラリの使用方法に関する質問:特定のライブラリの API、フック、関数の使い方を尋ねられた場合
- コード例のリクエスト:特定のライブラリを使ったコード例を求められた場合
- バージョン固有の情報:特定のバージョンのライブラリ情報が必要な場合
- 不確かな API 情報:知識が古くなっている可能性があり、最新情報の確認が必要な場合
ワークフロー
ステップ 1:ライブラリ ID を解決する
まず、対象ライブラリの Context7 ID を取得します。
API 呼び出し:
curl "https://context7.com/api/v2/libs/search?libraryName=LIBRARY_NAME&query=CONTEXT_QUERY" \
-H "Authorization: Bearer $CONTEXT7_API_KEY"
例:
# Search for React library
curl "https://context7.com/api/v2/libs/search?libraryName=react&query=hooks" \
-H "Authorization: Bearer $CONTEXT7_API_KEY"
レスポンスから選択する際の基準:
trustScore:信頼スコア(高いほど良好)totalSnippets:利用可能なドキュメントの数(多いほど情報が充実)versions:必要なバージョンが含まれているか確認します
ステップ 2:ドキュメントを取得する
解決したライブラリ ID を使って、対象のドキュメントを取得します。
API 呼び出し:
curl "https://context7.com/api/v2/context?libraryId=LIBRARY_ID&query=SPECIFIC_QUERY" \
-H "Authorization: Bearer $CONTEXT7_API_KEY"
例:
# 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"
クエリのベストプラクティス:
- 具体的なクエリを使用します(「hooks」ではなく「useEffect cleanup function」)
- 目的を明確にします(「authentication middleware」「form validation」など)
ステップ 3:ユーザーに回答する
取得したドキュメントに基づいて、ユーザーの質問に回答します。
回答に含める情報:
- 取得したコード例
- API の説明
- ドキュメントの参照元 URL
例
例 1:React フックの使用方法
ユーザー:「React の useEffect でクリーンアップ関数を書くにはどうすればよいですか?」
実行手順:
- ライブラリを検索:
libraryName=react、query=useEffect cleanup - ドキュメントを取得:
libraryId=/facebook/react、query=useEffect cleanup function - 最新のコード例とベストプラクティスを提示して回答します
例 2:Next.js のルーティング
ユーザー:「context7 を使って、Next.js App Router で認証ミドルウェアを実装する方法を教えてください」
実行手順:
- ライブラリを検索:
libraryName=next.js、query=middleware authentication - ドキュメントを取得:
libraryId=/vercel/next.js、query=middleware authentication route protection - 最新の App Router 互換ミドルウェアの実装方法を提示して回答します
例 3:複数ライブラリの組み合わせ
ユーザー:「TailwindCSS と shadcn/ui を使ってボタンコンポーネントを作成する方法を教えてください」
実行手順:
- 各ライブラリの ID を解決します
- 両方のドキュメントを取得します
- 組み合わせた実装例を提示して回答します
エラー処理
| エラー | 解決方法 |
|---|---|
| 404(見つかりません) | 別のライブラリ名で再検索します(例:「nextjs」→「next.js」) |
| 429(レート制限) | 少し待ってから再試行します |
| 空のレスポンス | より一般的なクエリで再試行します |
リソース
API 仕様の詳細については、references/api_reference.md を参照してください。
- エンドポイントの詳細
- レスポンスフィールドの説明
- レート制限に関する情報
- エラーコード一覧
コメント
Markdown 対応