Concepts and configuration
मॉडल CLI
प्रमाणीकरण प्रोफ़ाइल रोटेशन, कूलडाउन, और यह फॉलबैक के साथ कैसे इंटरैक्ट करता है।
त्वरित प्रदाता अवलोकन और उदाहरण।
OpenClaw, Codex, और अन्य एजेंट लूप रनटाइम।
मॉडल कॉन्फ़िग कुंजियाँ।
मॉडल रेफ्स एक प्रदाता और मॉडल चुनते हैं। वे आम तौर पर निम्न-स्तरीय एजेंट रनटाइम नहीं चुनते। OpenAI एजेंट रेफ्स मुख्य अपवाद हैं: openai/gpt-5.5 आधिकारिक OpenAI प्रदाता पर डिफ़ॉल्ट रूप से Codex ऐप-सर्वर रनटाइम के माध्यम से चलता है। सब्सक्रिप्शन Copilot रेफ्स (github-copilot/*) को अतिरिक्त रूप से बाहरी GitHub Copilot एजेंट रनटाइम Plugin में चुना जा सकता है — वह पथ स्पष्ट रहता है (कोई auto फॉलबैक नहीं)। स्पष्ट रनटाइम ओवरराइड पूरे एजेंट या सत्र पर नहीं, बल्कि प्रदाता/मॉडल नीति पर होने चाहिए। Codex रनटाइम मोड में, openai/gpt-* रेफ API-कुंजी बिलिंग का संकेत नहीं देता; प्रमाणीकरण Codex खाते या openai OAuth प्रोफ़ाइल से आ सकता है। एजेंट रनटाइम और GitHub Copilot एजेंट रनटाइम देखें।
मॉडल चयन कैसे काम करता है
OpenClaw इस क्रम में मॉडल चुनता है:
प्राथमिक मॉडल
agents.defaults.model.primary (या agents.defaults.model)।
फॉलबैक
agents.defaults.model.fallbacks (क्रम में)।
प्रदाता प्रमाणीकरण फेलओवर
अगले मॉडल पर जाने से पहले प्रमाणीकरण फेलओवर प्रदाता के भीतर होता है।
संबंधित मॉडल सतहें
agents.defaults.modelsउन मॉडलों की अनुमति-सूची/कैटलॉग है जिनका OpenClaw उपयोग कर सकता है (साथ में उपनाम)। प्रदाता खोज को डायनेमिक रखते हुए दिखाई देने वाले प्रदाताओं को सीमित करने के लिएprovider/*प्रविष्टियों का उपयोग करें।agents.defaults.imageModelका उपयोग केवल तब होता है जब प्राथमिक मॉडल छवियाँ स्वीकार नहीं कर सकता।agents.defaults.pdfModelका उपयोगpdfटूल द्वारा किया जाता है। यदि छोड़ा गया हो, तो टूल पहलेagents.defaults.imageModelपर, फिर हल किए गए सत्र/डिफ़ॉल्ट मॉडल पर फॉलबैक करता है।agents.defaults.imageGenerationModelका उपयोग साझा इमेज-जनरेशन क्षमता द्वारा किया जाता है। यदि छोड़ा गया हो, तोimage_generateफिर भी प्रमाणीकरण-समर्थित प्रदाता डिफ़ॉल्ट का अनुमान लगा सकता है। यह पहले मौजूदा डिफ़ॉल्ट प्रदाता को आज़माता है, फिर शेष पंजीकृत इमेज-जनरेशन प्रदाताओं को प्रदाता-ID क्रम में। यदि आप कोई विशिष्ट प्रदाता/मॉडल सेट करते हैं, तो उस प्रदाता का प्रमाणीकरण/API कुंजी भी कॉन्फ़िगर करें।agents.defaults.musicGenerationModelका उपयोग साझा म्यूज़िक-जनरेशन क्षमता द्वारा किया जाता है। यदि छोड़ा गया हो, तोmusic_generateफिर भी प्रमाणीकरण-समर्थित प्रदाता डिफ़ॉल्ट का अनुमान लगा सकता है। यह पहले मौजूदा डिफ़ॉल्ट प्रदाता को आज़माता है, फिर शेष पंजीकृत म्यूज़िक-जनरेशन प्रदाताओं को प्रदाता-ID क्रम में। यदि आप कोई विशिष्ट प्रदाता/मॉडल सेट करते हैं, तो उस प्रदाता का प्रमाणीकरण/API कुंजी भी कॉन्फ़िगर करें।agents.defaults.videoGenerationModelका उपयोग साझा वीडियो-जनरेशन क्षमता द्वारा किया जाता है। यदि छोड़ा गया हो, तोvideo_generateफिर भी प्रमाणीकरण-समर्थित प्रदाता डिफ़ॉल्ट का अनुमान लगा सकता है। यह पहले मौजूदा डिफ़ॉल्ट प्रदाता को आज़माता है, फिर शेष पंजीकृत वीडियो-जनरेशन प्रदाताओं को प्रदाता-ID क्रम में। यदि आप कोई विशिष्ट प्रदाता/मॉडल सेट करते हैं, तो उस प्रदाता का प्रमाणीकरण/API कुंजी भी कॉन्फ़िगर करें।- प्रति-एजेंट डिफ़ॉल्ट, बाइंडिंग्स के साथ
agents.list[].modelके ज़रिएagents.defaults.modelको ओवरराइड कर सकते हैं (मल्टी-एजेंट रूटिंग देखें)।
चयन स्रोत और फॉलबैक व्यवहार
वही provider/model इस पर निर्भर करते हुए अलग-अलग अर्थ रख सकता है कि वह कहाँ से आया है:
- कॉन्फ़िगर किए गए डिफ़ॉल्ट (
agents.defaults.model.primaryऔर एजेंट-विशिष्ट प्राथमिक) सामान्य शुरुआती बिंदु हैं औरagents.defaults.model.fallbacksका उपयोग करते हैं। - ऑटो फॉलबैक चयन अस्थायी रिकवरी स्थिति हैं। उन्हें
modelOverrideSource: "auto"के साथ संग्रहीत किया जाता है ताकि बाद के टर्न हर बार ज्ञात-खराब प्राथमिक की जाँच किए बिना फॉलबैक श्रृंखला का उपयोग जारी रख सकें; OpenClaw समय-समय पर मूल प्राथमिक को फिर से जाँचता है, रिकवर होने पर ऑटो चयन साफ़ करता है, और फॉलबैक/रिकवरी संक्रमणों की घोषणा प्रत्येक स्थिति परिवर्तन पर एक बार करता है। - उपयोगकर्ता सत्र चयन सटीक होते हैं।
/model, मॉडल पिकर,session_status(model=...), औरsessions.patchmodelOverrideSource: "user"संग्रहीत करते हैं; यदि वह चुना गया प्रदाता/मॉडल पहुँच योग्य नहीं है, तो OpenClaw किसी अन्य कॉन्फ़िगर किए गए मॉडल पर जाने के बजाय स्पष्ट रूप से विफल होता है। agents.defaults.model.primaryबदलने से मौजूदा सत्र चयन फिर से नहीं लिखे जाते। यदि स्थिति कहती हैThis session is pinned to X; config primary Y will apply to new/unpinned sessions., तो मौजूदा सत्र चयन को/model defaultसे साफ़ करें ताकि वह फिर से कॉन्फ़िगर किए गए प्राथमिक को विरासत में ले।- Cron
--model/ पेलोडmodelप्रति-जॉब प्राथमिक है। यह फिर भी कॉन्फ़िगर किए गए फॉलबैक का उपयोग करता है, जब तक कि जॉब स्पष्ट पेलोडfallbacksन दे (fallbacks: []का उपयोग सख़्त cron रन के लिए करें)। - CLI डिफ़ॉल्ट-मॉडल और अनुमति-सूची पिकर, पूरे बिल्ट-इन कैटलॉग को लोड करने के बजाय स्पष्ट
models.providers.*.modelsसूचीबद्ध करकेmodels.mode: "replace"का सम्मान करते हैं। - Control UI मॉडल पिकर Gateway से उसका कॉन्फ़िगर किया गया मॉडल व्यू पूछता है: मौजूद होने पर
agents.defaults.models, जिसमें प्रदाता-व्यापीprovider/*प्रविष्टियाँ शामिल हैं, अन्यथा स्पष्टmodels.providers.*.modelsऔर उपयोगी प्रमाणीकरण वाले प्रदाता। पूरा बिल्ट-इन कैटलॉग स्पष्ट ब्राउज़ व्यू जैसेmodels.listके साथview: "all"याopenclaw models list --allके लिए आरक्षित है।
त्वरित मॉडल नीति
- अपना प्राथमिक मॉडल आपके लिए उपलब्ध सबसे मजबूत नवीनतम-पीढ़ी के मॉडल पर सेट करें।
- लागत/विलंब-संवेदनशील कार्यों और कम-जोखिम चैट के लिए फॉलबैक का उपयोग करें।
- टूल-सक्षम एजेंटों या अविश्वसनीय इनपुट के लिए, पुराने/कमज़ोर मॉडल टियर से बचें।
ऑनबोर्डिंग (अनुशंसित)
यदि आप कॉन्फ़िग हाथ से संपादित नहीं करना चाहते, तो ऑनबोर्डिंग चलाएँ:
openclaw onboardयह सामान्य प्रदाताओं के लिए मॉडल + प्रमाणीकरण सेट कर सकता है, जिसमें OpenAI Code (Codex) सब्सक्रिप्शन (OAuth) और Anthropic (API कुंजी या Claude CLI) शामिल हैं।
कॉन्फ़िग कुंजियाँ (अवलोकन)
agents.defaults.model.primaryऔरagents.defaults.model.fallbacksagents.defaults.imageModel.primaryऔरagents.defaults.imageModel.fallbacksagents.defaults.pdfModel.primaryऔरagents.defaults.pdfModel.fallbacksagents.defaults.imageGenerationModel.primaryऔरagents.defaults.imageGenerationModel.fallbacksagents.defaults.videoGenerationModel.primaryऔरagents.defaults.videoGenerationModel.fallbacksagents.defaults.models(अनुमति-सूची + उपनाम + प्रदाता पैरामीटर +provider/*डायनेमिक प्रदाता प्रविष्टियाँ)models.providers(models.jsonमें लिखे गए कस्टम प्रदाता)
सुरक्षित अनुमति-सूची संपादन
agents.defaults.models को हाथ से अपडेट करते समय एडिटिव राइट्स का उपयोग करें:
openclaw config set agents.defaults.models '{"openai/gpt-5.4":{}}' --strict-json --mergeक्लॉबर सुरक्षा नियम
openclaw config set मॉडल/प्रदाता मैप्स को आकस्मिक क्लॉबर से बचाता है। agents.defaults.models, models.providers, या models.providers.<id>.models को साधारण ऑब्जेक्ट असाइनमेंट अस्वीकार किया जाता है जब वह मौजूदा प्रविष्टियाँ हटा देगा। एडिटिव बदलावों के लिए --merge का उपयोग करें; --replace का उपयोग केवल तब करें जब दिया गया मान पूरा लक्ष्य मान बनना चाहिए।
इंटरैक्टिव प्रदाता सेटअप और openclaw configure --section model भी प्रदाता-स्कोप किए गए चयनों को मौजूदा अनुमति-सूची में मर्ज करते हैं, इसलिए Codex, Ollama, या कोई अन्य प्रदाता जोड़ने से असंबंधित मॉडल प्रविष्टियाँ नहीं हटतीं। प्रदाता प्रमाणीकरण फिर से लागू होने पर Configure मौजूदा agents.defaults.model.primary को सुरक्षित रखता है। स्पष्ट डिफ़ॉल्ट-सेटिंग कमांड जैसे openclaw models auth login --provider <id> --set-default और openclaw models set <model> फिर भी agents.defaults.model.primary को बदलते हैं।
"मॉडल की अनुमति नहीं है" (और उत्तर क्यों रुकते हैं)
यदि agents.defaults.models सेट है, तो यह /model और सत्र ओवरराइड के लिए अनुमति-सूची बन जाता है। जब कोई उपयोगकर्ता ऐसा मॉडल चुनता है जो उस अनुमति-सूची में नहीं है, तो OpenClaw लौटाता है:
Model "provider/model" is not allowed. Use /models to list providers, or /models <provider> to list models.Add it with: openclaw config set agents.defaults.models '{"provider/model":{}}' --strict-json --mergeजब अस्वीकृत कमांड में /model openai/gpt-5.5 --runtime codex जैसा रनटाइम ओवरराइड शामिल हो, तो पहले अनुमति-सूची ठीक करें, फिर वही /model ... --runtime ... कमांड दोबारा चलाएँ। नेटिव Codex निष्पादन के लिए, चुना गया मॉडल फिर भी openai/gpt-5.5 है; codex रनटाइम हार्नेस चुनता है और Codex प्रमाणीकरण को अलग से उपयोग करता है।
स्थानीय/GGUF मॉडलों के लिए, अनुमति-सूची में पूरा प्रदाता-प्रीफ़िक्स वाला रेफ संग्रहीत करें,
उदाहरण के लिए ollama/gemma4:26b, lmstudio/Gemma4-26b-a4-it-gguf, या
openclaw models list --provider <provider> द्वारा दिखाया गया सटीक प्रदाता/मॉडल।
जब अनुमति-सूची सक्रिय हो, तो केवल स्थानीय फ़ाइलनाम या डिस्प्ले नाम पर्याप्त नहीं होते।
यदि आप हर मॉडल को हाथ से सूचीबद्ध किए बिना प्रदाताओं को सीमित करना चाहते हैं, तो
provider/* प्रविष्टियाँ agents.defaults.models में जोड़ें:
{ agents: { defaults: { models: { "openai/*": {}, "vllm/*": {}, }, }, },}उस नीति के साथ, /model, /models, और मॉडल पिकर केवल उन प्रदाताओं के लिए खोजा गया
कैटलॉग दिखाते हैं। चुने गए प्रदाताओं से नए मॉडल अनुमति-सूची संपादित किए बिना
दिखाई दे सकते हैं। जब आपको किसी दूसरे प्रदाता से एक विशिष्ट मॉडल चाहिए, तो सटीक provider/model प्रविष्टियों को
provider/* प्रविष्टियों के साथ मिलाया जा सकता है।
उदाहरण अनुमति-सूची कॉन्फ़िग:
{ agents: { defaults: { model: { primary: "anthropic/claude-sonnet-4-6" }, models: { "anthropic/claude-sonnet-4-6": { alias: "Sonnet" }, "anthropic/claude-opus-4-6": { alias: "Opus" }, }, }, },}चैट में मॉडल बदलना (/model)
आप पुनरारंभ किए बिना मौजूदा सत्र के लिए मॉडल बदल सकते हैं:
/model/model list/model 3/model openai/gpt-5.4/model default/model statusपिकर व्यवहार
/model(और/model list) एक कॉम्पैक्ट, क्रमांकित पिकर है (मॉडल परिवार + उपलब्ध प्रदाता)।- Discord पर,
/modelऔर/modelsप्रदाता और मॉडल ड्रॉपडाउन तथा Submit चरण के साथ एक इंटरैक्टिव पिकर खोलते हैं। - Telegram पर,
/modelsपिकर चयन सत्र-स्कोप होते हैं; वेopenclaw.jsonमें एजेंट का स्थायी डिफ़ॉल्ट नहीं बदलते। /models addअप्रचलित है और अब चैट से मॉडल पंजीकृत करने के बजाय अप्रचलन संदेश लौटाता है।/model <#>उस पिकर से चयन करता है।
स्थायित्व और लाइव स्विचिंग
/modelनया सत्र चयन तुरंत कायम रखता है।- यदि agent निष्क्रिय है, तो अगला run नया मॉडल तुरंत उपयोग करता है।
- यदि कोई run पहले से सक्रिय है, तो OpenClaw लाइव स्विच को pending के रूप में चिह्नित करता है और केवल साफ़ retry point पर नए मॉडल में पुनः आरंभ करता है।
- यदि tool गतिविधि या reply output पहले ही शुरू हो चुका है, तो pending switch बाद के retry अवसर या अगले user turn तक queued रह सकता है।
/model defaultसत्र चयन साफ़ करता है और सत्र को कॉन्फ़िगर किए गए default मॉडल पर वापस ले जाता है।- user-selected
/modelref उस सत्र के लिए strict होता है: यदि चयनित provider/model पहुँच योग्य नहीं है, तो replyagents.defaults.model.fallbacksसे चुपचाप उत्तर देने के बजाय स्पष्ट रूप से fail होता है। यह configured defaults और cron job primaries से अलग है, जो अभी भी fallback chains उपयोग कर सकते हैं। /model statusविस्तृत view है (auth candidates और, कॉन्फ़िगर होने पर, provider endpointbaseUrl+apimode).
Ref parsing
- Model refs को पहले
/पर split करके parse किया जाता है।/model <ref>type करते समयprovider/modelउपयोग करें। - यदि model ID में स्वयं
/शामिल है (OpenRouter-style), तो आपको provider prefix शामिल करना होगा (उदाहरण:/model openrouter/moonshotai/kimi-k2)। - यदि आप provider छोड़ देते हैं, तो OpenClaw input को इस क्रम में resolve करता है:
- alias match
- उस exact unprefixed model id के लिए unique configured-provider match
- configured default provider पर deprecated fallback — यदि वह provider अब configured default model expose नहीं करता, तो OpenClaw stale removed-provider default दिखाने से बचने के लिए पहले configured provider/model पर fallback करता है।
पूर्ण command behavior/config: Slash commands.
CLI commands
openclaw models listopenclaw models statusopenclaw models set <provider/model>openclaw models set-image <provider/model> openclaw models aliases listopenclaw models aliases add <alias> <provider/model>openclaw models aliases remove <alias> openclaw models fallbacks listopenclaw models fallbacks add <provider/model>openclaw models fallbacks remove <provider/model>openclaw models fallbacks clear openclaw models image-fallbacks listopenclaw models image-fallbacks add <provider/model>openclaw models image-fallbacks remove <provider/model>openclaw models image-fallbacks clearopenclaw models (बिना subcommand) models status के लिए shortcut है।
models list
Default रूप से configured/auth-available models दिखाता है। उपयोगी flags:
--allbooleanपूरा catalog। Auth configure होने से पहले bundled provider-owned static catalog rows शामिल करता है, इसलिए discovery-only views ऐसे models दिखा सकते हैं जो matching provider credentials जोड़ने तक unavailable होते हैं।
--localbooleanकेवल local providers।
OPENCLAW_DOCS_MARKER:paramOpen:IHBhdGg9Ii0tcHJvdmlkZXIgPGlk
" type="string">
Provider id से filter करें, उदाहरण के लिए moonshot। Interactive pickers से display labels स्वीकार नहीं किए जाते।
--plainbooleanप्रति line एक model।
--jsonbooleanMachine-readable output।
models status
Resolved primary model, fallbacks, image model, और configured providers का auth overview दिखाता है। यह auth store में मिले profiles के लिए OAuth expiry status भी दिखाता है (default रूप से 24h के भीतर चेतावनी देता है)। --plain केवल resolved primary model print करता है।
Auth और probe behavior
- OAuth status हमेशा दिखाया जाता है (और
--jsonoutput में शामिल होता है)। यदि configured provider के पास credentials नहीं हैं, तोmodels statusMissing auth section print करता है। - JSON में
auth.oauth(warn window + profiles) औरauth.providers(प्रति provider effective auth, env-backed credentials सहित) शामिल हैं।auth.oauthकेवल auth-store profile health है; env-only providers वहाँ दिखाई नहीं देते। - Automation के लिए
--checkउपयोग करें (missing/expired होने पर exit1, expiring होने पर2)। - Live auth checks के लिए
--probeउपयोग करें; probe rows auth profiles, env credentials, याmodels.jsonसे आ सकती हैं। - यदि explicit
auth.order.<provider>stored profile को छोड़ देता है, तो probe उसे try करने के बजायexcluded_by_auth_orderreport करता है। यदि auth मौजूद है लेकिन उस provider के लिए कोई probeable model resolve नहीं किया जा सकता, तो probestatus: no_modelreport करता है।
उदाहरण (Claude CLI):
claude auth loginopenclaw models statusScanning (OpenRouter free models)
openclaw models scan OpenRouter के free model catalog की जाँच करता है और वैकल्पिक रूप से tool और image support के लिए models probe कर सकता है।
--no-probebooleanLive probes छोड़ें (केवल metadata)।
"--min-params"--max-age-days"--provider"--max-candidates--set-defaultbooleanagents.defaults.model.primary को first selection पर set करें।
--set-imagebooleanagents.defaults.imageModel.primary को first image selection पर set करें।
Scan results इस आधार पर ranked होते हैं:
- Image support
- Tool latency
- Context size
- Parameter count
Input:
- OpenRouter
/modelslist (filter:free) - Live probes के लिए auth profiles या
OPENROUTER_API_KEYसे OpenRouter API key चाहिए (देखें Environment variables) - Optional filters:
--max-age-days,--min-params,--provider,--max-candidates - Request/probe controls:
--timeout,--concurrency
जब live probes TTY में चलते हैं, तो आप fallbacks interactively select कर सकते हैं। Non-interactive mode में, defaults स्वीकार करने के लिए --yes pass करें। Metadata-only results informational हैं; --set-default और --set-image के लिए live probes चाहिए ताकि OpenClaw unusable keyless OpenRouter model configure न करे।
Models registry (models.json)
models.providers में custom providers agent directory के अंतर्गत models.json में लिखे जाते हैं (default ~/.openclaw/agents/<agentId>/agent/models.json)। Provider-plugin catalogs agent की plugin state के अंतर्गत generated plugin-owned catalog shards के रूप में stored होते हैं और automatically load होते हैं। यह file default रूप से merge होती है जब तक models.mode को replace पर set न किया गया हो।
Merge mode precedence
Matching provider IDs के लिए merge mode precedence:
- Agent
models.jsonमें पहले से मौजूद non-emptybaseUrlजीतता है। - Agent
models.jsonमें non-emptyapiKeyकेवल तब जीतता है जब वह provider current config/auth-profile context में SecretRef-managed नहीं है। - SecretRef-managed provider
apiKeyvalues resolved secrets persist करने के बजाय source markers (env refs के लिएENV_VAR_NAME, file/exec refs के लिएsecretref-managed) से refresh होती हैं। - SecretRef-managed provider header values source markers (env refs के लिए
secretref-env:ENV_VAR_NAME, file/exec refs के लिएsecretref-managed) से refresh होती हैं। - Empty या missing agent
apiKey/baseUrlconfigmodels.providersपर fall back करते हैं। - अन्य provider fields config और normalized catalog data से refresh होते हैं।
संबंधित
- Agent runtimes — OpenClaw, Codex, और अन्य agent loop runtimes
- Configuration reference — model config keys
- Image generation — image model configuration
- Model failover — fallback chains
- Model providers — provider routing और auth
- Music generation — music model configuration
- Video generation — video model configuration