Catatan
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba masuk atau mengubah direktori.
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba mengubah direktori.
Agen modernisasi GitHub Copilot menyediakan mode interaktif dan non-interaktif untuk modernisasi aplikasi.
Mode perintah
Mode interaktif
Luncurkan Antarmuka Pengguna Teks interaktif (TUI) untuk modernisasi terpandu:
modernize
Mode interaktif menyediakan:
- Navigasi berbasis menu melalui alur kerja modernisasi.
- Rencana visual dan indikator kemajuan.
- Permintaan terpandu untuk opsi konfigurasi.
- Antarmuka pemilihan multi-repositori.
Mode non-interaktif
Jalankan perintah tertentu secara langsung untuk otomatisasi dan pembuatan skrip:
modernize <command> [options]
Gunakan mode non-interaktif saat:
- Mengintegrasikan dengan alur CI/CD.
- Mengotomatiskan operasi batch.
- Alur kerja modernisasi skrip.
- Berjalan di lingkungan tanpa kepala.
Opsi global
Semua perintah mendukung opsi global ini:
| Option | Deskripsi |
|---|---|
--help, -h |
Menampilkan informasi bantuan. |
--no-tty |
Menonaktifkan perintah interaktif (mode tanpa kepala). |
Perintah
Menilai
Menjalankan penilaian dan menghasilkan laporan analisis komprehensif.
Sintaksis
modernize assess [options]
Opsi
| Option | Deskripsi | Default |
|---|---|---|
--source <path> |
Jalur ke proyek sumber (jalur lokal relatif atau absolut). |
. (direktori saat ini) |
--output-path <path> |
Jalur output kustom untuk hasil penilaian. | .github/modernize/assessment/ |
--issue-url <url> |
URL masalah GitHub untuk diperbarui dengan ringkasan penilaian. | Tidak |
--multi-repo |
Mengaktifkan penilaian multi-repositori. Memindai subdirektori tingkat pertama untuk beberapa repositori. | Nonaktif |
--model <model> |
Model LLM yang akan digunakan. | claude-sonnet-4.6 |
--delegate <delegate> |
Mode eksekusi: local (komputer ini) atau cloud (Cloud Coding Agent). |
local |
--wait |
Menunggu tugas yang didelegasikan selesai dan menghasilkan hasil (hanya valid dengan --delegate cloud). |
Nonaktif |
--force |
Memaksa memulai ulang delegasi, mengabaikan tugas yang sedang berlangsung (hanya valid dengan --delegate cloud). |
Nonaktif |
Examples
Penilaian dasar direktori saat ini:
modernize assess
Menilai dengan lokasi output kustom:
modernize assess --output-path ./reports/assessment
Menilai dan memperbarui masalah GitHub dengan hasil:
modernize assess --issue-url https://github.com/org/repo/issues/123
Menilai direktori proyek tertentu:
modernize assess --source /path/to/project
Menilai beberapa repositori dalam direktori saat ini:
modernize assess --multi-repo
Hasil
Penilaian menghasilkan:
- File laporan: Analisis terperinci dalam format JSON, MD, dan HTML.
- Ringkasan: Temuan dan rekomendasi utama.
-
Pembaruan masalah (jika Anda memberikan
--issue-url): Komentar masalah GitHub dengan ringkasan.
pembuatan paket
Membuat rencana modernisasi berdasarkan permintaan bahasa alami yang menjelaskan tujuan modernisasi Anda.
Sintaksis
modernize plan create <prompt> [options]
Argumen
| Argumen | Deskripsi |
|---|---|
<prompt> |
Deskripsi bahasa alami tentang tujuan modernisasi (diperlukan). |
Opsi
| Option | Deskripsi | Default |
|---|---|---|
--source <path> |
Jalur ke kode sumber aplikasi. | Direktori saat ini |
--plan-name <name> |
Nama untuk rencana modernisasi. | modernization-plan |
--language <lang> |
Bahasa pemrograman (java, dotnet, atau python). |
Terdeteksi otomatis |
--overwrite |
Menimpa paket yang ada dengan nama yang sama. | Nonaktif |
--model <model> |
Model LLM yang akan digunakan. | claude-sonnet-4.6 |
Examples
Buat rencana migrasi:
modernize plan create "migrate from oracle to azure postgresql"
Hasilkan paket peningkatan dengan nama kustom:
modernize plan create "upgrade to spring boot 3" --plan-name spring-boot-upgrade
Buat rencana penyebaran:
modernize plan create "deploy the app to azure container apps" --plan-name deploy-to-aca
Contoh opsi lengkap:
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
Contoh perintah
Peningkatan kerangka kerja:
upgrade to spring boot 3upgrade to .NET 10upgrade to JDK 21migrate from spring boot 2 to spring boot 3
Migrasi database:
migrate from oracle to azure postgresqlmigrate from SQL Server to azure cosmos dbswitch from MySQL to azure database for mysql
Migrasi cloud:
migrate from on-premises to azurecontainerize and deploy to azure container appsmigrate from rabbitmq to azure service bus
Penyebaran:
deploy to azure app servicedeploy to azure kubernetes serviceset up CI/CD pipeline for azure
Hasil
Perintah menghasilkan:
Rencanakan file (
.github/modernize/{plan-name}/plan.md): Strategi modernisasi terperinci termasuk:- Konteks dan tujuan
- Pendekatan dan metodologi
- Klarifikasi
Daftar tugas (
.github/modernize/{plan-name}/tasks.json): Perincian terstruktur tugas yang dapat dieksekusi dengan:- Deskripsi tugas
- Keterampilan yang akan digunakan
- Kriteria keberhasilan
Petunjuk / Saran
Anda dapat mengedit secara manual dan plan.mdtasks.json setelah pembuatan untuk menyesuaikan pendekatan sebelum eksekusi.
rencana eksekusi
Menjalankan rencana modernisasi yang dibuat oleh modernize plan create.
Sintaksis
modernize plan execute [prompt] [options]
Argumen
| Argumen | Deskripsi |
|---|---|
[prompt] |
Instruksi bahasa alami opsional untuk eksekusi (misalnya, "lewati pengujian"). |
Opsi
| Option | Deskripsi | Default |
|---|---|---|
--source <path> |
Jalur ke kode sumber aplikasi. | Direktori saat ini |
--plan-name <name> |
Nama rencana yang akan dijalankan. | modernization-plan |
--language <lang> |
Bahasa pemrograman (java atau dotnet). |
Terdeteksi otomatis |
--model <model> |
Model LLM yang akan digunakan. | claude-sonnet-4.6 |
--delegate <delegate> |
Mode eksekusi: local (komputer ini) atau cloud (Cloud Coding Agent). |
local |
--force |
Memaksa eksekusi bahkan ketika pekerjaan CCA sedang berlangsung. | Nonaktif |
Examples
Jalankan rencana terbaru secara interaktif:
modernize plan execute
Jalankan rencana tertentu:
modernize plan execute --plan-name spring-boot-upgrade
Jalankan dengan instruksi tambahan:
modernize plan execute "skip the test" --plan-name spring-boot-upgrade
Jalankan dalam mode tanpa kepala untuk CI/CD:
modernize plan execute --plan-name spring-boot-upgrade --no-tty
Perilaku eksekusi
Selama eksekusi, agen:
Memuat paket: Membaca daftar rencana dan tugas dari
.github/modernization/{plan-name}/Menjalankan tugas: Memproses setiap tugas dalam daftar tugas secara berurutan:
- Menerapkan transformasi kode.
- Memvalidasi build setelah perubahan.
- Memindai CVE.
- Menerapkan perubahan dengan pesan deskriptif.
Menghasilkan ringkasan: Menyediakan laporan semua perubahan dan hasil.
Hasil
- Riwayat penerapan: Penerapan terperinci untuk setiap tugas yang dijalankan.
- Laporan ringkasan: Gambaran umum perubahan, keberhasilan, dan masalah apa pun yang dihadapi.
- Validasi build: Konfirmasi bahwa aplikasi berhasil dibangun.
- Laporan CVE: Kerentanan keamanan diidentifikasi dan ditangani.
mutakhirkan
Menjalankan alur kerja peningkatan end-to-end - rencanakan, dan jalankan - dalam satu perintah.
Sintaksis
modernize upgrade [prompt] [options]
Argumen
| Argumen | Deskripsi |
|---|---|
[prompt] |
Versi target, seperti Java 17, , Spring Boot 3.2.NET 10. Default ke LTS terbaru. |
Opsi
| Option | Deskripsi | Default |
|---|---|---|
--source <source> |
Jalur ke proyek sumber (jalur lokal relatif atau absolut). |
. (direktori saat ini) |
--delegate <delegate> |
Mode eksekusi: local (komputer ini) atau cloud (Cloud Coding Agent). |
local |
--model <model> |
Model LLM yang akan digunakan. | claude-sonnet-4.6 |
Examples
Jalankan upgrade pada direktori saat ini:
modernize upgrade "Java 17"
modernize upgrade ".NET 10"
Jalankan upgrade pada proyek tertentu:
modernize upgrade "Java 17" --source /path/to/project
Jalankan upgrade dengan menggunakan Cloud Coding Agent:
modernize upgrade "Java 17" --delegate cloud
help
Menyediakan perintah bantuan dan informasi.
Sintaksis
modernize help [command]
Perintah
| Perintah | Deskripsi |
|---|---|
models |
Mencantumkan model LLM yang tersedia dan multipliernya. |
Examples
Mencantumkan model yang tersedia:
modernize help models
Mengonfigurasi CLI
Dengan menggunakan agen modernisasi, Anda dapat menyesuaikan perilaku aplikasi melalui file JSON dan variabel lingkungan.
Variabel lingkungan
Atur variabel lingkungan untuk mengambil alih semua cakupan konfigurasi lainnya:
| Variabel | Deskripsi | Default |
|---|---|---|
MODERNIZE_LOG_LEVEL |
Tingkat pengelogan (none, error, warning, info, debug, all) |
info |
MODERNIZE_MODEL |
Model LLM yang akan digunakan. | claude-sonnet-4.6 |
MODERNIZE_COLLECT_TELEMETRY |
Aktifkan atau nonaktifkan koleksi telemetri. | true |
Contoh:
export MODERNIZE_LOG_LEVEL=debug
export MODERNIZE_MODEL=claude-sonnet-4.6
modernize assess
Konfigurasi pengguna
Simpan preferensi khusus pengguna di ~/.modernize/config.json pengaturan di seluruh repositori atau di .github/modernize/config.json.
{
"model": "claude-sonnet-4.6",
"log_level": "info",
"trusted_folders": [
"/path/to/trusted/project",
]
}
Properti trusted_folders menentukan folder yang dipercaya untuk menggunakan LLM dalam mode interaktif.
Nota
Variabel lingkungan lebih diutamakan, diikuti oleh konfigurasi pengguna, lalu konfigurasi repositori. Gunakan variabel lingkungan untuk penggantian CI/CD dan konfigurasi pengguna untuk preferensi pribadi.
Konfigurasi multi-repositori
Buat .github/modernize/repos.json file untuk mengaktifkan mode multi-repositori:
[
{
"name": "PhotoAlbum-Java",
"url": "https://github.com/Azure-Samples/PhotoAlbum-Java.git"
},
{
"name": "PhotoAlbum",
"url": "https://github.com/Azure-Samples/PhotoAlbum.git"
}
]
repos.json Setelah file diberlakukan, gunakan perintah berikut untuk beroperasi di semua repositori yang dikonfigurasi:
Menilai semua repositori secara lokal:
modernize assess
Menilai semua repositori dengan menggunakan Cloud Coding Agent:
modernize assess --delegate cloud
Tingkatkan semua repositori dengan menggunakan Cloud Coding Agent:
modernize upgrade --delegate cloud