# Comparaison des fonctionnalités de personnalisation Copilot

Choisissez le bon moyen de fournir Copilot des conseils, une expertise spécialisée et un accès aux outils.

## Introduction

Vous pouvez personnaliser Copilot pour suivre vos conventions, effectuer des workflows reproductibles ou vous connecter à des systèmes au-delà de votre codebase.

Cet article explique la différence entre :

* **Instructions personnalisées**

  Ils expliquent Copilot**comment se comporter** en général. Par exemple, pour vous assurer que le code qu’il écrit suit vos normes de codage.
  [En savoir plus](#custom-instructions).

* **Compétences de l’agent**

  Ils expliquent Copilot**comment gérer un type de tâche spécifique**. Par exemple, pour suivre le processus de votre équipe lors de la rédaction de notes de publication.
  [En savoir plus](#agent-skills).

* **Outils**

**Ceux-ci fournissent des capacités**. Par exemple, pour rechercher et modifier des fichiers, ou pour interagir avec des parties de GitHub.
[En savoir plus](#tools).

* **Serveurs MCP**

  Ils **ajoutent des collections d’outils** qui permettent Copilot d’interagir avec des services externes.
  [En savoir plus](#mcp-servers).

* **Hooks**

  Celles-ci vous permettent **d’exécuter votre propre logique à des points spécifiques dans le flux de travail d’un agent**. Par exemple, vous pouvez exécuter un script avant que l’agent n’utilise un outil.
  [En savoir plus](#hooks).

* **Sous-agents**

  Ces **effectuent un travail délégué** indépendamment de l’agent principal. Ils ont leur propre contexte de conversation, de sorte que leur travail intermédiaire ne remplit pas la fenêtre de contexte de l’agent principal.
  [En savoir plus](#subagents).

* **Agents personnalisés**

**Ceux-ci définissent des rôles spécialisés**, avec des instructions et des outils pour des tâches particulières. Par exemple, un agent personnalisé peut agir comme réviseur React, un rédacteur de documentation ou un générateur de tests.
[En savoir plus](#custom-agents).

* **Extensions**

  Ces **fonctionnalités supplémentaires implémentées dans le code**. Par exemple, une Copilot CLI extension peut ajouter un outil qui suit l’activité de session.
  [En savoir plus](#extensions).

* **Plug-ins**

  Il s’agit **de packages** qui peuvent fournir des personnalisations préconfigurées telles que des compétences, des hooks, des agents personnalisés et des serveurs MCP.
  [En savoir plus](#plugins).

La prise en charge et la configuration diffèrent selon les appareils. Pour une comparaison de compatibilité, consultez [Fiche de personnalisation de Copilot](/fr/copilot/reference/customization-cheat-sheet#ide-and-surface-support).

## Instructions personnalisées

Les instructions personnalisées sont prises en charge dans les GitHub Copilot app, Copilot code review, Copilot Chat, Copilot CLI, Copilot cloud agent sur GitHub.com, et les IDE pris en charge. Les types d’instructions disponibles dépendent de l’endroit où vous les utilisez.

### Qu’est-ce que les instructions personnalisées ?

Les instructions personnalisées sont des consignes persistantes utilisées par Copilot dans un périmètre défini. Par exemple, les instructions du dépôt peuvent décrire les conventions de codage et les commandes de test de votre projet, tandis que les instructions personnelles peuvent décrire vos préférences de communication.

Les instructions guident le modèle, mais ne garantissent pas qu’il suivra chaque règle.

### Quel problème les instructions personnalisées résolvent-elles ?

Les instructions personnalisées vous aident à :

* Gardez Copilot en conformité avec vos conventions et préférences de codage.
* Appliquez des normes d’équipe ou d’organisation de manière cohérente.
* Évitez d’inclure des rappels répétitifs dans chaque invite.

### Quand devez-vous utiliser des instructions personnalisées ?

Utilisez des instructions personnalisées pour :

* Règles de style et de qualité. Par exemple : « Préférer les petites pull requests, écrire des tests et éviter de modifier les API publiques sans discussion ».
* Conventions du dépôt. Par exemple : « Utiliser `pnpm`, conserver les entrées du journal des modifications dans `CHANGELOG.md`, et exécuter `pnpm test` avant la validation ».
* Préférences de communication. Par exemple : « Expliquer brièvement les compromis, puis fournir le choix recommandé ».

### Quand ne devez-vous pas utiliser des instructions personnalisées ?

Gardez-les au minimum quand :

* Vous ne souhaitez ce comportement que pour un seul type de tâche. Utilisez plutôt une compétence.
* Les instructions sont si détaillées qu’elles distraient de la tâche immédiate. Utilisez un skill ou un agent personnalisé pour obtenir des conseils spécialisés.

### En savoir plus sur les instructions personnalisées

* [Instructions personnalisées pour GitHub Copilot](/fr/copilot/concepts/prompting-and-context/custom-instructions)
* [Prise en charge de différents types d’instructions personnalisées](/fr/copilot/reference/custom-instructions-support)

## Compétences de l’agent

Les compétences de l’agent sont prises en charge dans GitHub Copilot app, Copilot CLI, Copilot code review, Copilot cloud agent et en mode agent dans Visual Studio Code, Visual Studio et IDE JetBrains.

### Qu’est-ce qu’une compétence ?

Une compétence est un dossier contenant un fichier `SKILL.md` avec des instructions pour un type de tâche spécifique. Son nom et sa description permettent Copilot de décider quand charger ces instructions.

Les compétences peuvent également inclure des ressources complémentaires, telles que des modèles et des scripts que l’agent peut exécuter.

### Quel problème une compétence résout-elle ?

Les compétences vous aident à :

* Normalisez la façon dont Copilot effectue des tâches dans un contexte spécifique, comme une révision de code.
* Fournissez des instructions lorsqu’elles sont pertinentes, sans les ajouter à chaque interaction.
* Évitez de remplir la fenêtre de contexte avec des instructions non liées à la tâche active.

### Quand devez-vous utiliser une compétence ?

Utilisez une compétence lorsque vous souhaitez :

* Flux de travail reproductible. Par exemple, vérifiez que la documentation côté utilisateur est mise à jour lorsque le code du front-end change.
* Format de sortie cohérent. Par exemple, rédigez des notes de publication à l’aide du modèle de votre équipe.
* Un flux de travail dont vous avez parfois besoin, mais pas toujours. Par exemple, suivez un processus de refactorisation détaillé pendant une migration.

### Quand ne devez-vous pas utiliser une compétence ?

Choisissez une autre option de personnalisation lorsque :

* Les conseils doivent s’appliquer largement à votre travail. Utilisez plutôt des instructions personnalisées.
* Vous devez avoir accès à un système externe. Utilisez un serveur MCP pour fournir les outils, qu’une compétence peut ensuite décrire et expliquer comment utiliser.
* Vous avez besoin d’un spécialiste pouvant être réaffecté avec un ensemble d’outils particulier. Considérez un agent personnalisé.

### En savoir plus sur les compétences de l’agent

Consultez « [Compétences de l’agent](/fr/copilot/concepts/customizations/agent-skills) ».

## Tools

Les outils sont disponibles pour les agents dans le GitHub Copilot app, le Copilot CLI, le Copilot cloud agent et les IDE pris en charge. Les outils disponibles et les contrôles d’autorisation dépendent de la surface.

### Qu’est-ce qu’un outil ?

Un outil est une capacité que Copilot utilise pour effectuer une opération, telle que la recherche de fichiers, l’affichage du contenu du fichier, la modification ou l’exécution de commandes. Certains outils sont intégrés, et d’autres peuvent être ajoutés via des serveurs MCP ou des extensions.

### Quel problème les outils résolvent-ils ?

Les outils permettent à un agent :

* Rassemblez le contexte en lisant et en recherchant.
* Modifiez des fichiers.
* Exécutez des commandes et validez les résultats.

### Quand les outils sont-ils utilisés ?

En règle générale, vous n’appelez pas directement les outils.
Copilot choisit des outils pour effectuer votre demande, sous réserve des autorisations et des contrôles de l’interface que vous utilisez.

Vous verrez les outils utilisés lorsque vous :

* Demandez à un agent de rechercher un référentiel, de mettre à jour un fichier ou d’exécuter des tests.
* Demandez une tâche nécessitant l’accès à un service externe via un serveur MCP.
* Donnez à un agent une tâche qui bénéficie de la délégation à un sous-agent.

Avant d’ajouter une intégration, vérifiez si les outils existants de l’agent répondent déjà à vos besoins.

## Serveurs MCP

Les serveurs MCP sont pris en charge dans GitHub Copilot app, Visual Studio Code, IDE JetBrains, Copilot CLI, Copilot cloud agent, Copilot code review, Visual Studio, Xcode et Eclipse. Les options de configuration et d’authentification dépendent de l’interface.

### Qu’est-ce qu’un serveur MCP ?

Un serveur MCP est un service qui permet aux applications IA, telles que Copilot, de se connecter à des sources et outils de données externes.

Par exemple, vous pouvez ajouter un serveur MCP qui fournit des outils pour interagir avec un calendrier en ligne ou un système de ticket de support.

### Quel problème les serveurs MCP résolvent-ils ?

Les serveurs MCP aident lorsque les outils intégrés ne sont pas suffisants. Ils peuvent effectuer les tâches suivantes :

* Connectez Copilot à des systèmes externes.
* Ajoutez des outils conçus pour fonctionner avec des API, des bases de données ou d’autres services.
* Fournissez l’accès à l’information en dehors de votre dépôt.

### Quand devez-vous utiliser un serveur MCP ?

Utilisez un serveur MCP lorsque vous avez besoin des éléments suivants :

* Informations provenant d’un système externe. Par exemple : « Combien de tickets de support ont été ouverts ce mois-ci pour Product X ? »
* Actions dans un autre service. Par exemple : « Ajouter un commentaire au ticket de support récapitulant ce correctif ».

### Quand ne devez-vous pas utiliser un serveur MCP ?

Évitez d’ajouter un serveur MCP lorsque les outils intégrés couvrent déjà vos besoins.

### En savoir plus sur les serveurs MCP

Consultez « [Protocole MCP (Model Context Protocol)](/fr/copilot/concepts/customizations/mcp) ».

## Hooks

Les hooks sont pris en charge dans le GitHub Copilot app, Copilot CLI, Copilot cloud agentet Visual Studio Code. Les événements et contrôles pris en charge dépendent de la surface.

### Qu’est-ce qu’un crochet ?

Un hook exécute une commande shell que vous définissez à un point particulier dans le flux de travail d’un agent. Par exemple, un hook peut s’exécuter avant qu’un outil soit utilisé ou lorsqu’une session se termine.

Contrairement aux compétences et aux instructions personnalisées, qui guident le modèle à travers des invites, les hooks exécutent du code à des événements définis.

### Quel problème les crochets résolvent-ils ?

Les hooks vous aident quand vous avez besoin d’un contrôle supplémentaire sur les actions de l’agent, telles que :

* Vérification d’une demande d’outil avant de l’autoriser à s’exécuter.
* Utilisation de l’outil de journalisation ou de l’activité de session.
* Exécution d’une validation personnalisée lors d’un événement pris en charge.

### Quand devez-vous utiliser des hooks ?

Utilisez des hooks lorsque vous le souhaitez :

* Contrôles de l’outil. Par exemple, vérifiez une commande proposée par rapport à une liste d’autorisation avant son exécution.
* Automatisation des sessions. Par exemple, enregistrez quand une session d’agent démarre ou se termine.
* Validation personnalisée. Par exemple, vérifiez si une demande d’outil modifierait un chemin protégé.

Utilisez l’événement et la référence de configuration pour votre surface plutôt que de supposer qu’un hook fonctionne sans modification partout.

### Quand ne devrais-tu pas utiliser des crochets ?

Choisissez une autre personnalisation lorsque :

* Vous avez simplement besoin d’instructions de flux de travail. Utilisez une compétence.
* Vous souhaitez des préférences et des normes persistantes. Utilisez des instructions personnalisées.
* Vous avez besoin d’accéder à des outils externes. Utilisez un serveur MCP.

### En savoir plus sur les hooks

* [Crochets pour GitHub Copilot](/fr/copilot/concepts/customizations/hooks)
* [Références sur les hooks GitHub Copilot](/fr/copilot/reference/hooks-reference)

## Sous-agents

Les sous-agents sont pris en charge dans GitHub Copilot app, Copilot CLI, Visual Studio Code, IDE JetBrains, Xcode et Eclipse.

### Qu’est-ce qu’un sous-agent ?

Un sous-agent est un agent auquel l’agent principal délègue un travail spécifique. Il fonctionne dans son propre contexte de conversation et signale ses résultats à l’agent principal.

Un sous-agent peut utiliser un agent intégré ou un profil d’agent personnalisé. Vous n’avez pas besoin de définir un agent personnalisé pour chaque tâche déléguée.

### Quel problème les sous-éléments résolvent-ils ?

Les sous-agents aident un agent :

* Gardez la conversation principale axée en traitant une sous-tâche dans un contexte distinct.
* Exécutez des tâches indépendantes en parallèle lorsque cela est pris en charge.
* Déléguer un travail spécialisé à l’aide d’un profil d’agent personnalisé.

### Quand les sous-agents sont-ils utilisés ?

Les sous-agents sont utiles pour :

* Exploration de la base de code. Par exemple, recherchez tous les points de terminaison dans une API.
* Exécution de commande. Par exemple, exécutez une suite de tests et récapitulez les échecs.
* Vérification des modifications. Par exemple, passez en revue les modifications indexées pendant que l’agent principal travaille sur une autre partie de la tâche.
* Travail spécialisé. Par exemple, déléguer une révision à un agent de documentation personnalisé.

La sélection d’un agent personnalisé pour votre session principale diffère de la délégation de travail à cet agent en tant que sous-agent.

### En savoir plus sur les sous-agents

* [Déléguer et paralléliser le travail avec des agents](/fr/copilot/concepts/agent-capabilities/choosing-and-delegating-agent-work/delegating-and-parallelizing-work-with-agents)
* [Utilisation subagents dans votre IDE](/fr/copilot/how-tos/copilot-in-your-ide/use-copilot-agents/use-subagents)

## Agents personnalisés

Les agents personnalisés sont pris en charge dans GitHub Copilot app, Visual Studio Code, Visual Studio, Copilot CLI, Copilot cloud agent, IDE JetBrains, Eclipse et Xcode. Les propriétés de profil prises en charge dépendent de la surface.

### Qu’est-ce qu’un agent personnalisé ?

Un agent personnalisé définit un rôle spécialisé, avec des instructions et des outils disponibles pour un type de travail particulier. Vous pouvez le considérer comme une persona que Copilot peut adopter, telle qu’un réviseur React ou un rédacteur de documentation.

Vous définissez un agent personnalisé dans un fichier Markdown avec un frontmatter YAML. Son profil décrit son rôle, lui donne des instructions et peut restreindre ses outils disponibles. Dans les environnements pris en charge, il peut également configurer des serveurs MCP.

### Quel problème les agents personnalisés résolvent-ils ?

Les agents personnalisés vous aident quand vous avez besoin des éléments suivants :

* Des directives spécialisées sont appliquées de manière cohérente à des tâches particulières.
* Un ensemble différent d’outils pour différents types de travail.
* Un rôle réutilisable que vous pouvez sélectionner pour une session ou l’utiliser pour le travail délégué.

Le contexte distinct est un avantage de l’exécution d’un agent en tant que sous-agent, et non une exigence pour utiliser un agent personnalisé.

### Quand devez-vous utiliser un agent personnalisé ?

Utilisez un agent personnalisé lorsque vous souhaitez :

* Réviseur ou assistant spécialisé. Par exemple, un outil de revue React qui vérifie les modèles de composants de votre équipe.
* Ensemble d’outils restreint. Par exemple, un réviseur avec des outils permettant de lire et de rechercher des fichiers, mais pas de les modifier.
* Une approche cohérente. Par exemple, un agent de documentation qui suit vos normes d’écriture et de révision.

### Quand ne devez-vous pas utiliser un agent personnalisé ?

Choisissez une option plus simple dans les cas suivants :

* Vous n’avez besoin que d’instructions et de ressources spécifiques aux tâches. Une compétence peut être suffisante.
* Vous n’avez pas besoin de spécialisation et l’agent par défaut effectue correctement la tâche.

### En savoir plus sur les agents personnalisés

* [Agents personnalisés](/fr/copilot/concepts/customizations/custom-agents)
* [Configuration des agents personnalisés](/fr/copilot/reference/custom-agents-configuration)

## Extensions

Les extensions sont prises en charge dans le GitHub Copilot app et le Copilot CLI. Les exemples ci-dessous décrivent les extensions pour Copilot CLI.

### Qu’est-ce qu’une extension ?

Une extension ajoute des fonctionnalités implémentées dans le code. Dans Copilot CLI, une extension est un module JavaScript qui s’exécute en même temps qu’une session interactive et peut ajouter des outils, des commandes slash et un comportement prenant en compte les sessions.

Elles sont distinctes des extensions IDE et de l’intégration abandonnée des extensions basées sur CopilotGitHub App.

### Quel problème les extensions résolvent-elles ?

Les extensions vous permettent de créer des fonctionnalités qui nécessitent plus que de simples instructions ou une simple configuration. Par exemple, une Copilot CLI extension peut conserver l’état entre les appels d’outils et la rendre disponible via un outil personnalisé.

### Quand devez-vous utiliser une extension ?

Utilisez une extension lorsque vous avez besoin des éléments suivants :

* Vos propres outils prenant en compte les sessions. Par exemple, effectuez le suivi des minutages des appels d’outils au cours d’une session Copilot CLI et exposez les totaux à l’agent.
* Commande slash basée sur du code. Par exemple, ajoutez une commande qui récapitule les informations collectées pendant une Copilot CLI session.

### Quand ne devez-vous pas utiliser une extension ?

Choisissez une autre personnalisation lorsque :

* Les instructions et les ressources sont suffisantes. Utilisez une compétence.
* Un serveur MCP existant fournit les outils externes dont vous avez besoin.
* Vous devez uniquement exécuter une commande à un événement défini. Utilisez un crochet.

### En savoir plus sur les extensions

Consultez « [Extensions pour GitHub Copilot](/fr/copilot/concepts/customizations/extensions) ».

## Plugins

Les plug-ins sont pris en charge dans GitHub Copilot app, Copilot CLI, Copilot cloud agent et Visual Studio Code. Les composants pris en charge d’un plug-in dépendent de la surface.

### Qu’est-ce qu’un plug-in ?

Un plug-in est un package installable qui fournit un ensemble de fonctionnalités. Par exemple, il peut inclure des skills, des agents personnalisés, des hooks et des configurations de serveur MCP.

Un plug-in regroupe des personnalisations, mais ne remplace pas leurs objectifs individuels.

### Quel problème les plug-ins résolvent-ils ?

Les plug-ins vous aident à :

* Ajoutez des fonctionnalités associées sans configurer chaque élément séparément.
* Distribuez un ensemble de personnalisations à votre équipe ou au public.
* Installez et mettez à jour les personnalisations sans copier manuellement des fichiers.

### Quand devez-vous utiliser un plug-in ?

Utilisez un plug-in quand :

* Vous souhaitez une offre groupée à l’échelle de l’équipe. Par exemple, partagez des compétences en réponse aux incidents, un agent de révision et une configuration de serveur MCP pour les services internes.
* Vous souhaitez installer et maintenir les fonctionnalités associées ensemble.

### Quand ne devez-vous pas utiliser un plug-in ?

Commencez par des personnalisations individuelles quand :

* Vous expérimentez localement et n’avez pas besoin de distribution.
* Vous n’avez besoin que d’un petit workflow. Une compétence unique peut être plus simple.

### En savoir plus sur les plug-ins

Consultez « [Plug-ins pour GitHub Copilot](/fr/copilot/concepts/customizations/plugins) ».

## Mise en place : choix de l’option appropriée

Commencez par la plus petite personnalisation qui résout votre problème. Ces fonctionnalités peuvent fonctionner ensemble : une compétence peut décrire un flux de travail qui utilise des outils MCP et un plug-in peut distribuer les deux.

| Requirement                                                                                                       | Commencez par               |
| ----------------------------------------------------------------------------------------------------------------- | --------------------------- |
| Je veux que Copilot suive nos conventions du dépôt.                                                               | Instructions personnalisées |
| Je souhaite un flux de travail reproductible pour un type de tâche particulier.                                   | Compétences de l’agent      |
| Je souhaite qu’un agent recherche dans mon référentiel, modifie des fichiers ou exécute des tests.                | Ses outils existants        |
| J’ai besoin d’outils fournis par un service externe.                                                              | Un serveur MCP              |
| Je souhaite des contrôles ou de l’automatisation autour de l’utilisation des outils et des événements de session. | Hooks                       |
| Je veux une sous-tâche spécifique gérée séparément de la conversation principale.                                 | Sous-agents                 |
| Je veux un profil de spécialiste réutilisable avec une approche et un ensemble d’outils particulier.              | Un agent personnalisé       |
| J’ai besoin de créer mes propres outils prenant en compte les sessions dans Copilot CLI.                          | Une extension               |
| Je souhaite installer ou partager ensemble des personnalisations associées.                                       | Un plug-in                  |

## Étapes suivantes

Pour connaître les emplacements de configuration et la prise en charge de Surface, consultez [Fiche de personnalisation de Copilot](/fr/copilot/reference/customization-cheat-sheet).