{"meta":{"title":"Configuration de l’interface CLI GitHub Copilot","intro":"Configurer les répertoires approuvés, l’accès aux outils et les autorisations de chemin d’accès et d’URL pour Copilot CLI","product":"GitHub Copilot","breadcrumbs":[{"href":"/fr/copilot","title":"GitHub Copilot"},{"href":"/fr/copilot/how-tos","title":"Procédures"},{"href":"/fr/copilot/how-tos/copilot-cli","title":"Copilot CLI"},{"href":"/fr/copilot/how-tos/copilot-cli/set-up-copilot-cli","title":"Configurer le CLI Copilot"},{"href":"/fr/copilot/how-tos/copilot-cli/set-up-copilot-cli/configure-copilot-cli","title":"Configurer Copilot CLI"}],"documentType":"article"},"body":"# Configuration de l’interface CLI GitHub Copilot\n\nConfigurer les répertoires approuvés, l’accès aux outils et les autorisations de chemin d’accès et d’URL pour Copilot CLI\n\n## Présentation\n\nCopilot CLI a plusieurs options de configuration qui contrôlent ce qu’il peut accéder et faire en votre nom.\n\nCet article explique comment définir des répertoires approuvés, configurer l’accès pour les outils et accorder des autorisations aux chemins d’accès et URL de fichier.\n\n### Prerequisites\n\n* Installez le Copilot CLI. Consultez [Installation du CLI GitHub Copilot](/fr/copilot/how-tos/copilot-cli/set-up-copilot-cli/install-copilot-cli).\n\n## Définition de répertoires approuvés\n\nLes répertoires approuvés contrôlent où Copilot CLI peut lire, modifier et exécuter des fichiers. La confiance d’un annuaire a des implications en matière de sécurité, consultez [considérations relatives à la sécurité](/fr/copilot/concepts/agents/copilot-cli/about-copilot-cli#security-considerations).\n\n### Choisir de faire confiance à un répertoire\n\nLorsque vous démarrez une GitHub Copilot CLI session, vous êtes invité à confirmer que vous approuvez les fichiers dans et ci-dessous, le répertoire à partir duquel vous avez lancé l’interface CLI.\n\nVous pouvez choisir de faire confiance au répertoire actuel pour :\n\n* La session en cours uniquement\n* Cette session et les sessions futures\n\nSi vous choisissez de faire confiance au répertoire pour les sessions futures, le prompt du répertoire de confiance ne s’affichera plus. Vous ne devez choisir cette deuxième option que si vous êtes sûr que cet emplacement sera toujours un endroit sûr pour Copilot fonctionner.\n\n### Modification de répertoires approuvés\n\nVous pouvez modifier la liste des répertoires approuvés définitivement. Les répertoires approuvés sont stockés dans le fichier géré `config.json` automatiquement.\n\n1. Ouvrez le fichier `config.json` du CLI. Par défaut, il est stocké dans un `.copilot` dossier sous votre répertoire de base :\n\n   * **macOS/Linux** : `~/.copilot/config.json`\n   * **Windows** : `$HOME\\.copilot\\config.json`\n\nVous pouvez modifier l’emplacement de configuration en définissant la variable d’environnement `COPILOT_HOME` . Cela modifierait `~/.copilot/` et `$HOME\\.copilot\\` dans les chemins ci-dessus.\n\n1. Modifiez le contenu du `trustedFolders` tableau.\n\n## Définition des outils autorisés\n\nVous pouvez contrôler quels outils Copilot CLI peuvent utiliser, soit en répondant aux invites d’approbation lorsque Copilot vous tentez d’utiliser un outil, soit en spécifiant des autorisations via des indicateurs de ligne de commande.\n\nN’oubliez pas que l’autorisation d’accès aux outils a des implications en matière de sécurité, consultez [considérations relatives à la sécurité](/fr/copilot/concepts/agents/copilot-cli/about-copilot-cli#security-considerations).\n\nDans cette section, vous pouvez apprendre à :\n\n* [Autoriser un outil pour la première fois](#allowing-a-tool-for-the-first-time)\n* [Autoriser l’utilisation d’outils sans approbation manuelle](#allowing-tools-to-be-used-without-manual-approval)\n* [Spécifier l’outil que vous souhaitez autoriser ou refuser](#specifying-which-tool-you-want-to-allow-or-deny)\n* [Autoriser certains outils tout en refusant d’autres](#allowing-some-tools-while-denying-others)\n* [Limiter les outils disponibles](#limiting-available-tools)\n\n### Autorisation d’un outil pour la première fois\n\nLa première fois que vous Copilot devez utiliser un outil qui peut nécessiter une approbation,par exemple, `touch`, `chmod`, `node` ou `sed` il vous demande si vous souhaitez l’autoriser à s’exécuter. Le fait d'être invité peut dépendre de l’outil et de la façon dont il est utilisé (par exemple, des arguments fournis ou si l’outil a été précédemment approuvé).\n\n1. Invite Copilot à effectuer une tâche qui nécessite un outil. Par exemple:\n\n   ```shell\n   copilot -p \"Create a new file called README.md with a project description\"\n   ```\n\n2. Choisissez parmi l’une des trois options suivantes :\n\n   * `1. Yes`\n\n     Choisissez cette option pour autoriser Copilot l’exécution de cette commande particulière, cette fois uniquement. La prochaine fois qu’il aura besoin de cet outil, il vous le demandera à nouveau.\n\n   * `2. Yes, and approve TOOL for the rest of the running session`\n\n     Choisissez cette option pour autoriser Copilot l’utilisation de cet outil pendant la durée de la session en cours d’exécution. Il vous redemandera votre approbation lors de nouvelles sessions, ou si vous reprenez la session en cours ultérieurement. Si vous choisissez cette option, vous autorisez Copilot à utiliser cet outil de quelque manière qu’il pense être approprié.\n\n     Par exemple, si Copilot vous demande de l’autoriser à exécuter la commande `rm ./this-file.txt`, et que vous choisissez l’option 2, alors Copilot peut exécuter n’importe quelle commande `rm` (par exemple, `rm -rf ./*`) pendant l’exécution actuelle de cette session, sans demander votre approbation.\n\n   * `3. No, and tell Copilot what to do differently (Esc)`\n\n     Choisissez cette option pour annuler la commande proposée et demander Copilot d’essayer une autre approche.\n\n### Autoriser l’utilisation d’outils sans approbation manuelle\n\nVous pouvez utiliser des indicateurs de ligne de commande pour désigner des outils qui Copilot peuvent être utilisés sans demander votre approbation.\n\n#### Autorisation de tous les outils\n\nUtilisez l’option `--allow-all-tools` permettant Copilot d’utiliser n’importe quel outil sans demander votre approbation.\n\n* Par exemple:\n\n  ```shell\n  copilot -p \"Revert the last commit\" --allow-all-tools\n  ```\n\n#### Refus d’un outil\n\nUtilisez `--deny-tool` pour empêcher Copilot d'utiliser un outil spécifique.\n\n* Par exemple:\n\n  ```shell\n  copilot --deny-tool='shell(git push)'\n  ```\n\nCette option a priorité sur les options `--allow-all-tools` et `--allow-tool`.\n\n#### Autorisation d’un outil\n\nPermet `--allow-tool` d’utiliser Copilot un outil spécifique sans demander votre approbation.\n\n* Par exemple:\n\n  ```shell\n  copilot --allow-tool='shell'\n  ```\n\n### Spécification de l’outil que vous souhaitez autoriser ou refuser\n\nPour utiliser les options `--deny-tool` et `--allow-tool`, vous devez spécifier le type d’outil que vous souhaitez autoriser ou refuser :\n\n* [Commandes shell](#allowing-or-denying-shell-commands)\n* [Outils « Écrire »](#allowing-or-denying-write-tools)\n* [Outils serveur MCP](#allowing-or-denying-mcp-server-tools)\n\n#### Autorisation ou refus des commandes shell\n\nPermet `shell(COMMAND)` d’autoriser ou de refuser une commande shell spécifique.\n\n* Par exemple, pour empêcher Copilot l’utilisation d’une `rm` commande, utilisez :\n\n  ```shell\n  copilot --deny-tool='shell(rm)'\n  ```\n\nPour `git` et `gh` les commandes, spécifiez une sous-commande de premier niveau particulière pour autoriser ou refuser.\n\n* Par exemple, pour empêcher Copilot d'utiliser `git push`, utilisez :\n\n  ```shell\n  copilot --deny-tool='shell(git push)'\n  ```\n\nLa spécification de l’outil est facultative. Par exemple, `copilot --allow-tool='shell'` permet Copilot d’utiliser n’importe quelle commande shell sans approbation individuelle.\n\n#### Autorisation ou refus `'write'` d’outils\n\nUtilisez `'write'` pour autoriser ou refuser à des outils (autres que les commandes shell) la permission de modifier des fichiers.\n\n* Par exemple, pour autoriser Copilot à modifier des fichiers sans votre approbation individuelle, utilisez :\n\n  ```shell\n  copilot --allow-tool='write'\n  ```\n\n#### Autorisation ou refus des outils serveur MCP\n\nPermet `'MCP_SERVER_NAME'` d’autoriser ou de refuser un outil spécifique à partir du serveur MCP spécifié.\n\n* Par exemple, pour empêcher Copilot l’utilisation de l’outil appelé `tool_name` à partir du serveur MCP appelé `My-MCP-Server`, utilisez :\n\n  ```shell\n  copilot --deny-tool='My-MCP-Server(tool_name)'\n  ```\n\n`MCP_SERVER_NAME` est le nom d’un serveur MCP que vous avez configuré.\n\nLes outils du serveur sont spécifiés entre parenthèses, en utilisant le nom de l’outil enregistré auprès du serveur MCP.\n\nUtiliser le nom du serveur sans spécifier d’outil autorise ou refuse tous les outils de ce serveur.\n\nVous pouvez trouver le nom d'un serveur MCP en entrant `/mcp` dans le mode interactif de Copilot CLI et en sélectionnant le serveur dans la liste affichée.\n\n### Autoriser certains outils tout en refusant d’autres\n\nPour déterminer exactement quels outils Copilot peuvent utiliser sans demander votre approbation, vous pouvez utiliser une combinaison d’options d’approbation. Par exemple:\n\n* Pour empêcher Copilot d'utiliser les commandes `rm` et `git push`, mais autoriser automatiquement tous les autres outils, utilisez :\n\n  ```shell\n  copilot --allow-all-tools --deny-tool='shell(rm)' --deny-tool='shell(git push)'\n  ```\n\n* Pour empêcher Copilot l’utilisation de l’outil `tool_name` à partir du serveur MCP nommé `My-MCP-Server`, mais autoriser l’utilisation de tous les autres outils de ce serveur sans approbation individuelle, utilisez :\n\n  ```shell\n  copilot --allow-tool='My-MCP-Server' --deny-tool='My-MCP-Server(tool_name)'\n  ```\n\n### Limitation des outils disponibles\n\nPour restreindre Copilot un ensemble spécifique d’outils, utilisez `--available-tools`.\n\nLes outils non inclus dans cette liste ne seront pas disponibles.Copilot\n\n## Définition des autorisations de chemin d’accès\n\nLes autorisations de chemin contrôlent les répertoires et fichiers Copilot auxquels accéder.\n\nPar défaut, Copilot CLI il peut accéder au répertoire de travail actuel, à ses sous-répertoires et au répertoire temporaire système.\n\nLes autorisations de chemin s’appliquent aux commandes d’interpréteur de commandes, aux opérations de fichier (créer, modifier, afficher) et aux outils de recherche (tels que `grep` et les modèles glob). Pour les commandes shell, les chemins d’accès sont extraits de façon heuristique en décomposant le texte des commandes en jetons et en identifiant les jetons qui ressemblent à des chemins d’accès.\n\n> \\[!WARNING]\n> La détection de chemin d’accès pour les commandes shell présente des limitations :\n>\n> * Les chemins intégrés dans des structures complexes de l'interpréteur de commandes peuvent ne pas être détectés.\n> * Seul un ensemble spécifique de variables d’environnement est développé (`HOME`, `TMPDIR`, `PWD`et similaire). Les variables personnalisées comme celles-ci `$MY_PROJECT_DIR` ne sont pas développées et peuvent ne pas être validées correctement.\n> * Les liens symboliques sont résolus pour les fichiers existants, mais pas pour les fichiers créés.\n\n### Autoriser l’accès à tous les chemins d’accès\n\nPour désactiver la vérification du chemin et autoriser l’accès à n’importe quel chemin, utilisez l'option `--allow-all-paths` au démarrage de Copilot CLI.\n\n### Interdire l’accès au répertoire temporaire\n\nPour interdire l’accès au répertoire temporaire, utilisez `--disallow-temp-dir`.\n\n## Définition des autorisations d’URL\n\nLes autorisations d'URL contrôlent les URL externes auxquelles Copilot peut accéder. Par défaut, toutes les URL nécessitent une approbation avant l’octroi de l’accès.\n\nLes autorisations d’URL s’appliquent à l’outil `web_fetch` et à une liste de commandes shell sélectionnées qui accèdent au réseau (comme `curl`, `wget` et `fetch`). Pour les commandes shell, les URL sont extraites à l’aide de modèles regex.\n\n> \\[!WARNING]\n> La détection d’URL pour les commandes shell présente des limitations :\n>\n> * Les URL dans le contenu des fichiers, les fichiers de configuration ou les variables d’environnement lues par les commandes ne sont pas détectées.\n> * Les URL obfuscatées (telles que les chaînes fractionnées ou les séquences d’échappement) peuvent ne pas être détectées.\n> * HTTP et HTTPS sont traités comme des protocoles différents et nécessitent une approbation distincte.\n\nLes autorisations d’URL peuvent être conservées pour la session ou de manière permanente.\n\n### Désactivation de la vérification d’URL\n\nPour désactiver la vérification d’URL, utilisez l’indicateur `--allow-all-urls` .\n\n### Pré-approbation de domaines spécifiques\n\nPour pré-approuver des domaines spécifiques, utilisez `--allow-url=DOMAIN`.\n\n* Par exemple : `--allow-url=github.com`.\n\n### Refus de domaines spécifiques\n\nPour refuser des domaines spécifiques, utilisez `--deny-url=DOMAIN`.\n\n* Par exemple : `--deny-url=github.com`.\n\n## Autorisation de tous les outils, chemins et URL\n\nPour autoriser tous les outils, chemins d’accès et URL, utilisez `--allow-all`ou son alias. `--yolo`\n\nCet indicateur combine :\n\n* `--allow-all-tools` (ignorer l’approbation de l’outil).\n* `--allow-all-paths` (désactiver la vérification du chemin d’accès).\n* `--allow-all-urls` (désactive la vérification d’URL).\n\nPendant une session interactive, vous pouvez également activer toutes les autorisations avec les commandes `/allow-all` ou les commandes `/yolo` avec un slash.\n\n> \\[!NOTE] Si vous avez une licence Copilot Business ou Copilot Enterprise, ces commandes peuvent être bloquées par un administrateur de l’entreprise.\n\n## Limiter l’accès aux fichiers\n\nLes différentes `--allow-all...` options vous permettent de décider s’il faut autoriser Copilot l’accès à des outils, fichiers et URL individuels. Toutefois, l’utilisation permet d’élargir l’étendue pour Copilot effectuer des actions que vous ne souhaiterez peut-être pas, par exemple, modifier des fichiers en dehors du référentiel dans lequel vous travaillez.\n\nPour atténuer ce risque, vous pouvez demander à l’interface CLI de sandboxr ses commandes (bac à sable local) ou d’exécuter la session entière Copilot CLI dans un environnement distant et bac à sable (sandboxing cloud). Pour plus d’informations, consultez « [À propos des bacs à sable cloud et locaux pour GitHub Copilot](/fr/copilot/concepts/about-cloud-and-local-sandboxes) ».\n\n## Lectures complémentaires\n\n* [Personnaliser l'interface en ligne de commande de GitHub Copilot](/fr/copilot/how-tos/copilot-cli/customize-copilot)\n* [GitHub Copilot le répertoire de configuration du CLI](/fr/copilot/reference/copilot-cli-reference/cli-config-dir-reference)"}