Freigeben über


Verwenden von integrierten und benutzerdefinierten Agents mit GitHub Copilot

Visual Studio enthält eine Reihe von kuratierten integrierten Agents, die sich tief in IDE-Funktionen wie Debuggen, Profilerstellung und Tests integrieren. Sie können auch benutzerdefinierte Agents erstellen, die auf die Funktionsweise Ihres Teams zugeschnitten sind.

Voraussetzungen

Zugreifen auf benutzerdefinierte Agents

Sie können auf zwei Arten auf benutzerdefinierte Agents zugreifen:

  • Agent-Auswahl: Wählen Sie im Fenster Copilot Chat die Dropdownliste für die Agentauswahl aus, um die verfügbaren Agents anzuzeigen. Derzeit ist diese Option nur im Visual Studio 2026 Insiders-Build verfügbar.
  • @ Syntax: Geben Sie den Agentnamen in der Chateingabe ein, gefolgt von einem Leerzeichen (z. B. ).

Sie können mithilfe der @-Syntax auf benutzerdefinierte Agents zugreifen: Tippen Sie den Agentnamen in der Chateingabe ein (z. B. ).

Screenshot der Agentenauswahl mit benutzerdefinierten Agenten in Visual Studio.

Screenshot der Agentauswahl mit benutzerdefinierten Agenten.

Integrierte Agenten

Jeder integrierte Agent ist für einen bestimmten Entwicklerworkflow konzipiert und nativ in die Tools von Visual Studio integriert, auf eine Weise, die ein generischer Assistent nicht erreichen kann.

Vertreter Beschreibung
@debugger Geht über das Lesen von Fehlermeldungen hinaus. Verwendet Ihre Aufrufstapel, den Variablenzustand und Diagnosetools, um systematisch die Fehlerdiagnose in Ihrer Lösung durchzuführen.
@profiler Verbindet sich mit der Profilierungsinfrastruktur von Visual Studio, um Engpässe zu identifizieren und gezielte Optimierungen vorzuschlagen, die auf Ihrer Codebasis basieren, nicht auf generischen Ratschlägen.
@test Generiert Unit-Tests, die auf das Framework und die Muster Ihres Projekts abgestimmt sind, und nicht Standardvorlagen, die Ihr CI-System ablehnen wird.
@modernisieren (nur .NET und C++) Verwaltet Framework- und Abhängigkeitsupgrades mit dem Bewusstsein für Ihren tatsächlichen Projektgraphen. Kennzeichnet Breaking Changes, generiert Migrationscode und folgt Ihren bestehenden Mustern.
Vertreter Beschreibung
@profiler Verbindet sich mit der Profilerstellungsinfrastruktur von Visual Studio, um Engpässe zu identifizieren und gezielte Optimierungen vorzuschlagen, die auf Ihrer Codebasis basieren, anstatt allgemeiner Ratschläge.

Verwenden Sie den Agent

Der Agent hilft Ihnen, Fehler systematisch zu diagnostizieren, indem Sie den Debugkontext analysieren.

Beispielaufforderungen:

  • @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?

Verwenden Sie den Agenten

Der @profiler Agent stellt eine Verbindung mit den Profilerstellungstools von Visual Studio bereit, um Leistungsprobleme zu identifizieren und zu beheben.

Beispielaufforderungen:

  • @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

Verwenden Sie den Agenten

Der Agent generiert Komponententests, die dem Testframework und den Konventionen Ihres Projekts entsprechen.

Beispielaufforderungen:

  • @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

Ausführlichere .NET-Testunterstützung finden Sie unter GitHub Copilot-Tests für .NET.

Verwenden Sie den Agent

Der agent @modernize hilft bei Frameworkmigrationen und Abhängigkeitsupgrades für .NET- und C++-Projekte.

Beispielaufforderungen:

  • @modernize Upgrade this project to .NET 8
  • @modernize What breaking changes should I expect when migrating?
  • @modernize Update deprecated API calls in this file

Benutzerdefinierte Agents

Hinweis

Benutzerdefinierte Agents erfordern Visual Studio 2026, Version 18.4 oder höher.

