STACKDUST
EN
مخطط بنية منصة OpenBot يوضح بروتوكول AG-UI وبوابة التدقيق الأمني وحاويات التشغيل المعزولة

منصة OpenBot: زملاء العمل الأذكياء في بيئات استضافة ذاتية معزولة وحوكمة CEL


يواجه دمج وكلاء الذكاء الاصطناعي المستقلين داخل فرق التطوير معضلة أمنية وتشغيلية شائعة. فإذا مُنح الوكيل وصولاً مباشراً إلى حاسوب المطور، أصبح بمقدوره قراءة ملفات النظام وملفات تعريف الارتباط الحساسة والوصول إلى بوابات العمل دون رقابة. وفي المقابل، إذا حُصر الوكيل داخل نافذة محادثة نصية مجردة، تنحصر فائدته في الإجابة على الأسئلة النظرية دون القدرة على إنجاز مهام عملية على الأرض.

يقدم مشروع OpenBot مفتوح المصدر برخصة MIT، الذي طورته CopilotKit، حلاً معمارياً متكاملاً لهذه الإشكالية. فبدلاً من تشغيل الوكلاء بصورة مطلقة على النظام المضيف، يخصص OpenBot لكل وكيل حاسوباً افتراضياً معزولاً داخل حاوية خاصة. وتمر كل نقرة متصفح، أو عملية تعديل ملف، أو استدعاء لأداة برمجية عبر بوابة فحص أمني وتدقيق صارم قبل السماح بتنفيذها.

البنية الهندسية للوكلاء المعزولين

صُمم OpenBot كقالب بنية تحتية يُنشر بالكامل على الخوادم الخاصة أو الأجهزة المحلية للمطورين. وباستخدام أمر واحد عبر Docker Compose، تنطلق بيئة متعددة الطبقات تمنع الوكيل من فحص الخدمات الداخلية في الشبكة:

مسار حوكمة الطلبات والتنفيذ في OpenBot
1. تفاعل المطور عبر واجهة الويب المنفذ 3010

يفتح المستخدم قناة محادثة مع الوكيل المطلوب (المساعد العام، مسؤول المعرفة، محلل المخاطر).

2. تمرير الطلب عبر بروتوكول AG-UI AG-UI

يقوم الخادم بتغليف الطلب وفق معايير بروتوكول AG-UI وتوجيهه إلى الوكيل المستهدف.

3. بوابة الفحص الأمني بقواعد CEL المنفذ 3001

تراجع بوابة Hono الإجراء المطلوب وفق لغة التعبيرات العامة CEL، مع تطبيق الانغلاق التلقائي عند أي اشتباه.

4. التنفيذ المحكوم داخل الحاوية الرملية المنفذ 4100

يُنفذ الإجراء المقبول داخل حاوية معزولة تمتلك متصفح Chromium ومساحة عمل خاصة دون المساس بالنظام المضيف.

توزيع الخدمات والمنافذ الشبكية

تتألف بيئة التشغيل من خدمات صغيرة مفصولة تمنع تصعيد الامتيازات غير المصرح بها:

اسم الخدمةالمنفذالمسؤولية الوظيفية الأساسيةحدود العزل الأمني
app3010واجهة المستخدم المبنية بـ React وVite للقنوات والبث المباشرطبقة الويب العامة
server3001خادم Hono وCopilotKit والمصادقة وتطبيق سياسات الأمانطبقة التطبيق الخلفية
agent-computer4100متصفح Chromium ولقطات الشاشة وأدوات تحرير الملفاتتتطلب رمز COMPUTER_TOKEN
agent-bot4200خادم الوكيل المرجعي المتوافق مع AG-UIطبقة الوكلاء المعزولة
agent-langgraph4201وكيل متقدم مبني على LangGraph للمسارات المركبةطبقة الوكلاء المعزولة
supervisor4500إدارة دورة حياة حاويات حواسيب الوكلاء وتشغيلهاوصول مقيد لمقبس Docker المضيف
PostgreSQL5432حفظ سجلات التدقيق الثابتة والمتجهات الحسابيةشبكة data الداخلية المعزولة

ولمنع البرمجيات العشوائية التي قد يشغلها الوكيل من الوصول المباشر إلى قاعدة البيانات، يعزل Docker Compose خادم PostgreSQL على شبكة داخلية مخصصة، بحيث يكون الخادم الخلفي هو نقطة الالتقاء الوحيدة بين الشبكتين.

حوكمة الإجراءات بلغة التعبيرات العامة CEL

يكمن الابتكار الأساسي في OpenBot في تجريد حاسوب الوكيل من صلاحية تقرير السياسات الأمنية. فبوابة الخادم الخلفية هي صاحبة القرار النهائي، حيث تعترض كل أمر أو نقرة متصفح أو استدعاء لأداة خارجية وتخضعه لقواعد مكتوبة بلغة التعبيرات العامة (Common Expression Language).

محاور الفحص الأمني

