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