Gateway
محیط ایزوله در برابر خطمشی ابزار در برابر دسترسی ارتقایافته
OpenClaw سه کنترل مرتبط (اما متفاوت) دارد:
- سندباکس (
agents.defaults.sandbox.*/agents.list[].sandbox.*) تعیین میکند ابزارها کجا اجرا شوند (پشتوانه سندباکس در برابر میزبان). - سیاست ابزار (
tools.*,tools.sandbox.tools.*,agents.list[].tools.*) تعیین میکند کدام ابزارها در دسترس/مجاز هستند. - ارتقایافته (
tools.elevated.*,agents.list[].tools.elevated.*) یک راه خروج فقط برای exec است تا وقتی سندباکس شدهاید، خارج از سندباکس اجرا شود (gatewayبهصورت پیشفرض، یاnodeوقتی هدف exec برایnodeپیکربندی شده باشد).
اشکالزدایی سریع
از بازرس استفاده کنید تا ببینید OpenClaw واقعاً چه کاری انجام میدهد:
openclaw sandbox explainopenclaw sandbox explain --session agent:main:mainopenclaw sandbox explain --agent workopenclaw sandbox explain --jsonاین موارد را چاپ میکند:
- حالت/دامنه/دسترسی فضای کاری مؤثر سندباکس
- اینکه آیا نشست فعلی در حال حاضر سندباکس شده است یا نه (اصلی در برابر غیر اصلی)
- اجازه/رد مؤثر ابزار سندباکس (و اینکه از agent/global/default آمده است یا نه)
- گیتهای ارتقایافته و مسیرهای کلیدی اصلاح
سندباکس: ابزارها کجا اجرا میشوند
سندباکس با agents.defaults.sandbox.mode کنترل میشود:
"off": همهچیز روی میزبان اجرا میشود."non-main": فقط نشستهای غیر اصلی سندباکس میشوند (غافلگیری رایج برای گروهها/کانالها)."all": همهچیز سندباکس میشود.
برای ماتریس کامل (دامنه، اتصالهای فضای کاری، تصاویر)، سندباکسسازی را ببینید.
اتصالهای Bind (بررسی سریع امنیتی)
docker.bindsسامانه فایل سندباکس را سوراخ میکند: هرچه متصل کنید با حالتی که تعیین میکنید (:roیا:rw) داخل کانتینر قابل مشاهده است.- اگر حالت را حذف کنید، پیشفرض خواندن-نوشتن است؛ برای منبع/اسرار
:roرا ترجیح دهید. scope: "shared"اتصالهای مختص هر agent را نادیده میگیرد (فقط اتصالهای سراسری اعمال میشوند).- OpenClaw منابع bind را دو بار اعتبارسنجی میکند: ابتدا روی مسیر منبع نرمالشده، سپس دوباره پس از resolve کردن از طریق عمیقترین نیای موجود. خروج از طریق والد symlink بررسیهای مسیر مسدود یا ریشه مجاز را دور نمیزند.
- مسیرهای برگ ناموجود همچنان بهشکل ایمن بررسی میشوند. اگر
/workspace/alias-out/new-fileاز طریق یک والد symlinkشده به مسیری مسدود یا بیرون از ریشههای مجاز پیکربندیشده resolve شود، bind رد میشود. - اتصال
/var/run/docker.sockعملاً کنترل میزبان را به سندباکس میدهد؛ فقط آگاهانه این کار را انجام دهید. - دسترسی فضای کاری (
workspaceAccess: "ro"/"rw") مستقل از حالتهای bind است.
سیاست ابزار: کدام ابزارها وجود دارند/قابل فراخوانی هستند
دو لایه مهم هستند:
- پروفایل ابزار:
tools.profileوagents.list[].tools.profile(فهرست مجاز پایه) - پروفایل ابزار ارائهدهنده:
tools.byProvider[provider].profileوagents.list[].tools.byProvider[provider].profile - سیاست ابزار سراسری/مختص agent:
tools.allow/tools.denyوagents.list[].tools.allow/agents.list[].tools.deny - سیاست ابزار ارائهدهنده:
tools.byProvider[provider].allow/denyوagents.list[].tools.byProvider[provider].allow/deny - سیاست ابزار سندباکس (فقط وقتی سندباکس شده باشد اعمال میشود):
tools.sandbox.tools.allow/tools.sandbox.tools.denyوagents.list[].tools.sandbox.tools.*
قواعد سرانگشتی:
denyهمیشه برنده است.- اگر
allowخالی نباشد، هر چیز دیگر مسدود تلقی میشود. - سیاست ابزار توقف قطعی است:
/execنمیتواند ابزارexecردشده را override کند. - سیاست ابزار دسترسپذیری ابزار را بر اساس نام فیلتر میکند؛ عوارض جانبی داخل
execرا بازرسی نمیکند. اگرexecمجاز باشد، رد کردنwrite،edit، یاapply_patchفرمانهای shell را فقطخواندنی نمیکند. /execفقط پیشفرضهای نشست را برای فرستندگان مجاز تغییر میدهد؛ دسترسی ابزار اعطا نمیکند. کلیدهای ابزار ارائهدهنده یاprovider(مثلاًgoogle-antigravity) یاprovider/model(مثلاًopenai/gpt-5.4) را میپذیرند.
گروههای ابزار (میانبرها)
سیاستهای ابزار (سراسری، agent، سندباکس) از ورودیهای group:* پشتیبانی میکنند که به چند ابزار گسترش مییابند:
{ tools: { sandbox: { tools: { allow: ["group:runtime", "group:fs", "group:sessions", "group:memory"], }, }, },}گروههای موجود:
group:runtime:exec,process,code_execution(bashبهعنوان نام مستعار برایexecپذیرفته میشود)group:fs:read,write,edit,apply_patchبرای agentهای فقطخواندنی،group:runtimeرا نیز همراه با ابزارهای تغییردهنده سامانه فایل رد کنید، مگر اینکه سیاست سامانه فایل سندباکس یا یک مرز میزبان جداگانه محدودیت فقطخواندنی را اعمال کند.group:sessions:sessions_list,sessions_history,sessions_send,sessions_spawn,sessions_yield,subagents,session_statusgroup:memory:memory_search,memory_getgroup:web:web_search,x_search,web_fetchgroup:ui:browser,canvasgroup:automation:heartbeat_respond,cron,gatewaygroup:messaging:messagegroup:nodes:nodesgroup:agents:agents_list,update_plangroup:media:image,image_generate,music_generate,video_generate,ttsgroup:openclaw: همه ابزارهای داخلی OpenClaw (Pluginهای ارائهدهنده را شامل نمیشود)
ارتقایافته: «اجرا روی میزبان» فقط برای exec
ارتقایافته ابزارهای اضافی اعطا نمیکند؛ فقط بر exec اثر میگذارد.
- اگر سندباکس شدهاید،
/elevated on(یاexecباelevated: true) خارج از سندباکس اجرا میشود (ممکن است تأییدها همچنان اعمال شوند). - برای رد کردن تأییدهای exec در نشست، از
/elevated fullاستفاده کنید. - اگر از قبل مستقیم اجرا میشوید، ارتقایافته عملاً بدون اثر است (همچنان پشت گیت است).
- ارتقایافته در دامنه Skills نیست و allow/deny ابزار را override نمیکند.
- ارتقایافته overrideهای دلخواه بینمیزبانی را از
host=autoاعطا نمیکند؛ از قواعد عادی هدف exec پیروی میکند و فقط وقتی هدف پیکربندیشده/نشست از قبلnodeباشد،nodeرا حفظ میکند. /execاز ارتقایافته جداست. فقط پیشفرضهای exec مختص نشست را برای فرستندگان مجاز تنظیم میکند.
گیتها:
- فعالسازی:
tools.elevated.enabled(و بهصورت اختیاریagents.list[].tools.elevated.enabled) - فهرستهای مجاز فرستنده:
tools.elevated.allowFrom.<provider>(و بهصورت اختیاریagents.list[].tools.elevated.allowFrom.<provider>)
حالت ارتقایافته را ببینید.
اصلاحات رایج «زندان سندباکس»
«ابزار X توسط سیاست ابزار سندباکس مسدود شد»
کلیدهای اصلاح (یکی را انتخاب کنید):
- غیرفعال کردن سندباکس:
agents.defaults.sandbox.mode=off(یا برای هر agent،agents.list[].sandbox.mode=off) - مجاز کردن ابزار داخل سندباکس:
- آن را از
tools.sandbox.tools.denyحذف کنید (یا ازagents.list[].tools.sandbox.tools.denyمختص هر agent) - یا آن را به
tools.sandbox.tools.allowاضافه کنید (یا allow مختص هر agent)
- آن را از
«فکر میکردم این اصلی است، چرا سندباکس شده؟»
در حالت "non-main"، کلیدهای گروه/کانال اصلی نیستند. از کلید نشست اصلی (که با sandbox explain نشان داده میشود) استفاده کنید یا حالت را به "off" تغییر دهید.
مرتبط
- سندباکسسازی -- مرجع کامل سندباکس (حالتها، دامنهها، پشتوانهها، تصاویر)
- سندباکس و ابزارهای چند agent -- overrideهای مختص هر agent و اولویت
- حالت ارتقایافته