Configuración de instrucciones de revisión de código Copilot

servicios de Azure DevOps

Importante

Esta característica está en versión preliminar limitada.

Es posible que algunas características aún no estén disponibles en su entorno, ya que Microsoft implementa las funcionalidades de versión preliminar en fases. La funcionalidad puede cambiar o quitarse sin previo aviso. Las características en versión preliminar no tienen ningún Acuerdo de Nivel de Servicio (SLA) ni soporte técnico limitado.

Use instrucciones personalizadas para adaptar el comportamiento de revisión de código de Copilot en los niveles de organización, proyecto y repositorio. Guía de instrucciones personalizadas Copilot centrarse en estándares de codificación específicos, procedimientos recomendados o directivas organizativas.

Prerequisites

Categoría Requisitos
Activación de funcionalidades Copilot revisión de código debe estar habilitada en los niveles de organización, proyecto y repositorio.
Permisos de organización Project permisos de administrador de recopilación para agregar o modificar instrucciones personalizadas de nivel de organización.
permisos de Project Project permisos de administrador para agregar o modificar instrucciones personalizadas de nivel project.
Permisos del repositorio Permisos de inserción o administrador en el repositorio para agregar o modificar instrucciones personalizadas de nivel de repositorio.

Ámbitos de instrucción personalizados

Puede definir instrucciones personalizadas en varios ámbitos:

  • Nivel de organización: Estándares de línea base que se aplican en todos los proyectos.
  • Project nivel: estándares específicos del equipo o project.
  • Nivel de repositorio: Estándares específicos del repositorio en .github/copilot-instructions.md o .azuredevops/copilot-instructions.md.

Cuando existen instrucciones en varios ámbitos, Copilot usa todas las instrucciones aplicables durante la revisión.

Note

Copilot lee solo los archivos de instrucciones de nivel de repositorio y de ámbito de ruta de acceso de la rama de destino de la solicitud de incorporación de cambios. Los cambios en los archivos de instrucción de la solicitud de incorporación de cambios no afectan a su revisión. Copilot usa los cambios solo después de combinarlos en la rama de destino.

Instrucciones personalizadas de la organización y del proyecto

Configure instrucciones personalizadas de nivel de organización y de proyecto en Azure DevOps configuración. Use estos ámbitos para directivas amplias, como requisitos de seguridad, reglas de cumplimiento o convenciones de lenguaje compartidas por varios repositorios.

Archivo de instrucciones personalizadas del repositorio

Almacene instrucciones personalizadas en .github/copilot-instructions.md o .azuredevops/copilot-instructions.md en la raíz del repositorio. Copilot lee este archivo durante cada revisión para comprender las directrices específicas del repositorio.

.github/
   copilot-instructions.md
   instructions/
      api.instructions.md

.azuredevops/                       # same files work here too
   copilot-instructions.md
   instructions/
      api.instructions.md

Creación de instrucciones personalizadas

  1. En el repositorio, cree una .github carpeta o .azuredevops si aún no existe.
  2. Cree un nuevo archivo denominado copilot-instructions.md en la .github carpeta o .azuredevops .
  3. Agregue las instrucciones personalizadas en formato Markdown.
  4. Confirma e inserta el archivo en el repositorio.

Adición de instrucciones con ámbito de ruta de acceso

Use archivos de instrucciones con ámbito de ruta de acceso cuando desee reglas diferentes para carpetas específicas, tipos de archivo o tecnologías.

  • Cree uno o varios *.instructions.md archivos en .github/instructions/ o .azuredevops/instructions/.
  • Agregue el front-matter de YAML con un valor que tenga como applyTo destino los archivos coincidentes.
  • Mantenga las instrucciones centradas en un idioma o preocupación por archivo.

Copilot aplica reglas de ámbito de ruta de acceso solo a los archivos modificados que coinciden con los applyTo patrones.

Formato de archivo con ámbito de ruta de acceso

