Nota:
El acceso a esta página requiere autorización. Puede intentar iniciar sesión o cambiar directorios.
El acceso a esta página requiere autorización. Puede intentar cambiar los directorios.
El agente de modernización de Copilot de GitHub proporciona modos interactivos y no interactivos para la modernización de aplicaciones.
Modos de comando
Modo interactivo
Inicie la interfaz de usuario interactiva de texto (TUI) para la modernización guiada:
modernize
El modo interactivo proporciona:
- Navegación controlada por menús a través del flujo de trabajo de modernización.
- Indicadores visuales de plan y progreso.
- Avisos guiados para las opciones de configuración.
- Interfaz de selección de varios repositorios.
Modo no interactivo
Ejecute comandos específicos directamente para automatización y scripting:
modernize <command> [options]
Use el modo no interactivo cuando:
- Integración con canalizaciones de CI/CD.
- Automatización de las operaciones por lotes.
- Flujos de trabajo de modernización de scripting.
- Se ejecuta en entornos sin encabezado.
Opciones globales
Todos los comandos admiten estas opciones globales:
| Opción | Descripción |
|---|---|
--help, -h |
Muestra información de ayuda. |
--no-tty |
Deshabilita los avisos interactivos (modo sin encabezado). |
Commands
evaluar
Ejecuta una evaluación y genera un informe de análisis completo.
Sintaxis
modernize assess [options]
Options
| Opción | Descripción | Predeterminado |
|---|---|---|
--source <path> |
Ruta de acceso al proyecto de origen (ruta de acceso local relativa o absoluta). |
. (directorio actual) |
--output-path <path> |
Ruta de acceso de salida personalizada para los resultados de la evaluación. | .github/modernize/assessment/ |
--issue-url <url> |
Dirección URL de problema de GitHub para actualizar con el resumen de evaluación. | Ninguno |
--multi-repo |
Habilita la evaluación de varios repositorios. Examina los subdirectorios de primer nivel para varios repositorios. | Deshabilitado |
--model <model> |
Modelo LLM que se va a usar. | claude-sonnet-4.6 |
--delegate <delegate> |
Modo de ejecución: local (esta máquina) o cloud (Agente de codificación en la nube). |
local |
--wait |
Espera a que las tareas delegadas se completen y generen resultados (solo válidos con --delegate cloud). |
Deshabilitado |
--force |
Fuerza la delegación de reinicio, ignorando las tareas en curso (solo válidas con --delegate cloud). |
Deshabilitado |
Ejemplos
Evaluación básica del directorio actual:
modernize assess
Evaluar con la ubicación de salida personalizada:
modernize assess --output-path ./reports/assessment
Evalúe y actualice el problema de GitHub con los resultados:
modernize assess --issue-url https://github.com/org/repo/issues/123
Evaluar directorios de proyectos específicos:
modernize assess --source /path/to/project
Evaluar varios repositorios en el directorio actual:
modernize assess --multi-repo
Salida
La evaluación genera:
- Archivos de informe: análisis detallado en formatos JSON, MD y HTML.
- Resumen: conclusiones clave y recomendaciones.
-
Actualizaciones de problemas (si proporciona
--issue-url): comentario del problema de GitHub con resumen.
plan create
Crea un plan de modernización basado en un lenguaje natural que describe los objetivos de modernización.
Sintaxis
modernize plan create <prompt> [options]
Argumentos
| Argumento | Descripción |
|---|---|
<prompt> |
Descripción del lenguaje natural de los objetivos de modernización (obligatorios). |
Options
| Opción | Descripción | Predeterminado |
|---|---|---|
--source <path> |
Ruta de acceso al código fuente de la aplicación. | Directorio actual |
--plan-name <name> |
Nombre del plan de modernización. | modernization-plan |
--language <lang> |
Lenguaje de programación (java, dotneto python). |
Detección automática |
--overwrite |
Sobrescribe un plan existente con el mismo nombre. | Deshabilitado |
--model <model> |
Modelo LLM que se va a usar. | claude-sonnet-4.6 |
Ejemplos
Generar un plan de migración:
modernize plan create "migrate from oracle to azure postgresql"
Genere un plan de actualización con el nombre personalizado:
modernize plan create "upgrade to spring boot 3" --plan-name spring-boot-upgrade
Genere un plan de implementación:
modernize plan create "deploy the app to azure container apps" --plan-name deploy-to-aca
Ejemplo de opciones completas:
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
Ejemplos de aviso
Actualizaciones del marco de trabajo:
upgrade to spring boot 3upgrade to .NET 10upgrade to JDK 21migrate from spring boot 2 to spring boot 3
Migraciones de base de datos:
migrate from oracle to azure postgresqlmigrate from SQL Server to azure cosmos dbswitch from MySQL to azure database for mysql
Migraciones a la nube:
migrate from on-premises to azurecontainerize and deploy to azure container appsmigrate from rabbitmq to azure service bus
Despliegue:
deploy to azure app servicedeploy to azure kubernetes serviceset up CI/CD pipeline for azure
Salida
El comando genera:
Archivo de plan (
.github/modernize/{plan-name}/plan.md): estrategia de modernización detallada, entre las que se incluyen:- Contexto y objetivos
- Enfoque y metodología
- Aclaraciones
Lista de tareas (
.github/modernize/{plan-name}/tasks.json): desglose estructurado de las tareas ejecutables con:- Descripciones de tareas
- Aptitudes para usar
- Criterios de éxito
Sugerencia
Puede editar manualmente tanto como plan.mdtasks.json después de la generación para personalizar el enfoque antes de la ejecución.
ejecución del plan
Ejecuta un plan de modernización creado por modernize plan create.
Sintaxis
modernize plan execute [prompt] [options]
Argumentos
| Argumento | Descripción |
|---|---|
[prompt] |
Las instrucciones de lenguaje natural opcionales para la ejecución (por ejemplo, "omitir pruebas"). |
Options
| Opción | Descripción | Predeterminado |
|---|---|---|
--source <path> |
Ruta de acceso al código fuente de la aplicación. | Directorio actual |
--plan-name <name> |
Nombre del plan que se va a ejecutar. | modernization-plan |
--language <lang> |
Lenguaje de programación (java o dotnet). |
Detección automática |
--model <model> |
Modelo LLM que se va a usar. | claude-sonnet-4.6 |
--delegate <delegate> |
Modo de ejecución: local (esta máquina) o cloud (Agente de codificación en la nube). |
local |
--force |
Fuerza la ejecución incluso cuando un trabajo de CCA está en curso. | Deshabilitado |
Ejemplos
Ejecute el plan más reciente de forma interactiva:
modernize plan execute
Ejecute un plan específico:
modernize plan execute --plan-name spring-boot-upgrade
Ejecute con instrucciones adicionales:
modernize plan execute "skip the test" --plan-name spring-boot-upgrade
Ejecute en modo sin encabezado para CI/CD:
modernize plan execute --plan-name spring-boot-upgrade --no-tty
Comportamiento de ejecución
Durante la ejecución, el agente:
Carga el plan: lee el plan y la lista de tareas de .
.github/modernization/{plan-name}/Ejecuta tareas: procesa cada tarea de la lista de tareas secuencialmente:
- Aplica transformaciones de código.
- Valida las compilaciones después de los cambios.
- Examina los CV.
- Confirma los cambios con mensajes descriptivos.
Genera resumen: proporciona un informe de todos los cambios y resultados.
Salida
- Historial de confirmaciones: confirmaciones detalladas para cada tarea ejecutada.
- Informe de resumen: información general sobre los cambios, los éxitos y los problemas detectados.
- Validación de compilación: confirmación de que la aplicación se compila correctamente.
- Informe CVE: Vulnerabilidades de seguridad identificadas y abordadas.
upgrade
Ejecuta un flujo de trabajo de actualización de un extremo a otro ( plan) y ejecuta en un solo comando.
Sintaxis
modernize upgrade [prompt] [options]
Argumentos
| Argumento | Descripción |
|---|---|
[prompt] |
La versión de destino, como Java 17, Spring Boot 3.2, .NET 10. El valor predeterminado es ltS más reciente. |
Options
| Opción | Descripción | Predeterminado |
|---|---|---|
--source <source> |
Ruta de acceso al proyecto de origen (ruta de acceso local relativa o absoluta). |
. (directorio actual) |
--delegate <delegate> |
Modo de ejecución: local (esta máquina) o cloud (Agente de codificación en la nube). |
local |
--model <model> |
Modelo LLM que se va a usar. | claude-sonnet-4.6 |
Ejemplos
Ejecute upgrade en el directorio actual:
modernize upgrade "Java 17"
modernize upgrade ".NET 10"
Ejecute upgrade en un proyecto específico:
modernize upgrade "Java 17" --source /path/to/project
Ejecute upgrade mediante el agente de codificación en la nube:
modernize upgrade "Java 17" --delegate cloud
Ayuda
Proporciona comandos de ayuda e información.
Sintaxis
modernize help [command]
Commands
| Comando | Descripción |
|---|---|
models |
Enumera los modelos LLM disponibles y sus multiplicadores. |
Ejemplos
Enumerar los modelos disponibles:
modernize help models
Configuración de la CLI
Mediante el agente de modernización, puede personalizar el comportamiento de la aplicación a través de archivos JSON y variables de entorno.
Variables de entorno
Establezca variables de entorno para invalidar todos los demás ámbitos de configuración:
| Variable | Descripción | Predeterminado |
|---|---|---|
MODERNIZE_LOG_LEVEL |
Nivel de registro (none, error, warning, info, debug, ) all |
info |
MODERNIZE_MODEL |
Modelo LLM que se va a usar. | claude-sonnet-4.6 |
MODERNIZE_COLLECT_TELEMETRY |
Habilite o deshabilite la recopilación de telemetría. | true |
Ejemplo:
export MODERNIZE_LOG_LEVEL=debug
export MODERNIZE_MODEL=claude-sonnet-4.6
modernize assess
Configuración del usuario
Almacene las preferencias específicas del usuario en o la ~/.modernize/config.json configuración de todo el repositorio en .github/modernize/config.json.
{
"model": "claude-sonnet-4.6",
"log_level": "info",
"trusted_folders": [
"/path/to/trusted/project",
]
}
La trusted_folders propiedad especifica las carpetas de confianza para usar LLM en modo interactivo.
Nota:
Las variables de entorno tienen la prioridad más alta, seguida de la configuración del usuario y, a continuación, la configuración del repositorio. Use variables de entorno para invalidaciones de CI/CD y configuración de usuario para las preferencias personales.
Configuración de varios repositorios
Cree un .github/modernize/repos.json archivo para habilitar el modo de varios repositorios:
[
{
"name": "PhotoAlbum-Java",
"url": "https://github.com/Azure-Samples/PhotoAlbum-Java.git"
},
{
"name": "PhotoAlbum",
"url": "https://github.com/Azure-Samples/PhotoAlbum.git"
}
]
Una vez implementado el repos.json archivo, use los siguientes comandos para operar en todos los repositorios configurados:
Evaluar todos los repositorios localmente:
modernize assess
Evalúe todos los repositorios mediante el agente de codificación en la nube:
modernize assess --delegate cloud
Actualice todos los repositorios mediante cloud Coding Agent:
modernize upgrade --delegate cloud