Uso de agentes integrados y personalizados con GitHub Copilot

Visual Studio incluye un conjunto de agentes integrados mantenidos que se integran profundamente con las funcionalidades del IDE, como la depuración, la generación de perfiles y las pruebas. También puede crear agentes personalizados adaptados a cómo funciona el equipo.

Prerrequisitos

Acceso a agentes personalizados

Puede acceder a agentes personalizados de dos maneras:

  • Agent picker: en la ventana Copilot Chat, seleccione la lista desplegable selector de agentes para ver los agentes disponibles. Actualmente, esta opción solo está disponible en la compilación Visual Studio 2026 Insiders.
  • @ sintaxis: escriba @ seguido del nombre del agente en la entrada de chat (por ejemplo, @debugger).

Puede acceder a agentes personalizados mediante la sintaxis @ : escriba @ seguido del nombre del agente en la entrada de chat (por ejemplo, @profiler).

Screenshot que muestra el selector de agentes con agentes personalizados en Visual Studio.

Captura de pantalla que muestra el selector de agentes con agentes personalizados.

Agentes integrados

Cada agente integrado se centra en un flujo de trabajo de desarrollador específico. Estos agentes se integran con las herramientas nativas de Visual Studio de maneras que un asistente genérico no puede.

Agente Descripción
@debugger Va más allá de leer mensajes de error. Emplea las pilas de llamadas, el estado de las variables y las herramientas de diagnóstico para realizar un diagnóstico sistemático de errores a través de toda la solución.
@profiler Se conecta a la infraestructura de generación de perfiles de Visual Studio para identificar cuellos de botella y sugerir optimizaciones dirigidas basadas en el código base, no consejos genéricos.
@test Genera pruebas unitarias optimizadas para el marco y los patrones de su proyecto, no código estándar que la integración continua rechaza.
@modernize (solo .NET y C++) Controla las actualizaciones de marcos y dependencias con reconocimiento del grafo real del proyecto. Marca los cambios importantes, genera código de migración y sigue los patrones existentes.
Agente Descripción
@profiler Se conecta a la infraestructura de generación de perfiles de Visual Studio para identificar cuellos de botella y sugerir optimizaciones dirigidas basadas en el código base, no consejos genéricos.

Utilice el agente @debugger

El agente @debugger le ayuda a diagnosticar errores de manera sistemática al analizar el contexto de depuración. También admite un flujo de trabajo agente de un extremo a otro que reproduce errores, instrumenta la aplicación con puntos de seguimiento y puntos de interrupción condicionales y valida correcciones mediante datos en tiempo de ejecución en directo. Para obtener más información, consulte Resolución de errores de tipo agente con el Agente de Depuración.

Indicaciones de ejemplo:

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

Utilice el agente @profiler

El agente de @profiler se conecta a las herramientas de generación de perfiles de Visual Studio para ayudar a identificar y corregir problemas de rendimiento.

Indicaciones de ejemplo:

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

Utilice el agente @test

El @test agente genera pruebas unitarias que coinciden con las convenciones y el marco de pruebas del proyecto.

Indicaciones de ejemplo:

  • @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 obtener compatibilidad más completa con pruebas de .NET, consulte pruebas de GitHub Copilot para .NET.

Utilice el agente @modernize

El agente de @modernize ayuda con las migraciones de marcos y las actualizaciones de dependencia para proyectos de .NET y C++.

Para los procesos de modernización de .NET, el agente admite un proceso de tres fases.

  • Evaluación: revisa las versiones del paquete, las opciones del marco de destino, el inventario de proyectos y los riesgos de compatibilidad de API.
  • Plan: genera un plan de migración que se alinea con la evaluación actual y las prioridades de actualización.
  • Ejecución de tareas: funciona a través de tareas de modernización con un archivo de tareas dinámico que puede editar a medida que avanza el trabajo.

Indicaciones de ejemplo:

  • @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 obtener instrucciones completas sobre la modernización de la aplicación GitHub Copilot para .NET, consulte descripción general de la modernización de aplicaciones GitHub Copilot.

Agentes personalizados

Nota:

Los agentes personalizados requieren Visual Studio 2026, versión 18.4 o posterior.

Los agentes integrados cubren flujos de trabajo comunes, pero el equipo conoce mejor el flujo de trabajo. Los agentes personalizados le permiten crear sus propios agentes mediante la misma base: reconocimiento del área de trabajo, comprensión del código, su modelo de IA preferido y sus propias herramientas.

Los agentes personalizados se vuelven especialmente eficaces cuando se combinan con MCP (Protocolo de contexto de modelo). Puede conectar agentes a orígenes de conocimiento externos, como documentación interna, sistemas de diseño, API y bases de datos, por lo que el agente no se limita a lo que se encuentra en el repositorio.

Creación de un agente personalizado

Defina agentes personalizados como .agent.md archivos en la carpeta .github/agents/ del repositorio.

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

También puede definir agentes de nivel de usuario que se apliquen en todos los proyectos. Los agentes a nivel de usuario se almacenan en %USERPROFILE%\.github\agents de forma predeterminada. Puede cambiar esta ubicación en Herramientas>Opciones>de GitHub>Copilot.