---
applyTo: "**/*.ts,**/*.tsx"
---

## TypeScript standards

- Avoid `any`; prefer `unknown` or a specific type.
- Prefer `const`; avoid `var`.
- Use optional chaining (`?.`) and nullish coalescing (`??`) where appropriate.

Ejemplos de patrones applyTo

  • applyTo: "**" se aplica a todos los archivos.
  • applyTo: "**/*.cs" se aplica a todos los archivos de C#.
  • applyTo: "**/*.sql,**/Settings.xml" se aplica a varios patrones.

Si un archivo con ámbito de ruta de acceso no incluye applyTo, Copilot omite ese archivo.

Procedimientos recomendados de instrucciones personalizadas

  • Sea específico: Proporcione instrucciones claras y accionables para los tipos de problemas Copilot debe marcar.
  • Céntrese en áreas de alto impacto: Dé prioridad a los problemas de calidad, seguridad y rendimiento del código base.
  • Incluya ejemplos: Cuando corresponda, proporcione ejemplos de código de problemas que se deben buscar o patrones para evitar.
  • Manténgalo conciso: Copilot procesa todo el archivo para cada revisión, por lo que debe ser directo y evitar explicaciones detalladas.
  • Actualización periódica: Revise y actualice las instrucciones a medida que evolucionan los estándares de codificación.

Instrucciones personalizadas de ejemplo

# Copilot code review instructions

## Security focus
- Flag any hardcoded credentials, API keys, or sensitive data
- Identify potential SQL injection or XSS vulnerabilities
- Check for secure use of cryptographic functions

## Performance considerations
- Suggest database query optimizations
- Identify N+1 query problems
- Flag inefficient loops or algorithms

## Team coding standards
- Enforce naming conventions (camelCase for variables, PascalCase for classes)
- Check for proper error handling and logging
- Ensure consistent use of async/await patterns

## Documentation requirements
- Flag missing or incomplete function documentation
- Verify that complex logic includes explanatory comments

Nivel de organización

Agregue instrucciones personalizadas en el nivel de organización para definir estándares de revisión generales en toda la empresa.

Las instrucciones de nivel de organización influyen en Copilot revisión de código para todos los proyectos y todos los repositorios de esa organización, así que úselas para los requisitos que cada equipo debe seguir.

Captura de pantalla de la configuración de instrucciones personalizadas de nivel de organización que muestra la configuración que se aplica a todos los proyectos y repositorios de una organización.

En el nivel de proyecto

Agregue instrucciones personalizadas en el nivel de proyecto para definir estándares de revisión compartidos en todos los repositorios de proyectos.

Project las instrucciones de nivel influyen en Copilot revisión de código para todos los repositorios de ese project, por lo que úselas para las convenciones que deben seguir todos los equipos del project.

Captura de pantalla de la configuración de instrucciones personalizadas de nivel de proyecto que muestra la configuración que se aplica a todos los repositorios de un proyecto.

Orden de prioridad

Cuando las instrucciones se superponen, Copilot las aplica en este orden de prioridad:

  1. Instrucciones de nivel de repositorio
  2. instrucciones de nivel de Project
  3. Instrucciones de nivel de organización

Las instrucciones del repositorio tienen la prioridad más alta, seguida de las instrucciones de nivel de proyecto y, a continuación, las instrucciones de nivel de organización.

Si hay dos conflictos de instrucciones, Copilot usa la instrucción con el ámbito de prioridad superior.

Note

El orden de prioridad guía el comportamiento de revisión de Copilot, pero no está garantizado. Dado que Copilot usa un modelo de lenguaje grande, puede interpretar o aplicar instrucciones en conflicto de forma diferente.

Obtención de ayuda

Para solucionar problemas de instrucciones personalizadas y respuestas a las preguntas más frecuentes sobre Copilot revisión de código, consulte Solución de problemas de Copilot revisión de código.

Paso siguiente