Kommentar
Åtkomst till den här sidan kräver auktorisering. Du kan prova att logga in eller ändra kataloger.
Åtkomst till den här sidan kräver auktorisering. Du kan prova att ändra kataloger.
Visual Studio innehåller inbyggda GitHub Copilot agenter för utvecklingsuppgifter som felsökning, profilering och testning. Den här artikeln beskriver hur du kommer åt och använder de agenter som är tillgängliga i din version av Visual Studio.
Förutsättningar
Få åtkomst till agenter i Copilot Chat
Om du vill öppna Copilot Chat väljer du märket GitHub Copilot i det övre högra hörnet av Visual Studio och väljer sedan Öppna chatt.
Få åtkomst till agenter på två sätt:
- Agentväljare: I fönstret Copilot Chat väljer du listrutan agentväljare för att se tillgängliga agenter.
-
@ syntax: Skriv
@följt av agentnamnet i chattindata (till exempel@debugger).
Använda inbyggda agenter
Varje inbyggd agent fokuserar på ett specifikt utvecklararbetsflöde. Dessa agenter integreras med Visual Studio interna verktyg på sätt som en allmän assistent inte kan.
| Handläggare | Beskrivning |
|---|---|
| @debugger | Går längre än att läsa felmeddelanden. Använder dina anropsstackar, variabeltillstånd och diagnostikverktyg för att gå igenom feldiagnostik systematiskt i din lösning. |
| @git | Granskar dina lokala ej checkade ändringar och visar feedback som infogade kommentarer i redigeraren och i vyn Git-ändringar. |
| @profiler | Ansluter till Visual Studio profileringsinfrastruktur för att identifiera flaskhalsar och föreslå riktade optimeringar som baseras på din kodbas, inte allmänna råd. |
| @test | Genererar enhetstester som är anpassade till ditt projekts ramverk och mönster, inte den generiska kod som avvisas av ditt CI-system. |
| @modernize | (endast .NET och C++) Hanterar ramverks- och beroendeuppgraderingar med medvetenhet om ditt faktiska projektdiagram. Identifierar förändringar som bryter mot kompatibiliteten, genererar migreringskod och följer era befintliga mönster. |
| Planagent | Skapar och förfinar implementeringsplaner innan kodändringarna börjar genom att utforska din kodbas med skrivskyddade verktyg och sedan överlämna planen till agentläge med Implement-planen. |
Använd agenten @debugger
Agenten @debugger hjälper dig att diagnostisera fel systematiskt genom att analysera felsökningskontexten. Det stöder också ett agentiskt arbetsflöde från slutpunkt till slutpunkt som återskapar buggar, instrumenterar din app med spårningspunkter och villkorsstyrda brytpunkter och validerar korrigeringar med live-körningsdata. Mer information finns i Lösning av agentfel med felsökningsagenten.
Exempel på frågor:
@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?
Använd agenten @git
Använd @git-agenten för att granska lokala ej incheckade ändringar utan att lämna Copilot Chat.
Exempel på frågor:
@git Review my changes@git Explain this review comment and suggest a fix
Det fullständiga arbetsflödet för lokal granskning finns i Granska lokala ändringar med Copilot Chat.
Granskningsval kräver Visual Studio version 18.8 eller senare. Om du bara vill granska den markerade koden väljer du koden i redigeraren, högerklickar på markeringen och väljer sedan Åtgärder i Copilot>Visa markering. Copilot lägger till kommentarer direkt i texten och kan använda eller generera förslag. Det här kommandot använder samma GitHub Copilot kodgranskningsupplevelse som Arbetsflödet för Git-ändringar. Mer information finns under Granska vald kod.
Använd agenten @profiler
agenten @profiler ansluter till Visual Studio profileringsverktyg för att identifiera och åtgärda prestandaproblem.
Exempel på frågor:
@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
Använd agenten @test
Agenten @test genererar enhetstester som matchar projektets testramverk och konventioner.
Exempel på frågor:
@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
Mer omfattande .NET teststöd finns i GitHub Copilot testning för .NET.
Använd agenten @modernize
agenten @modernize hjälper till med ramverksmigreringar och beroendeuppgraderingar för .NET- och C++-projekt.
För .NET moderniseringsarbetsflöden stöder agenten en process i tre steg:
- Utvärdering: Granskar paketversioner, målramverksalternativ, projektinventering och API-kompatibilitetsrisker.
- Plan: Genererar en migreringsplan som överensstämmer med aktuella utvärderings- och uppdateringsprioriteringar.
- Aktivitetskörning: Arbetar sig igenom moderniseringsuppgifter med en redigerbar, dynamisk aktivitetsfil allteftersom arbetet fortskrider.
Exempel på frågor:
@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
Omfattande vägledning om modernisering av appar med GitHub Copilot för .NET finns i översikten över modernisering av appar med GitHub Copilot.
Använd molnagenter
I Visual Studio version 18.1 eller senare startar du GitHub Cloud Agent-sessioner från agentväljaren i Copilot Chat. Om du vill ansluta en lagringsplats öppnar du en lokal lösning från en GitHub lagringsplats och loggar in på GitHub i Visual Studio. Kodningsagenten GitHub Copilot driver dessa fjärrsessioner. Det kan skapa lagringsplatsproblem och pull-begäranden på den lagringsplatsen.
Molnagenter fungerar endast med lagringsplatser som GitHub Copilot kodningsagenten kan komma åt. Om lagringsplatsen inte redan är tillgänglig för kodningsagenten ger du den åtkomst i GitHub. Visual Studio kan uppmana dig att bevilja lagringsplatsbehörighet första gången du startar en molnsession eller när sessionen kräver fler behörigheter. Granska de begärda behörigheterna innan du godkänner dem.
Skapa och använda anpassade agenter
Anpassade agenter kräver Visual Studio version 18.4 eller senare.
De inbyggda agenterna täcker vanliga arbetsflöden, men ditt team känner till arbetsflödet bäst. Anpassade agenter utgör en grund för agenter som är skräddarsydda för ditt teams arbetsflöde: arbetsytemedvetenhet, kodtolkning, din önskade AI-modell och dina egna verktyg.
Anpassade agenter är särskilt kraftfulla när de kombineras med MCP (Model Context Protocol). Anslut agenter till externa kunskapskällor, till exempel intern dokumentation, designsystem, API:er och databaser så att agenten inte är begränsad till vad som finns på din lagringsplats.
Definiera återanvändbara agentkunskaper som alla agenter kan identifiera och använda automatiskt. Medan agenter definierar en persona och en verktygsuppsättning ger färdigheter fokuserade, uppgiftsspecifika instruktioner.
I agentväljaren markerar markering 1 knappen + för att skapa en agent, och markering 2 markerar en anpassad agent med namnet my-agent.
Inbyggda .NET och Azure kunskaper kräver Visual Studio version 18.8 eller senare. Visual Studio tillhandahåller dessa funktioner när du installerar motsvarande arbetsbelastningar. Till skillnad från inbyggda agenter eller de agentkunskaper som du skapar visas dessa arbetsbelastningsspecifika kunskaper i den inbyggda kategorin på fliken Färdigheter och är inaktiverade som standard. Granska och aktivera endast de kunskaper som gäller för dina uppgifter. Mer information finns i Använda inbyggda .NET och Azure kunskaper.
Skapa en anpassad agent
Anpassade agenter på lagringsplatsnivå gäller endast för den lagringsplats där du lagrar dem. Så här skapar du en manuellt:
- I lagringsplatsens rot skapar du en
.github/agents/mapp om den inte redan finns. - I den mappen skapar du en fil vars namn slutar i
.agent.md, till exempelcode-reviewer.agent.md. - Lägg till YAML-klientmaterial och Markdown-instruktioner med hjälp av formatet som beskrivs i Agentfilformat.
- Spara filen.
Den resulterande mappstrukturen ser ut så här:
your-repo/
└── .github/
└── agents/
└── code-reviewer.agent.md
I Visual Studio version 18.5 eller senare väljer du + knappen i agentväljaren och följer anvisningarna för att skapa en anpassad agent.
Om du vill skapa en agent på användarnivå som gäller för alla dina projekt lagrar du dess .agent.md-fil som standard i %USERPROFILE%\.github\agents. Ändra den här platsen i Verktygsalternativ >> GitHub > Copilot.
Välj och verifiera en anpassad agent
När du har skapat en anpassad agent:
- Öppna Copilot Chat.
- Öppna agentväljaren och bekräfta att agenten visas med namnet och beskrivningen från dess definition.
- Välj agenten eller anropa den genom att ange
@följt av agentnamnet i chattinmatningen. - Ange en uppmaning som testar en av agentens instruktioner.
- Kontrollera att svaret följer agentens roll och instruktioner. Om definitionen anger verktyg öppnar du panelen Verktyg och kontrollerar att de förväntade verktygen är tillgängliga.
Använda anpassade agenter på organisationsnivå
Anpassade agenter på organisationsnivå kräver Visual Studio version 18.9 eller senare och en lagringsplats som tillhör en GitHub organisation.
GitHub organisation och företagsägare kan publicera anpassade agenter som medlemmar kan använda över lagringsplatser i en organisation. När du öppnar en lagringsplats i organisationen identifierar Visual Studio automatiskt dessa agenter och lägger till dem i agentväljaren.
Så här inspekterar du en anpassad agent på organisationsnivå innan du använder den:
- Öppna Copilot Chat och välj agentväljaren.
- För muspekaren över agenten för att visa dess beskrivning och ursprungsorganisation.
- Välj definitionsknappen för att öppna agentdefinitionsfilen.
Organisations- och företagsägare konfigurerar dessa agenter i GitHub. Information om hur du konfigurerar finns i Förbereda för att använda anpassade agenter i din organisation eller Förbered för att använda anpassade agenter i företaget.
Anpassade instruktioner på organisationsnivå kräver Visual Studio version 18.8 eller senare. De är åtskilda från anpassade agenter. Organisationsägare använder anpassade instruktioner för att definiera inställningar som Visual Studio automatiskt tillämpar när du arbetar i en organisationslagringsplats. Tillämpade instruktioner visas i Referenser. Inaktivera dem i Visual Studio inställningar. Mer information finns i Använda anpassade instruktioner på organisationsnivå.
Agentfilformat
Varje agentfil använder YAML-frontmaterial följt av Markdown-instruktioner:
---
name: Code Reviewer
description: Reviews PRs against our team's coding standards
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.
Tillgängliga modeller varierar beroende på Visual Studio version och efter vilka modeller som är tillgängliga för din Copilot plan. Egenskapen model är valfri, så utelämna den för att använda den modell som valts i modellväljaren. Om du inkluderar egenskapen väljer du en modell som är tillgänglig i din version av Visual Studio.
Egenskaper för frontmaterial
| Fastighet | Krävs | Beskrivning |
|---|---|---|
name |
Nej. | Visningsnamn för agenten i agentväljaren. Om du inte anger den här egenskapen kommer agentnamnet från filnamnet (till exempel code-reviewer.agent.md blir code-reviewer). |
description |
Yes | Kort beskrivning som visas när du för muspekaren över agenten |
model |
Nej. | AI-modell som ska användas. Om du inte anger den här egenskapen används den modell som valts i modellväljaren. |
tools |
Nej. | Matris med verktygsnamn som agenten kan använda. Om du inte anger den här egenskapen aktiveras alla tillgängliga verktyg. |
Anmärkning
För vissa anpassade agenter visas verktygsgrupper inaktiverade när du har valt agenten, även om du inte anger egenskapen tools . I vissa sessioner återställs verktygsvalen efter varje uppföljningsmeddelande i samma chatttråd. Om det här villkoret inträffar återaktiverar du nödvändiga verktyg manuellt på panelen Verktyg . För anvisningar och vägledning om rapportering, se Anpassade agentverktygsgrupper startar inaktiverade eller återställs mellan omgångar.
Ange verktyg
Verktyg utökar vad din anpassade agent kan göra. Ange vilka verktyg agenten ska använda i matrisen tools .
Viktigt!
Verktygsnamnen varierar mellan GitHub Copilot plattformar. Kontrollera vilka verktyg som är tillgängliga i Visual Studio specifikt för att se till att din agent fungerar som förväntat. Välj ikonen Verktyg i chattfönstret för att se tillgängliga verktygsnamn.
Språkspecifika verktyg för C++
Agentläget innehåller vanligtvis C++-kodredigeringsverktyg. Om du installerar C++-arbetsbelastningen kan din anpassade agent använda dessa Visual Studio specifika verktygsnamn i matrisentools:
-
get_symbol_call_hierarchyför anropshierarkinavigering -
get_symbol_class_hierarchyför navigering i klass- och typhierarki
De här verktygen ger agenter språkmedveten navigering för C++ och hjälper till att förbättra precisionen vid analys och redigering av C++-kod.
Ansluta till externa källor med MCP
Med hjälp av MCP-servrar kan dina anpassade agenter komma åt externa kunskapskällor, till exempel:
- Intern dokumentation och wikis
- Designsystem och komponentbibliotek
- API:er och databaser
- Formatguider och ADR-lagringsplatser
En kodgranskningsagent kan till exempel kontrollera PR mot dina gällande konventioner genom att ansluta till stilguiden via MCP.
Exempel på anpassade agenter
Kodgranskningsagent
---
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.
Exempel på funktionsplaneringsagent
Använd en anpassad funktionsplaneringsagent när du vill ha ett teamspecifikt planeringsarbetsflöde eller extra verktyg utöver den inbyggda planagenten.
---
name: Feature Planner
description: Helps plan features before writing code
tools: ["code_search", "readfile", "find_references"]
---
You are a feature 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.
Designsystemagent
---
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.
Fullstacksutvecklingsagent med Visual Studio verktyg
I följande exempel används Visual Studio specifika verktygsnamn:
---
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.
Tips/Råd
Välj ikonen Tools i fönstret Copilot Chat för att se alla tillgängliga verktygsnamn i din version av Visual Studio.
.NET utvecklingsagenter
.NET-teamet underhåller utvalda anpassade agenter för C# och Windows Forms utveckling i lagringsplatsen awesome-copilot. Så här kommer du igång:
- Ladda ned CSharpExpert.agent.md och WinFormsExpert.agent.md.
- Lägg till filerna i lagringsplatsens
.github/agents/mapp. - Öppna Copilot Chat i agentläge och välj agenten från agentväljaren.
Tips/Råd
Välj Tools>Options>GitHub>Copilot, och aktivera sedan Aktivera projektspecifika .NET instruktioner, till exempel Windows Forms utveckling i tillämpliga fall för att automatiskt lägga till lämplig anpassad agent för din kodbas.
C#-expert
C#-expertagenten tillämpar moderna C#-konventioner på Copilot kodgenerering:
- Syntax och prestanda: Följer nuvarande bästa praxis och matchar lagringsplatsens befintliga konventioner.
- Minimala ändringar: Genererar endast den kod som behövs med hjälp av async/await med korrekt annullering och undantagshantering. Undviker oanvända gränssnitt, metoder eller parametrar.
- Testning: Stöder beteendedriven enhetstestning, integreringstestning och TDD-arbetsflöden.
WinForms-expert
WinForms Expert-agenten har som mål Windows Forms utveckling på .NET 8 till och med .NET 10:
-
Designer-kodskydd: Förhindrar
.Designer.csskada så att Windows Forms Designer fortsätter att fungera efter Copilot redigeringar. - Designmönster för användargränssnitt: MVVM- och MVP-mönster, inklusive Databindning för Community Toolkit.
-
Modern .NET: Rätt
InvokeAsyncöverlagringar, mörkt läge, hög DPI-medvetenhet och nullbara referenstyper. -
Layout:
TableLayoutPanelochFlowLayoutPanelför dynamiska, DPI-medvetna layouter. -
CodeDOM-serialisering:
[DefaultValue]attribut ochShouldSerialize*()metoder för korrekt hantering av designeregenskaper. - Undantagshantering: Asynkrona händelsehanterarmönster och undantagshantering på programnivå.
Gemenskapskonfigurationer
awesome-copilot-repot erbjuder agentkonfigurationer från communityn som utgångspunkter. När du använder konfigurationer från den här lagringsplatsen kontrollerar du att verktygsnamn fungerar i Visual Studio innan du distribuerar till ditt team.
Begränsningar och anteckningar
- Om du inte anger en modell använder agenten den modell som väljs i modellväljaren.
- Verktygsnamnen varierar mellan GitHub Copilot plattformar. Kontrollera att verktygsnamn fungerar i Visual Studio innan du distribuerar till ditt team.
Dela feedback
Dela dina anpassade agentkonfigurationer på awesome-copilot-lagringsplatsen eller filfeedback via Visual Studio Developer Community. Dina arbetsflöden hjälper dig att forma framtida funktioner.
Relaterat innehåll
Använda inbyggda agenter i Visual Studio 2022
Du behöver Visual Studio 2022 version 17.14 eller senare.
Om du vill öppna Copilot Chat väljer du märket GitHub Copilot i det övre högra hörnet av Visual Studio och väljer sedan Öppna chattfönster.
Få åtkomst till inbyggda agenter på två sätt:
- Agentväljare: I fönstret Copilot Chat väljer du listrutan agentväljare för att se tillgängliga inbyggda agenter.
-
@ syntax: Ange
@följt av agentnamnet i chattindata (till exempel@profiler).
Agentväljaren kan innehålla följande inbyggda agenter. Tillgängligheten kan variera beroende på din Visual Studio 2022-version och installerade arbetsbelastningar.
| Handläggare | Beskrivning |
|---|---|
| Sammanhang | Kontextanalysagent |
| GitHub | Chatta med GitHub |
| Profiler | Optimera din kod |
| VS | Ställ frågor om Visual Studio |
| Workspace | Fråga om din arbetsyta |
Använd agenten @context
Agenten @context analyserar kontexten för din begäran för att hjälpa dig att förstå koden du arbetar med.
Exempel på frågor:
@context Explain the code in the current file@context What code is relevant to this method?@context Summarize the context for the selected code
Använd agenten @profiler
agenten @profiler ansluter till Visual Studio profileringsverktyg för att identifiera och åtgärda prestandaproblem.
Exempel på frågor:
@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