
بيئة تشغيل معزولة لوكلاء الذكاء الاصطناعي المستقلين مع سياسات YAML تعريفية تفرض قيودًا على نظام الملفات والشبكة والعمليات، بالإضافة إلى حقن بيانات الاعتماد المرتبطة بنقاط النهاية.
<!-- markdownlint-disable MD033 MD041 --> <picture> <source media="(prefers-color-scheme: dark)" srcset="docs/brand/assets/openshell-banner-dark.png"> <source media="(prefers-color-scheme: light)" srcset="docs/brand/assets/openshell-banner-light.png"> <img alt="OpenShell" src="https://assets.kitploit.com/production/public/readmes/55422/c804e19d2b22bb79cb299fe8da06482346c588c833ad4342ea6668f7e4f1ec6e/224fe7d3f9d8bb5110e1543695d8e28bdf42ef37ce269e338709d8ea6f94fa6e-display-v1.webp" width="430"> </picture> <!-- markdownlint-enable MD033 MD041 --> [](https://github.com/NVIDIA/OpenShell/blob/main/LICENSE) [](https://pypi.org/project/openshell/) [](SECURITY.md) [](https://docs.nvidia.com/openshell/latest/index.html) > [!IMPORTANT] > **جديد في OpenShell 0.1.x:** إيقاع إصدارات مستقر، وبدائيات عزل جديدة، وسطح إضافات موسّع، وواجهات برمجية جديدة. [اقرأ دليل الترقية إلى 0.1.0](https://docs.nvidia.com/openshell/latest/upgrade/0-1-0). OpenShell هو بيئة التشغيل الآمنة والخاصة لأساطيل وكلاء الذكاء الاصطناعي المستقلين. يكون الوكلاء أكثر فائدة عندما يستطيعون قراءة الملفات وتثبيت الحزم واستدعاء واجهات API واستخدام بيانات الاعتماد. يمنحهم OpenShell هذه القدرة دون منحهم وصولاً غير مقيّد إلى بياناتك أو أسرارك أو شبكتك. تُصرّح بما يمكن لكل وكيل الوصول إليه في سياسة، ويقوم OpenShell بفرضها. ## كيف يعمل يحكم OpenShell ما يمكن للوكلاء فعله بطريقتين: فهو يزوّد النواة بأدوات المراقبة لفرض السياسة على كل وصول إلى الملفات، وكل استدعاء نظام، وكل اتصال شبكي في وقت التشغيل، ويستخدم التحقق الشكلي لفحص ما قد تسمح به أي تغيير في السياسة قبل تطبيقه. - **الفرض على مستوى النواة.** يعمل كل وكيل في بيئة معزولة (sandbox). تقيّد عناصر التحكم في النواة الملفات التي يمكنه الوصول إليها واستدعاءات النظام التي يمكنه إجراؤها، ويمر كل اتصال شبكي عبر فحص للسياسة قبل مغادرته البيئة المعزولة. لا يرى الوكلاء أبداً بيانات اعتماد حقيقية؛ إذ يضيفها OpenShell فقط إلى الطلبات المتجهة إلى نقاط نهاية معتمدة. - **تغييرات سياسة مُتحقَّق منها شكلياً.** قبل اعتماد أي تغيير في السياسة، يستخدم OpenShell التحقق الشكلي لتمييز الوصول الجديد المحفوف بالمخاطر الذي قد يمنحه، مثل الوصول إلى مضيف جديد باستخدام بيانات اعتماد أو استدعاء طريقة API جديدة، بحيث تنتظر تلك التغييرات مراجعة بشرية. راجع [البنية](https://docs.nvidia.com/openshell/latest/about/architecture) لمعرفة كيفية ترابط البوابة والمشرف والبيئة المعزولة. ## البدء السريع تحتاج إلى Linux، أو macOS على Apple Silicon، أو Windows مع WSL 2 (تجريبي)، بالإضافة إلى Docker أو Podman أو المحاكاة الافتراضية للمضيف. راجع [مصفوفة الدعم](https://docs.nvidia.com/openshell/latest/about/support-matrix) للتفاصيل. ```shell curl -LsSf https://raw.githubusercontent.com/NVIDIA/OpenShell/main/install.sh | sh openshell sandbox create --name demo ``` يقوم المثبّت بإعداد واجهة سطر الأوامر (CLI) وبوابة محلية. صورة البيئة المعزولة الافتراضية هي Ubuntu بسيطة بدون أي وكيل مثبّت. لتشغيل وكيل حقيقي، اتبع [تشغيل وكيلك الأول](https://docs.nvidia.com/openshell/latest/about/run-your-first-agent): فهو يشغّل OpenCode مقابل نموذج مجاني من OpenRouter ويوضح كيفية اعتماد الوصول الجديد حسب حاجة الوكيل إليه. ## استكشف المزيد - [البيئات المعزولة](https://docs.nvidia.com/openshell/latest/how-it-works/sandboxes/overview): الصور، وبيئات التشغيل، ووحدات GPU، ودورة الحياة. - [السياسات](https://docs.nvidia.com/openshell/latest/how-it-works/policies/overview): قواعد نظام الملفات والشبكة والعمليات، مع [المستشار](https://docs.nvidia.com/openshell/latest/how-it-works/policies/advisor) و[المُثبِت](https://docs.nvidia.com/openshell/latest/how-it-works/policies/prover) لمراجعة التغييرات. - [المزوّدون](https://docs.nvidia.com/openshell/latest/how-it-works/providers/overview): بيانات اعتماد تعمل فقط عند نقاط النهاية المعتمدة، بما في ذلك [الاستدلال](https://docs.nvidia.com/openshell/latest/how-it-works/inference). - [البوابات](https://docs.nvidia.com/openshell/latest/how-it-works/gateways/overview): مستوى التحكم للبيئات المعزولة والسياسات والوصول. - [Kubernetes](https://docs.nvidia.com/openshell/latest/kubernetes/setup): انشر البوابة باستخدام Helm. يجب أن تفرض شبكة CNI لديك `NetworkPolicy`. - [قابلية التوسعة](https://docs.nvidia.com/openshell/latest/extensibility/overview): البرمجيات الوسيطة، والمعترضات، ومشغّلات الحوسبة. - [الدروس التعليمية](https://docs.nvidia.com/openshell/latest/tutorials/first-network-policy): جولات خطوة بخطوة للسياسات والوكلاء. - [الإصدارات التجريبية وإصدارات التطوير](https://docs.nvidia.com/openshell/latest/about/installation#prerelease-and-development-builds): جرّب إصداراً قادماً أو أحدث إيداع على `main`. ## مهارات الوكيل ثبّت مهارات OpenShell العامة لوكيل البرمجة الخاص بك: ```shell npx skills add NVIDIA/OpenShell ``` تعلّم المهارات وكيلك كيفية تشغيل واجهة OpenShell CLI، وكتابة سياسات البيئات المعزولة، وتصحيح أخطاء البوابات وتوجيه الاستدلال. وهي موجودة في [`skills/`](https://github.com/nvidia/openshell/blob/main/skills) وتعمل دون الحاجة إلى نسخة مصدرية من OpenShell. ## حزم تطوير البرمجيات (SDKs) تربط حزم SDK التطبيقات ببوابة OpenShell. وهي لا تثبّت واجهة CLI. استخدم نفس إصدار OpenShell لحزمة SDK والبوابة عند الإمكان. | اللغة | التثبيت | الوثائق | |---|---|---| | Python | `uv add openshell` | [README](https://github.com/nvidia/openshell/blob/main/python/openshell) | | TypeScript | `npm install @nvidia/openshell-sdk` (GitHub Packages) | [README](https://github.com/nvidia/openshell/blob/main/sdk/typescript/README.md) | | Go | `go get github.com/NVIDIA/OpenShell/sdk/go@latest` | [README](https://github.com/nvidia/openshell/blob/main/sdk/go/README.md) | | Rust | `cargo add openshell-sdk --git https://github.com/NVIDIA/OpenShell --tag <release-tag>` | [التثبيت والاستخدام](https://github.com/nvidia/openshell/blob/main/docs/sdk/rust.mdx) | ## المجتمع - **الأسئلة والنقاش:** [مناقشات GitHub](https://github.com/NVIDIA/OpenShell/discussions) - **تقارير الأخطاء وطلبات الميزات:** [قضايا GitHub](https://github.com/NVIDIA/OpenShell/issues)، باستخدام قوالب القضايا - **الثغرات الأمنية:** اتبع [SECURITY.md](https://github.com/nvidia/openshell/blob/main/SECURITY.md). لا تفتح قضية على GitHub. - **خارطة الطريق:** [خارطة طريق OpenShell](https://github.com/orgs/NVIDIA/projects/233) و[لوحة RFC](https://github.com/orgs/NVIDIA/projects/233/views/6) - **جرّبه في السحابة:** [Brev Launchable](https://brev.nvidia.com/launchable/deploy/now?launchableID=env-3Ap3tL55zq4a8kew1AuW0FpSLsg) بُني OpenShell وفق مبدأ الوكيل أولاً: إذ يُطوَّر باستخدام نفس سير العمل المدفوع بالوكلاء الذي يمكّنه. راجع [CONTRIBUTING.md](https://github.com/nvidia/openshell/blob/main/CONTRIBUTING.md) لإعداد التطوير وسير عمل المساهمة، و[AGENTS.md](https://github.com/nvidia/openshell/blob/main/AGENTS.md) لاصطلاحات البرمجة في المستودع. ## القياس عن بُعد يجمع OpenShell بيانات قياس عن بُعد مجهولة الهوية، تقتصر على الفئات التشغيلية والأعداد، للمساعدة في تحسين المشروع. وهو لا يجمع أسماء البيئات المعزولة، أو أسماء المضيفين، أو مسارات الملفات، أو المطالبات (prompts)، أو بيانات الاعتماد، أو أسماء المزوّدين أو النماذج، أو محتوى المستخدم. لتعطيله، اضبط `OPENSHELL_TELEMETRY_ENABLED=false` على البوابة، أو `server.telemetryEnabled=false` لعمليات تثبيت Helm. يمكنك أيضاً استبعاد القياس عن بُعد بالكامل عند الترجمة. راجع [القياس عن بُعد](https://docs.nvidia.com/openshell/latest/observability/telemetry) للتفاصيل و[تقارير القياس عن بُعد المجتمعية](https://github.com/nvidia/openshell/blob/main/telemetry/README.md) لاتجاهات الاستخدام المنشورة. ## إشعار وإخلاء مسؤولية يسترجع هذا البرنامج المواد الخارجية أو يصل إليها أو يتفاعل معها تلقائياً. لا تُوزَّع تلك المواد المسترجعة مع هذا البرنامج وتخضع حصراً لشروط وأحكام وتراخيص منفصلة. أنت وحدك المسؤول عن إيجاد جميع الشروط والأحكام والتراخيص المعمول بها ومراجعتها والامتثال لها، وعن التحقق من أمان وسلامة وملاءمة أي مواد مسترجعة لحالة الاستخدام الخاصة بك. يُقدَّم هذا البرنامج "كما هو"، دون أي ضمان من أي نوع. ولا يقدّم المؤلف أي تعهدات أو ضمانات بشأن أي مواد مسترجعة، ولا يتحمل أي مسؤولية عن أي خسائر أو أضرار أو التزامات أو عواقب قانونية ناتجة عن استخدامك أو عدم قدرتك على استخدام هذا البرنامج أو أي مواد مسترجعة. استخدم هذا البرنامج والمواد المسترجعة على مسؤوليتك الخاصة. ## الترخيص هذا المشروع مرخّص بموجب [Apache License 2.0](https://github.com/NVIDIA/OpenShell/blob/main/LICENSE).