GitHub Copilot エージェント モードでは、Visual Studio Code 用の MSSQL 拡張機能にコンテキストに応じたアクション駆動型のチャット エクスペリエンスが提供されます。 エージェント モードを使用すると、GitHub Copilot は、コードの提案だけでなく、自然言語プロンプトまたは組み込みのツールを使用して、実際のデータベース タスクを安全に実行できます。 エディターを離れることなく、すべての接続を一覧表示したり、特定のサーバー/データベースに接続したり、スキーマを探索したりできます。
Tip
エージェント モードで SQL ツールを使用するために、 @mssql のような参加者に言及する必要はありません。 MSSQL 拡張機能がアクティブになると、そのツールはエージェント モード インターフェイスで自動的に使用できるようになります。 詳細については、「 エージェント モード ツール」を参照してください。
これらのアクションは、MSSQL 拡張機能によって提供されるツールを利用し、GitHub Copilot のエージェント モード内で直接表示されます。 エージェント モードのしくみの詳細については、エージェント モードに 関する Visual Studio Code のドキュメントを参照してください。
エージェント モードとは
エージェント モードを使用すると、GitHub Copilot でコードの提案を超える機能を使用できます。
#mssql_connectのようなチャット変数または次のような自然なフレーズを使用して、SQL 開発環境内でセキュリティで保護された確認済みアクションを実行できるようになりました。
Connect to my Library database using my LocalDev profile
MSSQL エージェント モード ツール リファレンス
このセクションでは、GitHub Copilot エージェント モードで使用できる SQL 固有のツールの詳細なリファレンスを提供します。 MSSQL 拡張機能は、これらのツールを提供し、GitHub Copilot がチャット変数または自然言語プロンプトを使用してアクションを実行できるようにします。 すべてのツールでは、実行前にユーザーの確認が必要です。
Tip
#mssql_connectなどのチャット変数を使用してこれらのツールを直接呼び出したり、次のような自然言語でプロンプトを記述したりすることもできます。
Connect to my development database
GitHub Copilot は、ツールの選択を自動的に処理します。
接続管理
| ツール名 | Description |
|---|---|
connect |
保存された接続プロファイルまたは指定されたサーバーとデータベースのペアを使用して、データベース接続を確立します。 |
disconnect |
現在アクティブな接続セッションを終了します。 |
change_database |
既存の接続セッションのデータベースを変更します。 |
get_connection_details |
特定の MSSQL 接続の接続の詳細を取得します。 |
list_servers |
環境内に保存されているすべての SQL Server 接続プロファイルを一覧表示します。 |
list_databases |
接続されている MSSQL サーバーで使用可能なすべてのデータベースを一覧表示します。 |
Examples
次のフレーズを使用して、GitHub Copilot と対話できます。
- Connect to my LocalDev environment
- Disconnect from my current database
- List my available connection profiles
- List all databases in the localhost server
- Set the active connection to localhost
- Set AdventureWorks as the active database
- Get the connection string for AdventureWorks on localhost
接続ロジックのしくみ
GitHub Copilot エージェント モードでは、保存されたプロファイルを参照するか、サーバーとデータベースを直接指定することで、SQL データベースに柔軟に接続する方法がサポートされています。 接続ロジックのしくみを次に示します。
保存されたプロファイルを使用して接続する場合:
- ユーザーは、保存されている接続プロファイルの名前を参照して接続できます。
- GitHub Copilot では、
mssql_list_serversツールを使用してプロファイルが存在することを確認します。 - その後、
mssql_connectツールは、保存されたprofileIdとそのパラメーターを使用して接続を確立します。
サーバーまたはデータベースの仕様を使用して接続する場合:
保存されたプロファイルが、指定したサーバーとデータベースの両方と一致する場合:
- GitHub Copilot では、
mssql_list_serversを使用して一致するものが見つかります。 - その後、完全なプロファイルを使用して
mssql_connectを呼び出します。
- GitHub Copilot では、
保存されたプロファイルがサーバーにのみ一致する場合:
- GitHub Copilot は、一致するサーバー プロファイルを検索します。
- ユーザーが要求したデータベースをそのプロファイルに置き換えて接続を試みます。
- 接続に失敗した場合は、エラーが表示されます。
指定したサーバーと一致するプロファイルがない場合:
- GitHub Copilot がエラーを報告します。
この柔軟な照合システムにより、GitHub Copilot はさまざまな接続シナリオを処理でき、ユーザーの労力を最小限に抑えながら、安全で確認可能なアクションを確保できます。
スキーマの探索
| ツール名 | Description |
|---|---|
show_schema |
テーブルやリレーションシップなど、接続されているデータベース スキーマの概要図を表示します。 |
list_schemas |
接続された MSSQL サーバーのデータベース内のすべてのスキーマを一覧表示します。 |
list_tables |
接続された MSSQL サーバーのデータベース内のすべてのテーブルを一覧表示します。 |
list_views |
接続された MSSQL サーバーのデータベース内のすべてのビューを一覧表示します。 |
list_functions |
接続された MSSQL サーバーのデータベース内のすべての関数を一覧表示します。 |
Examples
次のフレーズを使用して、GitHub Copilot と対話できます。
- Show me the schema for this database
- Show me all tables in the current database
- List all views from this MSSQL database
- Give me a list of all the functions available in this schema
- What schemas are available in this database?
クエリ実行
| ツール名 | Description |
|---|---|
run_query |
接続されているデータベースに対して SQL クエリを実行します。 |
Examples
次のフレーズを使用して、GitHub Copilot と対話できます。
- Give me the top five posts published this week
- Execute the current file to find how many comments each post has
- Get all categories along with the number of posts in each
エージェント モードでツールを管理する方法
GitHub Copilot では、要求の処理中に MSSQL 固有のツールやその他の拡張機能が提供するツールを呼び出すことができます。 これらのツールは、[ツール] メニューの [エージェント モード] インターフェイスに表示され、特定のツールを有効または無効にすることができます。
ツールが呼び出されたとき (特にコンピューターまたはデータベースと対話する場合)、GitHub Copilot は、安全な実行を確保するための確認を求めます。 ツールは、現在のセッション、ワークスペースに対してのみ許可することも、永続的に承認することもできます。
ツールの可視性と承認の詳細については、ツールの 承認の管理に関するページを参照してください。
エージェント モードの確認ワークフロー
GitHub Copilot がツールを選択すると、要求されたアクションの詳細を示す確認ダイアログが表示されます。 マシンまたはデータベースと対話するコマンドを実行する前に、要求を明示的に承認する必要があります。
- このセッションで許可する
- このワークスペースで許可する
- 常に許可
この確認手順は、開発環境との安全で意図的な対話を保証するのに役立ちます。
Note
エージェント モードのすべてのツールで確認がどのように機能するかの詳細については、 ツールの承認に関する Visual Studio Code のドキュメントを参照してください。
関連コンテンツ
- クイックスタート: チャット機能とGitHub Copilotのインライン提案を使う
- クイックスタート: GitHub Copilot スラッシュコマンドを使用する
- クイック スタート: コードを生成する
- クイック スタート: スキーマ エクスプローラーとデザイナーを使用する
- クイック スタート: スマート クエリ ビルダーを使用する
- クイック スタート: クエリ オプティマイザー アシスタント
- クイックスタート: ビジネスロジック解説機能の使い方
- クイック スタート: セキュリティ アナライザー
- クイック スタート: ローカライズと書式設定ヘルパー
- クイックスタート: テストとモックテスト作成のためにデータを生成する
- 制限事項と既知の問題: