وكلاء البرمجة ومترجمات الكود ومهام التدريب المعزز كلها تشترك في حاجة واحدة: مكان معزول يشغّل كودًا غير موثوق دون أن يمس النظام المضيف. المشاريع المختلفة عادة تحل هذه المشكلة كل واحد بطريقته الخاصة. OpenSandbox (رخصة Apache 2.0) يقدّم بدلًا من ذلك بروتوكولًا وتشغيلًا موحَّدين، بحزم SDK لخمس لغات برمجة وواجهة سطر أوامر وخادم MCP فوقها جميعًا.

بروتوكول قبل التشغيل

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

طبقات الوصول الثلاث

الطبقةالاستخدام
حزم SDKPython وJava/Kotlin وTypeScript/JavaScript وC#/.NET وGo، إنشاء بيئة معزولة، تنفيذ أوامر، قراءة وكتابة ملفات
واجهة سطر الأوامر osbإنشاء البيئات، تشغيل الأوامر، نقل الملفات، فحص التشخيص، وإدارة سياسة الشبكة الصادرة من الطرفية مباشرة
خادم MCPيعرض إنشاء البيئة وتنفيذ الأوامر وعمليات الملفات النصية لأي عميل يدعم MCP مثل Claude Code وCursor

وقت تشغيل مزدوج

الخادم يدعم Docker للتشغيل المحلي والتجربة السريعة، وKubernetes للجدولة الموزعة على نطاق واسع. الانتقال من التطوير المحلي للإنتاج لا يعني تغيير SDK أو منطق التطبيق، بل تغيير إعداد الخادم فقط.

ثلاثة مستويات للعزل

إضافة إلى العزل الافتراضي لحاويات Docker، يدعم المشروع أوقات تشغيل حاويات آمنة متخصصة: gVisor وKata Containers وFirecracker microVM. كل واحد يقدّم مستوى مختلفًا من الفصل بين حِمل العمل داخل البيئة المعزولة والنظام المضيف، وينطبق هذا خصوصًا على السيناريوهات التي تُنفَّذ فيها أكواد غير موثوقة تمامًا مثل تقييم نتائج وكيل أو تدريب معزز.

بوابة دخول وضبط خروج

بوابة دخول موحّدة (Ingress Gateway) تدير حركة البيانات الواردة للبيئات المعزولة بعدة استراتيجيات توجيه، بينما تتحكم طبقة خروج (Egress) منفصلة في اتصال كل بيئة بالإنترنت على حدة. هذا يعني أن بيئة معزولة واحدة يمكن تقييدها بالوصول لنطاقات محددة فقط، بمعزل عن بقية البيئات العاملة على نفس الخادم.

حقن الاعتمادات دون كشفها

خزنة الاعتمادات (Credential Vault) تحقن مفاتيح API وبيانات الدخول في الطلبات الصادرة من البيئة المعزولة، دون أن تكشف قيمتها الفعلية لحِمل العمل نفسه. هذا يحل مشكلة شائعة: كيف يستدعي الكود الذي يشغّله الوكيل خدمة خارجية تحتاج مفتاحًا، دون أن يكون ذلك المفتاح مكشوفًا لكود قد يكون غير موثوق.

بيئات جاهزة وأمثلة تكامل

المشروع يشمل تطبيقات جاهزة لتنفيذ الأوامر ونظام الملفات ومترجم كود Python، إضافة إلى أمثلة موثّقة لتشغيل أدوات سطر أوامر لوكلاء برمجة معروفة (Claude Code، Gemini CLI، Codex CLI، Qwen Code، Kimi CLI) داخل البيئة المعزولة، وأمثلة لأتمتة المتصفح (Chrome، Playwright) وبيئات سطح مكتب كاملة (VNC، VS Code Web)، إضافة إلى تكامل مع LangGraph وGoogle ADK وOpenClaw.

صور حاويات موقّعة

صور الإصدارات الرسمية تُنشر في ثلاثة سجلات (Docker Hub وGitHub Container Registry وسجل Alibaba Cloud السحابي)، وتُوقَّع بدون مفتاح ثابت عبر Cosign مع شهادات مصدر تتبع، بحيث يمكن التحقق من صورة الإنتاج مقابل هوية إجراءات GitHub قبل النشر الفعلي.

التشغيل السريع

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

الملكية وحدود الفائدة

المشروع مدعوم من مجموعة Alibaba (تظهر حزم Java وMaven تحت مساحة اسم com.alibaba.opensandbox، وأحد سجلات الصور مستضاف على سحابة Alibaba)، وهو مسجَّل ضمن خارطة مشاريع CNCF. لمن يبني بالفعل منتجًا يحتاج تنفيذ كود وكيل بمعزل حقيقي عن الإنتاج، القيمة الأساسية هي تفادي بناء طبقة عزل وشبكة وحوكمة اعتمادات من الصفر، لا استبدال أداة تنفيذ كود بسيطة موجودة أصلًا.