در این صفحه
در این صفحه
CLI commands
پیکربندی
کمککنندههای غیرتعاملی برای openclaw.json: دریافت/تنظیم/وصلهکردن/حذف تنظیم یک مقدار بر اساس مسیر، چاپ شِما، اعتبارسنجی، یا چاپ مسیر فایل فعال. برای بازکردن همان راهنمای گامبهگام openclaw configure، دستور openclaw config را بدون زیردستور اجرا کنید.
گزینههای ریشه
--section <section>stringفیلتر تکرارپذیر بخش راهاندازی هدایتشده، هنگامی که openclaw config را بدون زیردستور اجرا میکنید.
بخشهای هدایتشده: workspace، model، web، gateway، daemon، channels، plugins، skills، health.
مثالها
مسیرها
نشانهگذاری نقطهای یا کروشهای. مسیرهای کروشهای را در مثالهای پوسته داخل نقلقول قرار دهید تا zsh مقدار [0] را بهصورت الگوی glob گسترش ندهد:
config get
یک مقدار را از تصویر لحظهای پیکربندیِ سانسورشده میخواند (مقادیر محرمانه هرگز چاپ نمیشوند). --json مقدار خام را بهصورت JSON چاپ میکند؛ در غیر این صورت، رشتهها/اعداد/مقادیر بولی بدون قالببندی و اشیا/آرایهها بهصورت JSON قالببندیشده چاپ میشوند.
هنگامی که مسیر وجود ندارد، --json مقدار { "error": "Config path not found: <path>" } را در stdout مینویسد و با وضعیت 1 خارج میشود. بدون --json، پیام تشخیصی در stderr باقی میماند.
config file
مسیر فایل پیکربندی فعال را که از OPENCLAW_CONFIG_PATH یا مکان پیشفرض استخراج شده است چاپ میکند. این مسیر به یک فایل معمولی اشاره دارد، نه پیوند نمادین؛ ایمنی نوشتن را ببینید.
config schema
شِمای JSON تولیدشده برای openclaw.json را در stdout چاپ میکند.
محتویات آن
- شِمای فعلی پیکربندی ریشه، بههمراه یک فیلد رشتهای ریشه به نام
$schemaبرای ابزارهای ویرایشگر. - فراداده مستندات فیلدهای
title/descriptionکه Control UI از آن استفاده میکند. - گرههای شیء تودرتو، نویسه عام (
*) و عضو آرایه ([])، هنگامی که مستندات فیلد منطبق وجود داشته باشد، همان فرادادهtitle/descriptionرا به ارث میبرند. - شاخههای
anyOf/oneOf/allOfنیز همان فراداده مستندات را به ارث میبرند. - فراداده شِمای زندهٔ Plugin و کانال، بهصورت بهترین تلاش، هنگامی که مانیفستهای زمان اجرا قابل بارگذاری باشند.
- یک شِمای جایگزین تمیز، حتی هنگامی که پیکربندی فعلی نامعتبر باشد.
RPC مرتبط زمان اجرا
config.schema.lookup یک مسیر پیکربندی نرمالشده را با یک گره شِمای کمعمق (title، description، type، enum، const، کرانهای متداول)، فراداده راهنمای UI منطبق و خلاصههای فرزندان بلافصل برمیگرداند. از آن برای بررسی عمیق محدود به مسیر در Control UI یا کلاینتهای سفارشی استفاده کنید.
config validate
پیکربندی فعلی را بدون راهاندازی Gateway در برابر شِمای فعال اعتبارسنجی میکند.
مقادیر
مقادیر در صورت امکان بهصورت JSON5 تجزیه میشوند؛ در غیر این صورت، رشته خام در نظر گرفته میشوند. برای الزام JSON استاندارد بدون بازگشت به رشته از --strict-json استفاده کنید (در این حالت، نحو مختص JSON5 مانند توضیحات، ویرگولهای انتهایی یا کلیدهای بدون نقلقول رد میشود). --json یک نام مستعار قدیمی برای --strict-json در config set است.
config get <path> --json مقدار خام را بهصورت JSON، بهجای متن قالببندیشده برای ترمینال، چاپ میکند.
هنگامی که یک نوشتن، agents.defaults.model یا یک agents.entries.*.model مختص عامل را تغییر میدهد، OpenClaw پیش از نوشتن هر مدل اصلی یا جایگزین تغییریافته را از طریق کاتالوگهای ارائهدهنده پیکربندیشده حل میکند. ارجاعهای مدل ناشناخته بدون تغییر پیکربندی فعال رد میشوند؛ برای مشاهده مدلهای موجود، openclaw models list را اجرا کنید.
هنگام افزودن ورودی به این نگاشتها، از --merge استفاده کنید:
تنها زمانی از --replace استفاده کنید که مقدار ارائهشده باید عمداً به مقدار کامل هدف تبدیل شود.
حالتهای config set
حالت مقدار
حالت سازنده SecretRef
حالت سازنده ارائهدهنده
فقط مسیرهای secrets.providers.<alias> را هدف قرار میدهد:
حالت دستهای
فایلهای دستهای به 8 MiB محدود هستند.
تجزیه دستهای همیشه از محموله دستهای (--batch-json/--batch-file) بهعنوان منبع حقیقت استفاده میکند؛ --strict-json / --json رفتار تجزیه دستهای را تغییر نمیدهند.
حالت مسیر/مقدار JSON برای SecretRefها و ارائهدهندگان نیز مستقیماً کار میکند:
پرچمهای سازنده ارائهدهنده
هدفهای سازنده ارائهدهنده باید از secrets.providers.<alias> بهعنوان مسیر استفاده کنند.
پرچمهای مشترک
--provider-source <env|file|exec>--provider-timeout-ms <ms>(file،exec)
ارائهدهنده Env (--provider-source env)
--provider-allowlist <ENV_VAR>(تکرارپذیر)
ارائهدهنده فایل (--provider-source file)
--provider-path <path>(الزامی)--provider-mode <singleValue|json>--provider-max-bytes <bytes>--provider-allow-insecure-path
ارائهدهنده Exec (--provider-source exec)
--provider-command <path>(الزامی)--provider-arg <arg>(تکرارپذیر)--provider-no-output-timeout-ms <ms>--provider-max-output-bytes <bytes>--provider-json-only--provider-env <KEY=VALUE>(تکرارپذیر)--provider-pass-env <ENV_VAR>(تکرارپذیر)--provider-trusted-dir <path>(تکرارپذیر)--provider-allow-insecure-path--provider-allow-symlink-command
مثال ارائهدهنده Exec سختسازیشده:
config patch
بهجای اجرای چندین دستور مسیرمحور config set، یک وصله JSON5 با شکل پیکربندی را جایگذاری یا از طریق pipe ارسال کنید. اشیا بهصورت بازگشتی ادغام میشوند؛ آرایهها و مقادیر اسکالر هدف را جایگزین میکنند؛ null مسیر هدف را حذف میکند.
فایلهای وصله به 8 MiB محدود هستند. وصلههای --stdin ارسالشده از طریق pipe به 1 MiB محدود هستند.
برای اسکریپتهای راهاندازی از راه دور، یک وصله را از طریق stdin با pipe ارسال کنید:
نمونه وصله:
هنگامی که یک شیء یا آرایه باید بهجای وصلهشدن بازگشتی، دقیقاً به مقدار ارائهشده تبدیل شود، از --replace-path <path> استفاده کنید:
--dry-run بررسیهای طرحواره و قابلحلبودن SecretRef را بدون نوشتن اجرا میکند. SecretRefهای مبتنی بر exec بهطور پیشفرض هنگام اجرای آزمایشی نادیده گرفته میشوند؛ وقتی عمداً میخواهید اجرای آزمایشی فرمانهای ارائهدهنده را اجرا کند، --allow-exec را اضافه کنید.
اجرای آزمایشی
--dry-run تغییرات را بدون نوشتن در openclaw.json اعتبارسنجی میکند. در config set، config patch و config unset در دسترس است.
رفتار اجرای آزمایشی
- حالت سازنده: بررسیهای قابلحلبودن SecretRef را برای ارجاعها/ارائهدهندگان تغییریافته اجرا میکند.
- حالت JSON (
--strict-json،--jsonیا حالت دستهای): اعتبارسنجی طرحواره را همراه با بررسیهای قابلحلبودن SecretRef اجرا میکند. - اعتبارسنجی سیاست روی پیکربندی کامل پس از تغییر اجرا میشود، بنابراین نوشتن اشیای والد (برای مثال، تنظیم
hooksبهعنوان یک شیء) نمیتواند اعتبارسنجی سطوح پشتیبانینشده را دور بزند. - بررسیهای SecretRef از نوع exec بهطور پیشفرض برای جلوگیری از عوارض جانبی فرمان نادیده گرفته میشوند؛ برای فعالکردن آن
--allow-execرا ارسال کنید (این کار ممکن است فرمانهای ارائهدهنده را اجرا کند).--allow-execفقط مخصوص اجرای آزمایشی است و بدون--dry-runخطا میدهد.
فیلدهای --dry-run --json
ok: اینکه اجرای آزمایشی موفق بوده است یا نهoperations: تعداد انتسابهای ارزیابیشدهchecks: اینکه بررسیهای طرحواره/قابلحلبودن اجرا شدهاند یا نهchecks.resolvabilityComplete: اینکه بررسیهای قابلحلبودن تا پایان اجرا شدهاند یا نه (وقتی ارجاعهای exec نادیده گرفته شوند، false است)refsChecked: تعداد ارجاعهایی که واقعاً هنگام اجرای آزمایشی حل شدهاندskippedExecRefs: تعداد ارجاعهای exec که بهدلیل تنظیمنبودن--allow-execنادیده گرفته شدهاندerrors: خطاهای ساختیافته مربوط به مسیر مفقود، طرحواره یا قابلحلبودن، هنگامی کهok=false
ساختار خروجی JSON
نمونه موفق
نمونه ناموفق
اگر اجرای آزمایشی ناموفق باشد
config schema validation failed: ساختار پیکربندی پس از تغییر نامعتبر است؛ مسیر/مقدار یا ساختار شیء ارائهدهنده/ارجاع را اصلاح کنید.Config policy validation failed: unsupported SecretRef usage: آن اعتبارنامه را دوباره به ورودی متن ساده/رشتهای منتقل کنید؛ SecretRefها را فقط روی سطوح پشتیبانیشده نگه دارید.SecretRef assignment(s) could not be resolved: ارائهدهنده/ارجاع موردنظر درحالحاضر قابلحل نیست (متغیر محیطی مفقود، اشارهگر فایل نامعتبر، خرابی ارائهدهنده exec یا ناهماهنگی ارائهدهنده/منبع).model reference validation failed: مدل اصلی یا جایگزین متنی تغییریافته ناشناخته است؛openclaw models listرا اجرا و یک مدل در دسترس انتخاب کنید.Dry run note: skipped <n> exec SecretRef resolvability check(s): اگر به اعتبارسنجی قابلحلبودن exec نیاز دارید، دوباره با--allow-execاجرا کنید.- برای حالت دستهای، ورودیهای ناموفق را اصلاح کنید و پیش از نوشتن،
--dry-runرا دوباره اجرا کنید.
اعمال تغییرات
پس از هر اجرای موفق config set / config patch / config unset، CLI یکی از سه راهنما را نمایش میدهد تا بدانید آیا Gateway به راهاندازی مجدد نیاز دارد یا نه:
| راهنما | معنی |
|---|---|
Restart the gateway to apply. |
مسیر تغییریافته به راهاندازی مجدد کامل نیاز دارد. |
Change will apply without restarting the gateway. |
بارگذاری مجدد داغ آن را بهطور خودکار اعمال میکند. |
No gateway restart needed. |
هیچ مورد مرتبطی با زمان اجرا تغییر نکرده است. |
نوشتن در plugins.entries (یا هر زیرمسیری از آن) همیشه به راهاندازی مجدد نیاز دارد، زیرا CLI نمیتواند اثبات کند که فراداده بارگذاری مجدد همه Pluginها بارگذاری شده است.
ایمنی نوشتن
openclaw config set و دیگر نویسندههای پیکربندی متعلق به OpenClaw، پیش از ثبت روی دیسک، پیکربندی کامل پس از تغییر را اعتبارسنجی میکنند. اگر محتوای جدید در اعتبارسنجی طرحواره ناموفق باشد یا شبیه بازنویسی مخرب بهنظر برسد، پیکربندی فعال دستنخورده باقی میماند و محتوای ردشده در کنار آن با نام openclaw.json.rejected.* ذخیره میشود.
نوشتنهای متعلق به OpenClaw، JSON5 را دوباره بهصورت JSON استاندارد سریالسازی میکنند. وقتی منبع شامل توضیحات باشد، نویسنده بلافاصله پیش از حذف آنها هشدار میدهد؛ اگر حفظ توضیحات اهمیت دارد، از ویرایشگر مستقیم استفاده کنید.
برای ویرایشهای کوچک، نوشتن با CLI را ترجیح دهید:
اگر نوشتن رد شد، محتوای ذخیرهشده را بررسی و ساختار کامل پیکربندی را اصلاح کنید:
نوشتن مستقیم با ویرایشگر همچنان مجاز است، اما Gateway درحال اجرا تا زمان اعتبارسنجی، آن را نامطمئن تلقی میکند. ویرایشهای مستقیم نامعتبر باعث شکست راهاندازی میشوند یا در بارگذاری مجدد داغ نادیده گرفته میشوند؛ Gateway فایل openclaw.json را بازنویسی نمیکند. برای ترمیم پیکربندی پیشونددار/بازنویسیشده یا بازیابی آخرین نسخه سالم شناختهشده، openclaw doctor --fix را اجرا کنید. به عیبیابی Gateway مراجعه کنید.
بازیابی کل فایل فقط برای ترمیم doctor در نظر گرفته شده است. تغییرات طرحواره Plugin یا ناهماهنگی minHostVersion بهجای بازگرداندن تنظیمات نامرتبط کاربر، مانند پیکربندی مدلها، ارائهدهندگان، نمایههای احراز هویت، کانالها، دسترسی Gateway، ابزارها، حافظه، مرورگر یا cron، بهصورت آشکار خطا میدهند.
چرخه ترمیم
پس از موفقیت openclaw config validate، از TUI محلی استفاده کنید تا یک عامل تعبیهشده پیکربندی فعال را با مستندات مقایسه کند، درحالیکه هر تغییر را از همان ترمینال اعتبارسنجی میکنید:
درون TUI، یک ! در ابتدای خط، فرمان پوسته محلی را عیناً اجرا میکند (پس از یک درخواست تأیید یکباره در هر نشست):
مقایسه با مستندات
از عامل بخواهید پیکربندی فعلی را با صفحه مستندات مرتبط مقایسه و کوچکترین اصلاح را پیشنهاد کند.
اعمال ویرایشهای هدفمند
ویرایشهای هدفمند را با openclaw config set یا openclaw configure اعمال کنید.
اعتبارسنجی مجدد
پس از هر تغییر، openclaw config validate را دوباره اجرا کنید.
استفاده از doctor برای مشکلات زمان اجرا
اگر اعتبارسنجی موفق است اما زمان اجرا همچنان ناسالم است، برای دریافت کمک در مهاجرت و ترمیم، openclaw doctor یا openclaw doctor --fix را اجرا کنید.