Maintenance

Memperbarui

Jaga OpenClaw tetap mutakhir.

Direkomendasikan: openclaw update

Cara tercepat untuk memperbarui. Ini mendeteksi jenis instalasi Anda (npm atau git), mengambil versi terbaru, menjalankan openclaw doctor, dan memulai ulang Gateway.

openclaw update

Untuk beralih kanal atau menargetkan versi tertentu:

openclaw update --channel beta
openclaw update --channel dev
openclaw update --tag main
openclaw update --dry-run   # preview without applying

openclaw update tidak menerima --verbose. Untuk diagnostik pembaruan, gunakan --dry-run untuk meninjau tindakan yang direncanakan, --json untuk hasil terstruktur, atau openclaw update status --json untuk memeriksa status kanal dan ketersediaan. Penginstal memiliki flag --verbose sendiri, tetapi flag tersebut bukan bagian dari openclaw update.

--channel beta mengutamakan beta, tetapi lingkungan berjalan akan kembali ke stable/latest ketika tag beta tidak ada atau lebih lama daripada rilis stabil terbaru. Gunakan --tag beta jika Anda menginginkan dist-tag beta npm mentah untuk pembaruan paket satu kali.

Lihat Kanal pengembangan untuk makna kanal.

Beralih antara instalasi npm dan git

Gunakan kanal ketika Anda ingin mengubah jenis instalasi. Pembaru mempertahankan status, konfigurasi, kredensial, dan workspace Anda di ~/.openclaw; pembaru hanya mengubah instalasi kode OpenClaw yang digunakan CLI dan Gateway.

# npm package install -> editable git checkout
openclaw update --channel dev

# git checkout -> npm package install
openclaw update --channel stable

Jalankan dengan --dry-run terlebih dahulu untuk meninjau perpindahan mode instalasi yang tepat:

openclaw update --channel dev --dry-run
openclaw update --channel stable --dry-run

Kanal dev memastikan checkout git, membangunnya, dan menginstal CLI global dari checkout tersebut. Kanal stable dan beta menggunakan instalasi paket. Jika Gateway sudah terinstal, openclaw update menyegarkan metadata layanan dan memulai ulangnya kecuali Anda meneruskan --no-restart.

Alternatif: jalankan ulang penginstal

curl -fsSL https://openclaw.ai/install.sh | bash

Tambahkan --no-onboard untuk melewati penyiapan awal. Untuk memaksa jenis instalasi tertentu melalui penginstal, teruskan --install-method git --no-onboard atau --install-method npm --no-onboard.

Jika openclaw update gagal setelah fase instalasi paket npm, jalankan ulang penginstal. Penginstal tidak memanggil alat pembaru lama; penginstal menjalankan instalasi paket global secara langsung dan dapat memulihkan instalasi npm yang baru sebagian diperbarui.

curl -fsSL https://openclaw.ai/install.sh | bash -s -- --install-method npm

Untuk mengunci pemulihan ke versi atau dist-tag tertentu, tambahkan --version:

curl -fsSL https://openclaw.ai/install.sh | bash -s -- --install-method npm --version <version-or-dist-tag>

Alternatif: npm, pnpm, atau bun manual

npm i -g openclaw@latest

Utamakan openclaw update untuk instalasi yang diawasi karena dapat mengoordinasikan pertukaran paket dengan layanan Gateway yang sedang berjalan. Jika Anda memperbarui secara manual saat Gateway terkelola sedang berjalan, mulai ulang Gateway segera setelah pengelola paket selesai agar proses lama tidak terus melayani dari file paket yang sudah diganti.

Ketika openclaw update mengelola instalasi npm global, pembaru terlebih dahulu menginstal target ke prefiks npm sementara, memverifikasi inventaris dist terpaket, lalu menukar pohon paket bersih ke prefiks global sebenarnya. Ini mencegah npm melapiskan paket baru di atas file usang dari paket lama. Jika perintah instalasi gagal, OpenClaw mencoba sekali lagi dengan --omit=optional. Percobaan ulang itu membantu host tempat dependensi opsional native tidak dapat dikompilasi, sambil tetap menampilkan kegagalan asli jika jalur cadangan juga gagal.

pnpm add -g openclaw@latest
bun add -g openclaw@latest

Topik lanjutan instalasi npm

Read-only package tree