Die integrierten Agents decken allgemeine Workflows ab, aber Ihr Team kennt Ihren Workflow am besten. Mit benutzerdefinierten Agents können Sie Ihre eigenen erstellen, indem Sie dieselbe Grundlage nutzen: Arbeitsbereichsbewusstsein, Codeverständnis, Ihr bevorzugtes KI-Modell und Ihre eigenen Tools.

Benutzerdefinierte Agents werden besonders leistungsfähig, wenn sie mit MCP (Model Context Protocol) kombiniert werden. Sie können Agents mit externen Wissensquellen wie internen Dokumentationen, Entwurfssystemen, APIs und Datenbanken verbinden, sodass der Agent nicht auf die Elemente in Ihrem Repository beschränkt ist.

Einen benutzerdefinierten Agent erstellen

Benutzerdefinierte Agents werden als Dateien im Ordner Ihres Repositorys definiert:

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

Agent-Dateiformat

Jede Agentdatei verwendet eine einfache Vorlage mit YAML-Frontmatter gefolgt von Markdown-Anweisungen:

---
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.

Frontmatter-Eigenschaften

Eigentum Erforderlich Beschreibung
name Nein Anzeigename für den Agent in der Agentauswahl. Wenn nicht angegeben, wird der Agentname vom Dateinamen abgeleitet (z. B . wird ).
description Yes Kurze Beschreibung beim Überfahren des Agents mit dem Mauszeiger
model Nein Zu verwendende KI-Modell. Wenn nicht angegeben, wird das in der Modellauswahl ausgewählte Modell verwendet.
tools Nein Array von Toolnamen, die der Agent verwenden kann. Wenn nicht angegeben, sind alle verfügbaren Tools aktiviert.

Angeben von Tools

Tools erweitern, was Ihr benutzerdefinierter Agent tun kann. Sie können angeben, welche Tools der Agent im Array verwenden soll.

Von Bedeutung

Die Toolnamen variieren auf GitHub Copilot Plattformen. Überprüfen Sie die in Visual Studio verfügbaren Tools speziell, um sicherzustellen, dass Ihr Agent wie erwartet funktioniert. Wählen Sie das Werkzeuge-Symbol im Chatfenster aus, um die verfügbaren Toolnamen anzuzeigen.

Herstellen einer Verbindung mit externen Quellen mit MCP

Mit MCP-Servern können Ihre benutzerdefinierten Agents auf externe Wissensquellen zugreifen:

  • Interne Dokumentation und Wikis
  • Entwerfen von Systemen und Komponentenbibliotheken
  • APIs und Datenbanken
  • Styleguides und ADR-Repositorien

Beispielsweise kann ein Codeüberprüfungs-Agent PRs anhand Ihrer tatsächlichen Konventionen überprüfen, indem er über MCP eine Verbindung zu Ihrem Style Guide herstellt.

Beispiele für benutzerdefinierte Agenten

Codeüberprüfungs-Agent

---
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.

Planungs-Agent

---
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.

Entwerfen des System-Agents

---
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.

Full-Stack-Entwicklungs-Agent mit Visual Studio-Tools

Im folgenden Beispiel werden Visual Studio spezifischen Toolnamen verwendet:

---
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.

Tipp

Wählen Sie im Copilot Chatfenster das Symbol Tools aus, um alle verfügbaren Toolnamen in Ihrer Version von Visual Studio anzuzeigen.

Communitykonfigurationen

Das großartige Copilot-Repository verfügt über von der Community beigetragene Agent-Konfigurationen, die Sie als Ausgangspunkte verwenden können. Wenn Sie Konfigurationen aus diesem Repository verwenden, überprüfen Sie, ob die Toolnamen in Visual Studio funktionieren, bevor Sie sie in Ihrem Team bereitstellen.

Einschränkungen und Hinweise

  • Wenn Sie kein Modell angeben, verwendet der Agent das in der Modellauswahl ausgewählte Modell.
  • Die Toolnamen variieren auf GitHub Copilot Plattformen. Überprüfen Sie, ob die Toolnamen in Visual Studio funktionieren, bevor Sie sie für Ihr Team bereitstellen.

Feedback teilen

Teilen Sie Ihre benutzerdefinierten Agent-Konfigurationen im repository awesome-copilot oder senden Sie Feedback über Visual Studio Entwicklercommunity. Ihre Workflows helfen bei der Gestaltung zukünftiger Features.