المجلدات الموثوقة
تحكّم في المشاريع التي يمكنها استخدام القدرات الكاملة لـ Bob Shell مع أمان المجلدات الموثوقة.
المجلدات الموثوقة
تمنحك المجلدات الموثوقة التحكم في المشاريع التي يمكن استخدامها مع Bob Shell. يجب عليك الموافقة على مجلد قبل أن يُحمّل Bob Shell أي إعدادات خاصة بالمشروع، مما يحميك من الكود الضار المحتمل.
ميزة المجلدات الموثوقة معطّلة بشكل افتراضي. لتفعيلها، افتح قائمة /settings واضبط Folder Trust على true. يُشترط إعادة التشغيل لتفعيل التغيير.
كيف تعمل المجلدات الموثوقة
عندما تشغّل Bob Shell من مجلد لأول مرة، يظهر مربع حوار الثقة تلقائيًا يطلب منك اتخاذ قرار:
- Trust folder: منح الثقة الكاملة للمجلد الحالي (مثل
my-project) - Trust parent folder: منح الثقة للمجلد الأب (مثل
safe-projects)، مما يُؤتمن تلقائيًا جميع مجلداته الفرعية. استخدم هذا الخيار إذا كنت تحتفظ بجميع مشاريعك الآمنة في موقع واحد - Don't trust: وضع علامة على المجلد كغير موثوق. يعمل Bob Shell في الوضع الآمن المقيّد
يُحفظ اختيارك في ~/.bob/trustedFolders.json، لذا يُسألك مرة واحدة فقط لكل مجلد.
تأثير المجلدات غير الموثوقة
عندما يكون مجلد غير موثوق، يعمل Bob Shell في الوضع الآمن المقيّد. تُعطَّل الميزات التالية أو تُتجاهل:
| الميزة | السلوك في الوضع الآمن |
|---|---|
| إعدادات المشروع | لا يُحمَّل .bob/settings.json. تُحجب الأدوات المخصصة والإعدادات الخطرة المحتملة. |
| الموافقة التلقائية على الأدوات | تُطالَب دائمًا قبل تشغيل أي أداة، حتى لو كانت الموافقة التلقائية مفعّلة عالميًا. |
| خوادم MCP | لن يحاول Bob Shell الاتصال بأي خوادم MCP. |
| الأوضاع المخصصة | الأوضاع المحددة في مجلد المشروع غير متاحة. يمكن استخدام الأوضاع المدمجة والأوضاع المحددة عالميًا فقط. |
| المهارات | لا تُحمَّل المهارات المدمجة مع المشروع. الأدوات المتاحة عالميًا والقدرات المدمجة فقط نشطة. |
| Subagents | الـ subagents المخصصة من مجلد المشروع غير متاحة. لا يمكن للوكيل تفويض العمل لمساعدين موفَّرين من المشروع. |
| تعليمات المشروع | لا تُقرأ ملفات التوجيه مثل AGENTS.md وقواعد المشروع المخصصة. يعمل الوكيل بدون التعليمات المخصصة للمشروع. |
يُفعّل منح الثقة لمجلد ما الوظائف الكاملة لـ Bob Shell لمساحة العمل تلك.
إدارة إعدادات الثقة
- كيفية تحديد الثقة
- يتحقق Bob Shell من
~/.bob/trustedFolders.jsonللبحث عن قرار موجود للمجلد الحالي. - تغيير ثقة المجلد الحالي
- شغّل أمر slash
/permissionsمن داخل Bob Shell. يظهر مربع الحوار التفاعلي مما يتيح لك تغيير مستوى الثقة للمجلد الحالي. - عرض جميع قواعد الثقة
- افحص
~/.bob/trustedFolders.jsonفي مجلدك الرئيسي للحصول على قائمة كاملة بجميع قواعد المجلدات الموثوقة وغير الموثوقة.
الجلسات غير التفاعلية
على عكس الوضع التفاعلي، لا تعرض الجلسات غير التفاعلية أبدًا مربع حوار الثقة. يعمل Bob Shell بصمت بناءً على قرارات الثقة الموجودة مسبقًا.
عندما تكون الميزة مفعّلة ولا يوجد قرار ثقة للمجلد، أو كان المجلد غير موثوق، يُلقي Bob Shell خطأً ولا يعمل:
<folder> is not a trusted folder. Pass --trust to run in this folder,
or run Bob Shell interactively and choose a trust level.سلوك العلامات حسب الوضع
تتصرف علامتا --trust و--auto-approve بشكل مختلف بناءً على كيفية تشغيل Bob Shell. اختر وضعك لرؤية السلوك ذي الصلة:
--trust- يُحفظ المجلد كموثوق. يكتب Bob Shell إدخالاً موثوقًا للمجلد الحالي في
~/.bob/trustedFolders.jsonويتخطى مربع حوار الثقة عند أول وصول. هذا مكافئ لفتح المجلد واختيار "Trust folder" يدويًا. --auto-approve- تُكبَت الموافقة التلقائية بصمت في مجلد غير موثوق. لا تزال تُطالَب قبل تشغيل كل أداة.
--trust- يُعامَل المجلد كموثوق لتلك التشغيلة فقط. لا يُحفظ قرار الثقة ولا يُكتب شيء في مخزن الثقة.
--auto-approve- لا يسمح Bob Shell بالتشغيل في مجلد غير موثوق ويُلقي الخطأ الموضح أعلاه.
الإعداد المسبق للأتمتة
للأتمتة الآمنة وCI/CD pipelines، أرسِ قرارات الثقة قبل تشغيل الأوامر غير التفاعلية:
- شغّل جلسة تفاعلية أولاً لضبط تفضيلات الثقة عبر مربع الحوار.
- اضبط
~/.bob/trustedFolders.jsonيدويًا.
الإعداد المسبق للثقة ضروري للبيئات الحساسة أمنيًا، إذ لن يرجع Bob Shell إلى حالة موثوقة عندما لا يوجد قرار.
أفضل الممارسات
- ثق فقط بالمجلدات التي تحتوي على كود راجعته أو أنشأته بنفسك
- استخدم خيار "Trust parent folder" للمجلدات التي تحتوي على مشاريع آمنة متعددة
- راجع قائمة مجلداتك الموثوقة بانتظام في
~/.bob/trustedFolders.json - عند العمل مع كود غير مألوف، ابدأ في الوضع غير الموثوق لفهم المشروع قبل منح الثقة