Instructies voor Copilot-codecontrole configureren

Azure DevOps Services

Belangrijk

Deze functie is beschikbaar voor openbare preview.

Gebruik aangepaste instructies om het gedrag van de codebeoordeling van Copilot op organisatie-, project- en repositoryniveau aan te passen. Aangepaste instructies sturen Copilot om zich te richten op specifieke coderingsstandaarden, best practices of organisatiebeleid.

Prerequisites

Categorie Requirements
Functie-activatie Copilot codebeoordeling moet zijn ingeschakeld op het niveau van de organisatie, het project en de repository.
Organisatiemachtigingen Machtigingen voor projectverzamelingsbeheerders om aangepaste instructies op organisatieniveau toe te voegen of te wijzigen.
Projectmachtigingen Machtigingen voor projectbeheerders om aangepaste instructies op projectniveau toe te voegen of te wijzigen.
Opslagplaatsmachtigingen Push- of beheerdersrechten voor de repository om aangepaste instructies op repositoryniveau toe te voegen of te wijzigen.

Bereiken voor aangepaste instructies

U kunt aangepaste instructies definiëren op meerdere niveaus:

  • Organisatieniveau: Basislijnstandaarden die van toepassing zijn op alle projecten.
  • Projectniveau: Team- of projectspecifieke standaarden.
  • Niveau van repository: Repositoryspecifieke standaarden in .github/copilot-instructions.md of .azuredevops/copilot-instructions.md.

Wanneer er instructies bestaan op meerdere niveaus, gebruikt Copilot alle toepasselijke instructies tijdens het controleren.

Note

Copilot leest alleen instructiebestanden op repositoryniveau en met padbereik uit de doelvertakking van de pull-aanvraag. Wijzigingen in instructiebestanden in de pull request zijn niet van invloed op de beoordeling. Copilot gebruikt de wijzigingen pas nadat ze zijn samengevoegd in de doelvertakking.

Aangepaste instructies voor organisatie en project

Configureer aangepaste instructies op organisatie- en projectniveau in de instellingen van Azure DevOps. Gebruik deze toepassingsgebieden voor brede beleidsregels, zoals beveiligingsvereisten, nalevingsregels of taalconventies die worden gedeeld door meerdere repositories.

Bestand met aangepaste instructies voor repository

Sla aangepaste instructies op in .github/copilot-instructions.md of .azuredevops/copilot-instructions.md in de hoofdmap van uw opslagplaats. Copilot leest dit bestand tijdens elke beoordeling om inzicht te hebben in de specifieke richtlijnen van uw repository.

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

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

Aangepaste instructies maken

  1. Maak in uw opslagplaats een .github of .azuredevops map als deze nog niet bestaat.
  2. Maak een nieuw bestand met de naam copilot-instructions.md in de .github of .azuredevops map.
  3. Voeg uw aangepaste instructies toe in markdown-indeling.
  4. Commit het bestand en push het naar uw repository.

Padgebonden instructies toevoegen

Gebruik pad-scoped instructiebestanden wanneer u verschillende regels wilt voor specifieke mappen, bestandstypen of technologieën.

  • Maak een of meer *.instructions.md-bestanden aan in .github/instructions/ of .azuredevops/instructions/.
  • Voeg YAML-front-matter toe met een applyTo-waarde die gericht is op overeenkomende bestanden.
  • Houd richtlijnen gericht op één taal of probleem per bestand.

Copilot past regels met padbereik alleen toe op gewijzigde bestanden die overeenkomen met de applyTo patronen.

Padgebonden bestandsindeling

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

voorbeelden van applyTo-patronen

  • applyTo: "**" is van toepassing op alle bestanden.
  • applyTo: "**/*.cs" is van toepassing op alle C#-bestanden.
  • applyTo: "**/*.sql,**/Settings.xml" is van toepassing op meerdere patronen.

Als een bestand met padbereik applyTo niet bevat, slaat Copilot dat bestand over.

Aanbevolen werkwijzen voor aangepaste instructies

  • Wees specifiek: Geef duidelijke, bruikbare richtlijnen voor de typen problemen die Copilot moet markeren.
  • Richt u op gebieden met een hoge impact: Geef prioriteit aan codekwaliteit, beveiliging en prestatieproblemen die relevant zijn voor uw codebasis.
  • Neem voorbeelden op: Geef, indien van toepassing, codevoorbeelden van problemen waarop moet worden gelet of patronen die moeten worden vermeden.
  • Houd het beknopt: Copilot verwerkt het hele bestand voor elke beoordeling, dus wees direct en vermijd uitgebreide uitleg.
  • Regelmatig bijwerken: Bekijk en werk de instructies bij naarmate uw coderingsstandaarden zich ontwikkelen.

Voorbeeld van aangepaste instructies

# 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

Organisatieniveau

Voeg aangepaste instructies toe op organisatieniveau om algemene beoordelingsstandaarden in uw onderneming te definiëren.

Instructies op organisatieniveau beïnvloeden Copilot code review voor alle projecten en alle repositories in die organisatie, dus gebruik deze voor vereisten die elk team moet volgen.

Schermopname van de configuratie van aangepaste instructies op organisatieniveau met instellingen die van toepassing zijn op alle projecten en repositories in een organisatie.

Projectniveau

Voeg aangepaste instructies toe op projectniveau om standaarden voor gedeelde beoordeling in alle projectrepository's te definiëren.

Instructies op projectniveau beïnvloeden Copilot-codebeoordeling voor alle repositories in dat project, dus gebruik deze voor conventies die elk team in het project moet volgen.

Schermopname van de configuratie van aangepaste instructies op projectniveau met instellingen die van toepassing zijn op alle repositories in een project.

Volgorde van prioriteit

Wanneer de instructies elkaar overlappen, past Copilot deze in deze volgorde van prioriteit toe:

  1. Instructies op repositoryniveau
  2. Instructies op projectniveau
  3. Instructies op organisatieniveau

Repository-instructies hebben de hoogste prioriteit, gevolgd door instructies op projectniveau en vervolgens instructies op organisatieniveau.

Als er twee instructies conflicteren, gebruikt Copilot de instructie met het bereik met hogere voorrang.

Note

De volgorde van prioriteit stuurt Copilot's beoordelingsgedrag, maar is niet gegarandeerd. Omdat Copilot gebruikmaakt van een groot taalmodel, kan het soms conflicterende instructies anders interpreteren of toepassen.

Hulp krijgen

Zie Problemen met Copilot codebeoordeling oplossen voor meer informatie over het oplossen van aangepaste instructies en antwoorden op veelgestelde vragen over Copilot codebeoordeling.

Volgende stap