CLI commands
CLI استنتاج
openclaw infer سطح canonical headless برای workflowهای استنتاج پشتیبانیشده توسط ارائهدهنده است.
این فرمان عمدا خانوادههای capability را نمایش میدهد، نه نامهای خام RPC در Gateway و نه شناسههای خام ابزار agent.
تبدیل infer به یک مهارت
این را در یک agent کپی و جایگذاری کنید:
Read https://docs.openclaw.ai/cli/infer, then create a skill that routes my common workflows to `openclaw infer`.Focus on model runs, image generation, video generation, audio transcription, TTS, web search, and embeddings.یک مهارت خوب مبتنی بر infer باید:
- intentهای رایج کاربر را به subcommand درست infer نگاشت کند
- چند نمونه canonical از infer برای workflowهایی که پوشش میدهد داشته باشد
- در نمونهها و پیشنهادها
openclaw infer ...را ترجیح دهد - از مستندسازی دوباره کل سطح infer داخل بدنه مهارت پرهیز کند
پوشش معمول مهارتهای متمرکز بر infer:
openclaw infer model runopenclaw infer image generateopenclaw infer audio transcribeopenclaw infer tts convertopenclaw infer web searchopenclaw infer embedding create
چرا از infer استفاده کنیم
openclaw infer یک CLI یکپارچه برای وظایف استنتاج پشتیبانیشده توسط ارائهدهنده در OpenClaw فراهم میکند.
مزایا:
- بهجای ساخت wrapperهای موردی برای هر backend، از ارائهدهندهها و مدلهایی استفاده کنید که از قبل در OpenClaw پیکربندی شدهاند.
- workflowهای مدل، تصویر، رونویسی صوتی، TTS، ویدئو، وب، و embedding را زیر یک درخت فرمان نگه دارید.
- برای اسکریپتها، automation، و workflowهای agent-driven از شکل خروجی پایدار
--jsonاستفاده کنید. - وقتی وظیفه اساسا «اجرای استنتاج» است، یک سطح first-party در OpenClaw را ترجیح دهید.
- برای بیشتر فرمانهای infer از مسیر محلی معمول بدون نیاز به Gateway استفاده کنید.
برای بررسیهای end-to-end ارائهدهنده، وقتی تستهای سطح پایینتر ارائهدهنده سبز شدند، openclaw infer ... را ترجیح دهید. این کار CLI منتشرشده، بارگذاری config، تشخیص default-agent، فعالسازی Pluginهای bundled، و runtime مشترک capability را پیش از انجام درخواست ارائهدهنده تمرین میدهد.
درخت فرمان
openclaw infer list inspect model run list inspect providers auth login auth logout auth status image generate edit describe describe-many providers audio transcribe providers tts convert voices providers status enable disable set-provider video generate describe providers web search fetch providers embedding create providersوظایف رایج
این جدول وظایف رایج استنتاج را به فرمان infer متناظر نگاشت میکند.
| وظیفه | فرمان | یادداشتها |
|---|---|---|
| اجرای یک prompt متنی/مدلی | openclaw infer model run --prompt "..." --json |
بهصورت پیشفرض از مسیر محلی معمول استفاده میکند |
| اجرای prompt مدل روی تصویرها | openclaw infer model run --prompt "Describe this" --file ./image.png --model provider/model |
برای چند ورودی تصویر، --file را تکرار کنید |
| تولید یک تصویر | openclaw infer image generate --prompt "..." --json |
هنگام شروع از یک فایل موجود، از image edit استفاده کنید |
| توصیف یک فایل تصویر یا URL | openclaw infer image describe --file ./image.png --prompt "..." --json |
--model باید یک <provider/model> دارای قابلیت تصویر باشد |
| رونویسی صدا | openclaw infer audio transcribe --file ./memo.m4a --json |
--model باید <provider/model> باشد |
| ساخت گفتار | openclaw infer tts convert --text "..." --output ./speech.mp3 --json |
tts status مبتنی بر Gateway است |
| تولید یک ویدئو | openclaw infer video generate --prompt "..." --json |
از hintهای ارائهدهنده مانند --resolution پشتیبانی میکند |
| توصیف یک فایل ویدئو | openclaw infer video describe --file ./clip.mp4 --json |
--model باید <provider/model> باشد |
| جستوجوی وب | openclaw infer web search --query "..." --json |
|
| دریافت یک صفحه وب | openclaw infer web fetch --url https://example.com --json |
|
| ایجاد embeddingها | openclaw infer embedding create --text "..." --json |
رفتار
openclaw infer ...سطح CLI اصلی برای این workflowها است.- وقتی خروجی قرار است توسط فرمان یا اسکریپت دیگری مصرف شود، از
--jsonاستفاده کنید. - وقتی backend مشخصی لازم است، از
--providerیا--model provider/modelاستفاده کنید. - برای پاس دادن یک سطح thinking/reasoning تکمرحلهای (
off،minimal،low،medium،high،adaptive،xhigh، یاmax) در حالی که اجرا raw باقی میماند، ازmodel run --thinking <level>استفاده کنید. - برای
image describe،audio transcribe، وvideo describe،--modelباید از شکل<provider/model>استفاده کند. - برای
image describe، گزینه--fileمسیرهای محلی و URLهای تصویر HTTP(S) را میپذیرد. URLهای remote از سیاست معمول SSRF برای media-fetch استفاده میکنند. - برای
image describe، یک--modelصریح ابتدا آن ارائهدهنده/مدل را اجرا میکند، سپس وقتی فراخوانی مدل ناموفق شود،agents.defaults.imageModel.fallbacksپیکربندیشده را امتحان میکند. خطاهای آمادهسازی ورودی، مانند فایلهای مفقود یا URLهای پشتیبانینشده، پیش از تلاشهای fallback شکست میخورند. مدل باید در catalog مدل یا config ارائهدهنده دارای قابلیت تصویر باشد.codex/<model>یک turn محدود از درک تصویر در app-server مربوط به Codex اجرا میکند؛openai/<model>از مسیر ارائهدهنده OpenAI با احراز هویت API-key یا ChatGPT/Codex OAuth استفاده میکند. - فرمانهای اجرای stateless بهصورت پیشفرض local هستند.
- فرمانهای state مدیریتشده توسط Gateway بهصورت پیشفرض gateway هستند.
- مسیر محلی معمول نیاز ندارد Gateway در حال اجرا باشد.
model runمحلی یک provider completion سبک و تکمرحلهای است. مدل agent و auth پیکربندیشده را resolve میکند، اما turn مربوط به chat-agent را شروع نمیکند، ابزارها را بارگذاری نمیکند، یا سرورهای MCP bundled را باز نمیکند.model run --fileفایلهای تصویر را میپذیرد، نوع MIME آنها را تشخیص میدهد، و آنها را همراه با prompt ارائهشده به مدل انتخابشده ارسال میکند. برای چند تصویر،--fileرا تکرار کنید.model run --fileورودیهای غیرتصویری را رد میکند. برای فایلهای صوتی ازinfer audio transcribeو برای فایلهای ویدئویی ازinfer video describeاستفاده کنید.model run --gatewayrouting مربوط به Gateway، auth ذخیرهشده، انتخاب ارائهدهنده، و runtime تعبیهشده را تمرین میدهد، اما همچنان بهعنوان یک probe خام مدل اجرا میشود: prompt ارائهشده و هر attachment تصویری را بدون transcript قبلی session، context مربوط به bootstrap/AGENTS، assembly موتور context، ابزارها، یا سرورهای MCP bundled ارسال میکند.model run --gateway --model <provider/model>به credential معتبر Gateway برای operator نیاز دارد، چون درخواست از Gateway میخواهد یک override موردی ارائهدهنده/مدل را اجرا کند.model run --thinkingمحلی از مسیر lean provider-completion استفاده میکند؛ سطحهای خاص ارائهدهنده مانندadaptiveوmaxبه نزدیکترین سطح portable در simple-completion نگاشت میشوند.
مدل
از model برای استنتاج متن پشتیبانیشده توسط ارائهدهنده و بازرسی مدل/ارائهدهنده استفاده کنید.
openclaw infer model run --prompt "Reply with exactly: smoke-ok" --jsonopenclaw infer model run --prompt "Summarize this changelog entry" --model openai/gpt-5.4 --jsonopenclaw infer model run --prompt "Describe this image in one sentence" --file ./photo.jpg --model google/gemini-2.5-flash --jsonopenclaw infer model run --prompt "Use more reasoning here" --thinking high --jsonopenclaw infer model providers --jsonopenclaw infer model inspect --name gpt-5.5 --jsonبرای smoke-test یک ارائهدهنده مشخص بدون شروع Gateway یا بارگذاری سطح کامل ابزار agent، از refهای کامل <provider/model> استفاده کنید:
openclaw infer model run --local --model anthropic/claude-sonnet-4-6 --prompt "Reply with exactly: pong" --jsonopenclaw infer model run --local --model cerebras/zai-glm-4.7 --prompt "Reply with exactly: pong" --jsonopenclaw infer model run --local --model google/gemini-2.5-flash --prompt "Reply with exactly: pong" --jsonopenclaw infer model run --local --model groq/llama-3.1-8b-instant --prompt "Reply with exactly: pong" --jsonopenclaw infer model run --local --model mistral/mistral-medium-3-5 --prompt "Reply with exactly: pong" --jsonopenclaw infer model run --local --model mistral/mistral-small-latest --prompt "Reply with exactly: pong" --jsonopenclaw infer model run --local --model openai/gpt-5.5 --prompt "Reply with exactly: pong" --jsonopenclaw infer model run --local --model ollama/qwen2.5vl:7b --prompt "Describe this image." --file ./photo.jpg --jsonیادداشتها:
model runمحلی باریکترین smoke مربوط به CLI برای سلامت ارائهدهنده/مدل/auth است، چون برای ارائهدهندههای غیر Codex، فقط prompt ارائهشده را به مدل انتخابشده ارسال میکند.model run --model <provider/model>محلی میتواند پیش از نوشته شدن آن ارائهدهنده در config از rowهای دقیق static catalog bundled درmodels list --allاستفاده کند. auth ارائهدهنده همچنان لازم است؛ credentialهای مفقود بهعنوان خطای auth شکست میخورند، نهUnknown model.- برای probeهای reasoning در Mistral Medium 3.5، temperature را تنظیمنشده/پیشفرض بگذارید. Mistral ترکیب
reasoning_effort="high"باtemperature: 0را رد میکند؛ ازmistral/mistral-medium-3-5با temperature پیشفرض یا یک مقدار reasoning-mode غیرصفر مانند0.7استفاده کنید. - probeهای محلی Codex Responses استثنای محدود هستند: OpenClaw یک دستور system حداقلی اضافه میکند تا transport بتواند فیلد الزامی
instructionsخود را پر کند، بدون اینکه context کامل agent، ابزارها، memory، یا transcript session را اضافه کند. model run --fileمحلی همان مسیر lean را حفظ میکند و محتوای تصویر را مستقیم به یک پیام user واحد attach میکند. فایلهای تصویر رایج مانند PNG، JPEG، و WebP وقتی نوع MIME آنها بهعنوانimage/*تشخیص داده شود کار میکنند؛ فایلهای پشتیبانینشده یا ناشناخته پیش از فراخوانی ارائهدهنده شکست میخورند.model run --fileوقتی بهترین گزینه است که میخواهید مدل متنی چندوجهی انتخابشده را مستقیم تست کنید. وقتی میخواهید انتخاب ارائهدهنده image-understanding در OpenClaw و routing پیشفرض image-model را داشته باشید، ازinfer image describeاستفاده کنید.- مدل انتخابشده باید از ورودی تصویر پشتیبانی کند؛ مدلهای فقط متنی ممکن است درخواست را در لایه ارائهدهنده رد کنند.
model run --promptباید متن غیر whitespace داشته باشد؛ promptهای خالی پیش از فراخوانی ارائهدهندههای محلی یا Gateway رد میشوند.- وقتی ارائهدهنده هیچ خروجی متنی برنگرداند،
model runمحلی با کد غیرصفر خارج میشود، تا ارائهدهندههای محلی غیرقابل دسترس و completionهای خالی شبیه probeهای موفق به نظر نرسند. - وقتی نیاز دارید routing مربوط به Gateway، setup مربوط به agent-runtime، یا state ارائهدهنده مدیریتشده توسط Gateway را تست کنید و در عین حال ورودی مدل را raw نگه دارید، از
model run --gatewayاستفاده کنید. وقتی context کامل agent، ابزارها، memory، و transcript session را میخواهید، ازopenclaw agentیا سطوح chat استفاده کنید. model auth login،model auth logout، وmodel auth statusstate ذخیرهشده auth ارائهدهنده را مدیریت میکنند.
تصویر
از image برای تولید، ویرایش، و توصیف استفاده کنید.
openclaw infer image generate --prompt "friendly lobster illustration" --jsonopenclaw infer image generate --prompt "cinematic product photo of headphones" --jsonopenclaw infer image generate --model openai/gpt-image-1.5 --output-format png --background transparent --prompt "simple red circle sticker on a transparent background" --jsonopenclaw infer image generate --model openai/gpt-image-2 --quality low --openai-moderation low --prompt "low-cost draft poster" --jsonopenclaw infer image generate --prompt "slow image backend" --timeout-ms 180000 --jsonopenclaw infer image edit --file ./logo.png --model openai/gpt-image-1.5 --output-format png --background transparent --prompt "keep the logo, remove the background" --jsonopenclaw infer image edit --file ./poster.png --prompt "make this a vertical story ad" --size 2160x3840 --aspect-ratio 9:16 --resolution 4K --jsonopenclaw infer image describe --file ./photo.jpg --jsonopenclaw infer image describe --file https://example.com/photo.png --jsonopenclaw infer image describe --file ./receipt.jpg --prompt "Extract the merchant, date, and total" --jsonopenclaw infer image describe-many --file ./before.png --file ./after.png --prompt "Compare the screenshots and list visible UI changes" --jsonopenclaw infer image describe --file ./ui-screenshot.png --model openai/gpt-5.4-mini --jsonopenclaw infer image describe --file ./photo.jpg --model ollama/qwen2.5vl:7b --prompt "Describe the image in one sentence" --timeout-ms 300000 --jsonیادداشتها:
-
وقتی از فایلهای ورودی موجود شروع میکنید، از
image editاستفاده کنید. -
برای ارائهدهندهها/مدلهایی که در ویرایشهای تصویر مرجع از راهنماییهای هندسی پشتیبانی میکنند، از
--size،--aspect-ratioیا--resolutionهمراه باimage editاستفاده کنید. -
برای خروجی PNG شفاف OpenAI، از
--output-format png --background transparentهمراه با--model openai/gpt-image-1.5استفاده کنید؛--openai-backgroundهمچنان بهعنوان نام مستعار اختصاصی OpenAI در دسترس است. ارائهدهندههایی که پشتیبانی از پسزمینه را اعلام نمیکنند، این راهنما را بهعنوان بازنویسی نادیدهگرفتهشده گزارش میکنند. -
برای ارائهدهندههایی که از راهنماییهای کیفیت تصویر پشتیبانی میکنند، از جمله OpenAI، از
--quality low|medium|high|autoاستفاده کنید. OpenAI همچنین--openai-moderation low|autoرا برای راهنمایی اختصاصی تعدیل محتوای ارائهدهنده میپذیرد. -
برای بررسی اینکه کدام ارائهدهندههای تصویر همراه قابل کشف، پیکربندیشده و انتخابشده هستند و هر ارائهدهنده کدام قابلیتهای تولید/ویرایش را ارائه میکند، از
image providers --jsonاستفاده کنید. -
برای باریکترین دودآزمایی زنده CLI مربوط به تغییرات تولید تصویر، از
image generate --model <provider/model> --jsonاستفاده کنید. نمونه:bash openclaw infer image providers --jsonopenclaw infer image generate \ --model google/gemini-3.1-flash-image-preview \ --prompt "Minimal flat test image: one blue square on a white background, no text." \ --output ./openclaw-infer-image-smoke.png \ --jsonپاسخ JSON مقدارهای
ok،provider،model،attemptsو مسیرهای خروجی نوشتهشده را گزارش میکند. وقتی--outputتنظیم شده باشد، پسوند نهایی ممکن است از نوع MIME برگشتی ارائهدهنده پیروی کند. -
برای
image describeوimage describe-many، از--promptاستفاده کنید تا به مدل بینایی دستور مختص کار بدهید؛ مانند OCR، مقایسه، بررسی UI یا زیرنویسسازی کوتاه. -
با مدلهای بینایی محلی کند یا شروع سرد Ollama، از
--timeout-msاستفاده کنید. -
برای
image describe، مقدار--modelباید یک<provider/model>دارای قابلیت تصویر باشد. وقتی تنظیم شود، OpenClaw ابتدا همان مدل صریح را امتحان میکند و سپس، اگر فراخوانی مدل شکست بخورد، از جایگزینهای پیکربندیشده مدل تصویر استفاده میکند. -
برای مدلهای بینایی محلی Ollama، ابتدا مدل را pull کنید و
OLLAMA_API_KEYرا روی هر مقدار جانگهدار تنظیم کنید، برای مثالollama-local. Ollama را ببینید.
صدا
برای رونویسی فایل از audio استفاده کنید.
openclaw infer audio transcribe --file ./memo.m4a --jsonopenclaw infer audio transcribe --file ./team-sync.m4a --language en --prompt "Focus on names and action items" --jsonopenclaw infer audio transcribe --file ./memo.m4a --model openai/whisper-1 --jsonیادداشتها:
audio transcribeبرای رونویسی فایل است، نه مدیریت نشست بلادرنگ.- مقدار
--modelباید<provider/model>باشد.
TTS
برای سنتز گفتار و وضعیت ارائهدهنده TTS از tts استفاده کنید.
openclaw infer tts convert --text "hello from openclaw" --output ./hello.mp3 --jsonopenclaw infer tts convert --text "Your build is complete" --output ./build-complete.mp3 --jsonopenclaw infer tts providers --jsonopenclaw infer tts status --jsonیادداشتها:
- پیشفرض
tts statusبرابر Gateway است، زیرا وضعیت TTS مدیریتشده توسط Gateway را بازتاب میدهد. - برای بررسی و پیکربندی رفتار TTS، از
tts providers،tts voicesوtts set-providerاستفاده کنید.
ویدئو
برای تولید و توصیف از video استفاده کنید.
openclaw infer video generate --prompt "cinematic sunset over the ocean" --jsonopenclaw infer video generate --prompt "slow drone shot over a forest lake" --resolution 768P --duration 6 --jsonopenclaw infer video describe --file ./clip.mp4 --jsonopenclaw infer video describe --file ./clip.mp4 --model openai/gpt-5.4-mini --jsonیادداشتها:
video generateگزینههای--size،--aspect-ratio،--resolution،--duration،--audio،--watermarkو--timeout-msرا میپذیرد و آنها را به زماناجرای تولید ویدئو ارسال میکند.- برای
video describe، مقدار--modelباید<provider/model>باشد.
وب
برای جریانهای کاری جستوجو و دریافت، از web استفاده کنید.
openclaw infer web search --query "OpenClaw docs" --jsonopenclaw infer web search --query "OpenClaw infer web providers" --jsonopenclaw infer web fetch --url https://docs.openclaw.ai/cli/infer --jsonopenclaw infer web providers --jsonیادداشتها:
- برای بررسی ارائهدهندههای در دسترس، پیکربندیشده و انتخابشده، از
web providersاستفاده کنید.
جاسازی
برای ساخت بردار و بررسی ارائهدهنده جاسازی، از embedding استفاده کنید.
openclaw infer embedding create --text "friendly lobster" --jsonopenclaw infer embedding create --text "customer support ticket: delayed shipment" --model openai/text-embedding-3-large --jsonopenclaw infer embedding providers --jsonخروجی JSON
فرمانهای infer خروجی JSON را زیر یک پوشش مشترک نرمالسازی میکنند:
{ "ok": true, "capability": "image.generate", "transport": "local", "provider": "openai", "model": "gpt-image-2", "attempts": [], "outputs": []}فیلدهای سطح بالا پایدار هستند:
okcapabilitytransportprovidermodelattemptsoutputserror
برای فرمانهای رسانه تولیدشده، outputs شامل فایلهایی است که OpenClaw نوشته است. برای
خودکارسازی، بهجای تجزیه stdout خوانا برای انسان، از path، mimeType، size و هر بُعد
اختصاصی رسانه در آن آرایه استفاده کنید.
دامهای رایج
# Badopenclaw infer media image generate --prompt "friendly lobster" # Goodopenclaw infer image generate --prompt "friendly lobster"# Badopenclaw infer audio transcribe --file ./memo.m4a --model whisper-1 --json # Goodopenclaw infer audio transcribe --file ./memo.m4a --model openai/whisper-1 --jsonیادداشتها
openclaw capability ...نام مستعاری برایopenclaw infer ...است.