**next upgrade** adalah perintah CLI resmi Next.js, tersedia sejak versi
16.1 (18 Desember 2025), yang menaikkan versi Next.js ke rilis terbaru
sekaligus menjalankan codemod migrasi yang diperlukan dalam satu langkah.
Perintah ini menggantikan workflow lama lewat paket terpisah
`npx @next/codemod@canary upgrade latest` untuk proyek yang sudah di
Next.js 16.1 ke atas.

**Ringkasan cepat:**

1. `next upgrade` diperkenalkan di Next.js 16.1 (18 Desember 2025) sebagai perintah bawaan untuk update versi, menggantikan kebutuhan paket terpisah `@next/codemod`.
2. Proyek yang masih di bawah Next.js 16.1 tidak bisa memakai perintah ini, harus tetap pakai `npx @next/codemod@canary upgrade latest`.
3. Varian eksperimental `next upgrade --agent` menyerahkan proses upgrade ke coding agent, dengan tiga kebijakan target: `security`, `latest`, atau `experimental-future`.
4. Perintah ini cocok untuk update rutin dalam satu versi major, bukan pengganti penuh panduan upgrade lintas major yang tetap butuh verifikasi manual.
5. Situs irfanramadhan.com sendiri masih di Next.js 15, jadi belum bisa memakai `next upgrade` sampai proses migrasi ke Next.js 16 selesai.

## Apa Itu Perintah next upgrade di Next.js?

`next upgrade` adalah perintah yang dijalankan lewat package manager
(`pnpm next upgrade`, `npx next upgrade`, `yarn next upgrade`, atau
`bunx next upgrade`) untuk menaikkan Next.js ke versi stabil terbaru.
Menurut [dokumentasi resmi upgrade Next.js](https://nextjs.org/docs/app/getting-started/upgrading),
perintah ini memeriksa versi yang terpasang, menentukan target upgrade,
lalu menjalankan codemod yang relevan secara otomatis, langkah yang
sebelumnya harus dilakukan manual lewat paket `@next/codemod`.

Sebelum Next.js 16.1 rilis, satu-satunya cara menjalankan upgrade
terotomasi adalah:

```bash
npx @next/codemod@canary upgrade latest
```

Paket itu tetap satu-satunya opsi untuk proyek yang masih di bawah
Next.js 16.1, karena perintah `next upgrade` baru ada setelah versi itu.
[Catatan rilis Next.js 16.1](https://nextjs.org/blog/next-16-1) menyebut
perintah baru ini secara eksplisit: "A new `next upgrade` command makes
upgrading easier. Going forward, you can just run this to upgrade
Next.js versions."

### Perbedaan dengan Instal Manual

Upgrade manual (`npm install next@latest react@latest react-dom@latest`)
tetap berfungsi, tapi tidak menjalankan codemod apa pun, jadi perubahan
API atau rename file (seperti `middleware.ts` ke `proxy.ts` yang
[sudah dibahas di artikel fitur baru Next.js 16.1-16.3](/blog/fitur-baru-nextjs-16-1-16-2-16-3))
harus diubah sendiri satu per satu. `next upgrade` menggabungkan kedua
langkah itu, instal versi baru sekaligus migrasi otomatis, dalam satu
perintah.

## Bagaimana Cara Kerja next upgrade --agent?

Varian `next upgrade --agent` adalah fitur eksperimental yang
menyerahkan seluruh proses upgrade ke coding agent seperti Claude Code
atau Codex. Berdasarkan [dokumentasi upgrade dengan coding agent](https://nextjs.org/docs/app/guides/upgrading/agent-upgrade),
CLI ini memeriksa versi terpasang dan metadata rilis, menentukan target
upgrade sesuai kebijakan yang dipilih, menyiapkan panduan migrasi untuk
setiap versi major yang dilewati, lalu menugaskan agent untuk
menjalankan dan memverifikasi hasilnya.

Tiga kebijakan target yang didukung:

- **`security`**: kebijakan default, memilih rilis aman terbaru di versi
  major paling awal yang masih terdampak kerentanan.
- **`latest`**: memindahkan proyek ke rilis stabil terbaru dari npm.
- **`experimental-future`**: menjalankan kebijakan `latest`, lalu
  menerapkan "Future Defaults" seperti Cache Components bila proyek
  sudah di Next.js 16.3 ke atas dan memakai App Router.

Dokumentasi resminya menjelaskan agent juga diminta memverifikasi hasil
dan menyimpan kebijakan yang dipilih ke `experimental.agentUpgrade` di
`next.config` supaya pengingat upgrade berikutnya memakai preferensi
yang sama.

## Kapan Sebaiknya Pakai next upgrade?

`next upgrade` paling cocok untuk update rutin dalam rilis minor atau
patch, misalnya naik dari 16.1 ke 16.3, karena perubahan di level itu
biasanya sudah tercakup codemod resmi. Untuk upgrade lintas versi major
dengan breaking change lebih besar, seperti dari Next.js 15 ke 16,
[panduan upgrade langkah demi langkah](/blog/cara-upgrade-nextjs-15-ke-16-langkah-demi-langkah)
tetap lebih aman diikuti manual karena ada keputusan desain (akses
asinkron `params`/`searchParams`, migrasi Turbopack) yang perlu
diverifikasi, bukan sekadar dijalankan otomatis.

Kebijakan `security` pada `next upgrade --agent` juga relevan untuk
proyek yang menunda upgrade karena alasan stabilitas: begitu versi yang
dipakai masuk daftar terdampak kerentanan, seperti [rilis keamanan 30
September 2026](/blog/fitur-baru-nextjs-16-1-16-2-16-3) yang menambal
tujuh kerentanan di Next.js 16.3.8 dan 15.5.27, kebijakan ini otomatis
mengarahkan ke rilis aman terdekat tanpa harus melompat ke versi major
terbaru sekaligus.

## Ringkasan: next upgrade Gantikan Codemod Manual, --agent Tambah Verifikasi Otomatis

- `next upgrade` (sejak Next.js 16.1, Desember 2025) menggabungkan
  instal versi terbaru dan codemod migrasi jadi satu perintah bawaan,
  menggantikan paket terpisah `@next/codemod` untuk proyek yang sudah di
  16.1 ke atas.
- Varian `--agent` menyerahkan proses ke coding agent dengan tiga
  kebijakan target (`security`, `latest`, `experimental-future`), cocok
  untuk tim yang sudah memakai coding agent dalam workflow upgrade.
- Perintah ini pas untuk update rutin satu versi major, bukan pengganti
  panduan manual untuk upgrade lintas major yang breaking change-nya
  lebih besar, seperti [upgrade Next.js 15 ke 16](/blog/cara-upgrade-nextjs-15-ke-16-langkah-demi-langkah)
  atau jadwal dukungannya yang [sudah dibahas di sini](/blog/jadwal-lts-dan-eol-nextjs-15-16).
- Butuh bantuan audit versi dan rencana upgrade stack Next.js tanpa
  risiko downtime produksi? [Jasa web development Irfan](/layanan)
  mencakup migrasi dan upgrade semacam ini.