{"meta":{"title":"À propos des extensions pour GitHub Copilot CLI","intro":"Les extensions vous permettent d’ajouter vos propres outils et commandes de barre oblique à GitHub Copilot CLI, en utilisant uniquement le Kit de développement logiciel (SDK) fourni avec l’interface CLI.","product":"GitHub Copilot","breadcrumbs":[{"href":"/fr/copilot","title":"GitHub Copilot"},{"href":"/fr/copilot/concepts","title":"Concepts"},{"href":"/fr/copilot/concepts/agents","title":"Agent"},{"href":"/fr/copilot/concepts/agents/copilot-cli","title":"Copilot CLI"},{"href":"/fr/copilot/concepts/agents/copilot-cli/about-cli-extensions","title":"Extensions de l’interface en ligne de commande"}],"documentType":"article"},"body":"# À propos des extensions pour GitHub Copilot CLI\n\nLes extensions vous permettent d’ajouter vos propres outils et commandes de barre oblique à GitHub Copilot CLI, en utilisant uniquement le Kit de développement logiciel (SDK) fourni avec l’interface CLI.\n\n> \\[!NOTE]\n> GitHub Copilot CLI les extensions sont actuellement une fonctionnalité expérimentale et sont sujettes à modification.\n\nUne extension vous permet d’ajouter vos propres fonctionnalités à Copilot CLI. Chaque extension est un petit module Node.js qui s’exécute en tant que processus distinct en même temps que votre session interactive et se connecte à celui-ci. Grâce à cette connexion, une extension peut ajouter :\n\n* **Outils** que Copilot peut appeler lorsqu'il travaille pour vous.\n* **Commandes slash** que vous exécutez vous-même.\n\nÉtant donné qu’une extension exécute du code réel sur votre ordinateur, vous pouvez ajouter des fonctionnalités que les outils intégrés n’ont pas. Par exemple, une extension peut surveiller ce qui se passe dans une session et maintenir un total cumulé d’un appel d’outil à l’autre, ce qu’une commande shell ponctuelle ne peut pas faire.\n\nCet article explique comment les extensions fonctionnent et comment Copilot CLI les gère. Pour obtenir un guide pratique sur la création de vos propres extensions, consultez [Création d’extensions pour GitHub Copilot CLI](/fr/copilot/tutorials/create-an-extension).\n\n> \\[!WARNING]\n> Les extensions s’exécutent sur votre ordinateur avec vos privilèges. Chargez uniquement le code d’extension que vous approuvez, de la même façon que vous n’exécutez que tout autre script que vous n’avez pas écrit vous-même.\n\n## Comment les extensions sont découvertes\n\nLorsque Copilot CLI démarre, il recherche des extensions à plusieurs emplacements. Chaque extension réside dans son propre sous-répertoire, et ce sous-répertoire doit contenir un fichier d’entrée nommé `extension.mjs`, `extension.cjs`ou `extension.js`. Ce sont tous des fichiers JavaScript : Copilot CLI exécute directement le fichier d’entrée avec Node.js, donc une extension doit être écrite en JavaScript — TypeScript et les autres langages ne sont actuellement pas pris en charge.\n\nLe nom du sous-répertoire devient le nom de l’extension.\n\n| Source                                                | Emplacement                                                     | Disponibilité                                                       |\n| ----------------------------------------------------- | --------------------------------------------------------------- | ------------------------------------------------------------------- |\n| **Projet**                                            |                                                                 |                                                                     |\n| `.github/extensions/NAME/` dans le référentiel actuel | Disponible pour toute personne travaillant dans ce référentiel. |                                                                     |\n| **Utilisateur**                                       | `~/.copilot/extensions/NAME/`                                   | Accessible dans toutes vos sessions CLI, dans tous les répertoires. |\n| **Plug-in**                                           | Un plug-in installé                                             | Disponible partout où le plug-in est activé.                        |\n\n## Choisir où réside une extension\n\nOù vous placez le répertoire d’extension détermine qui peut l’utiliser :\n\n* Placez-le dans **`.github/extensions/`** un référentiel lorsque l’extension est spécifique à ce projet et que vous souhaitez la partager avec tous ceux qui y travaillent.\n* Placez-le **`~/.copilot/extensions/`** lorsque vous souhaitez que l’extension soit disponible dans toutes vos propres sessions, quel que soit le répertoire dans lequel vous démarrez l’interface CLI.\n\nLes deux emplacements suivent exactement la même structure ( un sous-répertoire nommé contenant un `extension.mjs` fichier) afin de pouvoir déplacer une extension d’une à l’autre simplement en déplaçant son dossier.\n\n## Activation des extensions\n\nLes extensions sont actuellement une fonctionnalité expérimentale. Vous devez donc activer les fonctionnalités expérimentales. Pour ce faire, effectuez l’une des opérations suivantes :\n\n* Démarrez l’interface CLI avec l’indicateur `‑‑experimental` .\n* Exécutez la commande slash `/experimental on` dans une session interactive.\n\n## Modification de la façon dont l’interface CLI gère les extensions\n\nVous pouvez limiter Copilotl’accès aux extensions ou les désactiver entièrement à l’aide de la `/extensions mode` commande. Lorsque vous utilisez cette commande, vous obtenez trois options :\n\n* **Load \\&Augmente** (valeur par défaut) : l’interface CLI exécute vos extensions \\_et\\_Copilot peut les gérer.\n* **Chargez uniquement** : l’interface CLI exécute vos extensions, mais Copilot ne peut pas les gérer.\n* **Désactivé** : les extensions sont désactivées entièrement dans la session active et restent désactivées dans les sessions ultérieures jusqu’à ce que vous basculez vers l’un des deux autres paramètres. Les autres sessions actuelles ne sont pas affectées.\n\nToute modification que vous apportez prend effet immédiatement dans la session active :\n\n* Le passage **à Désactivé** arrête toutes les extensions en cours d’exécution. Leurs processus sont arrêtés et leurs outils ne sont plus disponibles.\n* Le passage **de Désactivé** à l’un des autres paramètres démarre vos extensions.\n* Passer de **Chargement uniquement** à **Charger et augmenter** change simplement le fait que Copilot peut gérer vos extensions.\n\n### Ce que signifie « gestion des extensions »\n\nEn mode **Load & Augment**, Copilot se voit attribuer un petit ensemble d’outils supplémentaires lui permettant de travailler directement sur le système d’extensions dans le cadre de l’exécution de vos demandes. À l’aide de ces outils, Copilot vous pouvez :\n\n* **Listez** les extensions qu’il a découvertes et consultez leur état.\n* **Examinez** une extension, y compris les dernières lignes de son fichier journal, afin d’aider à diagnostiquer une extension en échec ou qui se comporte anormalement.\n* **Générez la structure** d'une nouvelle extension : créez un fichier `extension.mjs` de démarrage sur lequel vous pourrez vous appuyer.\n* **Rechargez** les extensions afin que le code qu’elles viennent d’écrire, ou que vous venez d’écrire, soit pris en compte sans redémarrer la session.\n\nC’est ce qui vous permet de demander Copilot de créer une extension pour vous.\nCopilot peut créer le fichier, écrire le code et le recharger, tout cela sans quitter la session.\n\nChoisissez **Charger uniquement** lorsque vous souhaitez conserver un ensemble connu et approuvé d’extensions en cours d’exécution, mais que vous ne souhaitez Copilot pas créer, recharger ou modifier le code d’extension ( qui s’exécute sur votre ordinateur) en tant qu’effet secondaire de son travail. Vos extensions existantes s’exécutent toujours et Copilot peuvent toujours appeler les outils qu’ils fournissent ; il ne peut simplement pas gérer les extensions elles-mêmes.\n\n## Extensions comparées aux plug-ins\n\nLes extensions et les plug-ins ajoutent des fonctionnalités, Copilot CLImais ils servent des objectifs différents :\n\n* Une **extension** est un module JavaScript unique que vous écrivez pour ajouter des outils et des commandes de barre oblique, soutenus par du code qui s’exécute dans votre session.\n* Un **plug-in** est un package installable qui regroupe des composants réutilisables, tels que des agents, des compétences, des hooks et des intégrations, et qui peut être distribué via une place de marché.\n\nPour plus d’informations sur les plug-ins, consultez [À propos des GitHub Copilot plug-ins](/fr/copilot/concepts/agents/about-plugins).\n\n## Lectures complémentaires\n\n* [Création d’extensions pour GitHub Copilot CLI](/fr/copilot/tutorials/create-an-extension)\n* [Référence de commande CLI pour GitHub Copilot](/fr/copilot/reference/copilot-cli-reference/cli-command-reference#slash-commands-in-the-interactive-interface)\n* [GitHub Copilot CLI](/fr/copilot/how-tos/copilot-cli)"}