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 biedt interactieve en niet-interactieve modi voor het moderniseren van toepassingen.
Opdrachtmodi
Interactieve modus
Start de interactieve Text User Interface (TUI) voor begeleide modernisering:
modernize
De interactieve modus biedt:
- Menugestuurde navigatie via de moderniseringswerkstroom.
- Visuele planning en voortgangsindicatoren.
- Begeleide prompts voor configuratieopties.
- Selectie-interface voor meerdere opslagplaatsen.
Niet-interactieve modus
Voer specifieke opdrachten rechtstreeks uit voor automatisering en scripting:
modernize <command> [options]
Gebruik niet-interactieve modus wanneer:
- Integreren met CI/CD-pijplijnen.
- Batchbewerkingen automatiseren.
- Werkstromen voor modernisering van scripts.
- Wordt uitgevoerd in headless omgevingen.
Algemene opties
Alle opdrachten ondersteunen deze algemene opties:
| Option | Beschrijving |
|---|---|
--help, -h |
Geeft help-informatie weer. |
--no-tty |
Hiermee schakelt u interactieve prompts (headless modus) uit. |
Commands
beoordelen
Voert een evaluatie uit en genereert een uitgebreid analyserapport.
Syntaxis
modernize assess [options]
Opties
| Option | Beschrijving | Verstek |
|---|---|---|
--source <path> |
Het pad naar het bronproject (relatief of absoluut lokaal pad). |
. (huidige map) |
--output-path <path> |
Een aangepast uitvoerpad voor evaluatieresultaten. | .github/modernize/assessment/ |
--issue-url <url> |
Een GITHub-probleem-URL om bij te werken met de evaluatiesamenvatting. | Geen |
--multi-repo |
Hiermee schakelt u evaluatie van meerdere opslagplaatsen in. Scant submappen op het eerste niveau voor meerdere opslagplaatsen. | Disabled |
--model <model> |
Het LLM-model dat moet worden gebruikt. | claude-sonnet-4.6 |
--delegate <delegate> |
De uitvoeringsmodus: local (deze computer) of cloud (Cloud Coding Agent). |
local |
--wait |
Wacht totdat de gedelegeerde taken zijn voltooid en resultaten genereren (alleen geldig met --delegate cloud). |
Disabled |
--force |
Dwingt delegering opnieuw op, waarbij lopende taken worden genegeerd (alleen geldig met --delegate cloud). |
Disabled |
Examples
Basisevaluatie van de huidige map:
modernize assess
Evalueren met aangepaste uitvoerlocatie:
modernize assess --output-path ./reports/assessment
GitHub-probleem evalueren en bijwerken met resultaten:
modernize assess --issue-url https://github.com/org/repo/issues/123
Specifieke projectmap evalueren:
modernize assess --source /path/to/project
Meerdere opslagplaatsen evalueren in de huidige map:
modernize assess --multi-repo
Uitvoer
De evaluatie genereert:
- Rapportbestanden: Gedetailleerde analyse in JSON-, MD- en HTML-indelingen.
- Samenvatting: Belangrijke bevindingen en aanbevelingen.
-
Probleemupdates (als u opgeeft
--issue-url): Opmerking bij gitHub-probleem met samenvatting.
plan maken
Hiermee maakt u een moderniseringsplan op basis van een prompt in natuurlijke taal waarin uw moderniseringsdoelen worden beschreven.
Syntaxis
modernize plan create <prompt> [options]
Argumenten
| Argument | Beschrijving |
|---|---|
<prompt> |
Een beschrijving van de moderniseringsdoelen (vereist) in natuurlijke taal. |
Opties
| Option | Beschrijving | Verstek |
|---|---|---|
--source <path> |
Het pad naar de broncode van de toepassing. | Huidige map |
--plan-name <name> |
De naam voor het moderniseringsplan. | modernization-plan |
--language <lang> |
De programmeertaal (java, dotnetof python). |
Automatisch gedetecteerd |
--overwrite |
Hiermee overschrijft u een bestaand plan met dezelfde naam. | Disabled |
--model <model> |
Het LLM-model dat moet worden gebruikt. | claude-sonnet-4.6 |
Examples
Een migratieplan genereren:
modernize plan create "migrate from oracle to azure postgresql"
Genereer een upgradeplan met een aangepaste naam:
modernize plan create "upgrade to spring boot 3" --plan-name spring-boot-upgrade
Een implementatieplan genereren:
modernize plan create "deploy the app to azure container apps" --plan-name deploy-to-aca
Voorbeeld van volledige opties:
modernize plan create "upgrade to .NET 8" \
--source /path/to/project \
--plan-name dotnet8-upgrade \
--language dotnet \
--issue-url https://github.com/org/repo/issues/456
Promptvoorbeelden
Framework-upgrades:
upgrade to spring boot 3upgrade to .NET 10upgrade to JDK 21migrate from spring boot 2 to spring boot 3
Databasemigraties:
migrate from oracle to azure postgresqlmigrate from SQL Server to azure cosmos dbswitch from MySQL to azure database for mysql
Cloudmigraties:
migrate from on-premises to azurecontainerize and deploy to azure container appsmigrate from rabbitmq to azure service bus
Implementatie:
deploy to azure app servicedeploy to azure kubernetes serviceset up CI/CD pipeline for azure
Uitvoer
Met de opdracht wordt het volgende gegenereerd:
Planbestand (
.github/modernize/{plan-name}/plan.md): Gedetailleerde moderniseringsstrategie, waaronder:- Context en doelstellingen
- Benadering en methodologie
- Verduidelijkingen
Takenlijst (
.github/modernize/{plan-name}/tasks.json): Gestructureerde uitsplitsing van uitvoerbare taken met:- Taakbeschrijvingen
- Vaardigheden om te gebruiken
- Succescriteria
Aanbeveling
U kunt zowel plan.mdtasks.json als na generatie handmatig bewerken om de aanpak aan te passen vóór de uitvoering.
plan uitvoeren
Hiermee wordt een moderniseringsplan uitgevoerd dat is gemaakt door modernize plan create.
Syntaxis
modernize plan execute [prompt] [options]
Argumenten
| Argument | Beschrijving |
|---|---|
[prompt] |
De optionele instructies voor natuurlijke taal voor uitvoering (bijvoorbeeld 'tests overslaan'). |
Opties
| Option | Beschrijving | Verstek |
|---|---|---|
--source <path> |
Het pad naar de broncode van de toepassing. | Huidige map |
--plan-name <name> |
De naam van het plan dat moet worden uitgevoerd. | modernization-plan |
--language <lang> |
De programmeertaal (java of dotnet). |
Automatisch gedetecteerd |
--model <model> |
Het LLM-model dat moet worden gebruikt. | claude-sonnet-4.6 |
--delegate <delegate> |
De uitvoeringsmodus: local (deze computer) of cloud (Cloud Coding Agent). |
local |
--force |
Dwingt uitvoering af, zelfs wanneer een CCA-taak wordt uitgevoerd. | Disabled |
Examples
Voer het meest recente plan interactief uit:
modernize plan execute
Voer een specifiek plan uit:
modernize plan execute --plan-name spring-boot-upgrade
Voer uit met extra instructies:
modernize plan execute "skip the test" --plan-name spring-boot-upgrade
Uitvoeren in headless-modus voor CI/CD:
modernize plan execute --plan-name spring-boot-upgrade --no-tty
Uitvoeringsgedrag
Tijdens de uitvoering is de agent:
Laadt het plan: leest het plan en de takenlijst uit
.github/modernization/{plan-name}/Hiermee worden taken uitgevoerd: verwerkt elke taak in de takenlijst opeenvolgend:
- Codetransformaties toepassen.
- Valideert builds na wijzigingen.
- Scant op CV's.
- Wijzigingen doorvoeren met beschrijvende berichten.
Hiermee wordt een samenvatting gegenereerd: geeft een rapport weer van alle wijzigingen en resultaten.
Uitvoer
- Doorvoergeschiedenis: gedetailleerde doorvoeringen voor elke taak die wordt uitgevoerd.
- Overzichtsrapport: Overzicht van wijzigingen, successen en eventuele problemen.
- Buildvalidatie: Bevestiging dat de toepassing is gebouwd.
- CVE-rapport: Beveiligingsproblemen geïdentificeerd en aangepakt.
bijwerking
Voert een end-to-end-upgradewerkstroom uit - plan en voer deze uit - in één opdracht.
Syntaxis
modernize upgrade [prompt] [options]
Argumenten
| Argument | Beschrijving |
|---|---|
[prompt] |
De doelversie, zoals Java 17, Spring Boot 3.2. .NET 10 Standaard ingesteld op de nieuwste LTS. |
Opties
| Option | Beschrijving | Verstek |
|---|---|---|
--source <source> |
Het pad naar het bronproject (relatief of absoluut lokaal pad). |
. (huidige map) |
--delegate <delegate> |
De uitvoeringsmodus: local (deze computer) of cloud (Cloud Coding Agent). |
local |
--model <model> |
Het LLM-model dat moet worden gebruikt. | claude-sonnet-4.6 |
Examples
Uitvoeren upgrade op de huidige map:
modernize upgrade "Java 17"
modernize upgrade ".NET 10"
Uitvoeren upgrade op een specifiek project:
modernize upgrade "Java 17" --source /path/to/project
Uitvoeren upgrade met behulp van de Cloud Coding Agent:
modernize upgrade "Java 17" --delegate cloud
help
Biedt help- en informatieopdrachten.
Syntaxis
modernize help [command]
Commands
| Opdracht | Beschrijving |
|---|---|
models |
Toont beschikbare LLM-modellen en hun vermenigvuldigers. |
Examples
Beschikbare modellen weergeven:
modernize help models
De CLI configureren
Met behulp van de moderniseringsagent kunt u toepassingsgedrag aanpassen via JSON-bestanden en omgevingsvariabelen.
Omgevingsvariabelen
Stel omgevingsvariabelen in om alle andere configuratiebereiken te overschrijven:
| Variable | Beschrijving | Verstek |
|---|---|---|
MODERNIZE_LOG_LEVEL |
Het logboekregistratieniveau (none, error, warning, info, ) debugall |
info |
MODERNIZE_MODEL |
Het LLM-model dat moet worden gebruikt. | claude-sonnet-4.6 |
MODERNIZE_COLLECT_TELEMETRY |
Telemetrieverzameling in- of uitschakelen. | true |
Voorbeeld:
export MODERNIZE_LOG_LEVEL=debug
export MODERNIZE_MODEL=claude-sonnet-4.6
modernize assess
Gebruikersconfiguratie
Gebruikersspecifieke voorkeuren opslaan in ~/.modernize/config.json of instellingen voor de hele opslagplaats in .github/modernize/config.json.
{
"model": "claude-sonnet-4.6",
"log_level": "info",
"trusted_folders": [
"/path/to/trusted/project",
]
}
De trusted_folders eigenschap geeft de mappen op die worden vertrouwd voor het gebruik van LLM in de interactieve modus.
Opmerking
Omgevingsvariabelen hebben de hoogste prioriteit, gevolgd door gebruikersconfiguratie en vervolgens opslagplaatsconfiguratie. Gebruik omgevingsvariabelen voor CI/CD-onderdrukkingen en gebruikersconfiguratie voor persoonlijke voorkeuren.
Configuratie van meerdere opslagplaatsen
Maak een .github/modernize/repos.json bestand om de modus voor meerdere opslagplaatsen in te schakelen:
[
{
"name": "PhotoAlbum-Java",
"url": "https://github.com/Azure-Samples/PhotoAlbum-Java.git"
},
{
"name": "PhotoAlbum",
"url": "https://github.com/Azure-Samples/PhotoAlbum.git"
}
]
Nadat het repos.json bestand is ingesteld, gebruikt u de volgende opdrachten om te werken in alle geconfigureerde opslagplaatsen:
Alle opslagplaatsen lokaal evalueren:
modernize assess
Evalueer alle opslagplaatsen met behulp van de Cloud Coding Agent:
modernize assess --delegate cloud
Werk alle opslagplaatsen bij met behulp van de Cloud Coding Agent:
modernize upgrade --delegate cloud