Utiliser des agents intégrés et personnalisés avec GitHub Copilot

Visual Studio inclut un ensemble d’agents intégrés organisés qui s’intègrent profondément aux fonctionnalités d’IDE telles que le débogage, le profilage et les tests. Vous pouvez également créer des agents personnalisés adaptés au fonctionnement de votre équipe.

Prerequisites

Accéder aux agents personnalisés

Vous pouvez accéder aux agents personnalisés de deux façons :

  • SélecteurAgent : dans la fenêtre Copilot Chat, sélectionnez la liste déroulante du sélecteur d’agent pour afficher les agents disponibles. Actuellement, cette option est disponible uniquement dans la version Insiders de Visual Studio 2026.
  • @ syntaxe : Saisissez @ suivi du nom de l’agent dans la zone de saisie (par exemple, @debugger).

Vous pouvez accéder aux agents personnalisés à l’aide de la syntaxe @ : tapez @ le nom de l’agent dans la zone de saisie du chat (par exemple, @profiler).

Screenshot affichant le sélecteur d’agents avec des agents personnalisés dans Visual Studio.

Capture d’écran montrant le sélecteur d’agents avec des agents personnalisés.

Agents intégrés

Chaque agent intégré se concentre sur un flux de travail de développeur spécifique. Ces agents s'intègrent aux outils natifs de Visual Studio de manière à ce qu'un assistant générique ne puisse pas.

Agent Description
@debugger Va au-delà de la lecture des messages d’erreur. Utilisez vos piles d’appels, l’état des variables et les outils de diagnostic pour repérer les erreurs de manière systématique dans votre solution.
@profiler Se connecte à l'infrastructure de profilage de Visual Studio pour identifier les goulots d'étranglement et suggérer des optimisations ciblées basées sur votre base de code, et non des conseils génériques.
@test Génère des tests unitaires adaptés au cadre et aux modèles de votre projet, et non des gabarits rejetés par votre CI.
@modernize (.NET et C++ uniquement) Gère les mises à niveau de l’infrastructure et des dépendances avec connaissance de votre graphe de projet réel. Signale les modifications incompatibles, génère du code de migration et suit vos modèles existants.
Agent Description
@profiler Se connecte à l'infrastructure de profilage de Visual Studio pour identifier les goulots d'étranglement et suggérer des optimisations ciblées basées sur votre base de code, et non des conseils génériques.

Utiliser l’agent @debugger

L’agent @debugger vous aide à diagnostiquer systématiquement les erreurs en analysant votre contexte de débogage. Il prend également en charge un flux de travail agentique de bout en bout qui reproduit les bogues, instrumente votre application avec des points de trace et des points d’arrêt conditionnels, et valide les correctifs à l’aide de données runtime en direct. Pour plus d’informations, consultez La résolution des bogues agentiques avec l’Agent Débogueur.

Exemples de commandes :

  • @debugger Why is this exception being thrown?
  • @debugger Analyze the current call stack and explain what went wrong
  • @debugger What's causing the null reference in this method?

Utiliser l’agent @profiler

L'agent @profiler se connecte aux outils de profilage de Visual Studio pour identifier et résoudre les problèmes de performances.

Exemples de commandes :

  • @profiler Find the performance bottlenecks in my application
  • @profiler Why is this method taking so long to execute?
  • @profiler Suggest optimizations for the hot path

Utiliser l’agent @test

L’agent @test génère des tests unitaires qui correspondent à l’infrastructure et aux conventions de test de votre projet.

Exemples de commandes :

  • @test Generate unit tests for the selected method
  • @test Create tests that cover edge cases for this class
  • @test Write integration tests for this API endpoint

Pour obtenir une prise en charge des tests de .NET plus complète, consultez GitHub Copilot test pour .NET.

Utiliser l’agent @modernize

L’agent @modernize permet d’effectuer des migrations d’infrastructure et des mises à niveau des dépendances pour les projets .NET et C++.

Pour les flux de travail de modernisation .NET, l’agent supporte un processus en trois étapes :

  • Évaluation : passe en revue les versions des packages, les options de framework cible, l’inventaire des projets et les risques de compatibilité des API.
  • Plan : génère un plan de migration qui s’aligne sur les priorités actuelles d’évaluation et de mise à jour.
  • Exécution des tâches : fonctionne par le biais de tâches de modernisation avec un fichier de tâches dynamique que vous pouvez modifier à mesure que le travail progresse.

Exemples de commandes :

  • @modernize Upgrade this project to .NET 8
  • @modernize What breaking changes should I expect when migrating?
  • @modernize Update deprecated API calls in this file
  • @modernize Assess this solution, generate a migration plan, and create execution tasks