OpenClaw memperlakukan instalasi global terpaket sebagai baca-saja saat berjalan, bahkan ketika direktori paket global dapat ditulis oleh pengguna saat ini. Instalasi paket Plugin berada di root npm/git milik OpenClaw di bawah direktori konfigurasi pengguna, dan startup Gateway tidak mengubah pohon paket OpenClaw.

Beberapa penyiapan npm Linux menginstal paket global di bawah direktori yang dimiliki root seperti /usr/lib/node_modules/openclaw. OpenClaw mendukung tata letak tersebut karena perintah instalasi/pembaruan Plugin menulis di luar direktori paket global tersebut.

Hardened systemd units

Berikan OpenClaw akses tulis ke root konfigurasi/statusnya agar instalasi Plugin eksplisit, pembaruan Plugin, dan pembersihan doctor dapat mempertahankan perubahan mereka:

ReadWritePaths=/var/lib/openclaw /home/openclaw/.openclaw /tmp
Disk-space preflight

Sebelum pembaruan paket dan instalasi Plugin eksplisit, OpenClaw mencoba pemeriksaan ruang disk sebaik mungkin untuk volume target. Ruang rendah menghasilkan peringatan dengan path yang diperiksa, tetapi tidak memblokir pembaruan karena kuota sistem file, snapshot, dan volume jaringan dapat berubah setelah pemeriksaan. Instalasi pengelola paket aktual dan verifikasi pascainstalasi tetap menjadi acuan.

Pembaruan otomatis

Pembaruan otomatis nonaktif secara default. Aktifkan di ~/.openclaw/openclaw.json:

{
  update: {
    channel: "stable",
    auto: {
      enabled: true,
      stableDelayHours: 6,
      stableJitterHours: 12,
      betaCheckIntervalHours: 1,
    },
  },
}
Kanal Perilaku
stable Menunggu stableDelayHours, lalu menerapkan dengan jitter deterministik sepanjang stableJitterHours (peluncuran tersebar).
beta Memeriksa setiap betaCheckIntervalHours (default: setiap jam) dan langsung menerapkan.
dev Tidak ada penerapan otomatis. Gunakan openclaw update secara manual.

Gateway juga mencatat petunjuk pembaruan saat startup (nonaktifkan dengan update.checkOnStart: false). Untuk penurunan versi atau pemulihan insiden, tetapkan OPENCLAW_NO_AUTO_UPDATE=1 di lingkungan Gateway untuk memblokir penerapan otomatis meskipun update.auto.enabled dikonfigurasi. Petunjuk pembaruan saat startup masih dapat berjalan kecuali update.checkOnStart juga dinonaktifkan.

Pembaruan pengelola paket yang diminta melalui penangan control-plane Gateway live memaksa mulai ulang pembaruan tanpa penundaan dan tanpa masa tunggu setelah pertukaran paket. Ini mencegah proses lama di memori tetap ada cukup lama untuk memuat chunk sesuai kebutuhan dari pohon paket yang sudah diganti. Perintah shell openclaw update tetap menjadi jalur yang disarankan untuk instalasi yang diawasi karena dapat menghentikan dan memulai ulang layanan di sekitar pembaruan.

Setelah memperbarui

Jalankan doctor

openclaw doctor

Memigrasikan konfigurasi, mengaudit kebijakan DM, dan memeriksa kesehatan Gateway. Detail: Doctor

Mulai ulang Gateway

openclaw gateway restart

Verifikasi

openclaw health

Kembalikan versi

Kunci versi (npm)

npm i -g openclaw@<version>
openclaw doctor
openclaw gateway restart

Kunci commit (sumber)

git fetch origin
git checkout "$(git rev-list -n 1 --before=\"2026-01-01\" origin/main)"
pnpm install && pnpm build
openclaw gateway restart

Untuk kembali ke yang terbaru: git checkout main && git pull.

Jika Anda mengalami kendala

  • Jalankan openclaw doctor lagi dan baca keluarannya dengan cermat.
  • Untuk openclaw update --channel dev pada checkout sumber, pembaru melakukan bootstrap otomatis terhadap pnpm saat diperlukan. Jika Anda melihat galat bootstrap pnpm/corepack, instal pnpm secara manual (atau aktifkan ulang corepack) dan jalankan ulang pembaruan.
  • Periksa: Pemecahan masalah
  • Tanyakan di Discord: https://discord.gg/clawd

Terkait