tool_name_glob على قاعدة.
إنه قواعد صغيرة عمداً وحسّاسة لحالة الأحرف (لا regex، لا تراجع) فتُقرأ القاعدة
بنفس الطريقة التي ستكتب بها اسم أداة من تبويب الأدوات المكتشفة، وتبقى
المطابقة خطّية الزمن على مسار الترحيل الساخن.
هذه الصفحة هي المرجع المركّز لقواعد ذلك الحقل الواحد. لمكان جلوس glob داخل
قاعدة كاملة — السطح، عبارات الوسائط، قوائم egress، الحكم — انظر
مخطط القاعدة ومرجع المحرك العميق في
قواعد جدار الحماية.
1. لماذا glob اسم أداة بدلاً من regex
تُسمّى الأدوات اصطلاحاً بنطاق server.tool أو category.action
(shell.exec، db.query، community.http_fetch). يتيح glob لقاعدة واحدة
اصطياد عائلة كاملة — shell.* لكل فعل shell، و*.delete لفعل عبر الخوادم —
دون مزالق regex على مسار يعمل على كل استدعاء أداة.
القواعد صغيرة عمداً. المطابقة حسّاسة لحالة الأحرف — أسماء أدوات MCP اصطلاحاً
حروف صغيرة بنقاط، فطيّ الحالة سيفاجئ مؤلّفاً ينسخ-يلصق اسماً مباشرةً من عرض
الأدوات المكتشفة. لا يوجد تراجع كارثي لأنه لا يوجد محرك regex خلفه؛ كل نمط
أدناه حفنة من عمليات السلاسل.
2. أشكال النمط الخمسة
glob اسم الأداة هو واحد بالضبط من هذه الأشكال. أي شيء لا يلائم أشكال أحرف
البدل يُعامَل كحرف، مطابقة دقيقة.
| النمط | الشكل | يطابق |
|---|---|---|
"" أو * | أي | كل استدعاء أداة. |
foo.* | بادئة | foo.bar، foo.exec — وليس foo المجرّد. |
*.exec | لاحقة | shell.exec، db.exec، و exec المجرّد. |
*.shell.* | داخلي | local.shell.exec، byo.shell.run. |
shell.exec | دقيق | فقط السلسلة الحرفية shell.exec. |
3. البادئة — foo.*
تطابق أي أداة يبدأ اسمها بـ foo. ولها حرف واحد على الأقل أكثر بعد
النقطة.
يطابق
shell.exec، shell.run، shell.rm للنمط shell.*لا يطابق
shell المجرّد (تتطلب البادئة النقطة اللاحقة و شيئاً بعدها)shell.*
يغطّي كل فعل shell قد يضيفه خادم لاحقاً.
4. اللاحقة — *.exec
تطابق أي أداة ينتهي اسمها بـ .exec، مثبَّتة عند نقطة — و تطابق أيضاً
الفعل المجرّد غير المُسمّى بنطاق exec بمفرده.
تبقى اللاحقة مثبَّتة — لن تطابق كلمة جزئية:
| النمط | shell.exec | exec المجرّد | shell.execute |
|---|---|---|---|
*.exec | يطابق | يطابق | لا مطابقة |
*.execute سيكون مطلوباً لـ shell.execute؛ تُطلق اللاحقة فقط عند حدّ نقطة
أو بداية السلسلة، وليس أبداً في منتصف الكلمة.
5. الداخلي — *.shell.*
يطابق أي اسم أداة يحتوي .shell. كداخلي، بـ حرف واحد على الأقل على كل جانب.
هكذا تغطّي قاعدة واحدة فعلاً أينما صادف خادم BYO-MCP أن يُسمّيه بنطاق.
local.shell.exec وbyo.shell.run وأي شكل آخر
<server>.shell.<verb>. إنها لا تطابق shell المجرّد أو .shell. مجرّداً
بلا شيء حوله — متطلّب الحرف-على-كل-جانب يبقي الداخلي صادقاً.
6. الدقيق — shell.exec
أي شيء ليس واحداً من أشكال أحرف البدل أعلاه هو مطابقة سلسلة حرفية. shell.exec
يطابق shell.exec ولا شيء آخر. هذا الخيار الصحيح عندما تريد تسمية أداة محددة
واحدة — اقرنه بـ عبارة وسائط
لتضييق أكثر (“احجب shell.exec فقط عندما يكون الأمر rm -rf”).
7. مثال ملموس واحد
لنقل إنك تريد رفض كل فعل shell مدمّر بغض النظر عن كيفية تسمية خادم MCP له بنطاق، بينما تدع كل شيء آخر يُدقَّق. في محرر القواعد بوحدة التحكم (الكتابات تتطلب Developer+)، نصف المطابقة من القاعدة هو glob داخلي واحد:firewall_policy_id على المفتاح)، والآن تصطاد القاعدة
local.shell.exec وbyo.shell.run وacme.shell.rm — ثلاثة خوادم، glob
واحد. تريد تأكيد أنها تُطلق على ما تتوقعه قبل أن تعتمد عليها؟ استخدم
اختبار القواعد — يعيد الحكم، والقاعدة
المطابقة، والسبب دون إرسال أي شيء.
glob يضيّق أي أداة. لتضييق بأي وسائط، ادمج بـ AND
عبارة وسائط على نفس القاعدة؛
لحكم أداة فقط عندما تملكها مهارة معيّنة، أضف glob اسم مهارة (نفس القواعد،
مطابقة على المهارة المالكة). كلاهما مغطّى في
قواعد جدار الحماية.
8. مرجع سريع
هل يغطّي glob لاحقة الفعل المجرّد؟
هل يغطّي glob لاحقة الفعل المجرّد؟
نعم.
*.exec يطابق shell.exec وdb.exec و exec المجرّد غير
المُسمّى بنطاق. globs البادئة (foo.*) لا تطابق النطاق المجرّد foo
— فقط الأسماء التي بها شيء بعد النقطة.هل تعمل النجمة الوسطى في foo.*.bar؟
هل تعمل النجمة الوسطى في foo.*.bar؟
لا. الشكل الوحيد بحرف بدل في المنتصف الذي يفهمه المحرك هو الداخلي
المتماثل
*.X.*. foo.*.bar يسقط إلى مطابقة حرفية دقيقة. استخدم قاعدتين
أو عبارة وسائط بدلاً من ذلك.هل المطابقة حسّاسة لحالة الأحرف؟
هل المطابقة حسّاسة لحالة الأحرف؟
نعم.
Shell.Exec وshell.exec أداتان مختلفتان. انسخ الأسماء حرفياً من
تبويب الأدوات المكتشفة.ماذا لو كان glob مشوّهاً؟
ماذا لو كان glob مشوّهاً؟
أي شكل ليس واحداً من الخمسة أعلاه يُعامَل كمطابقة دقيقة — ببساطة لن يطابق
اسم أداة حقيقياً، فلا تُطلق القاعدة أبداً بدلاً من مطابقة شيء غير متوقع.
تتحقق وحدة التحكم من القواعد عند الحفظ.
ذات صلة
قائمة السماح للأدوات
استخدم globs للسماح بمجموعة معروفة ورفض البقية.
التحقق من الوسائط
ادمج بـ AND عبارة وسائط JSONPath على glob.
مخطط القاعدة
كل حقل من قاعدة، في مكان واحد.