Pour obtenir des conseils de bout en bout sur la modernisation application Copilot GitHub pour .NET, consultez Vue d’ensemble de la modernisation application Copilot GitHub.

Agents personnalisés

Note

Les agents personnalisés nécessitent Visual Studio 2026 version 18.4 ou ultérieure.

Les agents intégrés couvrent les flux de travail courants, mais votre équipe connaît le mieux votre flux de travail. Les agents personnalisés vous permettent de créer vos propres agents à l’aide de la même base : sensibilisation de l’espace de travail, compréhension du code, modèle IA préféré et vos propres outils.

Les agents personnalisés deviennent particulièrement puissants lorsqu’ils sont combinés avec MCP (Modèle Context Protocol). Vous pouvez connecter des agents à des sources de connaissances externes telles que la documentation interne, les systèmes de conception, les API et les bases de données. L’agent n’est donc pas limité à ce qui se trouve dans votre référentiel.

Vous pouvez également définir des compétences d’agent réutilisables que n’importe quel agent peut découvrir et utiliser automatiquement. Tandis que les agents définissent un persona et un ensemble d'outils, les compétences fournissent des instructions spécifiques à la tâche.

Créer un agent personnalisé

Définissez des agents personnalisés en tant que fichiers .agent.md dans le dossier .github/agents/ de votre référentiel :

your-repo/
└── .github/
    └── agents/
        └── code-reviewer.agent.md

Vous pouvez également définir des agents de niveau utilisateur qui s’appliquent à tous vos projets. Les agents au niveau de l’utilisateur sont stockés %USERPROFILE%\.github\agents par défaut. Vous pouvez modifier cet emplacement dansOptions>d’outils>GitHub>Copilot.

Format de fichier agent

Chaque fichier d’agent utilise un modèle simple avec le frontmatter YAML suivi des instructions Markdown :

---
name: Code Reviewer
description: Reviews PRs against our team's coding standards
model: claude-opus-4-6
tools: ["code_search", "readfile", "find_references"]
---

You are a code reviewer for our team. When reviewing changes, check for:

- Naming conventions: PascalCase for public methods, camelCase for private
- Error handling: all async calls must have try/catch with structured logging
- Test coverage: every public method needs at least one unit test

Flag violations clearly and suggest fixes inline.

Propriétés du frontmatter

Propriété Obligatoire Description
name Non Nom de l’agent tel qu’il apparaît dans le sélecteur d’agents. Si vous ne spécifiez pas cette propriété, le nom de l’agent provient du nom de fichier (par exemple, code-reviewer.agent.md devient code-reviewer).
description Yes Brève description affichée lors du pointage sur l’agent
model Non Modèle IA à utiliser. Si vous ne spécifiez pas cette propriété, le modèle sélectionné dans le sélecteur de modèles est utilisé.
tools Non Tableau de noms d’outils que l’agent peut utiliser. Si vous ne spécifiez pas cette propriété, tous les outils disponibles sont activés.

Spécifier des outils

Les outils étendent ce que votre agent personnalisé peut faire. Vous pouvez spécifier les outils que l’agent doit utiliser dans le tools tableau.

Important

Les noms d’outils varient selon les plateformes GitHub Copilot. Vérifiez les outils disponibles dans Visual Studio spécifiquement pour vous assurer que votre agent fonctionne comme prévu. Sélectionnez l’icône Outils dans la fenêtre de conversation pour afficher les noms d’outils disponibles.

Se connecter à des sources externes avec MCP

À l’aide de serveurs MCP, vos agents personnalisés peuvent accéder à des sources de connaissances externes telles que :

  • Documentation interne et wikis
  • Concevoir des systèmes et des bibliothèques de composants
  • API et bases de données
  • Repères de style et référentiels ADR

Par exemple, un agent de révision de code peut vérifier les demandes de tirage (PR) en les comparant à vos conventions réelles en se connectant à votre guide de style via MCP.

Exemples d’agents personnalisés

Agent de révision de code

---
name: Code Reviewer
description: Reviews code against our team's coding standards
tools: ["code_search", "readfile"]
---

You are a code reviewer for our team. Review changes for:

1. **Naming conventions**: PascalCase for public methods, camelCase for private fields
2. **Error handling**: All async calls must have try/catch with structured logging
3. **Test coverage**: Every public method needs at least one unit test
4. **Documentation**: Public APIs must have XML documentation comments

Flag violations clearly and suggest fixes inline.

Agent de planification

---
name: Feature Planner
description: Helps plan features before writing code
tools: ["code_search", "readfile", "find_references"]
---

