Tools
وضع الصلاحيات المرتفعة
عندما يعمل وكيل داخل صندوق رمل، تكون أوامر exec الخاصة به محصورة في
بيئة صندوق الرمل. يتيح الوضع بصلاحيات مرتفعة للوكيل الخروج وتشغيل الأوامر
خارج صندوق الرمل بدلاً من ذلك، مع بوابات موافقة قابلة للتهيئة.
التوجيهات
تحكم في الوضع بصلاحيات مرتفعة لكل جلسة باستخدام أوامر الشرطة المائلة:
| التوجيه | ما يفعله |
|---|---|
/elevated on |
التشغيل خارج صندوق الرمل على مسار المضيف المهيأ، مع إبقاء الموافقات |
/elevated ask |
مثل on (اسم بديل) |
/elevated full |
التشغيل خارج صندوق الرمل على مسار المضيف المهيأ وتخطي الموافقات |
/elevated off |
العودة إلى التنفيذ المحصور في صندوق الرمل |
متاح أيضاً بصيغة /elev on|off|ask|full.
أرسل /elevated بلا وسيطة لمعرفة المستوى الحالي.
كيف يعمل
Check availability
يجب تفعيل الصلاحيات المرتفعة في الإعدادات ويجب أن يكون المرسل ضمن قائمة السماح:
{
tools: {
elevated: {
enabled: true,
allowFrom: {
discord: ["user-id-123"],
whatsapp: ["+15555550123"],
},
},
},
}
Set the level
أرسل رسالة تحتوي على التوجيه فقط لتعيين الإعداد الافتراضي للجلسة:
/elevated full
أو استخدمه ضمنياً (ينطبق على تلك الرسالة فقط):
/elevated on run the deployment script
Commands run outside the sandbox
عند تفعيل الصلاحيات المرتفعة، تغادر استدعاءات exec صندوق الرمل. يكون المضيف الفعلي
هو gateway افتراضياً، أو node عندما يكون هدف exec المهيأ/الخاص بالجلسة هو
node. في وضع full، يتم تخطي موافقات exec. في وضع on/ask،
تظل قواعد الموافقة المهيأة مطبقة.
ترتيب الحل
- توجيه مضمن في الرسالة (ينطبق على تلك الرسالة فقط)
- تجاوز الجلسة (يُعيّن بإرسال رسالة تحتوي على التوجيه فقط)
- الإعداد الافتراضي العام (
agents.defaults.elevatedDefaultفي الإعدادات)
الإتاحة وقوائم السماح
- البوابة العامة:
tools.elevated.enabled(يجب أن تكونtrue) - قائمة السماح للمرسلين:
tools.elevated.allowFromمع قوائم لكل قناة - بوابة لكل وكيل:
agents.list[].tools.elevated.enabled(يمكنها فقط زيادة التقييد) - قائمة سماح لكل وكيل:
agents.list[].tools.elevated.allowFrom(يجب أن يطابق المرسل كلاً من العامة + الخاصة بالوكيل) - احتياطي Discord: إذا تم حذف
tools.elevated.allowFrom.discord، يُستخدمchannels.discord.allowFromكاحتياطي - يجب أن تجتاز جميع البوابات؛ وإلا تُعامل الصلاحيات المرتفعة على أنها غير متاحة
تنسيقات إدخالات قائمة السماح:
| البادئة | تطابق |
|---|---|
| (لا شيء) | معرف المرسل، أو E.164، أو حقل From |
name: |
اسم عرض المرسل |
username: |
اسم مستخدم المرسل |
tag: |
وسم المرسل |
id:, from:, e164: |
استهداف هوية صريح |
ما لا تتحكم به الصلاحيات المرتفعة
- سياسة الأدوات: إذا مُنع
execبواسطة سياسة الأدوات، فلا يمكن للصلاحيات المرتفعة تجاوز ذلك. - سياسة اختيار المضيف: لا تحول الصلاحيات المرتفعة
autoإلى تجاوز حر عبر المضيفين. إنها تستخدم قواعد هدف exec المهيأة/الخاصة بالجلسة، وتختارnodeفقط عندما يكون الهدف بالفعلnode. - منفصلة عن
/exec: يعدل توجيه/execالإعدادات الافتراضية لـ exec لكل جلسة للمرسلين المخولين ولا يتطلب الوضع بصلاحيات مرتفعة.