Utiliser le chat agentif comme assistant en programmation

Ce document explique comment configurer et utiliser le mode Agent de Gemini Code Assist en tant qu'assistant en programmation dans votre environnement de développement intégré (IDE, integrated development environment).

Avec le mode Agent, vous pouvez, entre autres :

  • poser des questions sur votre code ;
  • utiliser le contexte et les outils intégrés pour améliorer le contenu généré ;
  • configurer les serveurs MCP pour étendre les capacités de l'agent ;
  • obtenir des solutions à des tâches complexes avec plusieurs étapes ;
  • générer du code à partir de documents de conception, de problèmes et de commentaires TODO ;
  • contrôler le comportement de l'agent en commentant, modifiant et approuvant les plans ainsi que l'utilisation des outils pendant l'exécution.

Limites

Il est possible que certaines fonctionnalités du chat Gemini Code Assist standard ne soient pas disponibles en mode Agent ou qu'elles fonctionnent différemment par rapport au chat standard.

La récitation n'est pas disponible en mode Agent. En mode Agent, Gemini ne cite pas de sources et vous ne pouvez pas désactiver les suggestions de code qui correspondent aux sources citées.

Avant de commencer

Utiliser le mode Agent

En mode Agent, vous pouvez demander à Gemini d'atteindre des objectifs de haut niveau et d'effectuer des tâches complexes.

Pour exploiter au mieux le mode Agent, suivez les bonnes pratiques concernant les prompts et fournissez autant de détails que possible.

Pour passer en mode Agent :

VS Code

  1. Pour ouvrir le chat Gemini Code Assist, dans la barre d'activité de votre IDE, cliquez sur spark Gemini Code Assist.
  2. Cliquez sur le bouton Agent pour passer en mode Agent. Le bouton est mis en surbrillance lorsque le mode Agent est activé et il est gris lorsque le chat classique est activé.
  3. Dans le chat Gemini Code Assist, saisissez votre prompt.

Gemini fournit une réponse à votre prompt ou demande l'autorisation d'utiliser un outil.

Pour arrêter l'agent, cliquez sur  Arrêter.

Pour utiliser le chat Gemini Code Assist standard, cliquez sur Nouveau chat pour créer un chat.

Le mode Agent de Gemini Code Assist est optimisé par Gemini CLI.

IntelliJ

  1. Cliquez sur spark Gemini dans la barre des fenêtres d'outils. Si vous y êtes invité, connectez-vous.
  2. Sélectionnez l'onglet Agent.
  3. Décrivez la tâche que vous souhaitez que l'agent effectue.
  4. À mesure que l'agent suit les étapes pour accomplir la tâche, vous avez la possibilité d'examiner et d'approuver les modifications.

  5. (Facultatif) Pour approuver automatiquement les modifications, sélectionnez settings Options de l'agent, puis cochez la case à côté de Approuver automatiquement les modifications.

Configurer des outils pour le mode Agent

Les outils sont une vaste catégorie de services qu'un agent peut utiliser pour le contexte et les actions dans sa réponse à votre prompt. Parmi les exemples d'outils, on trouve les outils intégrés tels que grep et la lecture/écriture de fichiers, les serveurs MCP (Model Context Protocol) locaux ou distants et leurs fonctions exécutables, ou encore les implémentations de services sur mesure.

Contrôler l'utilisation des outils intégrés

Le mode Agent a accès à vos outils intégrés, comme la recherche, la lecture et l'écriture de fichiers, les commandes de terminal et plus encore.

VS Code

Vous pouvez utiliser les paramètres coreTools et excludeTools pour contrôler les outils auxquels Gemini a accès en mode Agent.

coreTools
Vous permet de spécifier une liste d'outils que vous souhaitez mettre à la disposition du modèle. Vous pouvez également spécifier des restrictions spécifiques aux commandes pour les outils compatibles. Par exemple, si vous ajoutez ce qui suit à votre fichier JSON de paramètres Gemini, seule la commande shell ls -l pourra être exécutée : "coreTools": ["ShellTool(ls -l)"].
excludeTools
Vous permet de spécifier une liste d'outils que vous ne souhaitez pas mettre à la disposition du modèle. Vous pouvez également spécifier des restrictions spécifiques aux commandes pour les outils compatibles. Par exemple, si vous ajoutez ce qui suit à votre fichier JSON de paramètres Gemini, l'utilisation de la commande rm -rf sera bloquée : "excludeTools": ["ShellTool(rm -rf)"].

Un outil listé à la fois dans excludeTools et coreTools est exclu.

Pour configurer les outils intégrés disponibles en mode Agent, procédez comme suit :

  1. Ouvrez votre fichier JSON de paramètres Gemini situé dans ~/.gemini/settings.json, où ~ correspond à votre répertoire d'accueil.
  2. Pour limiter l'utilisation des outils par l'agent à une liste d'outils approuvés, ajoutez la ligne suivante à votre fichier JSON de paramètres Gemini :

    "coreTools": ["TOOL_NAME_1,TOOL_NAME_2"]
    

    Remplacez TOOL_NAME_1 et TOOL_NAME_2 par les noms des outils intégrés auxquels vous souhaitez que l'agent ait accès.

    Vous pouvez lister autant d'outils intégrés que vous le souhaitez. Par défaut, l'agent a accès à tous les outils intégrés.

  3. Pour limiter l'utilisation des outils par l'agent à des commandes d'outil spécifiques, ajoutez la ligne suivante à votre fichier JSON de paramètres Gemini :

    "coreTools": ["TOOL_NAME(COMMAND)"]
    

    Remplacez les éléments suivants :

    • TOOL_NAME : nom de l'outil intégré
    • COMMAND : nom de la commande d'outil intégrée que vous souhaitez que l'agent puisse utiliser
  4. Pour empêcher l'agent d'utiliser un outil, ajoutez la ligne suivante à votre fichier JSON de paramètres Gemini :

    "excludeTools": ["TOOL_NAME_1,TOOL_NAME_2"]
    

    Remplacez TOOL_NAME_1 et TOOL_NAME_2 par les noms des outils intégrés que vous souhaitez empêcher l'agent d'utiliser.

  5. Pour empêcher l'agent d'utiliser une commande d'outil, ajoutez la ligne suivante à votre fichier JSON de paramètres Gemini :

    "excludeTools": ["TOOL_NAME(COMMAND)"]
    

    Remplacez les éléments suivants :

    • TOOL_NAME : nom de l'outil intégré
    • COMMAND : nom de la commande d'outil intégré que vous souhaitez empêcher l'agent d'utiliser

Pour en savoir plus sur les paramètres de configuration coreTools et excludeTools, consultez la documentation sur la configuration de Gemini CLI.

IntelliJ

Cette fonctionnalité n'est pas disponible dans Gemini Code Assist pour IntelliJ ni pour les autres IDE JetBrains.

Configurer les serveurs MCP

VS Code

Pour contrôler les serveurs disponibles en mode Agent, ajoutez-les à votre fichier JSON de paramètres Gemini conformément à la documentation des serveurs.

  1. Installez toutes les dépendances requises par vos serveurs MCP.
  2. Ouvrez votre fichier JSON de paramètres Gemini situé dans ~/.gemini/settings.json, où ~ correspond à votre répertoire d'accueil.
  3. Ajoutez des serveurs MCP locaux ou distants à votre fichier JSON de paramètres Gemini en suivant les instructions des serveurs.

    L'exemple suivant ajoute le serveur MCP Cloudflare distant, et installe les serveurs GitHub et GitLab sur la machine locale.

    {
        "mcpServers": {
        "github": {
          "command": "npx",
          "args": [
            "-y",
            "@modelcontextprotocol/server-github"
          ],
          "env": {
            "GITHUB_PERSONAL_ACCESS_TOKEN": "ghp_example_personal_access_token12345"
          }
        },
        "gitlab": {
          "command": "npx",
          "args": [
              "-y",
              "@modelcontextprotocol/server-gitlab"
          ]
        },
            "cloudflare-observability": {
                "command": "npx",
                "args": ["mcp-remote", "https://observability.mcp.cloudflare.com/sse"]
            },
            "cloudflare-bindings": {
                "command": "npx",
                "args": ["mcp-remote", "https://bindings.mcp.cloudflare.com/sse"]
            }
        }
    }
    

  4. Ouvrez la palette de commandes et sélectionnez Developer: Reload Window (Développeur : Actualiser la fenêtre).

Les serveurs MCP que vous avez configurés sont disponibles en mode Agent.

IntelliJ

Pour contrôler les serveurs disponibles en mode Agent, ajoutez-les à un fichier mcp.json et placez-le dans le répertoire de configuration de votre IDE.

  1. Installez toutes les dépendances requises par vos serveurs MCP.
  2. Créez un fichier mcp.json dans le répertoire de configuration de votre IDE.
  3. Ajoutez des serveurs MCP locaux ou distants à votre fichier JSON de paramètres Gemini en suivant les instructions des serveurs.

    L'exemple suivant ajoute le serveur MCP Cloudflare distant, et installe les serveurs GitHub et GitLab sur la machine locale.

    {
        "mcpServers": {
        "github": {
          "command": "npx",
          "args": [
            "-y",
            "@modelcontextprotocol/server-github"
          ],
          "env": {
            "GITHUB_PERSONAL_ACCESS_TOKEN": "ghp_example_personal_access_token12345"
          }
        },
        "gitlab": {
          "command": "npx",
          "args": [
              "-y",
              "@modelcontextprotocol/server-gitlab"
          ]
        },
            "cloudflare-observability": {
                "command": "npx",
                "args": ["mcp-remote", "https://observability.mcp.cloudflare.com/sse"]
            },
            "cloudflare-bindings": {
                "command": "npx",
                "args": ["mcp-remote", "https://bindings.mcp.cloudflare.com/sse"]
            }
        }
    }
    

Les serveurs MCP que vous avez configurés sont disponibles en mode Agent.

Authentification des serveurs MCP

Certains serveurs MCP exigent une authentification. Suivez la documentation des serveurs pour créer les jetons utilisateur requis.

VS Code

Si des serveurs MCP exigent une authentification, vous pouvez les ajouter à votre fichier JSON de paramètres Gemini.

L'exemple suivant ajoute un jeton d'accès personnel pour GitHub :

{
//other settings...
"github": {
  "command": "/Users/username/code/github-mcp-server/cmd/github-mcp-server/github-mcp-server",
  "args": ["stdio"],
  "env": {
    "GITHUB_PERSONAL_ACCESS_TOKEN": "ACCESS_TOKEN"
  }
},
// other settings...
}

ACCESS_TOKEN est le jeton d'accès de l'utilisateur.

IntelliJ

Si des serveurs MCP exigent une authentification, vous pouvez les ajouter à votre fichier mcp.json.

L'exemple suivant ajoute un jeton d'accès personnel pour GitHub :

{
//other settings...
"github": {
  "command": "/Users/username/code/github-mcp-server/cmd/github-mcp-server/github-mcp-server",
  "args": ["stdio"],
  "env": {
    "GITHUB_PERSONAL_ACCESS_TOKEN": "ACCESS_TOKEN"
  }
},
// other settings...
}

ACCESS_TOKEN est le jeton d'accès de l'utilisateur.

Créer un fichier de contexte

Le contexte permet à un agent de générer de meilleures réponses à un prompt donné. Il peut provenir des fichiers de votre IDE, des fichiers contenus dans les dossiers de votre système local, des réponses d'outils et des détails de votre prompt. Pour en savoir plus, consultez Contexte du mode Agent.

VS Code

  1. Créez un fichier nommé GEMINI.md à un emplacement correspondant au champ d'application du contexte. Le tableau suivant détaille les emplacements des fichiers de contexte pour différents champs d'application :

    Champ d'application Emplacement
    Tous vos projets ~/.gemini/GEMINI.md
    Un projet spécifique Votre répertoire de travail ou tout répertoire parent jusqu'à la racine de votre projet (identifiée par un dossier .git) ou votre répertoire d'accueil.
    Un composant, un module ou une sous-section spécifique d'un projet Sous-répertoires de votre répertoire de travail.

    Le système de mémoire de l'agent est créé en chargeant des fichiers de contexte à partir de plusieurs emplacements. Le contexte issu de fichiers plus spécifiques, comme ceux de composants ou de modules particuliers, remplace ou complète le contenu des fichiers de contexte plus généraux, comme le fichier de contexte global situé dans ~/.gemini/GEMINI.md.

  2. Rédigez au format Markdown les règles, les informations du guide de style ou le contexte que vous souhaitez que l'agent utilise, puis enregistrez le fichier. Pour en savoir plus, consultez l'exemple de fichier de contexte sur GitHub.