Formato de archivo del agente

Cada archivo de agente usa una plantilla sencilla con la frontmatter de YAML seguida de las instrucciones de 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.

Propiedades de frontmatter

Propiedad Obligatorio Descripción
name No Nombre del agente para mostrar en el selector de agentes. Si no especifica esta propiedad, el nombre del agente procede del nombre de archivo (por ejemplo, code-reviewer.agent.md se convierte en code-reviewer).
description Yes Breve descripción que se muestra al mantener el puntero sobre el agente
model No Modelo de IA que se va a usar. Si no especifica esta propiedad, se usa el modelo seleccionado en el selector de modelos.
tools No Matriz de nombres de herramientas que puede usar el agente. Si no especifica esta propiedad, todas las herramientas disponibles están habilitadas.

Especificar herramientas

Las herramientas amplían lo que el agente personalizado puede hacer. Puede especificar qué herramientas debe usar el agente en la tools matriz.

Importante

Los nombres de herramientas varían según las plataformas de GitHub Copilot. Compruebe las herramientas disponibles en Visual Studio específicamente para asegurarse de que el agente funciona según lo previsto. Seleccione el icono Herramientas en la ventana de chat para ver los nombres de herramientas disponibles.

Conexión a orígenes externos con MCP

Mediante el uso de servidores MCP, los agentes personalizados pueden acceder a orígenes de conocimiento externos, como:

  • Documentación interna y wikis
  • Diseñar sistemas y bibliotecas de componentes
  • API y bases de datos
  • Guías de estilo y repositorios de ADR

Por ejemplo, un agente de revisión de código puede comprobar las solicitudes de incorporación de cambios frente a sus convenciones reales conectándose con su guía de estilo usando MCP.

Agentes personalizados de ejemplo

Agente de revisión 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 planificación

---
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 del sistema de diseño

---
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 desarrollo completo con herramientas de desarrollo de Visual Studio

En el ejemplo siguiente se usan nombres de herramientas específicos de 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.

Sugerencia

Seleccione el icono Tools en la ventana de Copilot Chat para ver todos los nombres de herramientas disponibles en la versión de Visual Studio.

agentes de desarrollo de .NET

El equipo de .NET mantiene agentes personalizados curados para el desarrollo de C# y Windows Forms en el repositorio awesome-copilot. Primeros pasos:

  1. Descargue CSharpExpert.agent.md y WinFormsExpert.agent.md.
  2. Agregue los archivos a la carpeta del .github/agents/ repositorio.
  3. Abra Copilot Chat en modo agente y seleccione el agente en el selector de agentes.

Sugerencia

Seleccione Tools>Options>GitHub>Copilot, y, a continuación, habilite Instrucciones específicas del proyecto .NET como Windows Forms desarrollo cuando sea aplicable para agregar automáticamente el agente personalizado adecuado para la base de código.

Experto en C#

El agente experto de C# aplica convenciones modernas de C# a la generación de código de Copilot:

  • Sintaxis y rendimiento: sigue los procedimientos recomendados actuales al hacer coincidir las convenciones existentes del repositorio.
  • Cambios mínimos: genera solo el código necesario, usando async/await con el control de excepciones y cancelación adecuados. Evita interfaces, métodos o parámetros sin usar.
  • Pruebas: admite pruebas unitarias controladas por el comportamiento, pruebas de integración y flujos de trabajo de TDD.

Experto en WinForms

El agente experto de WinForms se dirige al desarrollo de Windows Forms en .NET 8 hasta .NET 10.

  • Protección del código del diseñador: evita .Designer.cs la corrupción para que el Diseñador de formularios de Windows siga funcionando después de las ediciones de Copilot.
  • Patrones de diseño de la interfaz de usuario: modelos MVVM y MVP, incluido el enlace de datos de Community Toolkit.
  • Modern .NET: corrige InvokeAsync sobrecargas, modo oscuro, compatibilidad con alta resolución (DPI) y tipos de referencia anulables.
  • Diseño: TableLayoutPanel y FlowLayoutPanel para diseños adaptativos que tengan en cuenta la densidad de píxeles.
  • Serialización CodeDOM: [DefaultValue] atributos y ShouldSerialize*() métodos para el manejo adecuado de propiedades del diseñador.
  • Control de excepciones: patrones de controlador de eventos asincrónicos y control de excepciones de nivel de aplicación.

Configuraciones de la comunidad

El repositorio awesome-copilot tiene configuraciones de agente con contribución de la comunidad que puede usar como puntos de partida. Al usar configuraciones de este repositorio, compruebe que los nombres de herramientas funcionan en Visual Studio antes de implementar en el equipo.

Limitaciones y notas

  • Si no especifica un modelo, el agente usa el modelo seleccionado en el selector de modelos.
  • Los nombres de herramientas varían según las plataformas de GitHub Copilot. Compruebe que los nombres de herramientas funcionan en Visual Studio antes de realizar la implementación en el equipo.

Compartir comentarios

Comparta las configuraciones del agente personalizado en el repositorio awesome-copilot o envíe comentarios a través de Visual Studio Developer Community. Los flujos de trabajo ayudan a dar forma a las características futuras.