Notitie
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen u aan te melden of de directory te wijzigen.
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen de mappen te wijzigen.
De GitHub Copilot-moderniseringsagent ondersteunt aangepaste vaardigheden die u kunt gebruiken om organisatiespecifieke migratiepatronen, intern bibliotheekgebruik en coderingsstandaarden te definiëren. Door deze aangepaste vaardigheden te gebruiken, kunt u zorgen voor consistente modernisering binnen uw organisatie terwijl u eigen kennis gebruikt.
Wat zijn aangepaste vaardigheden?
Aangepaste vaardigheden volgen de specificatie van agentvaardigheden om de moderniseringsagent te leren hoe u specifieke migratietaken uitvoert met behulp van de patronen en bibliotheken van uw organisatie. Wanneer u een moderniseringsplan maakt, detecteert en past de agent automatisch relevante aangepaste vaardigheden toe op basis van uw migratieprompt.
Aangepaste vaardigheden zijn handig voor:
- Interne bibliotheekmigraties: Overschakelen naar organisatiespecifieke SDK's of frameworks.
- Migratiepatronen opnieuw gebruiken: Geslaagde migratiepatronen vastleggen en opnieuw gebruiken.
Aangepaste vaardigheidsstructuur
Definieer elke aangepaste vaardigheid in een SKILL.md bestand met:
- YAML-front-matter: metagegevens voor vaardigheidsdetectie.
- Overzicht: Beschrijving van het migratiescenario.
- Stappen: Gedetailleerde instructies voor de agent.
- Voorbeeldcode: Concrete voorbeelden waarin de migratie wordt gedemonstreerd.
Een aangepaste vaardigheid maken
Stap 1: De map voor vaardigheden maken
Maak een nieuwe map onder .github/skills/ in uw opslagplaats met een beschrijvende naam:
mkdir -p .github/skills/my-migration-pattern
Stap 2: het SKILL.md-bestand schrijven
Maak .github/skills/my-migration-pattern/SKILL.md met de structuur die wordt weergegeven in de volgende sectie.
Vereiste frontmattervelden
---
name: my-migration-pattern
description: A concrete description of what this skill helps migrate
---
Belangrijk: Het description veld is kritiek. De agent gebruikt deze om te bepalen wanneer de vaardigheid moet worden toegepast op basis van de migratieprompt van de gebruiker. Maak het specifiek en nauwkeurig.
Goede beschrijvingen:
- ✅ "Migreren van RabbitMQ met AMQP naar Azure Service Bus voor berichten"
- ✅ "Directe JDBC-aanroepen vervangen door Spring Data-opslagplaatsen"
Ongeldige beschrijvingen:
- ❌ "Berichtmigratie" (te vaag)
- ❌ 'Bibliotheken bijwerken' (niet specifiek)
- ❌ "Code verbeteren" (onduidelijk doel)
Stap 3: Voorbeelden en verificatiecontroles voor migraties opgeven
Neem codevoorbeelden en verificatiecontroles op om de agent te begeleiden:
- Codewijzigingen: codefragmenten met de gemigreerde implementatie met behulp van de nieuwe benadering.
- Configuratiewijzigingen: updates voor eigenschappen, XML of andere configuratiebestanden.
- Afhankelijkheidswijzigingen: Maven-, Gradle- of NuGet-updates die vereist zijn voor de migratie.
- Verificatiecontroles: criteria die de agent moet valideren na het toepassen van de migratie.
U kunt ook resourcebestanden opgeven in de map met vaardigheden en de agent laten weten hoe ze moeten worden gebruikt in de inhoud van het SKILL.md bestand.
Aangepaste vaardigheden gebruiken
Automatische detectie
Wanneer u een moderniseringsplan maakt, wordt de agent automatisch:
- Scant
.github/skills/voor aangepaste vaardigheden. - Vergelijkt uw migratieprompt met vaardigheidsbeschrijvingen.
- Bevat relevante vaardigheden in het plan.
- Maakt gebruik van vaardigheden voor het begeleiden van codetransformaties.
Voorbeeld:
# Agent will automatically detect and use the RabbitMQ skill
modernize plan create "migrate from rabbitmq to azure service bus"
Handmatige verificatie
Controleren welke vaardigheden worden gedetecteerd:
Maak een plan met uw prompt.
Controleren
.github/modernization/{plan-name}/tasks.json.Zoek naar verwijzingen naar uw aangepaste vaardigheden:
"skills": [ { "name": "your-skill-name", "location": "project" } ]
Als een vaardigheid niet wordt gedetecteerd:
- Verfijn de vaardigheid
descriptionzodat deze beter overeenkomt met uw prompt. - Maak de prompt specifieker.
- Zorg ervoor dat
SKILL.mdcorrect is geformatteerd.
Voorbeeldopslagplaats
Zie de voorbeeldopslagplaats NewsFeedSite voor een volledig voorbeeld, waaronder:
- Aangepaste functie voor RabbitMQ naar Azure Service Bus-migratie.
- Demonstreert het gebruik van interne JDK-bibliotheken.
- Geeft de juiste vaardigheidsstructuur en opmaak weer.
Klonen en verkennen:
git clone https://github.com/Azure-Samples/NewsFeedSite.git
cd NewsFeedSite
ls -la .github/skills/
modernize plan create "migrate from rabbitmq to azure service bus"
Troubleshooting
Vaardigheid niet gedetecteerd
Probleem: De agent gebruikt uw aangepaste vaardigheid niet.
Oplossingen:
- Controleer of de naam van de vaardigheid in de YAML-front-matter geen spaties bevat. Gebruik in plaats daarvan afbreekstreepjes (bijvoorbeeld
my-custom-skillnietmy custom skill). - Controleer of de
descriptiontrefwoorden overeenkomen met uw prompttrefwoorden. - Controleer de syntaxis van de YAML-front-matter.
- Zorg ervoor dat
SKILL.mdbinnen.github/skills/{skill-name}/is. - Maak uw migratieprompt specifieker.