Compartilhar via


Usar agentes internos e personalizados com GitHub Copilot

O Visual Studio inclui uma série de agentes internos selecionados que se integram profundamente aos recursos do IDE, como depuração, perfilação e teste. Você também pode criar agentes personalizados sob medida para como sua equipe funciona.

Pré-requisitos

Acessar agentes personalizados

Você pode acessar agentes personalizados de duas maneiras:

  • Seletor de agente: Na janela do Copilot Chat, selecione a lista suspensa do seletor de agente para ver os agentes disponíveis. Atualmente, essa opção está disponível apenas no build do Insiders Visual Studio 2026.
  • @ sintaxe: digite @ seguido pelo nome do agente na entrada de chat (por exemplo, @debugger).

Você pode acessar agentes personalizados usando a sintaxe @ : digite @ seguido pelo nome do agente na entrada de chat (por exemplo, @profiler).

Screenshot mostrando o seletor de agente com agentes personalizados em Visual Studio.

Captura de tela mostrando o seletor de agente com agentes personalizados.

Agentes integrados

Cada agente interno se concentra em um fluxo de trabalho de desenvolvedor específico. Esses agentes se integram às ferramentas nativas do Visual Studio de maneiras que um assistente genérico não pode.

Agente Descrição
@debugger Vai além de ler mensagens de erro. Usa suas pilhas de chamadas, o estado das variáveis e as ferramentas de diagnóstico para guiar sistematicamente o diagnóstico de erros em sua solução.
@profiler Conecta-se à infraestrutura de criação de perfil do Visual Studio para identificar gargalos e sugerir otimizações direcionadas fundamentadas em sua base de código, não em conselhos genéricos.
@test Gera testes de unidade ajustados à estrutura e aos padrões do projeto, não clichês que sua CI rejeita.
@modernize (somente .NET e C++) Manipula atualizações de estrutura e dependência com reconhecimento do grafo de projeto real. Sinaliza alterações interruptivas, gera código de migração e segue seus padrões existentes.
Agente Descrição
@profiler Conecta-se à infraestrutura de criação de perfil do Visual Studio para identificar gargalos e sugerir otimizações direcionadas fundamentadas em sua base de código, não em conselhos genéricos.

Usar o @debugger agente

O @debugger agente ajuda você a diagnosticar erros sistematicamente analisando seu contexto de depuração.

Prompts de exemplo:

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

Usar o @profiler agente

O agente @profiler conecta-se às ferramentas de criação de perfil do Visual Studio para ajudar a identificar e corrigir problemas de desempenho.

Prompts de exemplo:

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

Usar o @test agente

O @test agente gera testes de unidade que correspondem à estrutura de teste e às convenções do projeto.

Prompts de exemplo:

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

Para obter um suporte de teste de .NET mais abrangente, consulte GitHub Copilot teste para .NET.

Usar o @modernize agente

O agente @modernize ajuda com migrações de estrutura e atualizações de dependência para projetos .NET e C++.

Para fluxos de trabalho de modernização do .NET, o agente dá suporte a um processo de três estágios:

  • Avaliação: revisa as versões do pacote, as opções de estrutura de destino, o inventário de projetos e os riscos de compatibilidade da API.
  • Plano: gera um plano de migração que se alinha às prioridades atuais de avaliação e atualização.
  • Execução da tarefa: funciona por meio de tarefas de modernização com um arquivo de tarefa dinâmico que você pode editar à medida que o trabalho progride.

Prompts de exemplo:

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

Para obter diretrizes de ponta a ponta sobre a modernização do aplicativo GitHub Copilot para .NET, consulte a visão geral da modernização do aplicativo GitHub Copilot.

Agentes personalizados

Observação

Os agentes personalizados exigem o Visual Studio 2026, versão 18.4 ou posterior.

Os agentes internos abrangem fluxos de trabalho comuns, mas sua equipe conhece melhor seu fluxo de trabalho. Os agentes personalizados permitem que você crie seus próprios agentes usando a mesma base: reconhecimento de workspace, compreensão de código, seu modelo de IA preferido e suas próprias ferramentas.

Os agentes personalizados tornam-se especialmente poderosos quando combinados com o MCP (Protocolo de Contexto de Modelo). Você pode conectar agentes a fontes de conhecimento externas, como documentação interna, sistemas de design, APIs e bancos de dados, para que o agente não se limite ao que está em seu repositório.

Criar um agente personalizado

Defina agentes personalizados como arquivos .agent.md na pasta .github/agents/ do repositório.

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

Formato de arquivo do agente

Cada arquivo de agente usa um modelo simples com o frontmatter YAML seguido de instruções do 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.

Propriedades do Frontmatter

