5
2

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

Claude CodeのAskUserQuestionツールとは?選択肢形式の質問を提示してくれる隠れ機能を紹介

5
Last updated at Posted at 2025-12-06

はじめに

こんにちは!物流開発部 USED開発ブロックの益田です。
本記事ではClaude CodeのAskUserQuestionツールについて紹介します。

AskUserQuestionとは

ReadやBashなどと同様にClaude Codeに組み込まれたツールのひとつで、ユーザーに選択肢形式の質問を提示してくれる機能です。2025年11月時点では公式ドキュメントにこちらに関する記載はありませんが、Claude Codeにツール定義を確認すると以下のような回答が返ってきます。

スクリーンショット 2025-11-21 11.16.52.png

活用例

以下はガイドラインに沿ってデータベース設計のレビューを行ってくれるカスタムスラッシュコマンドのmdファイルの一部です。mdファイルに定義を記述することでClaude CodeがAskUserQuestionツールを起動してくれるようになります。

mdファイルに記述がなくても、Claude Codeが自動でAskUserQuestionツールを起動してくれる場合がありますが、確実に使用したい場合はmdファイルに明示的に定義することをおすすめします。

review-schema.md
4. **確認対象がある場合は必須**: `AskUserQuestion` ツールで「過去のみ」か「未来を含む」かをユーザーに質問する
   - **重要**: 複数のカラムがある場合でも、**1回の `AskUserQuestion` ツール呼び出しで複数の質問(questions配列)を使用**する
   - 質問形式:「カラム `{カラム名}` は過去のみですか、未来も含みますか?」
   - 選択肢:
     - 「過去のみ(過去分詞形推奨)」:そのカラムは常に過去の日時のみを指します。過去分詞形(例: `paid_at``started_on`)を推奨します。
     - 「未来を含む(現在形推奨)」:そのカラムに未来の日時が含まれる可能性があります。現在形(例: `pays_at``starts_on`)を推奨します。

5. 回答に基づき判定:
   - 過去のみ → 過去分詞形(例: `payment_at``paid_at``start_date``started_on`   - 未来を含む → 現在形(例: `payment_at``pays_at``start_date``starts_on`

実際にカスタムスラッシュコマンドを実行すると、AskUserQuestionツールが起動してインタラクティブな選択肢を表示してくれました。
選択肢の最後のType something.はデフォルトで用意されている入力欄になっています。
スクリーンショット 2025-11-21 18.41.06.png

選択していきます...
スクリーンショット 2025-11-21 18.45.36.png

全て選択すると最後にSubmitを行うか確認があります。SubmitするとClaude Codeが回答を受け取って処理を続行してくれます。
スクリーンショット 2025-11-21 18.46.13.png

まとめ

AskUserQuestionツールを使えば、Claude Codeがユーザーに質問しながら進めるようになります。
これまでテキストベースでやりとりしていた内容を、事前に選択肢として組み込むことで、
よりインタラクティブでスムーズなワークフローを実現できます。

ぜひ、皆さんのカスタムスラッシュコマンドやサブエージェントにも取り入れてみてください。

5
2
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
5
2

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?