Maintenance
کانالهای انتشار
OpenClaw با چهار کانال بهروزرسانی عرضه میشود:
- پایدار: dist-tag npm با نام
latest. برای بیشتر کاربران توصیه میشود. - پایدارِ توسعهیافته: dist-tag npm با نام
extended-stable. یک کانال بستهای کاملاً جدید و با تأخیر زمانی برای ماههای پشتیبانیشده است. این کانال فقط بستهای است و نصب آن فقط در پیشزمینه انجام میشود. وقتیupdate.checkOnStartفعال باشد، انتخاب ذخیرهشده راهنماییهای فقطخواندنی بهروزرسانی را دریافت میکند، اما هرگز بهطور خودکار اعمال نمیشود. - بتا: dist-tag npm با نام
beta. وقتیbetaوجود نداشته باشد یا از انتشار پایدار فعلی قدیمیتر باشد، بهlatestبازمیگردد. - توسعه: نوک متحرک شاخه
mainدر git. هنگام انتشار، dist-tag npm با نامdev. شاخهmainبرای آزمایش و توسعه فعال است؛ ممکن است شامل قابلیتهای ناقص یا تغییرات ناسازگار باشد. آن را برای Gatewayهای عملیاتی اجرا نکنید.
ساختهای پایدار معمولاً ابتدا در بتا منتشر و همانجا ارزیابی میشوند، سپس
بدون افزایش نسخه به latest ارتقا مییابند. نگهدارندگان همچنین میتوانند
مستقیماً در latest منتشر کنند. dist-tagها مرجع نهایی نصبهای npm هستند.
تغییر کانالها
openclaw update --channel stableopenclaw update --channel extended-stableopenclaw update --channel betaopenclaw update --channel devگزینه --channel انتخاب را در update.channel در پیکربندی ماندگار میکند و هر دو
مسیر نصب را هدایت میکند:
| کانال | نصبهای npm/بسته | نصبهای git |
|---|---|---|
stable |
dist-tag latest |
جدیدترین برچسب پایدار git (بهجز -alpha.N، -beta.N، -rc.N، -dev.N، -next.N، -preview.N، -canary.N، -nightly.N و سایر پسوندهای نامدار پیشانتشار) |
extended-stable |
انتخابگر عمومی extended-stable در npm را تفکیک میکند، بسته دقیق انتخابشده را تأیید میکند و همان نسخه دقیق را نصب میکند. بدون هیچ بازگشتی به latest، beta یا dev بهصورت بسته شکست میخورد. |
پشتیبانی نمیشود: OpenClaw نسخه کاری را بدون تغییر میگذارد و از شما میخواهد از نصب بستهای استفاده کنید |
beta |
dist-tag beta، با بازگشت به latest وقتی beta وجود ندارد یا قدیمیتر است |
جدیدترین برچسب بتای git، با بازگشت به جدیدترین برچسب پایدار git وقتی بتا وجود ندارد یا قدیمیتر است |
dev |
dist-tag dev (نادر؛ بیشتر کاربران توسعه از نصبهای git استفاده میکنند) |
دریافت میکند، نسخه کاری را روی شاخه بالادستی main بازپایهگذاری میکند، میسازد و CLI سراسری را دوباره نصب میکند |
برای نصبهای git کانال dev، نسخه کاری پیشفرض ~/openclaw است (یا وقتی
OPENCLAW_HOME تنظیم شده باشد، $OPENCLAW_HOME/openclaw)؛ با
OPENCLAW_GIT_DIR آن را بازنویسی کنید.
هدفگیری یکباره نسخه یا برچسب
از --tag برای هدفگیری یک dist-tag، نسخه یا مشخصات بسته خاص در
یک بهروزرسانی منفرد، بدون تغییر کانال ماندگار، استفاده کنید:
# نصب یک نسخه مشخصopenclaw update --tag 2026.4.1-beta.1 # نصب از dist-tag بتا (یکباره، ماندگار نمیشود)openclaw update --tag beta # تغییر به نسخه کاری متحرک main در GitHub (ماندگار)openclaw update --channel dev # نصب یک مشخصات بسته npmopenclaw update --tag openclaw@2026.4.1-beta.1 # نصب یکباره از main در GitHub بدون ماندگار کردن کانالopenclaw update --tag mainنکات:
- گزینه
--tagفقط برای نصبهای بستهای (npm) اعمال میشود؛ نصبهای git آن را نادیده میگیرند. - برچسب ماندگار نمیشود؛ اجرای بعدی
openclaw updateاز کانال پیکربندیشده استفاده میکند. - گزینه
--tag mainبرای همان اجرای یکباره به مشخصات سازگار با npm یعنیgithub:openclaw/openclaw#mainنگاشت میشود. برای نصب متحرک و ماندگارmain، ازopenclaw update --channel devاستفاده کنید (نصبهای بستهای به نسخه کاری git تغییر میکنند) یا با روش git نصبکننده دوباره نصب کنید:curl -fsSL https://openclaw.ai/install.sh | bash -s -- --install-method git --version main. مسیر نصب npm هدفهای منبع GitHub/git را بهطور کامل رد میکند و در عوض شما را به روش git هدایت میکند. - محافظت در برابر تنزل نسخه: اگر نسخه هدف از نسخه فعلی قدیمیتر باشد،
OpenClaw برای تأیید درخواست میکند (با
--yesاز آن صرفنظر کنید). - پایدارِ توسعهیافته همیشه از هدف بسته دقیق و تأییدشده خود استفاده میکند. این کانال
نام مستعار یکبارهای برای
--tag extended-stableنیست و--tagرا نمیتوان با کانال مؤثر پایدارِ توسعهیافته ترکیب کرد. - گزینه
--channel betaبا--tag betaتفاوت دارد: جریان کانال میتواند وقتی بتا وجود ندارد یا قدیمیتر است، به پایدار/latestبازگردد؛ درحالیکه--tag betaبرای همان اجرای یکباره همیشه dist-tag خامbetaرا هدف میگیرد.
اجرای آزمایشی
بدون اعمال تغییرات، کاری را که openclaw update انجام خواهد داد پیشنمایش کنید:
openclaw update --dry-runopenclaw update --channel beta --dry-runopenclaw update --tag 2026.4.1-beta.1 --dry-runopenclaw update --dry-run --jsonاجرای آزمایشی کانال مؤثر، نسخه هدف، اقدامات برنامهریزیشده و نیاز یا عدم نیاز به تأیید تنزل نسخه را گزارش میکند.
Pluginها و کانالها
تغییر کانالها با openclaw update منابع Plugin را نیز همگامسازی میکند:
dev، Pluginهای نصبشدهای را که همتای همراه دارند، دوباره به منبع همراهشان (نسخه کاری git) تغییر میدهد.stableوbetaبستههای Plugin نصبشده از npm یا ClawHub را بازیابی میکنند.extended-stable، Pluginهای رسمی واجد شرایط npm را که نیت ساده/پیشفرض یاlatestدارند، به نسخه دقیق نصبشده هسته تفکیک میکند. این کانال در زمان اجرا برچسبهای@extended-stableمربوط به Plugin را واکشی نمیکند.- Pluginهای نصبشده از npm پس از تکمیل بهروزرسانی هسته، بهروزرسانی میشوند.
بررسی وضعیت فعلی
openclaw update statusکانال فعال را همراه با منبع تعیینکننده آن (پیکربندی، برچسب git، شاخه git، نسخه نصبشده یا مقدار پیشفرض)، نوع نصب (git یا بسته)، نسخه فعلی و موجود بودن بهروزرسانی نمایش میدهد.
بهترین روشهای برچسبگذاری
- انتشارهایی را که میخواهید نسخههای کاری git روی آنها قرار گیرند برچسب بزنید:
vYYYY.M.PATCHبرای پایدار، وvYYYY.M.PATCH-beta.Nبرای بتا. پسوندهای نامدار پیشانتشار مانند-alpha.N،-rc.Nو-next.Nهدف پایدار یا بتا نیستند. - برچسبهای عددی قدیمی پایدار مانند
vYYYY.M.PATCH-1وv1.0.1-1همچنان برای سازگاری بهعنوان برچسبهای پایدار git شناخته میشوند. - قالب
vYYYY.M.PATCH.beta.N(با جداسازی نقطهای) نیز برای سازگاری شناخته میشود؛ قالب-beta.Nرا ترجیح دهید. - برچسبها را تغییرناپذیر نگه دارید: هرگز یک برچسب را جابهجا یا دوباره استفاده نکنید.
- dist-tagهای npm همچنان مرجع نهایی نصبهای npm هستند:
latest-> پایدارextended-stable-> انتشار بستهای مربوط به ماه پشتیبانیشده قبلیbeta-> ساخت نامزد یا ساخت پایدار با انتشار اولیه در بتاdev-> تصویر لحظهای main (اختیاری)
دسترسپذیری برنامه macOS
ساختهای بتا و توسعه ممکن است شامل انتشار برنامه macOS نباشند. این اشکالی ندارد:
- برچسب git و dist-tag npm همچنان میتوانند بهتنهایی منتشر شوند.
- عبارت «برای این بتا ساخت macOS وجود ندارد» را در یادداشتهای انتشار یا گزارش تغییرات ذکر کنید.