تفحص البوابة معايير دقيقة تشمل:

  • tool.name: معرف الأداة المطلوبة بدقة.
  • intent: القصد والهدف المعلن من قبل النموذج قبل تنفيذ الخطوة.
  • page.url وpage.host: الوجهة والموقع المراد تصفحه.
  • element.ref وelement.role: العناصر المحددة داخل شجرة DOM للموقع.
  • command: الأوامر النصية الموجهة للطرفية.
  • file.path: مسارات الملفات المستهدفة داخل الحاوية.
  • initiator.kind: يميز الجلسات التلقائية المجدولة (routine) عن الجلسات التي يطلبها مطور بشري (person).

سياسة الأمان الدفاعية والانغلاق عند الخطأ

تلتزم المنظومة بمبادئ الحماية الصارمة:

  1. أولوية قواعد الرفض: تُفحص قواعد المنع (Deny) قبل قواعد السماح (Allow). فإذا تطابق الإجراء مع قاعدة منع، يُرفض في الحال بغض النظر عن أي استثناء.
  2. الانغلاق عند غياب السياسة (Fail-Closed): في حال عدم وجود سياسة أو حدوث خطأ في صياغة القواعد، ترفض البوابة تمرير أي حركة وتوقف الخادم فوراً.
  3. سجل تدقيق غير قابل للتعديل: تُسجل جميع القرارات، سواء بالقبول أو الرفض، في قاعدة بيانات PostgreSQL مع الأوقات الدقيقة وهوية المشغل.

بروتوكول AG-UI: حرية اختيار أطر العمل

من أكبر العقبات أمام تبني وكلاء الذكاء الاصطناعي في المؤسسات هو الارتهان لأطر عمل معينة. وتجاوز OpenBot هذا القيد عبر الاعتماد الكامل على بروتوكول AG-UI القياسي المفتوح.

وحيث إن الحوكمة تتم عند حدود البروتوكول، تبرز المزايا التالية:

  • إمكانية تشغيل وكلاء مبنيين بلغة بايثون عبر LangGraph أو Pydantic AI جنباً إلى جنب مع وكلاء TypeScript مبنيين على Mastra.
  • استقبال استجابات تفاعلية متطورة (جداول، أزرار تأكيد، نماذج إدخال) بدلاً من النصوص الخام فقط.
  • إمكانية مراقبة شاشة المتصفح المباشرة للوكيل وتدخل المطور البشري فوراً عند الحاجة.

التشغيل في بيئة الاستضافة الذاتية

يتطلب تشغيل OpenBot محلياً توفر محرك Docker ومدير الحزم Bun بإصدار 1.3 أو أحدث:

Terminal
# استنساخ المستودع
git clone https://github.com/CopilotKit/openbot.git
cd openbot

# تثبيت الاعتماديات عبر مساحة العمل
bun install

# تهيئة ملف متغيرات البيئة
cp .env.example .env

# تشغيل قواعد البيانات وحاويات الحواسيب الافتراضية
./scripts/start.sh

يحمل ملف الإعداد الافتراضي الخيار OPENBOT_SINGLE_USER=true لتسهيل التجربة المحلية بصلاحيات المدير دون الحاجة لربط مزود هوية خارجي. وعند النشر التشاركي، يُعطل هذا الخيار لفرض أدوار الوصول المحددة.

اعتبارات النشر العملية

قبل اعتماد OpenBot في بيئات العمل، ينبغي مراعاة العوامل التالية:

  1. استهلاك موارد النظام: نظراً لأن كل حاوية وكيل تشغل نسخة كاملة من متصفح Chromium، يتطلب تشغيل خمسة وكلاء متزامنين أو أكثر ذاكرة عشوائية كافية (من 2 إلى 4 جيجابايت لكل وكيل نشط).
  2. تكلفة رموز النماذج: يؤدي تفاعل الوكلاء مع صفحات الويب المعقدة إلى استهلاك كبير للرموز، وتساعد أدوات تقليص المخرجات مثل RTK في ضبط تكاليف التشغيل.
  3. المرحلة التجريبية: المشروع في مرحلة التطوير النشط (Alpha)، مما يستوجب متابعة تحديثات ملفات التكوين دورياً.

الخلاصة

يؤكد مشروع OpenBot أن الاستفادة من وكلاء الذكاء الاصطناعي لا تتطلب التنازل عن معايير الأمان المؤسسية. فمن خلال الدمج بين العزل في الحاويات الافتراضية، والحوكمة الحتمية بقواعد CEL، وبروتوكول AG-UI المفتوح، يقدم المشروع نموذجاً عملياً وموثوقاً لنشر زملاء العمل الأذكياء على البنية التحتية المستقلة للمطورين.

المصادر


→المقال التاليمنصة GyroidVault: مستودع ذاتي لاستضافة وإدارة مجسمات الطباعة ثلاثية الأبعاد دون فك الضغطالمقال السابق←إطار DeepSeek Harness: البنية البرمجية التضمينية لوكلاء الذكاء الاصطناعي