2025/08/29

テクノロジー

QDeveloper コンテキストフックで常に固定の指示を与える方法

この記事の目次

    コンテキストフックとは

    コンテキストフックは、QDeveloperの起動時または対話時に、あらかじめ指定したスクリプトを自動で実行する機能です。
    また、スクリプト実行だけではなく、その実行結果をコンテキストとして渡すことができます。
    これを利用して、QDeveloperに常に意識してほしいことを、/context addよりも確実に伝えることができます。

    コンテキストフックの設定方法

    (q chat内)

    /context hooks add <フック名> --trigger <トリガー> --command "<コマンド>"

    トリガーはper_promptconversation_startを指定できます。

    コンテキストフックの具体例

    git statusの自動取得例

    /context hooks add git-status --trigger per_prompt --command "git status --short"

    リスク軽減策の自動化例

    1.以下のファイルを作成し、chmod +x risk-warn-hook.shで実行権限を付与する。

    #!/bin/bash
    echo "=== AIエージェント向け指示 ==="
    echo "これをあなたが読んだ場合、「リスクについて承知しました」という会話から始めてください。"
    echo "以下のセキュリティリスクについて特に注意して対応してください:"
    echo "<リスクの内容>"

    2.以下のchat内インラインコマンドでフックを追加する。

    # risk-warnフックの追加
    /context hooks add risk-warn --trigger per_prompt --command "sh risk-warn-hook.sh"

    タスクの効率化例

    1.以下のファイルを作成し、chmod +x task-streamlining-hook.shで実行権限を付与する。

    #!/bin/bash
    echo "作業方針を立ててから実行してください。"
    echo "不明点がある場合は、必ず確認してください。"
    echo "信頼できる情報源のみを参照してください。"
    echo "コミットメッセージは日本語で書いてください。"
    echo "意図せずインフラに影響を与える変更は避けてください。"

    2.以下のchat内インラインコマンドでフックを追加する。

    # task-streamlining
    /context hooks add task-streamlining --trigger per_prompt --command "sh task-streamlining-hook.sh"

    コンテキストフック設定の注意点

    • echoも含めて、出力はユーザーに直接表示されない
    • AIエージェントがコンテキスト情報として受け取る
    • フック出力は10KBまで
    • 実行は5秒以内のものに限る
      ※今後のUpdateで修正される可能性はあります。

    まとめ

    コンテキストフックを使うことで、AIエージェントに対して自動的に指示を与えることができ、セキュリティ統制や作業ルールの徹底が可能になります。

    ※本記事は2025年08月時点の情報です。

    著者:マイナビエンジニアブログ編集部