Maintenance
کانالهای انتشار
OpenClaw سه کانال بهروزرسانی ارائه میکند:
- stable: dist-tag در npm با نام
latest. برای بیشتر کاربران توصیه میشود. - beta: dist-tag در npm با نام
betaوقتی جاری باشد؛ اگر beta موجود نباشد یا قدیمیتر از آخرین انتشار پایدار باشد، جریان بهروزرسانی بهlatestبرمیگردد. - dev: سر متحرک
main(git). dist-tag در npm:dev(وقتی منتشر شده باشد). شاخهیmainبرای آزمایش و توسعهی فعال است. ممکن است شامل قابلیتهای ناتمام یا تغییرات ناسازگار باشد. از آن برای gatewayهای تولیدی استفاده نکنید.
ما معمولاً بیلدهای پایدار را ابتدا به beta منتشر میکنیم، آنها را آنجا آزمایش میکنیم، سپس یک
گام ارتقای صریح اجرا میکنیم که بیلد بررسیشده را بدون
تغییر شماره نسخه به latest منتقل میکند. نگهدارندگان همچنین میتوانند در صورت نیاز یک انتشار پایدار را
مستقیماً به latest منتشر کنند. dist-tagها منبع حقیقت برای نصبهای npm هستند.
تغییر کانالها
openclaw update --channel stableopenclaw update --channel betaopenclaw update --channel dev--channel انتخاب شما را در پیکربندی (update.channel) پایدار میکند و
روش نصب را همراستا میسازد:
stable(نصبهای بستهای): از طریق dist-tag در npm با نامlatestبهروزرسانی میشود.beta(نصبهای بستهای): dist-tag در npm با نامbetaرا ترجیح میدهد، اما وقتیbetaموجود نباشد یا قدیمیتر از برچسب پایدار فعلی باشد، بهlatestبرمیگردد.stable(نصبهای git): آخرین برچسب پایدار git را checkout میکند و برچسبهای پیشانتشار semver مانند-alpha.N،-beta.N،-rc.N،-dev.N،-next.N،-preview.N،-canary.N،-nightly.Nو پسوندهای دیگر پیشانتشار را کنار میگذارد.beta(نصبهای git): آخرین برچسب beta در git را ترجیح میدهد، اما وقتی beta موجود نباشد یا قدیمیتر باشد به آخرین برچسب پایدار git برمیگردد.dev: یک checkout از git را تضمین میکند (پیشفرض~/openclaw، یا$OPENCLAW_HOME/openclawوقتیOPENCLAW_HOMEتنظیم شده باشد؛ باOPENCLAW_GIT_DIRبازنویسی کنید)، بهmainتغییر میدهد، روی upstream rebase میکند، build میسازد، و CLI سراسری را از همان checkout نصب میکند.
هدفگیری یکبارهی نسخه یا برچسب
از --tag برای هدفگیری یک dist-tag، نسخه، یا مشخصات بستهی خاص برای یک
بهروزرسانی منفرد بدون تغییر کانال پایدارشدهی خود استفاده کنید:
# 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 # Switch to the moving GitHub main checkoutopenclaw update --channel dev # Install a specific npm package specopenclaw update --tag openclaw@2026.4.1-beta.1 # Install from GitHub main once without persisting the channelopenclaw update --tag mainنکتهها:
--tagفقط روی نصبهای بستهای (npm) اعمال میشود. نصبهای git آن را نادیده میگیرند.- برچسب پایدار نمیشود. اجرای بعدی
openclaw updateطبق معمول از کانال پیکربندیشدهی شما استفاده میکند. - برای نصبهای بستهای، OpenClaw مشخصات منبع GitHub/git را پیش از نصب مرحلهای npm در یک
tarball موقت pre-pack میکند. وقتی checkout متحرک
mainرا بهعنوان نصب پایدار خود میخواهید، از--channel devیا--install-method git --version mainاستفاده کنید. - محافظت در برابر downgrade: اگر نسخهی هدف قدیمیتر از نسخهی فعلی شما باشد،
OpenClaw درخواست تأیید میکند (با
--yesرد کنید). --channel betaبا--tag betaمتفاوت است: جریان کانال میتواند وقتی beta موجود نباشد یا قدیمیتر باشد به stable/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اجرای آزمایشی کانال مؤثر، نسخهی هدف، اقدامهای برنامهریزیشده، و اینکه آیا تأیید downgrade لازم خواهد بود یا نه را نشان میدهد.
Pluginها و کانالها
وقتی با openclaw update کانالها را تغییر میدهید، OpenClaw منبعهای plugin را نیز همگامسازی میکند:
devPluginهای همراهشده از checkout مربوط به git را ترجیح میدهد.stableوbetaبستههای Plugin نصبشده با npm را بازیابی میکنند.- Pluginهای نصبشده با npm پس از تکمیل بهروزرسانی هسته بهروزرسانی میشوند.
بررسی وضعیت فعلی
openclaw update statusکانال فعال، نوع نصب (git یا بسته)، نسخهی فعلی، و منبع (پیکربندی، برچسب git، شاخهی git، یا پیشفرض) را نشان میدهد.
بهترین شیوههای برچسبگذاری
- انتشارهایی را برچسب بزنید که میخواهید checkoutهای git روی آنها قرار بگیرند (
vYYYY.M.PATCHبرای stable،vYYYY.M.PATCH-beta.Nبرای beta؛ پسوندهای پیشانتشار نامدار semver مانند-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-> stablebeta-> بیلد نامزد یا بیلد پایدارِ ابتدا در betadev-> snapshot از main (اختیاری)
در دسترس بودن برنامهی macOS
بیلدهای beta و dev ممکن است انتشار برنامهی macOS را شامل نشوند. اشکالی ندارد:
- برچسب git و dist-tag در npm همچنان میتوانند منتشر شوند.
- در یادداشتهای انتشار یا changelog ذکر کنید «برای این beta بیلد macOS وجود ندارد».