Propriedade Obrigatório Descrição
name Não Nome de exibição para o agente no seletor de agente. Se você não especificar essa propriedade, o nome do agente vem do nome do arquivo (por exemplo, code-reviewer.agent.md torna-se code-reviewer).
description Yes Breve descrição mostrada ao passar o mouse sobre o agente
model Não Modelo de IA a ser usado. Se você não especificar essa propriedade, o modelo selecionado no seletor de modelos será usado.
tools Não Matriz de nomes de ferramentas que o agente pode usar. Se você não especificar essa propriedade, todas as ferramentas disponíveis estarão habilitadas.

Especificar ferramentas

As ferramentas estendem o que seu agente personalizado pode fazer. Você pode especificar quais ferramentas o agente deve usar na tools matriz.

Importante

Os nomes de ferramentas variam entre plataformas de GitHub Copilot. Verifique as ferramentas disponíveis no Visual Studio especificamente para garantir que o agente funcione conforme o esperado. Selecione o ícone Ferramentas na janela de chat para ver os nomes de ferramentas disponíveis.

Conectar-se a fontes externas com MCP

Usando servidores MCP, seus agentes personalizados podem acessar fontes de conhecimento externas, como:

  • Documentação interna e wikis
  • Criar sistemas e bibliotecas de componentes
  • APIs e bancos de dados
  • Guias de estilo e repositórios de ADR

Por exemplo, um agente de revisão de código pode verificar PRs em relação às suas convenções reais conectando-se ao seu guia de estilo por meio do MCP.

Exemplo de agentes personalizados

Agente de revisão de código

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

Agente de planejamento

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

Agente de design de sistema

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

Agente de desenvolvimento full stack com ferramentas do Visual Studio

O exemplo a seguir usa nomes de ferramentas específicos 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.

Dica

Selecione o ícone Tools na janela Copilot Chat para ver todos os nomes de ferramentas disponíveis em sua versão do Visual Studio.

Agentes de desenvolvimento do .NET

A equipe do .NET mantém agentes personalizados curados para o desenvolvimento em C# e Windows Forms no repositório awesome-copilot. Para começar:

  1. Baixe CSharpExpert.agent.md e WinFormsExpert.agent.md.
  2. Adicione os arquivos à pasta do .github/agents/ repositório.
  3. Abra o Copilot Chat no modo de agente e selecione o agente no seletor de agente.

Dica

Selecione Ferramentas>Opções>GitHub>Copilot, e então habilite Instruções específicas do .NET para o projeto, como o desenvolvimento do Windows Forms, quando aplicável para adicionar automaticamente o agente personalizado apropriado para sua base de código.

Especialista em C#

O agente especialista em C# aplica convenções C# modernas à geração de código do Copilot:

  • Sintaxe e desempenho: segue as práticas recomendadas atuais ao corresponder às convenções existentes do repositório.
  • Alterações mínimas: Gera apenas o código necessário, utilizando async/await com o cancelamento adequado e o tratamento de exceções. Evita interfaces, métodos ou parâmetros não utilizados.
  • Teste: dá suporte a testes de unidade controlados por comportamento, testes de integração e fluxos de trabalho TDD.

Especialista em WinForms

O agente especialista em WinForms tem como alvo o desenvolvimento do Windows Forms no .NET 8 até o .NET 10:

  • Proteção do código do Designer: impede a corrupção para que o Designer de Formulários do Windows continue funcionando após as edições do Copilot.
  • Padrões de design de interface do usuário: padrões MVVM e MVP, incluindo associação de dados do Kit de Ferramentas da Comunidade.
  • .NET moderno: sobrecargas corretas InvokeAsync , modo escuro, reconhecimento de alta DPI e tipos de referência anuláveis.
  • Layout: TableLayoutPanel e FlowLayoutPanel para layouts responsivos e com reconhecimento de DPI.
  • Serialização CodeDOM: [DefaultValue] atributos e ShouldSerialize*() métodos para tratamento correto de propriedade de designer.
  • Tratamento de exceção: padrões de manipulador de eventos assíncronos e tratamento de exceção no nível do aplicativo.

Configurações de comunidade

O repositório awesome-copilot tem configurações de agente contribuídas pela comunidade que você pode usar como pontos de partida. Quando você usa configurações desse repositório, verifique se os nomes de ferramentas funcionam no Visual Studio antes de implantar em sua equipe.

Limitações e anotações

  • Se você não especificar um modelo, o agente usará qualquer modelo selecionado no seletor de modelos.
  • Os nomes de ferramentas variam entre plataformas de GitHub Copilot. Verifique se os nomes de ferramentas funcionam em Visual Studio antes de implantar em sua equipe.

Compartilhar comentários

Compartilhe suas configurações de agente personalizado no repositório awesome-copilot ou envie feedback por meio de Visual Studio Developer Community. Seus fluxos de trabalho ajudam a moldar os recursos futuros.