9.1 KiB
| read_when | summary | title | x-i18n | ||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
|
`openclaw update` için CLI referansı (nispeten güvenli kaynak güncellemesi + Gateway otomatik yeniden başlatma) | Güncelle |
|
openclaw update
OpenClaw'ı güvenli şekilde güncelleyin ve stable/beta/dev kanalları arasında geçiş yapın.
npm/pnpm/bun ile kurduysanız (global kurulum, git metadata'sı yok), güncellemeler Güncelleme içindeki paket yöneticisi akışıyla gerçekleşir.
Kullanım
openclaw update
openclaw update status
openclaw update wizard
openclaw update --channel beta
openclaw update --channel dev
openclaw update --tag beta
openclaw update --tag main
openclaw update --dry-run
openclaw update --no-restart
openclaw update --yes
openclaw update --json
openclaw --update
Seçenekler
--no-restart: başarılı bir güncellemeden sonra Gateway hizmetini yeniden başlatmayı atla. Gateway'i yeniden başlatan paket yöneticisi güncellemeleri, komut başarılı olmadan önce yeniden başlatılan hizmetin beklenen güncellenmiş sürümü bildirdiğini doğrular.--channel <stable|beta|dev>: güncelleme kanalını ayarla (git + npm; yapılandırmada kalıcı olur).--tag <dist-tag|version|spec>: yalnızca bu güncelleme için paket hedefini geçersiz kıl. Paket kurulumları içinmain,github:openclaw/openclaw#mainile eşleşir.--dry-run: yapılandırma yazmadan, kurulum yapmadan, Plugin'leri senkronize etmeden veya yeniden başlatmadan planlanan güncelleme eylemlerini (kanal/etiket/hedef/yeniden başlatma akışı) önizle.--json: npm Plugin artifact sapması güncelleme sonrası Plugin senkronizasyonu sırasında algılandığındapostUpdate.plugins.integrityDriftsdahil makine tarafından okunabilirUpdateRunResultJSON yazdır.--timeout <seconds>: adım başına zaman aşımı (varsayılan 1800s).--yes: onay istemlerini atla (örneğin sürüm düşürme onayı).
update status
Etkin güncelleme kanalını + git etiketi/dalı/SHA'sını (source checkout'ları için) ve güncelleme uygunluğunu göster.
openclaw update status
openclaw update status --json
openclaw update status --timeout 10
Seçenekler:
--json: makine tarafından okunabilir durum JSON'u yazdır.--timeout <seconds>: kontroller için zaman aşımı (varsayılan 3s).
update wizard
Güncelleme kanalı seçmek ve güncellemeden sonra Gateway'in yeniden başlatılıp başlatılmayacağını
onaylamak için etkileşimli akış (varsayılan yeniden başlatmaktır). Git checkout olmadan dev seçerseniz,
bir tane oluşturmayı teklif eder.
Seçenekler:
--timeout <seconds>: her güncelleme adımı için zaman aşımı (varsayılan1800)
Ne yapar
Kanalları açıkça değiştirdiğinizde (--channel ...), OpenClaw kurulum
yöntemini de hizalı tutar:
dev→ bir git checkout olduğundan emin olur (varsayılan:~/openclaw,OPENCLAW_GIT_DIRile geçersiz kılınır), onu günceller ve global CLI'yi bu checkout'tan kurar.stable→ npm'denlatestkullanarak kurar.beta→ npm dist-tagbetatercih eder, ancak beta yoksa veya mevcut stable sürümden daha eskiyselatest'e geri döner.
Gateway core otomatik güncelleyici (yapılandırma üzerinden etkinleştirildiğinde), canlı Gateway istek işleyicisinin
dışında CLI güncelleme yolunu başlatır. Control-plane update.run paket yöneticisi
güncellemeleri, paket değişiminden sonra ertelenmeyen ve cooldown uygulanmayan bir güncelleme yeniden başlatmasını zorlar,
çünkü eski Gateway sürecinde yeni paket tarafından kaldırılmış dosyalara işaret eden
bellek içi parçalar hâlâ bulunabilir.
Paket yöneticisi kurulumları için openclaw update, paket yöneticisini çağırmadan önce hedef paket
sürümünü çözümler. npm global kurulumları aşamalı
kurulum kullanır: OpenClaw yeni paketi geçici bir npm prefix'ine kurar, oradaki
paketlenmiş dist envanterini doğrular, ardından bu temiz paket ağacını gerçek
global prefix'e taşır. Doğrulama başarısız olursa güncelleme sonrası doctor, Plugin senkronizasyonu ve
yeniden başlatma işleri şüpheli ağaçtan çalıştırılmaz. Kurulu sürüm
zaten hedefle eşleşse bile komut global paket kurulumunu yeniler,
ardından Plugin senkronizasyonu, core-command tamamlama yenilemesi ve yeniden başlatma işlerini çalıştırır. Bu,
paketlenmiş sidecar'ları ve kanalın sahip olduğu Plugin kayıtlarını kurulu
OpenClaw derlemesiyle hizalı tutarken tam Plugin-command tamamlama yeniden derlemelerini
açık openclaw completion --write-state çalıştırmalarına bırakır.
Yerel yönetilen Gateway hizmeti kurulu olduğunda ve yeniden başlatma etkinleştirildiğinde,
paket yöneticisi güncellemeleri paket ağacını değiştirmeden önce çalışan hizmeti durdurur,
ardından güncellenmiş kurulumdan hizmet metadata'sını yeniler, hizmeti yeniden başlatır
ve yeniden başlatılan Gateway'in beklenen sürümü bildirdiğini doğrular. --no-restart ile
paket değiştirme yine çalışır, ancak yönetilen hizmet durdurulmaz veya yeniden
başlatılmaz; bu nedenle çalışan Gateway, manuel olarak yeniden başlatana kadar eski kodu tutabilir.
Git checkout akışı
Kanal seçimi
stable: en son beta olmayan etiketi checkout et, ardından build ve doctor çalıştır.beta: en son-betaetiketini tercih et, ancak beta yoksa veya daha eskiyse en son stable etikete geri dön.dev:maincheckout et, ardından fetch ve rebase yap.
Güncelleme adımları
Commit edilmemiş değişiklik olmamasını gerektirir. Seçilen kanala geçer (etiket veya dal). Yalnızca dev. Geçici bir worktree içinde lint ve TypeScript build çalıştırır. Uç başarısız olursa en yeni temiz build'i bulmak için en fazla 10 commit geriye gider. Seçilen commit üzerine rebase yapar (yalnızca dev). Repo paket yöneticisini kullanır. pnpm checkout'ları için updater, pnpm workspace içinde `npm run build` çalıştırmak yerine `pnpm`'i gerektiğinde bootstrap eder (önce `corepack` üzerinden, ardından geçici `npm install pnpm@10` fallback'i ile). Gateway'i ve Control UI'yi build eder. `openclaw doctor`, son güvenli güncelleme kontrolü olarak çalışır. Plugin'leri etkin kanala senkronize eder. Dev, bundled Plugin'leri kullanır; stable ve beta npm kullanır. İzlenen Plugin kurulumlarını günceller.Beta güncelleme kanalında, varsayılan/latest hattını izleyen izlenen npm ve ClawHub Plugin
kurulumları önce bir Plugin @beta sürümünü dener. Plugin'in beta sürümü yoksa
OpenClaw, kaydedilmiş varsayılan/latest spec'e geri döner. Kesin
sürümler ve açık etiketler yeniden yazılmaz.
Güncellenmiş Gateway başladığında, Plugin yükleme yalnızca doğrulama amaçlıdır: başlangıç, paket yöneticilerini çalıştırmaz veya bağımlılık ağaçlarını değiştirmez. Paket yöneticisi update.run yeniden başlatmaları, paket ağacı değiştirildikten sonra normal boşta ertelemesini ve yeniden başlatma cooldown'unu atlar; böylece eski süreç kaldırılmış parçaları lazy-loading ile tutamaz.
Pnpm bootstrap hâlâ başarısız olursa updater, checkout içinde npm run build denemek yerine paket yöneticisine özgü bir hatayla erken durur.
--update kısaltması
openclaw --update, openclaw update olarak yeniden yazılır (kabuklar ve launcher script'leri için kullanışlıdır).
İlgili
openclaw doctor(git checkout'larında önce güncelleme çalıştırmayı teklif eder)- Geliştirme kanalları
- Güncelleme
- CLI başvurusu