شغّل جسر بروتوكول عميل الوكيل (ACP) الذي يتواصل مع OpenClaw Gateway. يتحدث هذا الأمر ببروتوكول ACP عبر stdio لأدوات IDE ويمرر المطالبات إلى Gateway عبر WebSocket. ويحافظ على ربط جلسات ACP بمفاتيح جلسات Gateway.Documentation Index
Fetch the complete documentation index at: https://docs.openclaw.ai/llms.txt
Use this file to discover all available pages before exploring further.
openclaw acp هو جسر ACP مدعوم بـ Gateway، وليس بيئة تشغيل محرر كاملة أصلية
لـ ACP. يركز على توجيه الجلسات، وتسليم المطالبات، وتحديثات البث الأساسية.
إذا أردت أن يتواصل عميل MCP خارجي مباشرة مع محادثات قنوات OpenClaw
بدلا من استضافة جلسة حزام ACP، فاستخدم
openclaw mcp serve بدلا من ذلك.
ما ليس عليه هذا
غالبا ما يحدث خلط بين هذه الصفحة وجلسات حزام ACP. يعنيopenclaw acp ما يلي:
- يعمل OpenClaw كخادم ACP
- تتصل أداة IDE أو عميل ACP بـ OpenClaw
- يمرر OpenClaw ذلك العمل إلى جلسة Gateway
acpx.
قاعدة سريعة:
- يريد المحرر/العميل التحدث ببروتوكول ACP إلى OpenClaw: استخدم
openclaw acp - يجب أن يشغل OpenClaw Codex/Claude/Gemini كحزام ACP: استخدم
/acp spawnووكلاء ACP
مصفوفة التوافق
| مجال ACP | الحالة | ملاحظات |
|---|---|---|
initialize, newSession, prompt, cancel | منفذ | تدفق الجسر الأساسي عبر stdio إلى دردشة/إرسال Gateway + الإلغاء. |
listSessions, أوامر الشرطة المائلة | منفذ | تعمل قائمة الجلسات مقابل حالة جلسات Gateway مع ترقيم صفحات بمؤشر محدود وتصفية cwd عندما تحمل صفوف جلسات Gateway بيانات وصفية لمساحة العمل؛ وتعلن الأوامر عبر available_commands_update. |
| بيانات وصفية لتسلسل نسب الجلسة | منفذ | تتضمن قوائم الجلسات ولقطات معلومات الجلسة تسلسل نسب الوالد والابن في OpenClaw داخل _meta حتى يتمكن عملاء ACP من عرض رسوم بيانية للوكلاء الفرعيين دون قنوات جانبية خاصة في Gateway. |
resumeSession, closeSession | منفذ | تعيد الاستئنافات ربط جلسة ACP بجلسة Gateway موجودة دون إعادة تشغيل السجل. يلغي الإغلاق عمل الجسر النشط، ويحل المطالبات المعلقة على أنها ملغاة، ويحرر حالة جلسة الجسر. |
loadSession | جزئي | يعيد ربط جلسة ACP بمفتاح جلسة Gateway ويعيد تشغيل سجل أحداث ACP للجلسات التي أنشأها الجسر. تعود الجلسات الأقدم/بلا سجل إلى نص المستخدم/المساعد المخزن. |
محتوى المطالبة (text، resource مضمن، الصور) | جزئي | يتم تسطيح النص/الموارد في إدخال الدردشة؛ وتصبح الصور مرفقات Gateway. |
| أوضاع الجلسة | جزئي | session/set_mode مدعوم، ويعرض الجسر عناصر تحكم أولية مدعومة بـ Gateway للجلسة لمستوى التفكير، وإسهاب الأدوات، والاستدلال، وتفاصيل الاستخدام، والإجراءات المرتفعة. ما زالت أسطح الوضع/التكوين الأوسع الأصلية لـ ACP خارج النطاق. |
| معلومات الجلسة وتحديثات الاستخدام | جزئي | يصدر الجسر إشعارات session_info_update وusage_update بأفضل جهد من لقطات جلسات Gateway المخزنة مؤقتا. الاستخدام تقريبي ولا يرسل إلا عندما تكون إجماليات رموز Gateway مميزة بأنها حديثة. |
| بث الأدوات | جزئي | تتضمن أحداث tool_call / tool_call_update الإدخال/الإخراج الخام، ومحتوى النص، ومواقع الملفات بأفضل جهد عندما تكشف وسائط/نتائج أدوات Gateway عنها. لا تزال الطرفيات المضمنة والمخرجات الأصلية الأكثر ثراء للفروقات غير مكشوفة. |
| موافقات التنفيذ | جزئي | يتم تمرير مطالبات موافقة تنفيذ Gateway أثناء دورات مطالبات ACP النشطة إلى عميل ACP باستخدام session/request_permission. |
خوادم MCP لكل جلسة (mcpServers) | غير مدعوم | يرفض وضع الجسر طلبات خادم MCP لكل جلسة. كوّن MCP على OpenClaw Gateway أو الوكيل بدلا من ذلك. |
طرق نظام ملفات العميل (fs/read_text_file, fs/write_text_file) | غير مدعوم | لا يستدعي الجسر طرق نظام ملفات عميل ACP. |
طرق طرفية العميل (terminal/*) | غير مدعوم | لا ينشئ الجسر طرفيات عميل ACP ولا يبث معرفات الطرفية عبر استدعاءات الأدوات. |
| خطط الجلسة / بث التفكير | غير مدعوم | يصدر الجسر حاليا نص الإخراج وحالة الأداة، وليس تحديثات خطط ACP أو التفكير. |
القيود المعروفة
- يمكن لـ
loadSessionإعادة تشغيل سجل أحداث ACP الكامل فقط للجلسات التي أنشأها الجسر. ما زالت الجلسات الأقدم/بلا سجل تستخدم احتياطيا للنسخة النصية ولا تعيد بناء استدعاءات الأدوات أو الإشعارات النظامية التاريخية. - إذا شارك عدة عملاء ACP مفتاح جلسة Gateway نفسه، يكون توجيه الأحداث والإلغاء
بأفضل جهد بدلا من عزله بصرامة لكل عميل. فضّل جلسات
acp:<uuid>المعزولة الافتراضية عندما تحتاج إلى أدوار محرر محلية نظيفة. - تتم ترجمة حالات إيقاف Gateway إلى أسباب إيقاف ACP، لكن ذلك الربط أقل تعبيرا من بيئة تشغيل أصلية بالكامل لـ ACP.
- تعرض عناصر تحكم الجلسة الأولية حاليا مجموعة مركزة من مقابض Gateway: مستوى التفكير، وإسهاب الأدوات، والاستدلال، وتفاصيل الاستخدام، والإجراءات المرتفعة. لم يتم بعد كشف اختيار النموذج وعناصر تحكم مضيف التنفيذ كخيارات تكوين ACP.
- يتم اشتقاق
session_info_updateوusage_updateمن لقطات جلسات Gateway، وليس من محاسبة بيئة تشغيل أصلية مباشرة لـ ACP. الاستخدام تقريبي، ولا يحمل بيانات تكلفة، ولا يصدر إلا عندما يميز Gateway بيانات إجمالي الرموز بأنها حديثة. - بيانات متابعة الأدوات بأفضل جهد. يمكن للجسر إظهار مسارات الملفات التي تظهر في وسائط/نتائج الأدوات المعروفة، لكنه لا يصدر بعد طرفيات ACP أو فروقات ملفات منظمة.
- يقتصر تمرير موافقة التنفيذ على دورة مطالبة ACP النشطة؛ ويتم تجاهل الموافقات من جلسات Gateway الأخرى.
الاستخدام
عميل ACP (تصحيح الأخطاء)
استخدم عميل ACP المضمن للتحقق السريع من سلامة الجسر دون أداة IDE. يشغل جسر ACP ويتيح لك كتابة المطالبات تفاعليا.- تعتمد الموافقة التلقائية على قائمة سماح ولا تنطبق إلا على معرفات أدوات النواة الموثوقة.
- تقتصر الموافقة التلقائية لـ
readعلى دليل العمل الحالي (--cwdعند ضبطه). - لا يوافق ACP تلقائيا إلا على فئات ضيقة للقراءة فقط: استدعاءات
readذات النطاق ضمن cwd النشط بالإضافة إلى أدوات البحث للقراءة فقط (search,web_search,memory_search). الأدوات المجهولة/غير الأساسية، والقراءات خارج النطاق، والأدوات القادرة على التنفيذ، وأدوات مستوى التحكم، والأدوات المعدلة، والتدفقات التفاعلية تتطلب دائما موافقة صريحة على المطالبة. - يتم التعامل مع
toolCall.kindالمقدم من الخادم كبيانات وصفية غير موثوقة (وليس كمصدر تفويض). - سياسة جسر ACP هذه منفصلة عن أذونات حزام ACPX. إذا شغلت OpenClaw عبر خلفية
acpx، فإنplugins.entries.acpx.config.permissionMode=approve-allهو مفتاح الطوارئ “yolo” لجلسة الحزام تلك.
اختبار دخان البروتوكول
لتصحيح الأخطاء على مستوى البروتوكول، ابدأ Gateway بحالة معزولة وقُدopenclaw acp عبر stdio باستخدام عميل ACP JSON-RPC. غطِّ initialize،
وsession/new، وsession/list مع cwd مطلق، وsession/resume،
وsession/close، والإغلاق المكرر، والاستئناف المفقود.
يجب أن يتضمن الإثبات إمكانات دورة الحياة المعلن عنها، وصف جلسة مدعوما بـ Gateway،
وإشعارات التحديث، وسجل sessions.list في Gateway:
openclaw gateway call sessions.list كإثبات ACP الوحيد. قد
يطلب مسار CLI هذا ترقية نطاق مشغل برمز حديث؛ يتم إثبات صحة جسر ACP
بإطارات stdio الخاصة بـ ACP بالإضافة إلى سجل sessions.list في Gateway.
كيفية استخدام هذا
استخدم ACP عندما تتحدث أداة IDE (أو عميل آخر) ببروتوكول عميل الوكيل وتريد منها قيادة جلسة OpenClaw Gateway.- تأكد من أن Gateway يعمل (محليا أو عن بعد).
- كوّن هدف Gateway (التكوين أو الأعلام).
- وجّه أداة IDE لديك لتشغيل
openclaw acpعبر stdio.
اختيار الوكلاء
لا يختار ACP الوكلاء مباشرة. إنه يوجه حسب مفتاح جلسة Gateway. استخدم مفاتيح جلسات ذات نطاق وكيل لاستهداف وكيل محدد:acp:<uuid> معزولة ما لم تتجاوز
المفتاح أو التسمية.
لا تُدعم mcpServers لكل جلسة في وضع الجسر. إذا أرسلها عميل ACP
أثناء newSession أو loadSession، فسيعيد الجسر خطأ واضحًا
بدلًا من تجاهلها بصمت.
إذا أردت أن ترى الجلسات المدعومة بـ ACPX أدوات Plugin في OpenClaw أو
أدوات مدمجة محددة مثل cron، فمكّن جسور ACPX MCP على جانب Gateway بدلًا
من محاولة تمرير mcpServers لكل جلسة. راجع
وكلاء ACP و
جسر MCP لأدوات OpenClaw.
الاستخدام من acpx (Codex وClaude وعملاء ACP آخرون)
إذا أردت أن يتحدث وكيل برمجة مثل Codex أو Claude Code مع روبوت
OpenClaw عبر ACP، فاستخدم acpx مع هدف openclaw المدمج فيه.
التدفق المعتاد:
- شغّل Gateway وتأكد من أن جسر ACP يمكنه الوصول إليه.
- وجّه
acpx openclawإلىopenclaw acp. - استهدف مفتاح جلسة OpenClaw الذي تريد أن يستخدمه وكيل البرمجة.
acpx openclaw Gateway محددًا ومفتاح جلسة محددًا في كل
مرة، فتجاوز أمر وكيل openclaw في ~/.acpx/config.json:
إعداد محرر Zed
أضف وكيل ACP مخصصًا في~/.config/zed/settings.json (أو استخدم واجهة إعدادات Zed):
ربط الجلسات
افتراضيًا، تحصل جلسات ACP على مفتاح جلسة Gateway معزول ببادئةacp:.
لإعادة استخدام جلسة معروفة، مرّر مفتاح جلسة أو تسمية:
--session <key>: استخدم مفتاح جلسة Gateway محددًا.--session-label <label>: حلّ جلسة موجودة حسب التسمية.--reset-session: أنشئ معرّف جلسة جديدًا لهذا المفتاح (المفتاح نفسه، ونص جلسة جديد).
الخيارات
--url <url>: عنوان URL لـ Gateway WebSocket (يكون افتراضيًا gateway.remote.url عند تكوينه).--token <token>: رمز مصادقة Gateway.--token-file <path>: قراءة رمز مصادقة Gateway من ملف.--password <password>: كلمة مرور مصادقة Gateway.--password-file <path>: قراءة كلمة مرور مصادقة Gateway من ملف.--session <key>: مفتاح الجلسة الافتراضي.--session-label <label>: تسمية الجلسة الافتراضية المطلوب حلها.--require-existing: الإخفاق إذا لم يكن مفتاح/تسمية الجلسة موجودًا.--reset-session: إعادة ضبط مفتاح الجلسة قبل أول استخدام.--no-prefix-cwd: عدم إضافة دليل العمل كبادئة للمطالبات.--provenance <off|meta|meta+receipt>: تضمين بيانات وصفية أو إيصالات لمنشأ ACP.--verbose, -v: تسجيل مفصل إلى stderr.
- يمكن أن يكون
--tokenو--passwordمرئيين في قوائم العمليات المحلية على بعض الأنظمة. - فضّل
--token-file/--password-fileأو متغيرات البيئة (OPENCLAW_GATEWAY_TOKEN،OPENCLAW_GATEWAY_PASSWORD). - يتبع حل مصادقة Gateway العقد المشترك المستخدم من عملاء Gateway الآخرين:
- الوضع المحلي: env (
OPENCLAW_GATEWAY_*) ->gateway.auth.*-> الرجوع إلىgateway.remote.*فقط عندما لا يكونgateway.auth.*معينًا (تفشل SecretRefs المحلية المكوّنة وغير المحلولة بإغلاق آمن) - الوضع البعيد:
gateway.remote.*مع الرجوع إلى env/config وفق قواعد أولوية الوضع البعيد --urlآمن للتجاوز ولا يعيد استخدام بيانات اعتماد ضمنية من config/env؛ مرّر--token/--passwordصريحين (أو بدائل الملفات)
- الوضع المحلي: env (
- تتلقى العمليات الفرعية لخلفية تشغيل ACP
OPENCLAW_SHELL=acp، ويمكن استخدام ذلك لقواعد shell/profile خاصة بالسياق. - يعيّن
openclaw acp clientالقيمةOPENCLAW_SHELL=acp-clientعلى عملية الجسر التي يتم إنشاؤها.
خيارات acp client
--cwd <dir>: دليل العمل لجلسة ACP.--server <command>: أمر خادم ACP (الافتراضي:openclaw).--server-args <args...>: وسيطات إضافية تُمرر إلى خادم ACP.--server-verbose: تمكين التسجيل المفصل على خادم ACP.--verbose, -v: تسجيل عميل مفصل.