| name | dev-research |
| description | 技術調査の種別に応じて最適なツールを優先順位付きで使い分ける調査スキル。 情報が十分に得られた時点で次のツールに進まずトークンを節約する。
以下の調査依頼があれば必ずこのスキルを起動する: - 仕様・実装: 「〇〇の使い方を知りたい」「APIの仕様を確認したい」「実装方法を調べて」
「最新仕様」「現在の仕様」「ドキュメント確認」「API調べて」「〇〇でどう書く?」
OpenAI, Anthropic, Stripe, GitHub, AWS など主要な外部APIを使うコードを書く前にも使う。
- エラー: 「エラーが出た」「動作がおかしい」「バグっぽい」「なんで動かない」 - コスト・制限: 「料金はいくら」「レート制限は」「今障害出てる?」「利用制限を調べたい」 - 比較・選定: 「〇〇と△△どっちがいい」「ライブラリを選びたい」「比較して」
/dev-research または /dr と入力されたときも起動する。 Claude の学習データは古い可能性があるため、外部ライブラリ・APIに関する質問には 積極的にこのスキルを使うこと。
|
技術調査スキル
調査依頼を受けたら、まず 種別を判定 してから対応するツールチェーンを実行する。
ステップ 1: 種別判定
ユーザーの依頼を以下の4つに分類する。複数に該当する場合は最も主要なものを選ぶ。
| 種別 | 判定基準 |
|---|
| A. 仕様・実装 | API の使い方、メソッド・パラメータの確認、SDK の実装方法 |
| B. コスト・制限・障害 | 料金、レート制限、クォータ、現在の障害・インシデント情報 |
| C. エラー・不具合 | 特定のエラーメッセージ、期待しない挙動、バグ報告 |
| D. ライブラリ比較・選定 | 複数の選択肢の比較、どれを使うべきかの判断 |
種別 A: 仕様・実装の調査
ツールチェーン: Context Hub → Context7 → llms.txt
十分な情報の基準: 質問に直接答えられる正確なメソッド名・パラメータ・サンプルコードが得られた時点で終了。
A-1: Context Hub (chub CLI)
if ! command -v chub >/dev/null 2>&1; then
npm install -g @aisuite/chub
fi
chub search <キーワード>
chub get <id>
chub get <id> --lang py
chub get <id> --lang js
取得できた情報が質問に十分答えられるなら → ここで終了して回答する
取得できなかった・情報が古い・断片的 → A-2 へ
A-2: Context7 (MCP)
mcp__context7__resolve-library-id でライブラリIDを解決
mcp__context7__query-docs でドキュメントを取得
質問に十分答えられるなら → ここで終了して回答する
情報が不十分 → A-3 へ
A-3: llms.txt / llms-full.txt
WebFetch でライブラリの公式サイトから直接取得:
https://<公式ドメイン>/llms.txt # 概要版(先に試す)
https://<公式ドメイン>/llms-full.txt # 完全版(llms.txt で不足な場合)
例: Anthropic なら https://docs.anthropic.com/llms.txt
種別 B: コスト・制限・障害情報の調査
ツール: Exa のみ
リアルタイム情報(料金改定、障害ステータスなど)は Claude の学習データには載っていないため、Web 検索が唯一の情報源になる。
exa:search スキルを使って検索する。検索クエリの例:
- 料金:
"<サービス名> pricing 2025" または "<サービス名> 料金"
- レート制限:
"<サービス名> rate limit" または "<サービス名> API limits"
- 障害:
"<サービス名> status" または "<サービス名> outage 2025"
公式ステータスページ(例: status.openai.com、status.anthropic.com)があれば優先的に確認する。
種別 C: エラー・不具合の調査
ツールチェーン: GitHub Issues → GitHub Discussions → Context7 → Exa
十分な情報の基準: エラーの原因と解決策が得られた時点で終了。
C-1: GitHub Issues
exa:search スキルで GitHub Issues を検索する:
site:github.com/<owner>/<repo>/issues "<エラーメッセージの特徴的な部分>"
リポジトリが不明な場合は site:github.com issues "<エラーメッセージ>" で広く検索。
解決策が見つかったなら → ここで終了して回答する
見つからなかった → C-2 へ
C-2: GitHub Discussions
exa:search スキルで GitHub Discussions を検索する:
site:github.com/<owner>/<repo>/discussions "<エラーメッセージの特徴的な部分>"
解決策が見つかったなら → ここで終了して回答する
見つからなかった → C-3 へ
C-3: Context7
mcp__context7__resolve-library-id + mcp__context7__query-docs で該当ライブラリの最新ドキュメントを確認し、エラーの原因(API 変更、廃止されたパラメータなど)を探す。
解決策が見つかったなら → ここで終了して回答する
見つからなかった → C-4 へ
C-4: Exa
exa:search スキルで広く検索する:
"<エラーメッセージ>" <ライブラリ名> fix solution
種別 D: ライブラリ比較・選定
ツールチェーン: Context7 → Exa → GitHub Activity
十分な情報の基準: 比較軸(機能・パフォーマンス・メンテナンス状況)が揃い、推奨を出せる状態になったら終了。
D-1: Context7
比較対象の各ライブラリのドキュメントを取得し、機能・API・対応バージョンなどを比較する。
十分な差異が把握できたなら → ここで終了して推奨を述べる
情報が足りない(ユースケース別の比較など)→ D-2 へ
D-2: Exa
exa:search スキルで比較記事・ベンチマーク・最近の評判を検索する:
"<ライブラリA> vs <ライブラリB>" 2024 OR 2025
"<ライブラリA> vs <ライブラリB>" benchmark
十分な情報が得られたなら → ここで終了して推奨を述べる
さらに活発さを確認したい → D-3 へ
D-3: GitHub Activity の確認
WebFetch または Exa で各リポジトリの GitHub ページを確認:
- Star 数・Fork 数
- 最終コミット日・コミット頻度
- Open Issues / PR の多さ(多すぎると問題、活発なら良い)
- Release の頻度
回答方法
- 取得した情報を根拠に回答し、「〇〇のドキュメントによると…」のように出典を明示する
- 使ったツール/ソースを一言添えることで、ユーザーが情報の鮮度を判断できるようにする
- A 種別でコードを書く場合は、ドキュメントに記載された正確なメソッド名・パラメータを使う
chub アノテーション(A 種別のみ・任意)
将来役立つ重要な発見(破壊的変更、非推奨パラメータなど)があれば記録する:
chub annotate <id> "<メモ内容>"