L'agent inclut les informations figurant dans votre fichier de contexte avec les prompts que vous lui envoyez.

IntelliJ

  1. Créez un fichier nommé GEMINI.md ou AGENT.md à la racine de votre projet.

  2. Rédigez au format Markdown les règles, les informations du guide de style ou le contexte que vous souhaitez que l'agent utilise, puis enregistrez le fichier.

L'agent inclut les informations figurant dans votre fichier de contexte avec les prompts que vous lui envoyez. Vous pouvez également ajouter du contexte en incluant manuellement un fichier avec la syntaxe @FILENAME, où FILENAME est le nom du fichier contenant les informations contextuelles que vous souhaitez inclure.

Exécuter des commandes

Les commandes à barre oblique / vous permettent d'exécuter rapidement des commandes semblables à celles d'une fenêtre de terminal.

VS Code

Vous pouvez exécuter les commandes Gemini CLI suivantes en mode Agent :

  • /tools : affiche la liste des outils disponibles dans votre session en mode Agent.
  • /mcp : liste les serveurs MCP (Model Context Protocol) configurés, leur état de connexion, les détails des serveurs et les outils disponibles.

Pour en savoir plus sur les commandes Gemini CLI, consultez Commandes Gemini CLI. Notez que les commandes Gemini CLI ne sont pas toutes disponibles en mode Agent.

IntelliJ

Cette fonctionnalité n'est pas disponible dans Gemini Code Assist pour IntelliJ ni pour les autres IDE JetBrains.

Toujours autoriser les actions de l'agent

Vous pouvez autoriser automatiquement toutes les actions de l'agent.

Pour autoriser automatiquement toutes les actions de l'agent :

VS Code

Utilisez le mode yolo pour autoriser automatiquement toutes les actions de l'agent. Pour configurer le mode yolo :

  1. Ouvrez le fichier JSON des paramètres utilisateur de VS Code :

    1. Ouvrez la palette de commandes (ctrl/command+Shift+P).
    2. Sélectionnez Preferences: Open User Settings (JSON) (Préférences : Ouvrir les paramètres utilisateur (JSON)).
  2. Ajoutez le code suivant au fichier JSON des paramètres utilisateur de VS Code :

    //other settings...
    
    "geminicodeassist.agentYoloMode": "true",
    //other settings...
    
  3. Ouvrez la palette de commandes et sélectionnez Developer: Reload Window (Développeur : Actualiser la fenêtre).

Le mode Agent utilise le mode yolo et ne vous demandera pas votre autorisation avant d'effectuer des actions lorsque vous lui enverrez un prompt.

IntelliJ

Pour approuver automatiquement les modifications, dans l'onglet "Agent" du chat Gemini, sélectionnez settings Options de l'agent, puis cochez la case à côté de Approuver automatiquement les modifications.

Le mode Agent approuve automatiquement toutes les requêtes et ne vous demandera pas votre autorisation avant d'effectuer des actions lorsque vous lui enverrez un prompt.

Prompts supplémentaires

Essayez les prompts suivants avec vos propres informations :

  • "À quoi sert ce dépôt ? Aide-moi à comprendre l'architecture."
  • "À quoi sert cette [classe/fonction] ?"
  • "Ajoute une fonctionnalité à ce codebase : "[lien-ou-chemin-vers-codebase]"."
  • "Refactorise les fonctions [A] et [B] pour utiliser la méthode commune [C]."
  • "Corrige le problème GitHub [lien-vers-problème-github]."
  • "Crée une application pour [objectif] avec une UI qui permet à l'utilisateur de [tâche] dans [environnement]."
  • "Migre les versions de bibliothèque de ce dépôt de [X] vers [Y]."
  • "Optimise les performances de ce code Go pour qu'il s'exécute plus rapidement."
  • "Utilise [nom-API] pour développer cette fonctionnalité."
  • "Implémente un algorithme pour effectuer [X], [Y] et [Z]."

Étapes suivantes