Maintenance
ช่องทางการเผยแพร่
OpenClaw มีช่องทางอัปเดตสามช่องทาง:
- stable: npm dist-tag
latestแนะนำสำหรับผู้ใช้ส่วนใหญ่ - beta: npm dist-tag
betaเมื่อเป็นเวอร์ชันปัจจุบัน หากไม่มี beta หรือเก่ากว่า รุ่น stable ล่าสุด โฟลว์การอัปเดตจะย้อนกลับไปใช้latest - dev: หัวล่าสุดที่เปลี่ยนไปเรื่อย ๆ ของ
main(git) npm dist-tag:dev(เมื่อเผยแพร่) สาขาmainมีไว้สำหรับการทดลองและการพัฒนาที่กำลังดำเนินอยู่ อาจมี ฟีเจอร์ที่ยังไม่สมบูรณ์หรือการเปลี่ยนแปลงที่ทำให้เข้ากันไม่ได้ อย่าใช้กับ Gateway สำหรับโปรดักชัน
โดยปกติเราจะส่ง build stable ไปยัง beta ก่อน ทดสอบที่นั่น แล้วจึงรัน
ขั้นตอนโปรโมตแบบชัดเจนเพื่อย้าย build ที่ผ่านการตรวจสอบแล้วไปยัง latest โดยไม่
เปลี่ยนหมายเลขเวอร์ชัน ผู้ดูแลยังสามารถเผยแพร่รุ่น stable
ไปยัง latest โดยตรงได้เมื่อจำเป็น dist-tag เป็นแหล่งข้อมูลจริงสำหรับการติดตั้งผ่าน npm
การสลับช่องทาง
openclaw update --channel stableopenclaw update --channel betaopenclaw update --channel dev--channel จะบันทึกตัวเลือกของคุณไว้ใน config (update.channel) และจัดวิธี
ติดตั้งให้ตรงกัน:
stable(การติดตั้งแบบแพ็กเกจ): อัปเดตผ่าน npm dist-taglatestbeta(การติดตั้งแบบแพ็กเกจ): เลือกใช้ npm dist-tagbetaก่อน แต่จะย้อนกลับไปใช้latestเมื่อไม่มีbetaหรือเก่ากว่าแท็ก stable ปัจจุบันstable(การติดตั้งแบบ git): checkout แท็ก git stable ล่าสุดbeta(การติดตั้งแบบ git): เลือกใช้แท็ก git beta ล่าสุดก่อน แต่จะย้อนกลับไปใช้ แท็ก git stable ล่าสุดเมื่อไม่มี beta หรือเก่ากว่าdev: ทำให้แน่ใจว่ามี git checkout (ค่าเริ่มต้น~/openclaw, เปลี่ยนได้ด้วยOPENCLAW_GIT_DIR), สลับไปที่main, rebase บน upstream, build และ ติดตั้ง CLI แบบ global จาก checkout นั้น
การกำหนดเป้าหมายเวอร์ชันหรือแท็กแบบครั้งเดียว
ใช้ --tag เพื่อกำหนดเป้าหมาย dist-tag, เวอร์ชัน หรือ package spec เฉพาะสำหรับการ
อัปเดตครั้งเดียว โดยไม่ เปลี่ยนช่องทางที่บันทึกไว้ของคุณ:
# Install a specific versionopenclaw update --tag 2026.4.1-beta.1 # Install from the beta dist-tag (one-off, does not persist)openclaw update --tag beta # Install from GitHub main branch (npm tarball)openclaw update --tag main # Install a specific npm package specopenclaw update --tag [email protected]หมายเหตุ:
--tagใช้ได้กับ การติดตั้งแบบแพ็กเกจ (npm) เท่านั้น การติดตั้งแบบ git จะไม่สนใจค่านี้- แท็กจะไม่ถูกบันทึกไว้
openclaw updateครั้งถัดไปจะใช้ช่องทางที่คุณกำหนดค่าไว้ ตามปกติ - การป้องกันการดาวน์เกรด: หากเวอร์ชันเป้าหมายเก่ากว่าเวอร์ชันปัจจุบันของคุณ
OpenClaw จะถามเพื่อยืนยัน (ข้ามได้ด้วย
--yes) --channel betaแตกต่างจาก--tag beta: โฟลว์ของช่องทางสามารถย้อนกลับไปใช้ stable/latest ได้เมื่อไม่มี beta หรือเก่ากว่า ขณะที่--tag betaจะกำหนดเป้าหมาย dist-tagbetaดิบสำหรับการรันครั้งนั้นครั้งเดียว
Dry run
ดูตัวอย่างว่า openclaw update จะทำอะไรโดยไม่เปลี่ยนแปลงอะไร:
openclaw update --dry-runopenclaw update --channel beta --dry-runopenclaw update --tag 2026.4.1-beta.1 --dry-runopenclaw update --dry-run --jsondry run จะแสดงช่องทางที่มีผล เวอร์ชันเป้าหมาย การดำเนินการที่วางแผนไว้ และ ต้องมีการยืนยันการดาวน์เกรดหรือไม่
Plugin และช่องทาง
เมื่อคุณสลับช่องทางด้วย openclaw update OpenClaw จะซิงค์แหล่งที่มาของ plugin
ด้วย:
devเลือกใช้ plugin ที่ bundled มาจาก git checkout ก่อนstableและbetaกู้คืนแพ็กเกจ plugin ที่ติดตั้งผ่าน npm- plugin ที่ติดตั้งผ่าน npm จะถูกอัปเดตหลังจากการอัปเดต core เสร็จสมบูรณ์
การตรวจสอบสถานะปัจจุบัน
openclaw update statusแสดงช่องทางที่ใช้งานอยู่ ชนิดการติดตั้ง (git หรือแพ็กเกจ) เวอร์ชันปัจจุบัน และ แหล่งที่มา (config, แท็ก git, สาขา git หรือค่าเริ่มต้น)
แนวทางปฏิบัติที่ดีในการติดแท็ก
- ติดแท็กรุ่นที่คุณต้องการให้ git checkout ไปลงที่นั่น (
vYYYY.M.Dสำหรับ stable,vYYYY.M.D-beta.Nสำหรับ beta) vYYYY.M.D.beta.Nยังถูกรองรับเพื่อความเข้ากันได้ แต่ควรใช้-beta.N- แท็กดั้งเดิม
vYYYY.M.D-<patch>ยังถูกรู้จักเป็น stable (ไม่ใช่ beta) - รักษาแท็กให้ไม่เปลี่ยนแปลง: อย่าย้ายหรือนำแท็กกลับมาใช้ซ้ำ
- npm dist-tag ยังคงเป็นแหล่งข้อมูลจริงสำหรับการติดตั้งผ่าน npm:
latest-> stablebeta-> build ตัวเลือกก่อนปล่อย หรือ build stable ที่ปล่อยเข้า beta ก่อนdev-> snapshot ของ main (ไม่บังคับ)
ความพร้อมใช้งานของแอป macOS
build beta และ dev อาจ ไม่มี รุ่นแอป macOS ซึ่งไม่เป็นไร:
- ยังสามารถเผยแพร่แท็ก git และ npm dist-tag ได้
- ระบุว่า "ไม่มี build macOS สำหรับ beta นี้" ใน release notes หรือ changelog