Partager via


Démarrage rapide : Utiliser le mode agent Copilot GitHub

Le mode agent permet à GitHub Copilot d’utiliser les outils disponibles dans l’extension MSSQL pour Visual Studio Code. Lorsque l’extension est installée et active, Copilot peut répertorier les connexions SQL Server, se connecter à un serveur et une base de données et récupérer les métadonnées de base de données.

Toutes les actions utilisent le même contexte de connexion et les informations d’identification que l’extension MSSQL. Le mode agent n’introduit pas de modifications supplémentaires d’authentification ou d’autorisation.

Tip

Vous n’avez pas besoin de référencer explicitement l’extension MSSQL (@mssql) lors de l’utilisation du mode Agent. Si l’extension est active, ses outils sont disponibles automatiquement. Pour plus d’informations, consultez Outils en mode agent.

Pour plus d’informations sur la sélection et l’exécution des outils en mode Agent, consultez la documentation de Visual Studio Code sur le mode agent.

Qu’est-ce que le mode agent ?

Le mode agent permet à GitHub Copilot d’effectuer des actions liées à SQL à l’aide de l’extension MSSQL, et la confirmation de l’utilisateur est requise avant l’exécution.

Vous pouvez appeler ces actions à l’aide de variables de conversation telles que #mssql_connect, ou en émettant des requêtes en langage naturel équivalentes, par exemple :

Connect to my Library database using my LocalDev profile

Capture d’écran de l’interface de conversation en mode agent GitHub Copilot.

Informations de référence sur les outils du mode Agent MSSQL

Cette section fournit une référence détaillée pour les outils spécifiques à SQL disponibles en mode Agent Copilot GitHub. L’extension MSSQL contribue à ces outils, ce qui permet à GitHub Copilot d’exécuter des actions via des variables de conversation ou des invites en langage naturel. Tous les outils nécessitent une confirmation utilisateur avant l’exécution.

Capture d’écran de la liste des outils spécifiques à SQL fournis par l’extension MSSQL en mode Copilot Agent.

Tip

Vous pouvez également utiliser des variables de conversation comme #mssql_connect pour appeler ces outils directement ou écrire des invites en langage naturel, telles que :

Connect to my development database

GitHub Copilot gère automatiquement la sélection de l’outil.

Gestion des connexions

Nom de l’outil Description
connect Se connecte à une base de données à l’aide d’un profil de connexion enregistré ou d’un serveur et d’une base de données spécifiés.
disconnect Termine la session de connexion active actuelle.
change_database Modifie la base de données pour une session de connexion existante.
get_connection_details Obtient les détails de connexion pour une connexion MSSQL spécifique.
list_servers Répertorie tous les profils de connexion SQL Server enregistrés dans votre environnement.
list_databases Répertorie toutes les bases de données disponibles pour un serveur MSSQL connecté.

Examples

Utilisez les expressions suivantes pour interagir avec 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

Capture d’écran de l’utilisation d’un outil d’agent pour se connecter à une base de données dans la conversation GitHub Copilot.

Fonctionnement de la logique de connexion

Le mode agent Copilot GitHub prend en charge les moyens flexibles de se connecter à votre base de données SQL, soit en référençant des profils enregistrés, soit en spécifiant directement un serveur et une base de données. Voici comment fonctionne la logique de connexion.

Lorsque vous vous connectez avec un profil enregistré :

  1. Vous vous connectez en référençant le nom d’un profil de connexion enregistré.
  2. GitHub Copilot utilise l’outil mssql_list_servers pour vérifier que le profil existe.
  3. L’outil mssql_connect utilise ensuite l’enregistrement profileId et ses paramètres pour établir la connexion.

Lorsque vous vous connectez en spécifiant un serveur et une base de données :

  • Si un profil enregistré correspond à la fois au serveur et à la base de données spécifiés :

    1. GitHub Copilot utilise mssql_list_servers pour trouver la correspondance.
    2. Ensuite, il appelle mssql_connect avec le profil complet.
  • Si un profil enregistré correspond uniquement au serveur :

    1. GitHub Copilot recherche le profil de serveur correspondant.
    2. Il tente de se connecter en remplaçant la base de données demandée par l’utilisateur dans ce profil.
    3. Si la connexion échoue, une erreur s’affiche.
  • Si aucun profil ne correspond au serveur spécifié :

    • GitHub Copilot signale une erreur.

Ce système de correspondance flexible permet à GitHub Copilot de gérer une gamme de scénarios de connexion. Il réduit l’effort de l’utilisateur tout en garantissant des actions sécurisées et confirmables.

Exploration de schéma

Nom de l’outil Description
show_schema Affiche un diagramme de haut niveau de votre schéma de base de données connectée, y compris les tables et les relations.
list_schemas Répertorie tous les schémas d’une base de données pour un serveur MSSQL connecté.
list_tables Répertorie toutes les tables d’une base de données pour un serveur MSSQL connecté.
list_views Répertorie toutes les vues d’une base de données pour un serveur MSSQL connecté.
list_functions Répertorie toutes les fonctions d’une base de données pour un serveur MSSQL connecté.

Examples

Utilisez les expressions suivantes pour interagir avec 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?

Capture d’écran de l’animation montrant l’outil visualiseur de schéma de base de données en mode Agent Copilot.

Exécution de la requête

Nom de l’outil Description
run_query Exécute une requête SQL sur la base de données connectée.

Examples

Utilisez les expressions suivantes pour interagir avec 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

Capture d’écran de l’exemple utilisant un outil d’agent pour se connecter à une base de données et récupérer des données.

Capture d’écran d’un autre exemple utilisant un outil d’agent pour se connecter à une base de données et récupérer des données.

Gestion des outils en mode Agent

GitHub Copilot peut utiliser des outils spécifiques à MSSQL et d’autres outils fournis par l’extension pendant qu’il traite votre demande. Vous pouvez voir ces outils dans l’interface mode agent sous le menu Outils , où vous pouvez également activer ou désactiver des outils spécifiques.

Lorsque vous appelez un outil, en particulier s’il interagit avec votre machine ou base de données, GitHub Copilot demande une confirmation pour garantir l’exécution sécurisée. Vous pouvez autoriser l’outil uniquement pour la session active, l’espace de travail ou définitivement.

Pour plus d’informations sur la visibilité et les approbations des outils, consultez Gérer les approbations des outils.

Flux de travail de confirmation du mode agent

Lorsque GitHub Copilot sélectionne un outil, il vous invite à entrer une boîte de dialogue de confirmation qui affiche des détails sur l’action demandée. Vous devez approuver explicitement la demande pour pouvoir exécuter toutes les commandes qui interagissent avec votre machine ou base de données :

  • Autoriser pour cette session
  • Autoriser dans cet espace de travail
  • Toujours autoriser

Cette étape de confirmation permet de garantir des interactions sécurisées et intentionnelles avec votre environnement de développement.

Note

Pour plus d’informations sur le fonctionnement de la confirmation dans tous les outils en mode Agent, consultez la documentation de Visual Studio Code sur les approbations des outils.