
RAGのパラメーター指定が億劫? Claude CodeのSkill化でターミナルからの爆速検索を実現する
「その操作、Skillにしませんか?」 Claude CodeのSkill機能を使い、ターミナル実行でのパラメータ指定が面倒だったAmazon Bedrock KBの検索と回答生成を快適にしてみました。
2026.02.10
先日、プロンプト改善を行うCLIを作成しました。
これらの結果を元に改善したデータソースをRAGへ反映させたものの、RAGのターミナルからの実行はパラメータ指定が億劫な状況でした。少しでも楽にできないかなとClaude Codeの機能を試したところ、Skill化に至りました。
Skill詳細
.claude/commands/kb-query.md に以下の内容を記載します。
Bedrock Knowledge Baseにプロンプトを投げ、検索結果と生成回答を表示する。
引数: $ARGUMENTS(質問テキスト)
## 前提
- AWS認証情報が設定済みであること(`aws sts get-caller-identity` で確認)
- 環境変数 `BEDROCK_KB_ID` が設定されていること(未設定の場合はユーザーに確認)
## 実行手順
### 1. 環境確認
AWS認証とKB IDを確認する:
```bash
aws sts get-caller-identity --query Account --output text 2>/dev/null && echo "AWS認証: OK" || echo "AWS認証: NG(aws sso loginを実行してください)"
```
BEDROCK_KB_IDが未設定の場合:
```bash
echo ${BEDROCK_KB_ID:-"未設定"}
```
未設定なら、ユーザーにKB IDを確認して環境変数に設定する。
### 2. RetrieveAndGenerate API呼び出し
以下のコマンドでKB検索 + 回答生成を実行する:
```bash
aws bedrock-agent-runtime retrieve-and-generate \
--region ap-northeast-1 \
--input '{"text": "$ARGUMENTS"}' \
--retrieve-and-generate-configuration '{
"type": "KNOWLEDGE_BASE",
"knowledgeBaseConfiguration": {
"knowledgeBaseId": "'"$BEDROCK_KB_ID"'",
"modelArn": "arn:aws:bedrock:ap-northeast-1::foundation-model/anthropic.claude-3-haiku-20240307-v1:0",
"retrievalConfiguration": {
"vectorSearchConfiguration": {
"numberOfResults": 5
}
}
}
}' \
--output json
```
### 3. 結果の整形表示
APIレスポンスのJSONから以下を抽出して表示する:
#### 生成回答
`.output.text` を表示
#### 参照ソース
`.citations` 配列から各citationの `.retrievedReferences` を抽出し、以下の形式で表示:
| # | ソース | 抜粋 |
|---|--------|------|
| 1 | (S3 URI or ファイル名) | (参照テキストの先頭100文字) |
| 2 | ... | ... |
### 4. 追加検索(任意)
回答の精度が低い場合、Retrieve APIで検索のみ実行して元データを確認:
```bash
aws bedrock-agent-runtime retrieve \
--region ap-northeast-1 \
--knowledge-base-id "$BEDROCK_KB_ID" \
--retrieval-query '{"text": "$ARGUMENTS"}' \
--retrieval-configuration '{"vectorSearchConfiguration": {"numberOfResults": 3}}' \
--output json
```
各結果の `.retrievalResults[].content.text` と `.location` を表示する。
## エラーハンドリング
- AWS認証エラー → `aws sso login` を案内
- KB IDエラー → IDの確認を依頼
- タイムアウト → リージョン確認
使い方は以下の通りです。
/kb-query 料金が高い
生成回答
利用費が高い場合は、以下の点を確認することをおすすめします:
- 前払料金、毎月料金、通常利用料金、マーケットプレイス料金などの各種料金を確認する
参照ソース
┌─────┬────────────────────────────────────────────────────────────────────────────────────────────────┬──────────────────────────────────────────────────────────────────────────────────────────────────┐
│ # │ ソース │ 抜粋 │
├─────┼────────────────────────────────────────────────────────────────────────────────────────────────┼──────────────────────────────────────────────────────────────────────────────────────────────────┤
│ 1 │ starlight-pdf/members-guide.md │ 前払料金、毎月料金、通常利用料金、マーケットプレイス料金、メンバーズディスカウント等の各項目詳細 │
└─────┴────────────────────────────────────────────────────────────────────────────────────────────────┴──────────────────────────────────────────────────────────────────────────────────────────────────┘
RAGの構築自体は以下の記事に掲載しているCloudFormationを参考にしてください。
あとがき
幾度か繰り返した操作についてはSkillにすることで、速やかに実行できるようになります。
Skill化の見極めがつかない場合は、迷うことなくClaude CodeにSkill化の検討を伝えましょう。既存コードや文書を元にSkillとして最適な候補を挙げてくれます。







