Skills: إنشاء مهارتك الأولى
آخر تحديث: 2026-08-31
القراءة وحدها لا تكفي — يجب أن تمارس. هذا الدرس يأخذك من الصفر إلى مهارة قابلة للاستخدام فعلاً.
1. تحليل المتطلبات
سننشئ مهارة مراجعة كود بالمتطلبات التالية:
| المتطلب | الوصف |
|---|---|
| الهدف | مراجعة الكود تلقائيًا وإخراج تقرير مراجعة منظم |
| أبعاد المراجعة | الأمان، الأداء، القراءة، أفضل الممارسات |
| تنسيق المخرجات | قائمة مراجعة مصنفة حسب الخطورة |
| طريقة المحفز | كلمة مفتاحية "review" أو استدعاء يدوي |
| متطلبات الأدوات | قراءة الملفات، البحث في الكود |
2. إنشاء ملف المهارة
(1) إنشاء الملف
BASH
# Claude Code
touch .claude/skills/code-review.md
# OpenCode
touch skills/code-review.md
(2) كتابة الـ frontmatter
YAML
---
name: code-review
description: "مهارة مراجعة كود آلية، فحص الأمان والأداء والقراءة وأفضل الممارسات"
triggers:
- keyword: "review|code review"
tools:
- Read
- Grep
- Glob
---
(3) كتابة محتوى القالب
MARKDOWN
# مهارة مراجعة الكود
## الدور
أنت خبير مراجعة أكواد أول بخبرة تزيد عن 10 سنوات في التطوير الشامل.
## عملية المراجعة
1. استخدم أداة Read لقراءة الملفات المستهدفة
2. استخدم Grep للبحث عن السياق ذي الصلة (مثلاً: تعريفات الأنواع، الواجهات)
3. راجع عبر الأبعاد الأربعة التالية
## أبعاد المراجعة
### الأمان
- حقن SQL، XSS، CSRF، وغيرها من الثغرات الشائعة
- معلومات حساسة مُشفّرة بشكل ثابت
- استخدام تبعيات غير آمنة
### الأداء
- استعلامات N+1، حلقات غير ضرورية
- مخاطر تسرب الذاكرة
- نقص التخزين المؤقت/الفهرسة
### القراءة
- اصطلاحات تسمية واضحة
- دوال طويلة جدًا (تحذير عند >50 سطرًا)
- تعليقات كافية
### أفضل الممارسات
- اتباع اتفاقيات المشروع
- معالجة أخطاء كاملة
- لا كود زائد
## تنسيق المخرجات
لكل مشكلة، أخرج:
- 📍 الموقع: filename:line_number
- 🔴/🟡/🟢 الخطورة
- 📝 وصف المشكلة
- ✅ اقتراح الإصلاح (مع مثال كود)
3. اختبار المهارة
(1) المحفز اليدوي
أدخل الكلمة المفتاحية للمحفز في المحادثة:
TEXT
📖 للعرض فقط
أنت: review src/auth/login.py
الذكاء الاصطناعي: (يُحمّل تلقائيًا مهارة code-review، ينفذ عملية المراجعة)
(2) مراقبة السلوك
تحقق من أن المهارة تم تحميلها بشكل صحيح:
TEXT
📖 للعرض فقط
✅ هل قرأت الملف المستهدف تلقائيًا؟
✅ هل راجعت عبر جميع الأبعاد الأربعة؟
✅ هل أخرجت تقرير مراجعة مصنف؟
✅ هل قدّمت اقتراحات إصلاح محددة؟
(3) التعديل والتحسين
إذا لم تكن المخرجات مثالية، عدّل القوالب:
MARKDOWN
# التحسين: إضافة مثال على المخرجات
## مثال على المخرجات
📍 الموقع: src/auth/login.py:42
🔴 حرج: خطر حقن SQL
📝 استخدام ربط النصوص لبناء استعلام SQL
✅ الاقتراح:
```python
# قبل
query = f"SELECT * FROM users WHERE name = '{username}'"
# بعد
query = "SELECT * FROM users WHERE name = ?"
cursor.execute(query, (username,))
---
## 4. التحسين التكراري
### (1) إضافة الوعي بالسياق
```markdown
## قواعد السياق
- إذا كان المشروع يحتوي على .eslintrc، اتبع قواعده في المراجعة
- إذا كان المشروع يحتوي على pyproject.toml، تحقق مما إذا كان يتبع التكوين
- قبل المراجعة، استخدم Glob للتحقق من حزمة تقنيات المشروع
(2) إضافة فروع شرطية
MARKDOWN
## المراجعة الشرطية
- مشاريع Python: فحوصات إضافية لتلميحات الأنواع، docstrings
- مشاريع TypeScript: فحوصات إضافية لأنواع any، أمان الأنواع
- مشاريع Go: فحوصات إضافية لمعالجة الأخطاء، تسريبات goroutine
(3) إضافة معايير الفريق
MARKDOWN
## معايير الفريق
- يجب ألا تتجاوز الدوال 30 سطرًا (اتفاقية الفريق أصرم من 50 سطرًا)
- مطلوب تغطية اختبارات الوحدة
- يجب أن تحتوي نقاط نهاية API على توثيق Swagger
بعد أن أكملت Alice التحسينات، تحسنت كفاءة مراجعة الكود في الفريق 3 أضعاف. قال Bob: "المفتاح هو جعل القوالب محددة — 'مراجعة الكود' غامضة جدًا؛ 'التصنيف حسب أربعة أبعاد' هي تعليمة قابلة للتنفيذ."
❓ الأسئلة الشائعة
س ماذا لو لم يتم تحميل المهارة تلقائيًا؟
ج تحقق من صحة اسم الملف والدليل، وما إذا كانت محفزات الـ frontmatter تطابق الكلمة المفتاحية التي أدخلتها، وما إذا كانت المنصة تدعم التحميل التلقائي.
س كم يجب أن يكون طول القالب؟
ج بطول ما يلزم ليكون فعالًا — لا يوجد حد صارم. المهارات العملية عادةً تكون 50-200 سطر. المفتاح هو التحديد والقابلية للتنفيذ، وليس الطول والغموض.
س هل يمكن لمهارة واحدة التعامل مع لغات متعددة؟
ج نعم، مع فروع شرطية. لكن نوصي بالتقسيم حسب اللغة إلى مهارات منفصلة لتسهيل الصيانة.
📖 ملخص
- ثلاث خطوات لإنشاء مهارة: تحليل المتطلبات → كتابة الملف → الاختبار والتكرار
- الـ frontmatter يحدد البيانات الوصفية؛ محتوى Markdown يحدد السلوك
- القوالب يجب أن تكون محددة وقابلة للتنفيذ، تتضمن الدور، والعملية، والأبعاد، وتنسيق المخرجات
- التحسين المستمر من خلال أمثلة المخرجات وقواعد السياق
📝 تمارين
- أساسي (⭐): اتبع خطوات هذا الدرس لإنشاء مهارة code-review واختبرها.
- متوسط (⭐⭐): أضف فروعًا شرطية إلى مهارة code-review، مع دعم قواعد مراجعة خاصة باللغة للغتين برمجيتين على الأقل.
- متقدم (⭐⭐⭐): أنشئ مهارة كاملة "توليد توثيق API"، تشمل تحليل المتطلبات، تصميم القوالب، والتحقق بالاختبار.