context7 について
context7は、Context7 CLIでライブラリのドキュメントやコード例を調べる開発者向けスキルです。ライブラリ名からIDを解決してから、ドキュメントを検索します。
主な機能
- 01ライブラリのドキュメントとコード例の検索
- 02先にライブラリ名からIDを解決
- 03npx ctx7@latestで実行
活用シーン
- 01ライブラリの最新ドキュメントの確認
- 02ライブラリのコード例の取得
インストール
コマンドをコピーしてターミナルで実行します。
npx skills add https:/ / github.com/ pedronauck/ skills --skill context7インストール後、Claude Code で/context7を入力して読み込まれたか確認します。
詳細
ドキュメントの検索
Context7 CLI を使用して、あらゆるライブラリの最新ドキュメントとコード例を取得します。
グローバルにインストールしなくても常に最新の CLI を使用できるように、npx ctx7@latest でコマンドを実行してください。
npx ctx7@latest library <name> "<query>"
npx ctx7@latest docs <libraryId> "<query>"
お好みに応じて、グローバルにインストールして ctx7 コマンドを直接使用することもできます。
npm install -g ctx7@latest
ワークフロー
2 段階の手順で進めます。まずライブラリ名を ID に解決し、次にその ID を使ってドキュメントを検索します。
# Step 1: Resolve library ID
npx ctx7@latest library <name> "<query>"
# Step 2: Query documentation
npx ctx7@latest docs <libraryId> "<query>"
ユーザーが /org/project または /org/project/version 形式のライブラリ ID を明示的に指定していない限り、必ず最初に library を呼び出して有効なライブラリ ID を取得してください。
重要:1 つの質問につき、これらのコマンドを実行するのは 3 回までにしてください。3 回試しても必要な情報が見つからない場合は、最もよい結果を使用してください。
ステップ 1:ライブラリを解決する
パッケージ名または製品名を Context7 と互換性のあるライブラリ ID に解決し、一致するライブラリを返します。
npx ctx7@latest library React "How to clean up useEffect with async operations"
npx ctx7@latest library "Next.js" "How to set up app router with middleware"
npx ctx7@latest library Prisma "How to define one-to-many relations with cascade delete"
句読点を含め、正式なライブラリ名を使用してください(例:「nextjs」ではなく「Next.js」、「customerio」ではなく「Customer.io」、「threejs」ではなく「Three.js」)。検索結果が適切でない場合は、クエリを変更する前に next.js のような別の表記を試してください。
必ず query 引数を渡してください。これは必須であり、結果の順位に直接影響します。複数のライブラリに似た名前がある場合は、ユーザーの意図に沿ったクエリを作成すると、候補を絞り込めます。API キー、パスワード、認証情報、個人データ、独自コードなど、機密情報や秘密情報はクエリに含めないでください。
結果のフィールド
各結果には次の情報が含まれます。
- ライブラリ ID — Context7 と互換性のある識別子(形式:
/org/project) - 名前 — ライブラリまたはパッケージ名
- 説明 — 短い概要
- コードスニペット — 利用可能なコード例の数
- ソースの信頼性 — 権威性の指標(High、Medium、Low、Unknown)
- ベンチマークスコア — 品質の指標(100 が最高)
- バージョン — 利用可能な場合のバージョン一覧。ユーザーがクエリでバージョンを指定した場合は、いずれかのバージョンを使用してください。形式は
/org/project/versionです。
選択プロセス
- クエリを分析して、ユーザーが探しているライブラリまたはパッケージを把握します。
- 次の点を基準に、最も関連性の高い候補を選択します。
- クエリとの名前の類似性(完全一致を優先)
- ユーザーの意図との説明の関連性
- ドキュメントの網羅性(コードスニペット数が多いものを優先)
- ソースの信頼性(High または Medium の候補をより権威あるものとして考慮)
- ベンチマークスコア(高いほどよく、最大値は 100)
- 適切な候補が複数ある場合はその旨を伝え、最も関連性の高い候補を選んで進めます。
- 適切な候補がない場合は、そのことを明確に伝え、クエリの改善方法を提案します。
- クエリが曖昧な場合は、推測で進める前に確認を求めます。
バージョン固有の ID
ユーザーが特定のバージョンを指定した場合は、バージョン固有のライブラリ ID を使用してください。
# General (latest indexed)
npx ctx7@latest docs /vercel/next.js "How to set up app router"
# Version-specific
npx ctx7@latest docs /vercel/next.js/v14.3.0-canary.87 "How to set up app router"
利用可能なバージョンは、library コマンドの出力に一覧表示されます。指定されたバージョンに最も近いものを使用してください。
ステップ 2:ドキュメントを検索する
解決したライブラリの最新ドキュメントとコード例を取得します。
npx ctx7@latest docs /facebook/react "How to clean up useEffect with async operations"
npx ctx7@latest docs /vercel/next.js "How to add authentication middleware to app router"
npx ctx7@latest docs /prisma/prisma "How to define one-to-many relations with cascade delete"
良いクエリの書き方
クエリは結果の品質に直接影響します。具体的に、関連する詳細を含めてください。ただし、各クエリではトピックを1つに絞ってください。質問が複数の異なる概念にまたがる場合は、それらの概念がどのように相互作用するかについての質問でない限り、概念ごとに別々の docs コマンドを実行してください。クエリに API キー、パスワード、認証情報、個人データ、専有コードなどの機密情報や秘密情報を含めないでください。
| 品質 | 例 |
|---|---|
| 良い | "How to set up authentication with JWT in Express.js" |
| 良い | "React useEffect cleanup function with async operations" |
| 悪い(曖昧すぎる) | "auth" |
| 悪い(曖昧すぎる) | "hooks" |
| 悪い(範囲が広すぎる) | "routing and auth and caching in Next.js" |
完了するタスクではなく、ライブラリのドキュメントで調べたい内容を説明してください。曖昧な1語だけのクエリでは汎用的な結果が返され、複数のトピックを含むクエリではランキングの精度が下がり、各トピックについて浅い結果が返されます。
出力には、コードスニペット(タイトル付き、言語タグ付きのブロック)と情報スニペット(パンくずリストのコンテキストを含む、説明文)の2種類の内容が含まれます。
認証
認証なしで利用できます。レート制限を緩和するには:
# Option A: environment variable
export CONTEXT7_API_KEY=your_key
# Option B: OAuth login
npx ctx7@latest login
エラー処理
コマンドがクォータエラー(「Monthly quota reached」または「quota exceeded」)で失敗した場合:
- Context7 のクォータを使い切ったことをユーザーに伝えます
- 上限を緩和するために、次のコマンドで認証するよう提案します:
npx ctx7@latest login - 認証できない場合、または認証しないことを選択した場合は、学習データに基づいて回答し、情報が古い可能性があることを明記します
学習データに黙って切り替えないでください。Context7 を使用しなかった理由を必ず伝えてください。
よくある間違い
- ライブラリ ID には
/の接頭辞が必要です。facebook/reactではなく/facebook/reactを指定します - 必ず最初に
npx ctx7@latest libraryを実行してください。有効な ID がない場合、npx ctx7@latest docs react "hooks"は失敗します - 1語だけではなく、説明的なクエリを使用してください。
"hooks"ではなく"React useEffect cleanup function"を指定します - クエリごとにトピックを1つに絞ってください。それらがどのように相互作用するかについての質問でない限り、
"routing and auth and caching"は概念ごとに別々のdocsコマンドに分けます - クエリに機密情報(API キー、パスワード、認証情報)を含めないでください