Skills: المحفزات والتفعيل التلقائي
آخر تحديث: 2026-08-31
المهارة الجيدة يجب أن تكون كالهواء — موجودة عندما تحتاجها، غير مزعجة عندما لا تحتاجها. المحفزات هي مفتاح "عندما تحتاجها".
1. أنواع المحفزات
(1) محفز الكلمة المفتاحية
أكثر طرق المحفز شيوعًا، يطابق الكلمات في مدخلات المستخدم:
YAML
triggers:
- keyword: "review|code review"
- keyword: "debug|troubleshoot"
| قاعدة المطابقة | الوصف | مثال |
|---|---|---|
| مطابقة تامة | يساوي الكلمة المفتاحية تمامًا | "deploy" |
| مطابقة تقريبية | يحتوي على الكلمة المفتاحية | "review" يطابق "please review this" |
| مطابقة تعبيرية | تعبير منتظم | "fix.*bug" |
| كلمات متعددة | أي مطابقة تُفعّل | "refactor|restructure" |
(2) محفز نوع الملف
يُفعّل تلقائيًا بناءً على امتداد أو مسار الملفات المعالجة:
YAML
triggers:
- file_pattern: "**/*.py"
- file_pattern: "src/components/**/*.tsx"
(3) محفز الشرط السياقي
يُفعّل بناءً على بيئة المشروع أو حالة المحادثة:
YAML
triggers:
- context: "git_diff_available"
- context: "test_failed"
- context: "has_package_json"
2. أولوية المحفزات
عندما تتطابق مهارات متعددة في وقت واحد، يتبع الاختيار الأولوية:
TEXT
📖 للعرض فقط
الأولوية من الأعلى إلى الأدنى:
1. استدعاء يدوي صريح (يطلبه المستخدم صراحةً)
2. مطابقة تامة للكلمة المفتاحية
3. مطابقة الشرط السياقي
4. مطابقة تقريبية لنوع الملف
5. مهارة الاحتياط الافتراضية
(1) تكوين الأولوية
YAML
triggers:
- keyword: "urgent fix"
priority: 100
- keyword: "fix"
priority: 50
(2) حل التعارضات
عندما تتنافس مهارتان:
TEXT
📖 للعرض فقط
مدخلات المستخدم: "review this Python file for bugs"
نتائج المطابقة:
├── مهارة code-review (كلمة مفتاحية: "review") → أولوية 80
├── مهارة python-review (كلمة مفتاحية: "review" + ملف: *.py) → أولوية 90 ✅
└── مهارة debug (كلمة مفتاحية: "bug") → أولوية 70
النتيجة: اختيار python-review لأنها تطابق بدقة أكبر
3. المحفزات المركبة
(1) تركيب AND
يجب تحقق جميع الشروط في وقت واحد:
YAML
triggers:
- and:
- keyword: "deploy"
- context: "main_branch"
(2) تركيب OR
تحقق أي شرط يُفعّل:
YAML
triggers:
- or:
- keyword: "test"
- file_pattern: "**/*test*.py"
(3) استثناء NOT
لا يُفعّل عند تحقق الشرط:
YAML
triggers:
- keyword: "refactor"
- not:
- context: "production_branch"
4. ممارسة المحفزات
▶ مثال: نظام الجدولة الذكية
صمّمت Alice نظام محفزات تلقائية للفريق:
YAML
# .claude/skills/auto-test.md
---
name: auto-test
triggers:
- and:
- file_pattern: "src/**/*.py"
- context: "file_modified"
- not:
- file_pattern: "src/**/migrations/**"
---
بعد تعديل ملفات Python المصدرية، شغّل الاختبارات تلقائيًا......
علّق Bob: "هذا النظام يعني أن الفريق لا يحتاج لتذكر أي مهارة يجب استدعاؤها — اعمل بشكل طبيعي، والدعم المناسب يأتي تلقائيًا."
(1) سيناريوهات المحفزات الشائعة
| السيناريو | طريقة المحفز | مثال المهارة |
|---|---|---|
| فتح أنواع ملفات معينة | نوع الملف | مراجعة كود Python |
| قبل إرسال الكود | شرط سياقي | فحص ما قبل الإرسال |
| فشل الاختبار | شرط سياقي | تصحيح تلقائي |
| إدخال أوامر محددة | كلمة مفتاحية | نشر، إصدار |
| إنشاء PR | شرط سياقي | مراجعة كود |
❓ الأسئلة الشائعة
س هل يمكن أن تسبب الكلمات المفتاحية الكثيرة تعارضات؟
ج نعم. نوصي بكلمات مفتاحية أساسية 1-2 لكل مهارة، مع تجنب التداخل الواسع. حل التعارضات بالأولوية والدقة.
س أي شروط سياقية مدعومة؟
ج تختلف حسب المنصة؛ الشائعة تشمل: git_diff_available، test_failed، branch_name، file_modified، has_config_file، وغيرها.
س هل يمكنني تعطيل التفعيل التلقائي لمهارة؟
ج نعم، اضبط
auto_trigger: false في التكوين؛ المهارة يمكن استدعاؤها يدويًا فقط بعد ذلك.📖 ملخص
- ثلاثة أنواع من المحفزات: كلمة مفتاحية، نوع ملف، شرط سياقي
- قواعد الأولوية: يدوي > مطابقة تامة > مطابقة تقريبية > احتياطي
- المحفزات المركبة: AND (الكل يجب تحققه)، OR (أي واحد يكفي)، NOT (استثناء)
- مبدأ التصميم: المهارات تظهر تلقائيًا عند الحاجة، لا تتدخل عندما لا تُحتاج
📝 تمارين
- أساسي (⭐): أضف نوعين مختلفين من المحفزات إلى مهارة code-review التي أنشأتها سابقًا.
- متوسط (⭐⭐): صمّم محفزًا مركبًا يشغّل الاختبارات تلقائيًا عند تعديل ملفات اختبار Python، لكن يستبعد ملفات الترحيل.
- متقدم (⭐⭐⭐): صمّم نظام جدولة محفزات على مستوى الفريق يتعامل مع الأولوية والتعارضات بين 5+ مهارات.