RAGのパラメーター指定が億劫? Claude CodeのSkill化でターミナルからの爆速検索を実現する

RAGのパラメーター指定が億劫? Claude CodeのSkill化でターミナルからの爆速検索を実現する

「その操作、Skillにしませんか?」 Claude CodeのSkill機能を使い、ターミナル実行でのパラメータ指定が面倒だったAmazon Bedrock KBの検索と回答生成を快適にしてみました。
2026.02.10

先日、プロンプト改善を行うCLIを作成しました。

https://dev.classmethod.jp/articles/20260206-created-a-cli-to-accelerate-prompt-improvements-for-a-small-number-of-data-sources/

これらの結果を元に改善したデータソースを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を参考にしてください。

https://dev.classmethod.jp/articles/20260206-created-a-cli-to-accelerate-prompt-improvements-for-a-small-number-of-data-sources/

あとがき

幾度か繰り返した操作についてはSkillにすることで、速やかに実行できるようになります。

Skill化の見極めがつかない場合は、迷うことなくClaude CodeにSkill化の検討を伝えましょう。既存コードや文書を元にSkillとして最適な候補を挙げてくれます。

この記事をシェアする

FacebookHatena blogX

関連記事