Gateway
پیکربندی — ابزارها و ارائهدهندگان سفارشی
کلیدهای پیکربندی tools.* و راهاندازی ارائهدهنده سفارشی / URL پایه. برای agents، channels و دیگر کلیدهای پیکربندی سطح بالا، مرجع پیکربندی را ببینید.
ابزارها
پروفایلهای ابزار
tools.profile پیش از tools.allow/tools.deny یک فهرست مجاز پایه تنظیم میکند:
| پروفایل | شامل |
|---|---|
minimal |
فقط session_status |
coding |
group:fs, group:runtime, group:web, group:sessions, group:memory, cron, image, image_generate, video_generate |
messaging |
group:messaging, sessions_list, sessions_history, sessions_send, session_status |
full |
بدون محدودیت (همانند تنظیمنشدن) |
گروههای ابزار
| گروه | ابزارها |
|---|---|
group:runtime |
exec, process, code_execution (bash بهعنوان نام مستعار برای exec پذیرفته میشود) |
group:fs |
read, write, edit, apply_patch |
group:sessions |
sessions_list, sessions_history, sessions_send, sessions_spawn, sessions_yield, subagents, session_status |
group:memory |
memory_search, memory_get |
group:web |
web_search, x_search, web_fetch |
group:ui |
browser, canvas |
group:automation |
heartbeat_respond, cron, gateway |
group:messaging |
message |
group:nodes |
nodes |
group:agents |
agents_list, update_plan |
group:media |
image, image_generate, music_generate, video_generate, tts |
group:openclaw |
همه ابزارهای داخلی (Pluginهای ارائهدهنده را شامل نمیشود) |
tools.allow / tools.deny
سیاست سراسری مجاز/ممنوع برای ابزارها (ممنوعسازی اولویت دارد). به بزرگی و کوچکی حروف حساس نیست، از نویسههای عام * پشتیبانی میکند. حتی وقتی سندباکس Docker خاموش باشد نیز اعمال میشود.
{
tools: { deny: ["browser", "canvas"] },
}
write و apply_patch شناسههای ابزار جداگانه هستند. allow: ["write"] برای مدلهای سازگار apply_patch را نیز فعال میکند، اما deny: ["write"]، apply_patch را ممنوع نمیکند. برای مسدودکردن همه تغییرات فایل، group:fs را ممنوع کنید یا هر ابزار تغییردهنده را جداگانه فهرست کنید:
{
tools: { deny: ["write", "edit", "apply_patch"] },
}
tools.byProvider
ابزارها را برای ارائهدهندهها یا مدلهای مشخص بیشتر محدود میکند. ترتیب: پروفایل پایه → پروفایل ارائهدهنده → مجاز/ممنوع.
{
tools: {
profile: "coding",
byProvider: {
"google-antigravity": { profile: "minimal" },
"openai/gpt-5.4": { allow: ["group:fs", "sessions_list"] },
},
},
}
tools.elevated
دسترسی اجرای ارتقایافته خارج از سندباکس را کنترل میکند:
{
tools: {
elevated: {
enabled: true,
allowFrom: {
whatsapp: ["+15555550123"],
discord: ["1234567890123", "987654321098765432"],
},
},
},
}
- بازنویسی بهازای هر عامل (
agents.list[].tools.elevated) فقط میتواند محدودتر کند. /elevated on|off|ask|fullوضعیت را بهازای هر نشست ذخیره میکند؛ دستورهای درونخطی روی یک پیام واحد اعمال میشوند.- اجرای ارتقایافته
execاز سندباکس عبور میکند و از مسیر خروج پیکربندیشده استفاده میکند (gatewayبهصورت پیشفرض، یاnodeوقتی هدف اجراnodeباشد).
tools.exec
{
tools: {
exec: {
backgroundMs: 10000,
timeoutSec: 1800,
cleanupMs: 1800000,
notifyOnExit: true,
notifyOnExitEmptySuccess: false,
applyPatch: {
enabled: false,
allowModels: ["gpt-5.5"],
},
},
},
}
tools.loopDetection
بررسیهای ایمنی حلقه ابزار بهصورت پیشفرض غیرفعال هستند. برای فعالکردن تشخیص، enabled: true را تنظیم کنید. تنظیمات میتوانند بهصورت سراسری در tools.loopDetection تعریف شوند و بهازای هر عامل در agents.list[].tools.loopDetection بازنویسی شوند.
{
tools: {
loopDetection: {
enabled: true,
historySize: 30,
warningThreshold: 10,
criticalThreshold: 20,
globalCircuitBreakerThreshold: 30,
detectors: {
genericRepeat: true,
knownPollNoProgress: true,
pingPong: true,
},
},
},
}
historySizenumberبیشینه تاریخچه فراخوانی ابزار که برای تحلیل حلقه نگه داشته میشود.
warningThresholdnumberآستانه الگوی تکراری بدون پیشرفت برای هشدارها.
criticalThresholdnumberآستانه تکرار بالاتر برای مسدودکردن حلقههای بحرانی.
globalCircuitBreakerThresholdnumberآستانه توقف قطعی برای هر اجرای بدون پیشرفت.
detectors.genericRepeatbooleanدر فراخوانیهای تکراری با همان ابزار/همان آرگومانها هشدار بده.
detectors.knownPollNoProgressbooleanدر ابزارهای نظرسنجی شناختهشده (process.poll، command_status و غیره) هشدار بده/مسدود کن.
detectors.pingPongbooleanدر الگوهای زوجی متناوب بدون پیشرفت هشدار بده/مسدود کن.
tools.web
{
tools: {
web: {
search: {
enabled: true,
apiKey: "brave_api_key", // or BRAVE_API_KEY env
maxResults: 5,
timeoutSeconds: 30,
cacheTtlMinutes: 15,
},
fetch: {
enabled: true,
provider: "firecrawl", // optional; omit for auto-detect
maxChars: 50000,
maxCharsCap: 50000,
maxResponseBytes: 2000000,
timeoutSeconds: 30,
cacheTtlMinutes: 15,
maxRedirects: 3,
readability: true,
userAgent: "custom-ua",
},
},
},
}
tools.media
درک رسانهٔ ورودی (تصویر/صدا/ویدیو) را پیکربندی میکند:
{
tools: {
media: {
concurrency: 2,
asyncCompletion: {
directSend: false, // deprecated: completions stay agent-mediated
},
audio: {
enabled: true,
maxBytes: 20971520,
scope: {
default: "deny",
rules: [{ action: "allow", match: { chatType: "direct" } }],
},
models: [
{ provider: "openai", model: "gpt-4o-mini-transcribe" },
{ type: "cli", command: "whisper", args: ["--model", "base", "{{MediaPath}}"] },
],
},
image: {
enabled: true,
timeoutSeconds: 180,
models: [{ provider: "ollama", model: "gemma4:26b", timeoutSeconds: 300 }],
},
video: {
enabled: true,
maxBytes: 52428800,
models: [{ provider: "google", model: "gemini-3-flash-preview" }],
},
},
},
}
Media model entry fields
ورودی ارائهدهنده (type: "provider" یا حذفشده):
provider: شناسهٔ ارائهدهندهٔ API (openai،anthropic،google/gemini،groqو غیره)model: بازنویسی شناسهٔ مدلprofile/preferredProfile: انتخاب پروفایلauth-profiles.json
ورودی CLI (type: "cli"):
command: فایل اجرایی برای اجراargs: آرگومانهای قالبدار (از{{MediaPath}}،{{Prompt}}،{{MaxChars}}و غیره پشتیبانی میکند؛openclaw doctor --fixجاینگهدارهای منسوخ{{input}}را به{{MediaPath}}مهاجرت میدهد)
فیلدهای مشترک:
capabilities: فهرست اختیاری (image،audio،video). پیشفرضها:openai/anthropic/minimax← تصویر،google← تصویر+صدا+ویدیو،groq← صدا.prompt،maxChars،maxBytes،timeoutSeconds،language: بازنویسیهای مخصوص هر ورودی.tools.media.image.timeoutSecondsو ورودیهای متناظرtimeoutSecondsبرای مدل تصویر، وقتی agent ابزار صریحimageرا فراخوانی میکند نیز اعمال میشوند.- شکستها به ورودی بعدی بازمیگردند.
احراز هویت ارائهدهنده از ترتیب استاندارد پیروی میکند: auth-profiles.json ← متغیرهای محیطی ← models.providers.*.apiKey.
فیلدهای تکمیل ناهمگام:
asyncCompletion.directSend: پرچم سازگاری منسوخ. وظایف رسانهای ناهمگام تکمیلشده همچنان با میانجیگری نشست درخواستکننده باقی میمانند تا agent نتیجه را دریافت کند، تصمیم بگیرد چگونه به کاربر اطلاع دهد، و وقتی تحویل از منبع به آن نیاز دارد از ابزار پیام استفاده کند.
tools.agentToAgent
{
tools: {
agentToAgent: {
enabled: false,
allow: ["home", "work"],
},
},
}
tools.sessions
کنترل میکند کدام نشستها میتوانند توسط ابزارهای نشست (sessions_list، sessions_history، sessions_send) هدف قرار گیرند.
پیشفرض: tree (نشست فعلی + نشستهایی که توسط آن ایجاد شدهاند، مانند subagentها).
{
tools: {
sessions: {
// "self" | "tree" | "agent" | "all"
visibility: "tree",
},
},
}
Visibility scopes
self: فقط کلید نشست فعلی.tree: نشست فعلی + نشستهایی که توسط نشست فعلی ایجاد شدهاند (subagentها).agent: هر نشستی که به شناسهٔ agent فعلی تعلق دارد (اگر نشستهای جداگانه برای هر فرستنده را زیر همان شناسهٔ agent اجرا کنید، میتواند شامل کاربران دیگر نیز باشد).all: هر نشست. هدفگیری بین agentها همچنان بهtools.agentToAgentنیاز دارد.- محدودسازی sandbox: وقتی نشست فعلی sandbox شده باشد و
agents.defaults.sandbox.sessionToolsVisibility="spawned"باشد، visibility حتی اگرtools.sessions.visibility="all"باشد، بهاجبار رویtreeتنظیم میشود.
tools.sessions_spawn
پشتیبانی از پیوست درونخطی را برای sessions_spawn کنترل میکند.
{
tools: {
sessions_spawn: {
attachments: {
enabled: false, // opt-in: set true to allow inline file attachments
maxTotalBytes: 5242880, // 5 MB total across all files
maxFiles: 50,
maxFileBytes: 1048576, // 1 MB per file
retainOnSessionKeep: false, // keep attachments when cleanup="keep"
},
},
},
}
نکات پیوست
- پیوستها فقط برای
runtime: "subagent"پشتیبانی میشوند. زمان اجرای ACP آنها را رد میکند. - فایلها در فضای کاری فرزند در مسیر
.openclaw/attachments/<uuid>/همراه با یک.manifest.jsonایجاد میشوند. - محتوای پیوست بهطور خودکار از ماندگاری رونوشت حذف محرمانه میشود.
- ورودیهای Base64 با بررسیهای سختگیرانه الفبا/پدینگ و محافظ اندازه پیش از رمزگشایی اعتبارسنجی میشوند.
- مجوزهای فایل برای پوشهها
0700و برای فایلها0600است. - پاکسازی از سیاست
cleanupپیروی میکند:deleteهمیشه پیوستها را حذف میکند؛keepفقط زمانی آنها را نگه میدارد کهretainOnSessionKeep: trueباشد.
tools.experimental
پرچمهای ابزار داخلی آزمایشی. بهطور پیشفرض خاموش است، مگر اینکه یک قاعده فعالسازی خودکار سختگیرانه عاملمحور GPT-5 اعمال شود.
{
tools: {
experimental: {
planTool: true, // enable experimental update_plan
},
},
}
planTool: ابزار ساختاریافتهupdate_planرا برای پیگیری کارهای چندمرحلهای غیرساده فعال میکند.- پیشفرض:
falseمگر اینکهagents.defaults.embeddedPi.executionContract(یا یک بازنویسی برای هر عامل) برای اجرای OpenAI یا OpenAI Codex از خانواده GPT-5 روی"strict-agentic"تنظیم شده باشد. برای اجبار به روشن بودن ابزار بیرون از آن محدوده،trueتنظیم کنید، یا برای خاموش نگه داشتن آن حتی برای اجراهای GPT-5 سختگیرانه عاملمحور،falseتنظیم کنید. - وقتی فعال باشد، پرامپت سیستم همچنین راهنمای استفاده را اضافه میکند تا مدل فقط برای کارهای قابلتوجه از آن استفاده کند و حداکثر یک مرحله را در وضعیت
in_progressنگه دارد.
agents.defaults.subagents
{
agents: {
defaults: {
subagents: {
allowAgents: ["research"],
model: "minimax/MiniMax-M2.7",
maxConcurrent: 8,
runTimeoutSeconds: 900,
archiveAfterMinutes: 60,
},
},
},
}
model: مدل پیشفرض برای زیرعاملهای ایجادشده. اگر حذف شود، زیرعاملها مدل فراخواننده را به ارث میبرند.allowAgents: فهرست مجاز پیشفرض شناسههای عامل هدف برایsessions_spawnوقتی عامل درخواستدهندهsubagents.allowAgentsخودش را تنظیم نکرده باشد (["*"]= هرکدام؛ پیشفرض: فقط همان عامل).runTimeoutSeconds: مهلت زمانی پیشفرض (ثانیه) برایsessions_spawnوقتی فراخوانی ابزارrunTimeoutSecondsرا حذف کند.0یعنی بدون مهلت زمانی.- سیاست ابزار برای هر زیرعامل:
tools.subagents.tools.allow/tools.subagents.tools.deny.
ارائهدهندگان سفارشی و URLهای پایه
OpenClaw از کاتالوگ مدل داخلی استفاده میکند. ارائهدهندگان سفارشی را از طریق models.providers در پیکربندی یا ~/.openclaw/agents/<agentId>/agent/models.json اضافه کنید.
{
models: {
mode: "merge", // merge (default) | replace
providers: {
"custom-proxy": {
baseUrl: "http://localhost:4000/v1",
apiKey: "LITELLM_KEY",
api: "openai-completions", // openai-completions | openai-responses | anthropic-messages | google-generative-ai
models: [
{
id: "llama-3.1-8b",
name: "Llama 3.1 8B",
reasoning: false,
input: ["text"],
cost: { input: 0, output: 0, cacheRead: 0, cacheWrite: 0 },
contextWindow: 128000,
contextTokens: 96000,
maxTokens: 32000,
},
],
},
},
},
}
احراز هویت و تقدم ادغام
- برای نیازهای احراز هویت سفارشی از
authHeader: true+headersاستفاده کنید. - ریشه پیکربندی عامل را با
OPENCLAW_AGENT_DIR(یاPI_CODING_AGENT_DIR، یک نام مستعار قدیمی متغیر محیطی) بازنویسی کنید. - تقدم ادغام برای شناسههای ارائهدهنده همسان:
- مقدارهای غیرخالی
baseUrlدرmodels.jsonعامل برنده میشوند. - مقدارهای غیرخالی
apiKeyعامل فقط زمانی برنده میشوند که آن ارائهدهنده در زمینه پیکربندی/نمایه احراز هویت فعلی تحت مدیریت SecretRef نباشد. - مقدارهای
apiKeyارائهدهنده تحت مدیریت SecretRef بهجای ماندگار کردن رازهای حلشده، از نشانگرهای منبع (ENV_VAR_NAMEبرای ارجاعهای محیطی،secretref-managedبرای ارجاعهای فایل/exec) تازهسازی میشوند. - مقدارهای سربرگ ارائهدهنده تحت مدیریت SecretRef از نشانگرهای منبع (
secretref-env:ENV_VAR_NAMEبرای ارجاعهای محیطی،secretref-managedبرای ارجاعهای فایل/exec) تازهسازی میشوند. - مقدارهای خالی یا گمشده
apiKey/baseUrlعامل بهmodels.providersدر پیکربندی بازمیگردند. - مدلهای همسان
contextWindow/maxTokensمقدار بالاتر بین پیکربندی صریح و مقدارهای ضمنی کاتالوگ را استفاده میکنند. - مدل همسان
contextTokensدر صورت وجود، سقف صریح زمان اجرا را حفظ میکند؛ از آن برای محدود کردن زمینه مؤثر بدون تغییر فراداده بومی مدل استفاده کنید. - وقتی میخواهید پیکربندی،
models.jsonرا کاملاً بازنویسی کند، ازmodels.mode: "replace"استفاده کنید. - ماندگاری نشانگرها بر اساس منبع مرجع است: نشانگرها از اسنپشات پیکربندی منبع فعال (پیش از حلشدن) نوشته میشوند، نه از مقدارهای راز حلشده زمان اجرا.
- مقدارهای غیرخالی
جزئیات فیلد ارائهدهنده
کاتالوگ سطح بالا
models.mode: رفتار کاتالوگ ارائهدهنده (mergeیاreplace).models.providers: نگاشت ارائهدهنده سفارشی با کلید شناسه ارائهدهنده.- ویرایشهای امن: برای بهروزرسانیهای افزایشی از
openclaw config set models.providers.<id> '<json>' --strict-json --mergeیاopenclaw config set models.providers.<id>.models '<json-array>' --strict-json --mergeاستفاده کنید.config setجایگزینیهای مخرب را رد میکند مگر اینکه--replaceرا بدهید.
- ویرایشهای امن: برای بهروزرسانیهای افزایشی از
اتصال و احراز هویت ارائهدهنده
models.providers.*.api: آداپتور درخواست (openai-completions،openai-responses،anthropic-messages،google-generative-aiو غیره). برای بکاندهای خودمیزبان/v1/chat/completionsمانند MLX، vLLM، SGLang و بیشتر سرورهای محلی سازگار با OpenAI، ازopenai-completionsاستفاده کنید. ارائهدهنده سفارشی باbaseUrlاما بدونapiبهطور پیشفرض ازopenai-completionsاستفاده میکند؛ فقط وقتی بکاند از/v1/responsesپشتیبانی میکندopenai-responsesرا تنظیم کنید.models.providers.*.apiKey: اعتبارنامه ارائهدهنده (جایگزینی SecretRef/env ترجیح دارد).models.providers.*.auth: راهبرد احراز هویت (api-key،token،oauth،aws-sdk).models.providers.*.contextWindow: پنجره زمینه بومی پیشفرض برای مدلهای زیر این ارائهدهنده وقتی ورودی مدلcontextWindowرا تنظیم نکرده باشد.models.providers.*.contextTokens: سقف زمینه مؤثر زمان اجرا پیشفرض برای مدلهای زیر این ارائهدهنده وقتی ورودی مدلcontextTokensرا تنظیم نکرده باشد.models.providers.*.maxTokens: سقف توکن خروجی پیشفرض برای مدلهای زیر این ارائهدهنده وقتی ورودی مدلmaxTokensرا تنظیم نکرده باشد.models.providers.*.timeoutSeconds: مهلت زمانی اختیاری درخواست HTTP مدل برای هر ارائهدهنده بر حسب ثانیه، شامل اتصال، سربرگها، بدنه و مدیریت قطع کامل درخواست.models.providers.*.injectNumCtxForOpenAICompat: برای Ollama +openai-completions، مقدارoptions.num_ctxرا به درخواستها تزریق میکند (پیشفرض:true).models.providers.*.authHeader: در صورت نیاز، انتقال اعتبارنامه را در سربرگAuthorizationاجباری میکند.models.providers.*.baseUrl: URL پایه API بالادستی.models.providers.*.headers: سربرگهای ایستای اضافی برای مسیریابی پراکسی/مستأجر.
بازنویسیهای انتقال درخواست
models.providers.*.request: بازنویسیهای انتقال برای درخواستهای HTTP ارائهدهنده مدل.
request.headers: سربرگهای اضافی (ادغامشده با پیشفرضهای ارائهدهنده). مقدارها SecretRef را میپذیرند.request.auth: بازنویسی راهبرد احراز هویت. حالتها:"provider-default"(استفاده از احراز هویت داخلی ارائهدهنده)،"authorization-bearer"(باtoken)،"header"(باheaderName،value، وprefixاختیاری).request.proxy: بازنویسی پراکسی HTTP. حالتها:"env-proxy"(استفاده از متغیرهای محیطیHTTP_PROXY/HTTPS_PROXY)،"explicit-proxy"(باurl). هر دو حالت یک زیرشیء اختیاریtlsرا میپذیرند.request.tls: بازنویسی TLS برای اتصالهای مستقیم. فیلدها:ca،cert،key،passphrase(همه SecretRef را میپذیرند)،serverName،insecureSkipVerify.request.allowPrivateNetwork: وقتیtrueباشد، اجازه میدهد HTTPS بهbaseUrlزمانی که DNS به بازههای خصوصی، CGNAT یا مشابه حل میشود، از طریق محافظ fetch HTTP ارائهدهنده انجام شود (انتخاب آگاهانه اپراتور برای اندپوینتهای خودمیزبان سازگار با OpenAI و مورد اعتماد). URLهای جریان ارائهدهنده مدل loopback مانندlocalhost،127.0.0.1و[::1]بهطور خودکار مجازند مگر اینکه این مقدار صریحاً رویfalseتنظیم شود؛ میزبانهای LAN، tailnet و DNS خصوصی همچنان به انتخاب آگاهانه نیاز دارند. WebSocket از همانrequestبرای سربرگها/TLS استفاده میکند، اما نه از آن دروازه SSRF مربوط به fetch. پیشفرضfalse.
ورودیهای کاتالوگ مدل
models.providers.*.models: ورودیهای صریح کاتالوگ مدل ارائهدهنده.models.providers.*.models.*.input: حالتهای ورودی مدل. برای مدلهای فقط متنی از["text"]و برای مدلهای تصویر/بینایی بومی از["text", "image"]استفاده کنید. پیوستهای تصویری فقط زمانی به نوبتهای عامل تزریق میشوند که مدل انتخابشده بهعنوان توانمند در تصویر علامتگذاری شده باشد.models.providers.*.models.*.contextWindow: فراداده پنجره زمینه بومی مدل. این مقدارcontextWindowسطح ارائهدهنده را برای آن مدل بازنویسی میکند.models.providers.*.models.*.contextTokens: سقف اختیاری زمینه زمان اجرا. این مقدارcontextTokensسطح ارائهدهنده را بازنویسی میکند؛ وقتی بودجه زمینه مؤثر کوچکتری ازcontextWindowبومی مدل میخواهید، از آن استفاده کنید؛openclaw models listهر دو مقدار را وقتی متفاوت باشند نشان میدهد.models.providers.*.models.*.compat.supportsDeveloperRole: راهنمای سازگاری اختیاری. برایapi: "openai-completions"باbaseUrlغیرخالی و غیربومی (میزبانی کهapi.openai.comنیست)، OpenClaw این مقدار را در زمان اجرا بهfalseاجباری میکند.baseUrlخالی/حذفشده رفتار پیشفرض OpenAI را نگه میدارد.models.providers.*.models.*.compat.requiresStringContent: راهنمای سازگاری اختیاری برای اندپوینتهای گفتوگوی سازگار با OpenAI که فقط رشته میپذیرند. وقتیtrueباشد، OpenClaw آرایههای متنی خالصmessages[].contentرا پیش از ارسال درخواست به رشتههای ساده تخت میکند.
کشف Amazon Bedrock
plugins.entries.amazon-bedrock.config.discovery: ریشه تنظیمات کشف خودکار Bedrock.plugins.entries.amazon-bedrock.config.discovery.enabled: روشن/خاموش کردن کشف ضمنی.plugins.entries.amazon-bedrock.config.discovery.region: منطقه AWS برای کشف.plugins.entries.amazon-bedrock.config.discovery.providerFilter: فیلتر اختیاری شناسه ارائهدهنده برای کشف هدفمند.plugins.entries.amazon-bedrock.config.discovery.refreshInterval: بازه نظرسنجی برای تازهسازی کشف.plugins.entries.amazon-bedrock.config.discovery.defaultContextWindow: پنجره زمینه جایگزین برای مدلهای کشفشده.plugins.entries.amazon-bedrock.config.discovery.defaultMaxTokens: سقف جایگزین توکنهای خروجی برای مدلهای کشفشده.
فرایند راهاندازی تعاملی ارائهدهنده سفارشی، ورودی تصویر را برای شناسههای رایج مدلهای بینایی مانند GPT-4o، Claude، Gemini، Qwen-VL، LLaVA، Pixtral، InternVL، Mllama، MiniCPM-V و GLM-4V استنباط میکند و برای خانوادههای شناختهشده فقط متنی، پرسش اضافی را رد میکند. شناسههای مدل ناشناخته همچنان درباره پشتیبانی تصویر سؤال میکنند. راهاندازی غیرتعاملی از همان استنباط استفاده میکند؛ برای اجباری کردن فراداده توانمند در تصویر، --custom-image-input را بدهید یا برای اجباری کردن فراداده فقط متنی، --custom-text-input را بدهید.
نمونههای ارائهدهنده
Cerebras (GLM 4.7 / GPT OSS)
Plugin ارائهدهنده همراه cerebras میتواند این را از طریق openclaw onboard --auth-choice cerebras-api-key پیکربندی کند. فقط وقتی پیشفرضها را بازنویسی میکنید از پیکربندی صریح ارائهدهنده استفاده کنید.
{
env: { CEREBRAS_API_KEY: "sk-..." },
agents: {
defaults: {
model: {
primary: "cerebras/zai-glm-4.7",
fallbacks: ["cerebras/gpt-oss-120b"],
},
models: {
"cerebras/zai-glm-4.7": { alias: "GLM 4.7 (Cerebras)" },
"cerebras/gpt-oss-120b": { alias: "GPT OSS 120B (Cerebras)" },
},
},
},
models: {
mode: "merge",
providers: {
cerebras: {
baseUrl: "https://api.cerebras.ai/v1",
apiKey: "${CEREBRAS_API_KEY}",
api: "openai-completions",
models: [
{ id: "zai-glm-4.7", name: "GLM 4.7 (Cerebras)" },
{ id: "gpt-oss-120b", name: "GPT OSS 120B (Cerebras)" },
],
},
},
},
}
از cerebras/zai-glm-4.7 برای Cerebras و از zai/glm-4.7 برای دسترسی مستقیم Z.AI استفاده کنید.
Kimi Coding
{
env: { KIMI_API_KEY: "sk-..." },
agents: {
defaults: {
model: { primary: "kimi/kimi-code" },
models: { "kimi/kimi-code": { alias: "Kimi Code" } },
},
},
}
سازگار با Anthropic، ارائهدهنده داخلی. میانبر: openclaw onboard --auth-choice kimi-code-api-key.
Local models (LM Studio)
مدلهای محلی را ببینید. خلاصه: یک مدل محلی بزرگ را از طریق LM Studio Responses API روی سختافزار جدی اجرا کنید؛ مدلهای میزبانیشده را برای بازگشت پشتیبان بهصورت ادغامشده نگه دارید.
MiniMax M2.7 (direct)
{
agents: {
defaults: {
model: { primary: "minimax/MiniMax-M2.7" },
models: {
"minimax/MiniMax-M2.7": { alias: "Minimax" },
},
},
},
models: {
mode: "merge",
providers: {
minimax: {
baseUrl: "https://api.minimax.io/anthropic",
apiKey: "${MINIMAX_API_KEY}",
api: "anthropic-messages",
models: [
{
id: "MiniMax-M2.7",
name: "MiniMax M2.7",
reasoning: true,
input: ["text"],
cost: { input: 0.3, output: 1.2, cacheRead: 0.06, cacheWrite: 0.375 },
contextWindow: 204800,
maxTokens: 131072,
},
],
},
},
},
}
MINIMAX_API_KEY را تنظیم کنید. میانبرها: openclaw onboard --auth-choice minimax-global-api یا openclaw onboard --auth-choice minimax-cn-api. کاتالوگ مدل بهطور پیشفرض فقط M2.7 است. در مسیر جریانسازی سازگار با Anthropic، OpenClaw بهطور پیشفرض تفکر MiniMax را غیرفعال میکند، مگر اینکه خودتان صریحاً thinking را تنظیم کنید. /fast on یا params.fastMode: true مقدار MiniMax-M2.7 را به MiniMax-M2.7-highspeed بازنویسی میکند.
Moonshot AI (Kimi)
{
env: { MOONSHOT_API_KEY: "sk-..." },
agents: {
defaults: {
model: { primary: "moonshot/kimi-k2.6" },
models: { "moonshot/kimi-k2.6": { alias: "Kimi K2.6" } },
},
},
models: {
mode: "merge",
providers: {
moonshot: {
baseUrl: "https://api.moonshot.ai/v1",
apiKey: "${MOONSHOT_API_KEY}",
api: "openai-completions",
models: [
{
id: "kimi-k2.6",
name: "Kimi K2.6",
reasoning: false,
input: ["text", "image"],
cost: { input: 0.95, output: 4, cacheRead: 0.16, cacheWrite: 0 },
contextWindow: 262144,
maxTokens: 262144,
},
],
},
},
},
}
برای نقطه پایانی چین: baseUrl: "https://api.moonshot.cn/v1" یا openclaw onboard --auth-choice moonshot-api-key-cn.
نقاط پایانی بومی Moonshot سازگاری مصرف جریانسازی را روی انتقال مشترک openai-completions اعلام میکنند، و OpenClaw این را بر اساس قابلیتهای نقطه پایانی فعال میکند، نه فقط شناسه ارائهدهنده داخلی.
OpenCode
{
agents: {
defaults: {
model: { primary: "opencode/claude-opus-4-6" },
models: { "opencode/claude-opus-4-6": { alias: "Opus" } },
},
},
}
OPENCODE_API_KEY (یا OPENCODE_ZEN_API_KEY) را تنظیم کنید. از ارجاعهای opencode/... برای کاتالوگ Zen یا از ارجاعهای opencode-go/... برای کاتالوگ Go استفاده کنید. میانبر: openclaw onboard --auth-choice opencode-zen یا openclaw onboard --auth-choice opencode-go.
Synthetic (Anthropic-compatible)
{
env: { SYNTHETIC_API_KEY: "sk-..." },
agents: {
defaults: {
model: { primary: "synthetic/hf:MiniMaxAI/MiniMax-M2.5" },
models: { "synthetic/hf:MiniMaxAI/MiniMax-M2.5": { alias: "MiniMax M2.5" } },
},
},
models: {
mode: "merge",
providers: {
synthetic: {
baseUrl: "https://api.synthetic.new/anthropic",
apiKey: "${SYNTHETIC_API_KEY}",
api: "anthropic-messages",
models: [
{
id: "hf:MiniMaxAI/MiniMax-M2.5",
name: "MiniMax M2.5",
reasoning: true,
input: ["text"],
cost: { input: 0, output: 0, cacheRead: 0, cacheWrite: 0 },
contextWindow: 192000,
maxTokens: 65536,
},
],
},
},
},
}
URL پایه باید /v1 را حذف کند (کلاینت Anthropic آن را اضافه میکند). میانبر: openclaw onboard --auth-choice synthetic-api-key.
Z.AI (GLM-4.7)
{
agents: {
defaults: {
model: { primary: "zai/glm-4.7" },
models: { "zai/glm-4.7": {} },
},
},
}
ZAI_API_KEY را تنظیم کنید. z.ai/* و z-ai/* بهعنوان نامهای مستعار پذیرفته میشوند. میانبر: openclaw onboard --auth-choice zai-api-key.
- نقطه پایانی عمومی:
https://api.z.ai/api/paas/v4 - نقطه پایانی کدنویسی (پیشفرض):
https://api.z.ai/api/coding/paas/v4 - برای نقطه پایانی عمومی، یک ارائهدهنده سفارشی با بازنویسی URL پایه تعریف کنید.
مرتبط
- پیکربندی — عاملها
- پیکربندی — کانالها
- مرجع پیکربندی — کلیدهای سطح بالای دیگر
- ابزارها و plugins