Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
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
- Visual Studio 2026 oder Visual Studio 2022, Version 17.14 (mit der neuesten Wartungsversion, die für die meisten up-to-date-Features empfohlen wird)
- Ein GitHub Copilot-Abonnement
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
@gefolgt vom Agentnamen in der Chateingabe ein (z. B@debugger. ).
Sie können mithilfe der @-Syntax auf benutzerdefinierte Agents zugreifen: Geben Sie @ gefolgt vom Agentnamen in der Chateingabe ein (z. B. @profiler).
Integrierte Agenten
Jeder integrierte Agent konzentriert sich auf einen bestimmten Entwicklerworkflow. Diese Agents integrieren sich auf eine Weise in die nativen Tools von Visual Studio, wie es ein generischer Assistent nicht 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 Unittests, die auf das Framework und die Muster Ihres Projekts abgestimmt sind, und nicht Vorlagen, die von Ihrem CI abgelehnt werden. |
| @modernize | (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 Profilierungsinfrastruktur von Visual Studio, um Engpässe zu identifizieren und gezielte Optimierungen vorzuschlagen, die auf Ihrer Codebasis basieren, nicht auf generischen Ratschlägen. |
Verwenden Sie den @debugger Agent
Der @debugger 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 @profiler Agent
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 @test Agent
Der @test 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 @modernize Agent
Der agent @modernize hilft bei Frameworkmigrationen und Abhängigkeitsupgrades für .NET- und C++-Projekte.
Für .NET-Modernisierungsworkflows unterstützt der Agent einen dreistufigen Prozess:
- Bewertung: Überprüft Paketversionen, Zielframeworkoptionen, Projektbestand und API-Kompatibilitätsrisiken.
- Plan: Generiert einen Migrationsplan, der den aktuellen Bewertungs- und Aktualisierungsprioritäten entspricht.
- Aufgabenausführung: Führt Modernisierungsaufgaben mit einer dynamischen Aufgabendatei aus, die Sie im Laufe der Arbeit bearbeiten können.
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@modernize Assess this solution, generate a migration plan, and create execution tasks
End-to-End-Anleitungen zur GitHub Copilot-App-Modernisierung für .NET finden Sie in der Übersicht über die GitHub Copilot-App-Modernisierung.
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 Agents mit derselben Grundlage erstellen: 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
Definieren Sie benutzerdefinierte Agents als .agent.md Dateien im Ordner Ihres Repositorys .github/agents/ :
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 Sie diese Eigenschaft nicht angeben, stammt der Agentname aus dem Dateinamen (z. B code-reviewer.agent.md . wird code-reviewer). |
description |
Yes | Kurze Beschreibung beim Überfahren des Agents mit dem Mauszeiger |
model |
Nein | Zu verwendende KI-Modell. Wenn Sie diese Eigenschaft nicht angeben, wird das in der Modellauswahl ausgewählte Modell verwendet. |
tools |
Nein | Array von Toolnamen, die der Agent verwenden kann. Wenn Sie diese Eigenschaft nicht angeben, 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 tools 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 im Chatfenster das Symbol "Extras " aus, um die verfügbaren Toolnamen anzuzeigen.
Herstellen einer Verbindung mit externen Quellen mit MCP
Mithilfe von MCP-Servern können Ihre benutzerdefinierten Agents auf externe Wissensquellen zugreifen, z. B.:
- Interne Dokumentation und Wikis
- Entwerfen von Systemen und Komponentenbibliotheken
- APIs und Datenbanken
- Styleguides und ADR-Repositorien
Beispielsweise kann ein Code-Review-Agent PRs anhand Ihrer tatsächlichen Konventionen überprüfen, indem er über MCP eine Verbindung zu Ihrem Styleguide 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.
.NET-Entwicklungs-Agents
Das .NET-Team verwaltet zusammengestellte benutzerdefinierte Agenten für die C#- und Windows Forms-Entwicklung im awesome-copilot-Repository. Um loszulegen:
- Laden Sie CSharpExpert.agent.md und WinFormsExpert.agent.md herunter.
- Fügen Sie die Dateien zum Ordner Ihres Repositorys
.github/agents/hinzu. - Öffnen Sie den Copilot-Chat im Agentmodus, und wählen Sie den Agent aus der Agentauswahl aus.
Tipp
Wählen Sie "Tools>options>GitHub>Copilot" aus, und aktivieren Sie dann projektspezifische .NET-Anweisungen wie die Windows Forms-Entwicklung, wenn zutreffend , um den entsprechenden benutzerdefinierten Agent für Ihre Codebasis automatisch hinzuzufügen.
C#-Experte
Der C#-Experten-Agent wendet moderne C#-Konventionen auf die Codegenerierung von Copilot an:
- Syntax und Leistung: Folgen Sie den aktuellen bewährten Methoden, während sie den vorhandenen Konventionen Ihres Repositorys entsprechen.
- Minimale Änderungen: Generiert nur den benötigten Code, wobei async/await mit der richtigen Abbruch- und Ausnahmebehandlung verwendet wird. Vermeidet nicht verwendete Schnittstellen, Methoden oder Parameter.
- Tests: Unterstützt verhaltensgesteuerte Komponententests, Integrationstests und TDD-Workflows.
WinForms-Experte
Der WinForms Expert-Agent zielt auf die Entwicklung von Windows Forms auf .NET 8 bis .NET 10 ab:
-
Designercodeschutz: Verhindert
.Designer.csBeschädigungen, sodass der Windows-Forms-Designer nach Copilot-Bearbeitungen weiterhin funktioniert. - Ui-Entwurfsmuster: MVVM- und MVP-Muster, einschließlich Community-Toolkit-Datenbindung.
-
Moderne .NET: Korrigieren Sie
InvokeAsyncÜberladungen, dunklen Modus, Sensibilisierung für hohen DPI-Wert und nullfähige Referenztypen. -
Layout:
TableLayoutPanelundFlowLayoutPanelfür reaktionsfähige, DPI-fähige Layouts. -
CodeDOM Serialisierung:
[DefaultValue]Attribute undShouldSerialize*()Methoden für die ordnungsgemäße Verarbeitung von Designereigenschaften. - Ausnahmebehandlung: Asynchrone Ereignishandlermuster und Ausnahmebehandlung auf Anwendungsebene.
Communitykonfigurationen
Das awesome-copilot-Repository enthält agentenkonfigurationen, die von der Community beigesteuert wurden, und 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 Developer Community. Ihre Workflows helfen bei der Gestaltung zukünftiger Features.