Gateway
التكوين — الأدوات والمزوّدون المخصّصون
tools.* مفاتيح إعدادات وإعداد مزود مخصص / عنوان URL أساسي. بالنسبة إلى الوكلاء والقنوات ومفاتيح الإعدادات العليا الأخرى، راجع مرجع الإعدادات.
الأدوات
ملفات تعريف الأدوات
يضبط 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 |
جميع الأدوات المضمنة (باستثناء Plugins المزود) |
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
يتحكم في وصول exec المرتفع خارج العزل:
{
tools: {
elevated: {
enabled: true,
allowFrom: {
whatsapp: ["+15555550123"],
discord: ["1234567890123", "987654321098765432"],
},
},
},
}
- يمكن للتجاوز على مستوى كل وكيل (
agents.list[].tools.elevated) أن يقيّد أكثر فقط. - يخزن
/elevated on|off|ask|fullالحالة لكل جلسة؛ وتُطبّق التوجيهات المضمنة على رسالة واحدة. - يتجاوز
execالمرتفع العزل ويستخدم مسار الهروب المضبوط (gatewayافتراضيًا، أوnodeعندما يكون هدف exec هو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المطابقة لنموذج الصورة عندما يستدعي الوكيل أداةimageالصريحة. - تعود حالات الفشل إلى الإدخال التالي.
يتبع توثيق المزوّد الترتيب القياسي: auth-profiles.json ← متغيرات البيئة ← models.providers.*.apiKey.
حقول الإكمال غير المتزامن:
asyncCompletion.directSend: علامة توافق مهملة. تبقى مهام الوسائط غير المتزامنة المكتملة وسيطة عبر جلسة الطالب، بحيث يتلقى الوكيل النتيجة ويقرر كيفية إخبار المستخدم ويستخدم أداة الرسائل عندما يتطلب تسليم المصدر ذلك.
tools.agentToAgent
{
tools: {
agentToAgent: {
enabled: false,
allow: ["home", "work"],
},
},
}
tools.sessions
يتحكم في الجلسات التي يمكن استهدافها بواسطة أدوات الجلسات (sessions_list، sessions_history، sessions_send).
الافتراضي: tree (الجلسة الحالية + الجلسات التي أنشأتها، مثل الوكلاء الفرعيين).
{
tools: {
sessions: {
// "self" | "tree" | "agent" | "all"
visibility: "tree",
},
},
}
Visibility scopes
self: مفتاح الجلسة الحالية فقط.tree: الجلسة الحالية + الجلسات التي أنشأتها الجلسة الحالية (الوكلاء الفرعيون).agent: أي جلسة تنتمي إلى معرّف الوكيل الحالي (قد تشمل مستخدمين آخرين إذا شغّلت جلسات لكل مرسل ضمن معرّف الوكيل نفسه).all: أي جلسة. لا يزال الاستهداف عبر الوكلاء يتطلبtools.agentToAgent.- تقييد صندوق العزل: عندما تكون الجلسة الحالية داخل صندوق عزل و
agents.defaults.sandbox.sessionToolsVisibility="spawned"، تُفرض الرؤية علىtreeحتى إذا كانtools.sessions.visibility="all".
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"
},
},
},
}
Attachment notes
- المرفقات مدعومة فقط لـ
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(أو تجاوز خاص بكل وكيل) على"strict-agentic"لتشغيل عائلة GPT-5 من OpenAI أو OpenAI Codex. اضبطه علىtrueلفرض تشغيل الأداة خارج هذا النطاق، أوfalseلإبقائها معطلة حتى في تشغيلات GPT-5 ذاتstrict-agentic. - عند التفعيل، يضيف موجه النظام أيضًا إرشادات استخدام بحيث لا يستخدمها النموذج إلا للعمل الكبير، ويحافظ على خطوة واحدة على الأكثر بالحالة
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,
},
],
},
},
},
}
Auth and merge precedence
- استخدم
authHeader: true+headersلاحتياجات المصادقة المخصصة. - تجاوز جذر إعدادات الوكيل باستخدام
OPENCLAW_AGENT_DIR(أوPI_CODING_AGENT_DIR، وهو اسم بديل قديم لمتغير بيئة). - أسبقية الدمج لمعرفات المزودين المتطابقة:
- تفوز قيم
baseUrlغير الفارغة فيmodels.jsonالخاص بالوكيل. - تفوز قيم
apiKeyغير الفارغة في الوكيل فقط عندما لا يكون ذلك المزود مُدارًا بواسطة SecretRef في سياق الإعدادات/ملف تعريف المصادقة الحالي. - تُحدّث قيم
apiKeyللمزود المُدار بواسطة SecretRef من علامات المصدر (ENV_VAR_NAMEلمراجع متغيرات البيئة، وsecretref-managedلمراجع الملف/التنفيذ) بدلًا من حفظ الأسرار المحلولة. - تُحدّث قيم ترويسة المزود المُدار بواسطة SecretRef من علامات المصدر (
secretref-env:ENV_VAR_NAMEلمراجع متغيرات البيئة، وsecretref-managedلمراجع الملف/التنفيذ). - تعود قيم
apiKey/baseUrlالفارغة أو المفقودة في الوكيل إلىmodels.providersفي الإعدادات. - تستخدم
contextWindow/maxTokensللنموذج المطابق القيمة الأعلى بين الإعدادات الصريحة وقيم الكتالوج الضمنية. - تحافظ
contextTokensللنموذج المطابق على حد وقت التشغيل الصريح عند وجوده؛ استخدمها للحد من السياق الفعال من دون تغيير بيانات تعريف النموذج الأصلية. - استخدم
models.mode: "replace"عندما تريد من الإعدادات إعادة كتابةmodels.jsonبالكامل. - حفظ العلامات مرجعيته المصدر: تُكتب العلامات من لقطة إعدادات المصدر النشطة (قبل الحل)، وليس من قيم أسرار وقت التشغيل المحلولة.
- تفوز قيم
تفاصيل حقول المزود
Top-level catalog
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.
- التعديلات الآمنة: استخدم
Provider connection and auth
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؛ اضبطopenai-responsesفقط عندما تدعم الواجهة الخلفية/v1/responses.models.providers.*.apiKey: اعتماد المزود (يفضل استبدال SecretRef/متغيرات البيئة).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: ترويسات ثابتة إضافية لتوجيه الوكيل/المستأجر.
Request transport overrides
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 أو نطاقات مشابهة، عبر حارس جلب HTTP الخاص بالمزود (اشتراك صريح من المشغّل لنقاط النهاية ذاتية الاستضافة الموثوقة المتوافقة مع OpenAI). يُسمح تلقائيًا بعناوين URL لتدفق مزود النموذج على local loopback مثلlocalhostو127.0.0.1و[::1]ما لم يُضبط هذا صراحةً علىfalse؛ ولا تزال مضيفات LAN وtailnet وDNS الخاص تتطلب اشتراكًا صريحًا. يستخدم WebSocket نفسrequestللترويسات/TLS ولكن لا يستخدم بوابة SSRF الخاصة بالجلب تلك. الافتراضيfalse.
Model catalog entries
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 discovery
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 الأساسي.
ذات صلة
- التكوين — الوكلاء
- التكوين — القنوات
- مرجع التكوين — مفاتيح أخرى في المستوى الأعلى
- الأدوات وPluginات