You are a planning assistant. When asked about a feature:

1. Gather requirements by asking clarifying questions
2. Identify affected files and components in the codebase
3. Break down the work into discrete tasks
4. Flag potential risks or dependencies
5. Create a structured plan that can be handed off for implementation

Focus on understanding scope before suggesting solutions.

Conception de l’agent système

---
name: Design System
description: Enforces UI design patterns and component usage
tools: ["code_search", "readfile"]
---

You are a design system expert. When reviewing UI code:

1. Check that standard components are used instead of custom implementations
2. Verify spacing and layout follow the design token system
3. Ensure accessibility requirements are met (ARIA labels, keyboard navigation)
4. Flag any UI drift from established patterns

Reference the component library documentation when suggesting fixes.

Agent de développement full-stack avec outils Visual Studio

L’exemple suivant utilise des noms d’outils spécifiques à Visual Studio :

---
name: Full Stack Dev
description: Full-stack development assistant with search, file editing, and terminal access
tools: ["code_search", "readfile", "editfiles", "find_references", "runcommandinterminal", "getwebpages"]
---

You are a full-stack development assistant. Help with:

1. Searching the codebase to understand existing patterns
2. Reading and editing files to implement changes
3. Running build and test commands to verify your work
4. Looking up documentation when needed

Always check existing code conventions before making changes.

Conseil / Astuce

Sélectionnez l’icône Tools dans la fenêtre Copilot Chat pour afficher tous les noms d’outils disponibles dans votre version de Visual Studio.

agents de développement .NET

L’équipe .NET gère des agents personnalisés soigneusement sélectionnés pour le développement C# et Windows Forms dans le référentiel awesome-copilot. Pour démarrer :

  1. Téléchargez CSharpExpert.agent.md et WinFormsExpert.agent.md.
  2. Ajoutez les fichiers au dossier .github/agents/ de votre référentiel.
  3. Ouvrez Copilot Chat en mode agent et sélectionnez l’agent dans le sélecteur d’agents.

Conseil / Astuce

Sélectionnez Tools>Options>GitHub>Copilot, puis activez Enable projet spécifique .NET instructions telles que le développement Windows Forms le cas échéant pour ajouter automatiquement l’agent personnalisé approprié pour votre base de code.

C# Expert

L'agent Expert C# applique des conventions C# modernes à la génération de code de Copilot :

  • Syntaxe et performances : suit les meilleures pratiques actuelles tout en correspondant aux conventions existantes de votre référentiel.
  • Modifications minimales : génère uniquement le code nécessaire, à l’aide d’async/await avec une annulation et une gestion des exceptions appropriées. Évite les interfaces, méthodes ou paramètres inutilisés.
  • Test : prend en charge les tests unitaires pilotés par le comportement, les tests d’intégration et les flux de travail TDD.

WinForms Expert

L’agent WinForms Expert cible le développement Windows Forms sur .NET 8 à .NET 10 :

  • Protection du code du Designer : empêche les .Designer.cs corruptions afin que le concepteur Windows Forms continue de fonctionner après les modifications de Copilot.
  • Modèles de conception d’interface utilisateur : modèles MVVM et MVP, y compris la liaison de données Community Toolkit.
  • Modern .NET : Surcharges InvokeAsync appropriées, mode sombre, reconnaissance haute résolution et types de référence pouvant accepter la valeur Null.
  • Mise en page : TableLayoutPanel et FlowLayoutPanel pour des mises en page réactives et compatibles DPI.
  • Sérialisation CodeDOM : [DefaultValue] attributs et ShouldSerialize*() méthodes pour la gestion appropriée des propriétés du concepteur.
  • Gestion des exceptions : modèles de gestionnaire d’événements Async et gestion des exceptions au niveau de l’application.

Configurations de la communauté

Le dépôt awesome-copilot dispose de configurations d'agent contribué par la communauté que vous pouvez utiliser comme points de départ. Lorsque vous utilisez des configurations à partir de ce référentiel, vérifiez que les noms d’outils fonctionnent dans Visual Studio avant de les déployer dans votre équipe.

Limitations et notes

  • Si vous ne spécifiez pas de modèle, l’agent utilise le modèle sélectionné dans le sélecteur de modèles.
  • Les noms d’outils varient selon les plateformes GitHub Copilot. Vérifiez que les noms d’outils fonctionnent dans Visual Studio avant le déploiement dans votre équipe.

Partager des commentaires

Partagez vos configurations d’agent personnalisées dans le référentiel awesome-copilote ou faites part de commentaires via Visual Studio Developer Community. Vos flux de travail permettent de mettre en forme les fonctionnalités futures.