Tools
سطوح تفکر
چه کاری انجام میدهد
- دستور درونخطی در هر بدنه ورودی:
/t <level>،/think:<level>، یا/thinking <level>. - سطحها (نامهای جایگزین):
off | minimal | low | medium | high | xhigh | adaptive | max- minimal → «فکر کن»
- low → «سخت فکر کن»
- medium → «سختتر فکر کن»
- high → «فوقالعاده فکر کن» (حداکثر بودجه)
- xhigh → «فوقالعاده فکر کن+» (مدلهای GPT-5.2+ و Codex، بهعلاوه تلاش Anthropic Claude Opus 4.7)
- adaptive → تفکر تطبیقی مدیریتشده توسط ارائهدهنده (برای Claude 4.6 روی Anthropic/Bedrock، Anthropic Claude Opus 4.7، و تفکر پویای Google Gemini پشتیبانی میشود)
- max → حداکثر استدلال ارائهدهنده (Anthropic Claude Opus 4.7؛ Ollama این را به بالاترین تلاش بومی
thinkخود نگاشت میکند) x-high،x_high،extra-high،extra high، وextra_highبهxhighنگاشت میشوند.highestبهhighنگاشت میشود.
- نکات ارائهدهنده:
- منوها و انتخابگرهای تفکر بر اساس نمایه ارائهدهنده هدایت میشوند. Pluginهای ارائهدهنده مجموعه سطح دقیق را برای مدل انتخابشده، شامل برچسبهایی مانند
onدودویی، اعلام میکنند. adaptive،xhigh، وmaxفقط برای نمایههای ارائهدهنده/مدلی نمایش داده میشوند که از آنها پشتیبانی میکنند. دستورهای تایپشده برای سطحهای پشتیبانینشده با گزینههای معتبر همان مدل رد میشوند.- سطحهای پشتیبانینشده ذخیرهشده موجود بر اساس رتبه نمایه ارائهدهنده بازنگاشت میشوند.
adaptiveدر مدلهای غیرتطبیقی بهmediumبرمیگردد، در حالی کهxhighوmaxبه بزرگترین سطح غیرoffپشتیبانیشده برای مدل انتخابشده برمیگردند. - مدلهای Anthropic Claude 4.6 وقتی هیچ سطح تفکر صریحی تنظیم نشده باشد، بهطور پیشفرض روی
adaptiveقرار میگیرند. - Anthropic Claude Opus 4.7 بهطور پیشفرض از تفکر تطبیقی استفاده نمیکند. پیشفرض تلاش API آن همچنان در مالکیت ارائهدهنده میماند، مگر اینکه صریحاً یک سطح تفکر تنظیم کنید.
- Anthropic Claude Opus 4.7 دستور
/think xhighرا به تفکر تطبیقی بهعلاوهoutput_config.effort: "xhigh"نگاشت میکند، چون/thinkیک دستور تفکر است وxhighتنظیم تلاش Opus 4.7 است. - Anthropic Claude Opus 4.7 همچنین
/think maxرا عرضه میکند؛ این دستور به همان مسیر حداکثر تلاشِ در مالکیت ارائهدهنده نگاشت میشود. - مدلهای مستقیم DeepSeek V4 دستور
/think xhigh|maxرا عرضه میکنند؛ هر دو بهreasoning_effort: "max"در DeepSeek نگاشت میشوند، در حالی که سطحهای پایینترِ غیرoffبهhighنگاشت میشوند. - مدلهای DeepSeek V4 مسیردهیشده از طریق OpenRouter دستور
/think xhighرا عرضه میکنند و مقدارهایreasoning_effortپشتیبانیشده توسط OpenRouter را ارسال میکنند. بازنویسیهای ذخیرهشدهmaxبهxhighبرمیگردند. - مدلهای Ollama با قابلیت تفکر دستور
/think low|medium|high|maxرا عرضه میکنند؛maxبهthink: "high"بومی نگاشت میشود، چون API بومی Ollama رشتههای تلاشlow،medium، وhighرا میپذیرد. - مدلهای OpenAI GPT دستور
/thinkرا از طریق پشتیبانی تلاش Responses API ویژه مدل نگاشت میکنند./think offفقط وقتی مدل مقصد از آن پشتیبانی کندreasoning.effort: "none"را ارسال میکند؛ در غیر این صورت OpenClaw بهجای ارسال مقدار پشتیبانینشده، بار استدلال غیرفعالشده را حذف میکند. - ورودیهای کاتالوگ سفارشی سازگار با OpenAI میتوانند با تنظیم
models.providers.<provider>.models[].compat.supportedReasoningEffortsبرای شامل کردن"xhigh"، در/think xhighشرکت کنند. این از همان فراداده سازگاری استفاده میکند که بارهای خروجی تلاش استدلال OpenAI را نگاشت میکند، بنابراین منوها، اعتبارسنجی نشست، CLI عامل، وllm-taskبا رفتار انتقال همنظر میمانند. - ارجاعهای پیکربندیشده قدیمی OpenRouter Hunter Alpha تزریق استدلال پروکسی را نادیده میگیرند، چون آن مسیر بازنشسته میتوانست متن پاسخ نهایی را از طریق فیلدهای استدلال برگرداند.
- Google Gemini دستور
/think adaptiveرا به تفکر پویای در مالکیت ارائهدهنده Gemini نگاشت میکند. درخواستهای Gemini 3 یکthinkingLevelثابت را حذف میکنند، در حالی که درخواستهای Gemini 2.5 مقدارthinkingBudget: -1را ارسال میکنند؛ سطحهای ثابت همچنان برای آن خانواده مدل به نزدیکترینthinkingLevelیا بودجه Gemini نگاشت میشوند. - MiniMax (
minimax/*) در مسیر استریم سازگار با Anthropic بهطور پیشفرض ازthinking: { type: "disabled" }استفاده میکند، مگر اینکه تفکر را صریحاً در پارامترهای مدل یا پارامترهای درخواست تنظیم کنید. این از نشت دلتاهایreasoning_contentاز قالب استریم Anthropic غیربومی MiniMax جلوگیری میکند. - Z.AI (
zai/*) فقط از تفکر دودویی (on/off) پشتیبانی میکند. هر سطح غیرoffبهعنوانonتلقی میشود (بهlowنگاشت میشود). - Moonshot (
moonshot/*) دستور/think offرا بهthinking: { type: "disabled" }و هر سطح غیرoffرا بهthinking: { type: "enabled" }نگاشت میکند. وقتی تفکر فعال باشد، Moonshot فقطtool_choiceبا مقدارهایauto|noneرا میپذیرد؛ OpenClaw مقدارهای ناسازگار را بهautoعادیسازی میکند.
- منوها و انتخابگرهای تفکر بر اساس نمایه ارائهدهنده هدایت میشوند. Pluginهای ارائهدهنده مجموعه سطح دقیق را برای مدل انتخابشده، شامل برچسبهایی مانند
ترتیب تفکیک
- دستور درونخطی روی پیام (فقط بر همان پیام اعمال میشود).
- بازنویسی نشست (با ارسال پیام فقط-دستور تنظیم میشود).
- پیشفرض هر عامل (
agents.list[].thinkingDefaultدر پیکربندی). - پیشفرض سراسری (
agents.defaults.thinkingDefaultدر پیکربندی). - جایگزین: پیشفرض اعلامشده توسط ارائهدهنده وقتی موجود باشد؛ در غیر این صورت مدلهای دارای قابلیت استدلال به
mediumیا نزدیکترین سطح غیرoffپشتیبانیشده برای آن مدل تفکیک میشوند، و مدلهای بدون استدلال رویoffمیمانند.
تنظیم پیشفرض نشست
- پیامی بفرستید که فقط شامل دستور باشد (فاصله مجاز است)، مانند
/think:mediumیا/t high. - این برای نشست فعلی پایدار میماند (بهطور پیشفرض برای هر فرستنده)؛ با
/think:offیا بازنشانی نشست پس از بیکاری پاک میشود. - پاسخ تأیید ارسال میشود (
Thinking level set to high./Thinking disabled.). اگر سطح نامعتبر باشد (مثلاً/thinking big)، فرمان با یک راهنما رد میشود و وضعیت نشست بدون تغییر میماند. - برای دیدن سطح تفکر فعلی،
/think(یا/think:) را بدون آرگومان بفرستید.
اعمال بر اساس عامل
- Pi توکار: سطح تفکیکشده به زماناجرای عامل Pi درونفرآیندی پاس داده میشود.
- بکاند Claude CLI: سطحهای غیر
offهنگام استفاده ازclaude-cliبهصورت--effortبه Claude Code پاس داده میشوند؛ بکاندهای CLI را ببینید.
حالت سریع (/fast)
- سطحها:
on|off. - پیام فقط-دستور بازنویسی حالت سریع نشست را تغییر میدهد و پاسخ
Fast mode enabled./Fast mode disabled.میدهد. - برای دیدن وضعیت مؤثر فعلی حالت سریع،
/fast(یا/fast status) را بدون حالت بفرستید. - OpenClaw حالت سریع را به این ترتیب تفکیک میکند:
/fast on|offدرونخطی/فقط-دستور- بازنویسی نشست
- پیشفرض هر عامل (
agents.list[].fastModeDefault) - پیکربندی هر مدل:
agents.defaults.models["<provider>/<model>"].params.fastMode - جایگزین:
off
- برای
openai/*، حالت سریع با ارسالservice_tier=priorityدر درخواستهای Responses پشتیبانیشده، به پردازش اولویتدار OpenAI نگاشت میشود. - برای
openai-codex/*، حالت سریع همان پرچمservice_tier=priorityرا در Codex Responses ارسال میکند. OpenClaw یک تغییر وضعیت مشترک/fastرا در هر دو مسیر احراز هویت نگه میدارد. - برای درخواستهای مستقیم عمومی
anthropic/*، شامل ترافیک احراز هویتشده با OAuth که بهapi.anthropic.comارسال میشود، حالت سریع به ردههای سرویس Anthropic نگاشت میشود:/fast onمقدارservice_tier=autoرا تنظیم میکند،/fast offمقدارservice_tier=standard_onlyرا تنظیم میکند. - برای
minimax/*در مسیر سازگار با Anthropic،/fast on(یاparams.fastMode: true) مقدارMiniMax-M2.7را بهMiniMax-M2.7-highspeedبازنویسی میکند. - پارامترهای مدل Anthropic صریح
serviceTier/service_tierوقتی هر دو تنظیم شده باشند، پیشفرض حالت سریع را بازنویسی میکنند. OpenClaw همچنان تزریق رده سرویس Anthropic را برای URLهای پایه پروکسی غیر Anthropic نادیده میگیرد. /statusفقط وقتی حالت سریع فعال باشدFastرا نشان میدهد.
دستورهای پرجزئیات (/verbose یا /v)
- سطحها:
on(حداقلی) |full|off(پیشفرض). - پیام فقط-دستور پرجزئیات نشست را تغییر میدهد و پاسخ
Verbose logging enabled./Verbose logging disabled.میدهد؛ سطحهای نامعتبر بدون تغییر وضعیت، یک راهنما برمیگردانند. /verbose offیک بازنویسی نشست صریح ذخیره میکند؛ آن را از طریق رابط کاربری Sessions با انتخابinheritپاک کنید.- دستور درونخطی فقط بر همان پیام اثر میگذارد؛ در غیر این صورت پیشفرضهای نشست/سراسری اعمال میشوند.
- برای دیدن سطح پرجزئیات فعلی،
/verbose(یا/verbose:) را بدون آرگومان بفرستید. - وقتی پرجزئیات فعال است، عاملهایی که نتایج ابزار ساختاریافته منتشر میکنند (Pi، عاملهای JSON دیگر) هر فراخوانی ابزار را بهصورت پیام جداگانه فقط-فراداده برمیگردانند، در صورت وجود با پیشوند
<emoji> <tool-name>: <arg>. این خلاصههای ابزار بهمحض شروع هر ابزار ارسال میشوند (حبابهای جداگانه)، نه بهصورت دلتاهای استریم. - خلاصههای شکست ابزار در حالت عادی هم قابل مشاهده میمانند، اما پسوندهای جزئیات خطای خام پنهان میشوند مگر اینکه پرجزئیات
onیاfullباشد. - وقتی پرجزئیات
fullباشد، خروجیهای ابزار نیز پس از تکمیل ارسال میشوند (حباب جداگانه، کوتاهشده تا طول امن). اگر هنگام اجرای یک کار/verbose on|full|offرا تغییر دهید، حبابهای ابزار بعدی از تنظیم جدید پیروی میکنند. agents.defaults.toolProgressDetailشکل خلاصههای ابزار/verboseو خطوط ابزار پیشنویس پیشرفت را کنترل میکند. برای برچسبهای انسانی فشرده مانند🛠️ Exec: checking JS syntaxاز"explain"(پیشفرض) استفاده کنید؛ وقتی میخواهید فرمان/جزئیات خام نیز برای اشکالزدایی اضافه شود، از"raw"استفاده کنید.agents.list[].toolProgressDetailهر عامل، پیشفرض را بازنویسی میکند.explain:🛠️ Exec: check JS syntax for /tmp/app.jsraw:🛠️ Exec: check JS syntax for /tmp/app.js, node --check /tmp/app.js
دستورهای رهگیری Plugin (/trace)
- سطحها:
on|off(پیشفرض). - پیام فقط-دستور خروجی رهگیری Plugin نشست را تغییر میدهد و پاسخ
Plugin trace enabled./Plugin trace disabled.میدهد. - دستور درونخطی فقط بر همان پیام اثر میگذارد؛ در غیر این صورت پیشفرضهای نشست/سراسری اعمال میشوند.
- برای دیدن سطح رهگیری فعلی،
/trace(یا/trace:) را بدون آرگومان بفرستید. /traceاز/verboseمحدودتر است: فقط خطوط رهگیری/اشکالزدایی در مالکیت Plugin مانند خلاصههای اشکالزدایی Active Memory را آشکار میکند.- خطوط رهگیری میتوانند در
/statusو بهصورت پیام تشخیصی پیگیری پس از پاسخ عادی دستیار ظاهر شوند.
نمایانی استدلال (/reasoning)
- سطحها:
on|off|stream. - پیام فقط-دستور تعیین میکند بلوکهای تفکر در پاسخها نشان داده شوند یا نه.
- وقتی فعال باشد، استدلال بهصورت پیام جداگانه با پیشوند
Reasoning:ارسال میشود. stream(فقط Telegram): هنگام تولید پاسخ، استدلال را در حباب پیشنویس Telegram استریم میکند، سپس پاسخ نهایی را بدون استدلال ارسال میکند.- نام جایگزین:
/reason. - برای دیدن سطح استدلال فعلی،
/reasoning(یا/reasoning:) را بدون آرگومان بفرستید. - ترتیب تفکیک: دستور درونخطی، سپس بازنویسی نشست، سپس پیشفرض هر عامل (
agents.list[].reasoningDefault)، سپس جایگزین (off).
برچسبهای استدلال مدل محلی بدشکل محافظهکارانه مدیریت میشوند. بلوکهای بستهشده <think>...</think> در پاسخهای عادی پنهان میمانند، و استدلال بستهنشده پس از متنِ از قبل قابل مشاهده نیز پنهان میشود. اگر پاسخی کاملاً در یک برچسب آغازینِ بستهنشده واحد پیچیده شده باشد و در غیر این صورت بهصورت متن خالی تحویل داده شود، OpenClaw برچسب آغازین بدشکل را حذف میکند و متن باقیمانده را تحویل میدهد.
مرتبط
- مستندات حالت ارتقایافته در حالت ارتقایافته قرار دارد.
Heartbeatها
- بدنه کاوش Heartbeat همان درخواست Heartbeat پیکربندیشده است (پیشفرض:
Read HEARTBEAT.md if it exists (workspace context). Follow it strictly. Do not infer or repeat old tasks from prior chats. If nothing needs attention, reply HEARTBEAT_OK.). دستورهای درونخطی در پیام Heartbeat مثل همیشه اعمال میشوند (اما از تغییر پیشفرضهای نشست از Heartbeatها خودداری کنید). - تحویل Heartbeat بهطور پیشفرض فقط به بار نهایی محدود است. برای ارسال پیام جداگانه
Reasoning:نیز (در صورت موجود بودن)،agents.defaults.heartbeat.includeReasoning: trueیاagents.list[].heartbeat.includeReasoning: trueهر عامل را تنظیم کنید.
رابط کاربری چت وب
- انتخابگر تفکر چت وب هنگام بارگذاری صفحه، سطح ذخیرهشده نشست را از ذخیرهگاه/پیکربندی نشست ورودی بازتاب میدهد.
- انتخاب سطح دیگر بازنویسی نشست را بلافاصله از طریق
sessions.patchمینویسد؛ منتظر ارسال بعدی نمیماند و یک بازنویسی یکبارهthinkingOnceنیست. - گزینه اول همیشه
Default (<resolved level>)است، که در آن پیشفرض تفکیکشده از نمایه تفکر ارائهدهنده مدل نشست فعال بهعلاوه همان منطق جایگزینی میآید که/statusوsession_statusاستفاده میکنند. - انتخابگر از
thinkingLevelsبرگشتی توسط ردیف/پیشفرضهای نشست Gateway استفاده میکند، وthinkingOptionsبهعنوان فهرست برچسب قدیمی نگه داشته میشود. رابط کاربری مرورگر فهرست regex ارائهدهنده خودش را نگه نمیدارد؛ Pluginها مالک مجموعه سطحهای ویژه مدل هستند. /think:<level>همچنان کار میکند و همان سطح نشست ذخیرهشده را بهروزرسانی میکند، بنابراین دستورهای چت و انتخابگر همگام میمانند.
نمایههای ارائهدهنده
- Pluginهای ارائهدهنده میتوانند
resolveThinkingProfile(ctx)را برای تعریف سطحهای پشتیبانیشدهٔ مدل و مقدار پیشفرض آن عرضه کنند. - Pluginهای ارائهدهندهای که مدلهای Claude را پراکسی میکنند، باید از
resolveClaudeThinkingProfile(modelId)درopenclaw/plugin-sdk/provider-model-sharedدوباره استفاده کنند تا کاتالوگهای مستقیم Anthropic و پراکسی همراستا بمانند. - هر سطح پروفایل یک
idکانونی ذخیرهشده دارد (off،minimal،low،medium،high،xhigh،adaptive، یاmax) و ممکن است یکlabelنمایشی داشته باشد. ارائهدهندههای دوحالته از{ id: "low", label: "on" }استفاده میکنند. - Pluginهای ابزاری که باید یک بازنویسی صریح تفکر را اعتبارسنجی کنند، باید از
api.runtime.agent.resolveThinkingPolicy({ provider, model })بههمراهapi.runtime.agent.normalizeThinkingLevel(...)استفاده کنند؛ آنها نباید فهرستهای سطح ارائهدهنده/مدل خودشان را نگه دارند. - Pluginهای ابزاری که به فرادادهٔ مدل سفارشی پیکربندیشده دسترسی دارند، میتوانند
catalogرا بهresolveThinkingPolicyبدهند تا پذیرشهایcompat.supportedReasoningEffortsدر اعتبارسنجی سمت Plugin بازتاب یابد. - هوکهای قدیمی منتشرشده (
supportsXHighThinking،isBinaryThinking، وresolveDefaultThinkingLevel) بهعنوان سازگارکنندههای سازگاری باقی میمانند، اما مجموعههای جدید سطح سفارشی باید ازresolveThinkingProfileاستفاده کنند. - ردیفها/پیشفرضهای Gateway،
thinkingLevels،thinkingOptions، وthinkingDefaultرا عرضه میکنند تا کلاینتهای ACP/چت همان شناسهها و برچسبهای پروفایلی را رندر کنند که اعتبارسنجی زمان اجرا استفاده میکند.