Skip to content

الدليل الشامل لمهارات Claude Code

مقدمة إلى المهارات (Skills)

مهارات Claude Code هي ميزة تحزم المعرفة المتخصصة وسير العمل وأفضل الممارسات في "حزم مهارات" قابلة لإعادة الاستخدام.

يمكنك تخيل المهارات كـ "كتب مهارات" مجهزة لـ Claude. عندما تحتاج منه إكمال مهمة محددة، لم يعد عليك شرح المتطلبات مرارًا وتكرارًا. بدلاً من ذلك، يمكنه تنفيذ العمل مباشرة وفقًا للمعايير المحددة مسبقًا في المهارة.

لماذا نحتاج المهارات؟

قبل ظهور المهارات، كان استخدام Claude Code يعاني من عدة مشاكل:

  • التعليمات المتكررة: في كل مرة، كان عليك شرح أشياء مثل "أي نمط برمجة يجب اتباعه" و"كيف يجب كتابة رسائل الالتزام"
  • عدم تراكم المعرفة: تجربة أعضاء الفريق الفردية في استخدام Claude لم تكن قابلة للمشاركة
  • معايير غير متسقة: أشخاص مختلفون يستخدمون Claude قد يحصلون على نتائج مختلفة تمامًا
  • كفاءة منخفضة: المهام الشائعة كان يجب شرحها من الصفر في كل مرة

المهارات تحل هذه المشاكل وتحول Claude إلى "عضو فريق ذو خبرة" - فهو يعرف اتفاقيات مشروعك وسير عملك وأفضل الممارسات.


لماذا تعلم المهارات الآن؟

المهارات أصبحت قدرة ضرورية لمهندسي الذكاء الاصطناعي:

  • اهتمام مجتمعي مرتفع: مستودعات GitHub ذات الصلة تكسب نجومًا بسرعة. على سبيل المثال، مشروع OpenSkills وصل بالفعل إلى 7.2k نجمة، ومهارات Obsidian حصلت على 6.6k نجمة في 9 أيام فقط
  • دعم رسمي: Anthropic يحافظ على مستودع مهارات رسمي، و Vercel أطلقت Agent Skills وأداة find-skills
  • عملية للغاية: من مراجعة الكود وعمليات Git إلى إنشاء الفيديو وتوليد PPT، المهارات تغطي العديد من السيناريوهات. منصة skills.sh تمتلك بالفعل مهارات شائعة مع 60K+ اشتراك
  • تحسين الكفاءة: التهيئة مرة واحدة، إعادة الاستخدام مرارًا، وجعل Claude حقًا "موظفك الرقمي"
  • تقدير المطورين: موصى بها من قبل مجتمعات تقنية متعددة وتعتبر على نطاق واسع أداة رئيسية لتحسين كفاءة البرمجة بالذكاء الاصطناعي

البدء السريع

الآن بعد أن فهمت قيمة المهارات، دعنا نجربها فورًا. سيرشدك هذا القسم خلال تثبيت أول مهارة وإكمال بعض المهام العملية المثيرة لبناء الحدس بسرعة.

الخطوة 1: تثبيت find-skills (موصى به بشدة)

قبل البدء في استخدام المهارات، يوصى بشدة بتثبيت find-skills أولاً. إنها "أداة البحث النهائي عن المهارات" في عالم وكيل الذكاء الاصطناعي ولديها بالفعل 60K+ اشتراك.

ما هو find-skills؟

ببساطة، find-skills مثل "محرك بحث لمتجر التطبيقات" لوكلاء الذكاء الاصطناعي. عندما تحتاج إلى إكمال مهمة ولكنك لا تمتلك مهارة محلية مناسبة، سيبحث تلقائيًا ويوصي بأنسبها.

تثبيت find-skills:

bash
npx skills add vercel-labs/skills@find-skills -g -y

بعد التثبيت، يمكنك إخبار Claude مباشرة بما تحتاجه، وسيستخدم find-skills للبحث عن المهارات ذات الصلة تلقائيًا.

مثال على الاستخدام:

text
أحتاج إلى تحسين أداء مكون React. ساعدني في العثور على المهارات التي يمكنني استخدامها.

سيبحث Claude من خلال find-skills، ثم يخبرك بالمهارات ذات الصلة التي وجدها لتختار واحدة لتثبيتها.

لماذا تثبيت find-skills أولاً؟

قبل find-skills:

  • البحث يدويًا في GitHub عن المهارات ذات الصلة
  • النسخ والتثبيت والتهيئة واحدًا تلو الآخر
  • التصحيح والتعديل المتكرر

بعد find-skills:

  • وصف المتطلب في جملة واحدة
  • الذكاء الاصطناعي يبحث تلقائيًا عن أفضل مهارة مطابقة
  • التثبيت بنقرة واحدة واستخدامها فورًا

ملاحظة لمستخدمي Windows: الإصدار الرسمي له دعم محدود لـ Windows. المجتمع أنشأ نسخة متوافقة مع Windows تدعم CMD و PowerShell وتضيف البحث باللغة الصينية.

تحميل نسخة Windows: github.com/tongbei821/customize-skills

خطوات التثبيت:

  1. تحميل نسخة Windows من SKILL.md
  2. استبدال الملف في C:/Users/your-username/.agents/skills/find-skills
  3. إعادة تشغيل Claude Code وسيصبح ساري المفعول

الروابط ذات الصلة:

تثبيت وتجربة أول مهارة

بعد تثبيت find-skills، دعنا نستخدمها للبحث عن وتثبيت مهارة ممتعة أولى: أداة إنشاء فيديو Remotion.

الخطوة 1: استخدام find-skills للبحث عن Remotion

اكتب هذا في Claude Code:

text
ساعدني في العثور على مهارات متعلقة بـ Remotion. أريد صنع فيديو.

سيبحث Claude عبر find-skills ويوصي بـ remotion-dev/skills.

الخطوة 2: تثبيت مهارات Remotion

bash
npx skills add remotion-dev/skills -g

الخطوة 3: استخدمها لبناء شيء ممتع

Remotion هو إطار عمل لصنع مقاطع الفيديو بكود React. بعد تثبيت هذه المهارة، يمكنك أن تطلب من Claude بلغة طبيعية مساعدتك في كتابة كود الفيديو.

المهمة 1: صنع فيديو نص متحرك رائع

text
استخدم Remotion لصنع فيديو:
- 1920x1080، 5 ثوانٍ
- سطر نص "Hello World" يطير من اليسار
- مع تأثيرات دوران وتكبير في نفس الوقت
- الخلفية متدرجة

سيقوم Claude بتوليد كود Remotion كامل، ويمكنك تشغيله لرؤية الرسوم المتحركة.

المهمة 2: صنع فيديو تصور بيانات

text
اصنع فيديو مدته 10 ثوانٍ يوضح نمو البيانات:
- البدء بمخطط شريطي
- الأعمدة تنمو واحدًا تلو الآخر مع رسوم متحركة
- الأرقام تعد تصاعديًا
- في النهاية، اعرض نصًا كبيرًا يقول "300% growth"

المهمة 3: صنع فيديو عرض منتج متعدد المشاهد

text
اصنع فيديو عرض منتج بثلاث مشاهد:
المشهد 1: الشعار يتلاشى للداخل، ثانيتان
المشهد 2: ميزات المنتج تظهر واحدًا تلو الآخر، 3 ثوانٍ
المشهد 3: زر CTA ينبثق، ثانيتان
استخدم انتقالات سلسة بين كل مشهد

تشغيل الكود:

الكود الذي ينشئه Claude هو مشروع Remotion كامل. يمكنك:

  1. إنشاء مشروع جديد: npx create-video my-video
  2. نسخ الكود الذي أنشأه Claude فيه
  3. تشغيل معاينة: npm start
  4. عرض الفيديو: npm run build

المهارة الثانية: استخدام find-skills لحل مشكلة "الواجهة الأمامية قبيحة وبطيئة"

الخطوة 1: صِف مشكلتك بلغة طبيعية

أخبر Claude مباشرة بحاجتك العامة:

text
موقعي يبدو قديمًا ويُحمَّل ببطء. ساعدني في العثور على المهارات التي يمكنني استخدامها.

أو كن أكثر تحديدًا:

text
أريد أن تبدو الواجهة الأمامية أفضل وتتوقف عن التباطؤ.

الخطوة 2: سيبحث Claude باستخدام find-skills

سيبحث Claude في قاعدة بيانات skills.sh عبر find-skills ويوصي بمهارات ذات صلة. لمتطلب مثل "تحسين المظهر + تقليل البطء"، سيوصي بـ:

anthropics/skills/frontend-design (مهارة رسمية)

هذه المهارة مصممة خصيصًا لحل مشكلة الواجهات التي ينشئها الذكاء الاصطناعي و"تبدو عادية ومكررة"، وتساعد Claude في تصميم:

  • أنماط بصرية فريدة تتجنب "مظهر قالب الذكاء الاصطناعي" المعتاد
  • أنظمة ألوان وطباعة احترافية
  • تأثيرات رسوم متحركة سلسة
  • جودة كود على مستوى الإنتاج، مع كود نظيف وأداء أفضل بشكل طبيعي

الخطوة 3: التثبيت والاستخدام

التثبيت:

bash
npx skills add anthropics/skills/frontend-design -g

المهام التي يمكنك إنجازها بها:

text
ساعدني في إعادة تصميم هذه الصفحة. أريد أن تبدو احترافية جدًا ولا تبدو وكأنها منشأة بواسطة الذكاء الاصطناعي.
text
هذه الواجهة قبيحة جدًا. أعد كتابتها بأسلوب تصميم أكثر حداثة.
text
أنشئ لوحة تحكم بمظهر داكن مع طابع تقني قوي.

سيتبع Claude اصطلاحات هذه المهارة ويساعدك في التصميم:

  • اتجاه بصري فريد مثل الحد الأدنى، المستقبلية الرجعية، أو البروتاليزم
  • ألوان وخطوط مختارة بعناية
  • تباعد وتخطيط معقول
  • رسوم متحركة تفاعلية سلسة

مقارنة المهارتين

المهاراتالمشكلة التي تحلهامتعة الاستخدام
remotion-dev/skillsصنع مقاطع فيديو بالكود⭐⭐⭐⭐⭐
anthropics/skills/frontend-designتحسين مظهر الواجهة الأمامية⭐⭐⭐⭐

المهارة الثالثة: استخدام frontend-slides لإنشاء عروض PPT جميلة بسرعة

مقدمة

frontend-slides هي مهارة تتيح لك إنشاء عروض HTML جميلة بلغة طبيعية - حتى لو لم تكن تعرف أي CSS أو JavaScript.

فكرتها الأساسية هي "أظهر، لا تشرح". إذا لم تكن قادرًا على وصف أسلوب التصميم الذي تريده بوضوح، فسيقوم بتوليد 3 معاينات بصرية لتختار منها، بدلاً من إجبارك على وصف متطلبات مجردة مثل "خلفية زرقاء، خط كبير".

تثبيت frontend-slides

الطريقة 1: التثبيت يدويًا

bash
# إنشاء دليل المهارة
mkdir -p ~/.claude/skills/frontend-slides

# تحميل الملفات (أو النسخ من GitHub)
# 1. زيارة https://github.com/zarazhangrui/frontend-slides
# 2. تحميل SKILL.md و STYLE_PRESETS.md
# 3. وضعهما في ~/.claude/skills/frontend-slides/

الطريقة 2: التثبيت باستخدام find-skills

text
ساعدني في العثور على مهارة لصنع عروض PPT

سيبحث Claude عبر find-skills ويوصي بـ frontend-slides.

سيناريوهات الاستخدام

السيناريو 1: إنشاء عرض تقديمي من الصفر

text
/frontend-slides

أريد إنشاء عرض تقديمي لجمع التبرعات لمشروع شركة ناشئة في مجال الذكاء الاصطناعي، حوالي 10 شرائح

سيوجهك Claude إلى:

  1. ملء محتوى كل شريحة مثل العناوين والنقاط والصور
  2. وصف الإحساس الذي تريده مثل مذهل أو احترافي أو دافئ
  3. الاختيار من 3 معاينات أنماط بصرية
  4. إنشاء عرض HTML كامل
  5. فتح معاينة في المتصفح

السيناريو 2: تحويل ملف PowerPoint

text
/frontend-slides

حوّل presentation.pptx الخاص بي إلى عرض تقديمي ويب

سيقوم Claude بـ:

  1. استخراج جميع النصوص والصور والملاحظات من PPT
  2. عرض المحتوى المستخرج للتأكيد
  3. السماح لك باختيار نمط بصري
  4. توليد عرض HTML يحافظ على جميع المحتوى الأصلي

السيناريو 3: إنشاء معاينات أنماط بسرعة

text
/frontend-slides

أريد صنع PPT لعرض تقني. أرني الأنماط البصرية المتاحة أولاً.

سيقوم Claude بتوليد 3 صفحات معاينة بأنماط مختلفة مباشرة:

  • أنماط داكنة: Neon Cyber، Terminal Green، Deep Space
  • أنماط فاتحة: Paper & Ink، Swiss Modern، Soft Pastel
  • أنماط خاصة: Brutalist، Gradient Wave

الأنماط البصرية المدمجة

اسم النمطالخصائصالسيناريوهات المناسبة
Neon Cyberطابع تقني مستقبلي، تأثيرات الجسيماتالعروض التقنية، منتجات الذكاء الاصطناعي
Midnight Executiveأعمال راقية، جدير بالثقةتقارير الأعمال، عروض جمع التبرعات
Paper & Inkأسلوب تحريري، أجواء أدبيةإنشاء المحتوى، المشاركة التعليمية
Swiss Modernهندسة نظيفة، أسلوب باوهاوسمعرض التصميم، الحد الأدنى
Brutalistخام، جريء، يجذب الانتباهعرض الفن، التعبير الشخصي

نتيجة الإخراج

العرض التقديمي المُنشأ هو مستند HTML بملف واحد يتضمن:

  • كود التنسيق والتفاعل الكامل
  • التنقل بلوحة المفاتيح بمفاتيح الأسهم والمسافة
  • دعم اللمس والتمرير
  • تقليب الشرائح بعجلة الماوس
  • أشرطة التقدم ونقاط التنقل
  • رسوم متحركة تُفعَّل بالتمرير
  • تصميم متجاوب
html
<!DOCTYPE html>
<html lang="zh-CN">
<head>
    <!-- جميع الأنماط مضمنة، صفر تبعيات -->
</head>
<body>
    <section class="slide title-slide">
        <h1 class="reveal">عنوانك</h1>
    </section>
    <!-- المزيد من الشرائح... -->
</body>
</html>

لماذا نوصي بها؟

  1. صفر تبعيات: ملف HTML واحد سيظل يعمل بعد 10 سنوات
  2. الاكتشاف البصري: لا حاجة لوصف التصميم، فقط اختر ما يعجبك
  3. تحويل PPT: احافظ على محتواك الحالي وأضف غلافًا بصريًا أفضل
  4. كود على مستوى الإنتاج: سهل الوصول، تعليقات واضحة، وسهل التخصيص

الروابط ذات الصلة:


مقارنة المهارات الثلاث

المهاراتالمشكلة التي تحلهامتعة الاستخدامعملية
remotion-dev/skillsصنع مقاطع فيديو بالكود⭐⭐⭐⭐⭐⭐⭐⭐⭐
anthropics/skills/frontend-designتحسين مظهر الواجهة الأمامية⭐⭐⭐⭐⭐⭐⭐⭐⭐
frontend-slidesإنشاء عروض PPT جميلة بسرعة⭐⭐⭐⭐⭐⭐⭐⭐⭐

كيفية استخدامها بعد التثبيت

بعد التثبيت، لا تحتاج إلى أي تهيئة إضافية. عندما تطلب من Claude أداء مهمة ذات صلة، سيستدعي المهارة المناسبة تلقائيًا.

عرض المهارات المثبتة:

bash
npx skills list

ما هي المهارات؟

المفهوم الأساسي

المهارات هي "حزم مهارات" مخزنة في نظام الملفات ويمكن أن تتضمن:

  • SKILL.md: ملف تعريف المهارة، مطلوب
  • scripts/: نصوص مساعدة، اختياري
  • templates/: قوالب الإخراج، اختياري
  • references/: وثائق مرجعية، اختياري

المهارات مقابل التعليمات (Prompts)

قد تتساءل: ما الفرق بين المهارات وإرسال تعليمات مباشرة إلى Claude؟

التعليماتالمهارات
مؤقتة، عليك تكرارها في كل مرةدائمة، اكتبها مرة وأعد استخدامها مرات عديدة
تعيش في سجل المحادثة وتستهلك التوكناتتُحمَّل عند الحاجة وتوفر التوكنات
لا يمكن مشاركتها بين الجلساتيمكن مشاركتها ضمن الفريق
صعبة التحكم بالإصداراتيمكن إدارتها مع Git

نوعان من المهارات

المهارات العامة (شخصية):

  • موقع التخزين: ~/.claude/skills/
  • النطاق: جميع المشاريع
  • السيناريوهات المناسبة: مهارات شخصية للأغراض العامة

مهارات المشروع (الفريق):

  • موقع التخزين: project-directory/.claude/skills/
  • النطاق: المشروع الحالي
  • السيناريوهات المناسبة: مشاركة الفريق واتفاقيات المشروع المحددة

كيف تعمل المهارات

عند بدء تشغيل Claude Code، سيقوم بـ:

  1. مسح دلائل المهارات
  2. تحليل كل ملف SKILL.md
  3. استخراج بيانات YAML frontmatter الوصفية
  4. إضافة محتوى المهارة إلى "قاعدة المعرفة" الخاصة به
  5. مطابقة المحفزات تلقائيًا بناءً على الوصف

هيكل ملف SKILL.md

الهيكل الأساسي

دليل مهارة كامل يبدو هكذا:

text
my-skill/
├── SKILL.md          # مطلوب: ملف تعريف المهارة
├── scripts/          # اختياري: نصوص مساعدة
├── templates/        # اختياري: قوالب الإخراج
├── references/       # اختياري: وثائق مرجعية
└── examples/         # اختياري: ملفات أمثلة

قالب SKILL.md

ملف SKILL.md يتكون من جزأين:

الجزء 1: YAML Frontmatter (البيانات الوصفية)

yaml
---
name: skill-name              # اسم المهارة، يصبح الأمر /skill-name
description: short description # يُستخدم لمطابقة المحفز التلقائي لـ Claude
category: development         # الفئة
tags:                         # الوسوم
  - code
  - automation
---

الجزء 2: محتوى Markdown (التعليمات)

markdown
# عنوان المهارة

## حالات الاستخدام
متى تستخدم هذه المهارة

## خطوات التنفيذ
1. الخطوة الأولى
2. الخطوة الثانية

## ملاحظات
- ملاحظة 1
- ملاحظة 2

شرح الحقول الرئيسية

الحقلمطلوبالشرح
nameنعماسم المهارة. يُسمح فقط بالحروف الصغيرة والأرقام والواصلات
descriptionنعموصف المهارة. كلما كان أكثر تحديدًا، سهل على Claude المطابقة التلقائية
categoryلاتصنيف الفئة
tagsلاتصنيفات إضافية
allowed-toolsلاالأدوات التي يمكن استخدامها بدون إذن إضافي

المهارات مقابل MCP: ما الفرق؟

يخلط العديد من المبتدئين بين المهارات و MCP، لكنهما شيئان مختلفان تمامًا.

الاختلافات الأساسية

البعدالمهاراتMCP
الطبيعةالمعرفة وسير العملالأدوات والواجهات
ما يقدمهيخبر الذكاء الاصطناعي "كيف يفعل ذلك"يعطي الذكاء الاصطناعي "ما يمكنه استخدامه"
موقع التخزيندليل skills/خادم MCP
تنسيق التهيئةملفات Markdownملفات تهيئة JSON
طريقة التفعيل/skill-name أو التعرف التلقائيالتحميل التلقائي عبر التهيئة

تشبيه حدسي

لو كان Claude "عامل":

  • MCP سيكون "الأدوات" المُعطاة للعامل، مثل مفتاح ربط وحاسوب وصلاحيات وصول
  • المهارات ستكون "دليل التشغيل" المُعطى للعامل، مثل كيفية مراجعة الكود أو كيفية تقديم الكود

علاقتهما ببعضهما

المهارات و MCP لا تتنافسان مع بعضهما البعض. هما مكمّلان:

text
مهمة المستخدم -> Claude يتعرف على المتطلب

        تحميل المهارات ذات الصلة (يعرف كيف يفعل ذلك)

        استدعاء الأدوات عبر MCP (لديه الأدوات المتاحة)

        إكمال المهمة

مثال

السيناريو: مراجعة الكود

  • المهارات تحدد خطوات المراجعة وقائمة التحقق وتنسيق الإخراج
  • MCP يوفر القدرة على الوصول إلى طلبات السحب على GitHub وجلب اختلافات الكود

العمل معًا: المهارات تخبر Claude "كيف يراجع"، و MCP يعطي Claude "القدرة على الوصول إلى الكود".

توصية الاختيار

حاجتكالحل الموصى به
تحتاج إلى تحديد سير عملاستخدم المهارات
تحتاج إلى الوصول إلى بيانات خارجيةاستخدم MCP
تحتاج كليهمااستخدمهما معًا

الموارد الشائعة للحصول على المهارات

الموارد الرسمية

موارد مجتمع GitHub

المستودعالوصف
shanraisshan/claude-code-best-practiceيديره Boris Cherny رئيس Claude Code، يشمل المهارات والوكلاء والخطافات والمزيد
affaan-m/everything-claude-codeمجموعة أدوات شاملة تتضمن مهارات مُهيأة مسبقًا
JackyST0/awesome-agent-skillsقائمة موارد مهارات مختارة
jeffallan/claude-skills66 مهارة احترافية و 300+ وثيقة مرجعية
GitCode/awesome-claude-skillsمجموعة مفتوحة المصدر مختارة

كيفية تثبيت مهارات المجتمع

باستخدام find-skills، تحتاج فقط إلى إخبار Claude بما تحتاجه، وسيبحث ويوصي تلقائيًا:

text
ساعدني في العثور على مهارة متعلقة بتحسين أداء React

سيبحث Claude في قاعدة بيانات skills.sh عبر find-skills، ثم يسرد المهارات الأكثر صلة، ويمكنك اختيار واحدة لتثبيتها.

نصائح البحث:

  • استخدم كلمات مفتاحية محددة: "react testing" أفضل من "testing"
  • اجمع بين "المجال + الإجراء": "nextjs deploy"، "typescript lint"
  • أعطِ أولوية للمهارات ذات عدد التثبيتات المرتفع، 10K+ عادةً تعني مجربة ومختبرة
  • تابع قائمة الترند لاكتشاف المهارات الناشئة

كيفية إنشاء مهاراتك الخاصة

هناك طريقتان لإنشاء المهارات: اطلب من Claude إنشاء واحدة لك مباشرة، أو استخدم أداة skill-creator المخصصة.

الطريقة 1: اطلب من Claude مساعدتك مباشرة في الإنشاء

هذا هو النهج الأبسط. فقط أخبر Claude بمتطلبك بلغة طبيعية.

مثال:

text
ساعدني في إنشاء مهارة باسم "format-code" لتنسيق الكود تلقائيًا.

المتطلبات:
1. اكتشاف لغة البرمجة تلقائيًا
2. تطبيق قواعد التنسيق المناسبة
3. إرجاع الفرق قبل وبعد التنسيق

سيقوم Claude تلقائيًا بـ:

  1. إنشاء هيكل الدليل
  2. توليد ملف SKILL.md
  3. ملء YAML frontmatter
  4. كتابة محتوى المهارة

السيناريوهات المناسبة:

  • إنشاء مهارات بسيطة بسرعة
  • تعرف ما تريده لكنك غير مألوف بتنسيق SKILL.md
  • تريد التكرار والتعديل بسرعة

الطريقة 2: استخدام skill-creator

skill-creator هي أداة مخصصة لإنشاء المهارات. ترشدك خطوة بخطوة خلال العملية.

التثبيت:

bash
npx skills add anthropics/skills@skill-creator -g

أو تثبيت مستودع المهارات الرسمي بالكامل:

bash
npx skills add anthropics/skills -g

الاستخدام:

text
/skill-creator

ثم املأ المطالبات:

  • اسم المهارة
  • وصف الميزة
  • سيناريوهات الاستخدام
  • خطوات التنفيذ

سيقوم skill-creator بـ:

  1. توجيهك لتوضيح غرض المهارة
  2. توليد مسودة SKILL.md
  3. إنشاء حالات اختبار
  4. تشغيل التقييم والتحسين

السيناريوهات المناسبة:

  • إنشاء مهارات معقدة
  • الحاجة إلى عملية إنشاء أكثر توحيدًا
  • الرغبة في اختبار المهارة والتحقق منها

مقارنة الطريقتين

الطريقة 1: الإنشاء المباشرالطريقة 2: skill-creator
سريع وبسيطخطوات موجهة
مناسب للمهارات البسيطةمناسب للمهارات المعقدة
يُنجز مباشرة في المحادثةعملية موحدة
تعديل مرنيشمل الاختبار والتحقق

نصيحة: كيف تكتب متطلبًا جيدًا

وصف متطلب جيد:

text
أنشئ مهارة "git-commit" تلتزم الكود تلقائيًا.

خطوات التنفيذ:
1. التحقق من الملفات المُعدَّلة
2. توليد رسالة التزام تتبع Conventional Commits
3. تشغيل git commit
4. السؤال عما إذا كان يجب الدفع

ملاحظات:
- التحقق من المعلومات الحساسة قبل الالتزام
- عدم الالتزام بأدلة مثل dist/ أو node_modules/

وصف متطلب سيء:

text
ساعدني في كتابة مهارة للالتزام بالكود

هذا غامض جدًا. Claude لن يعرف بالضبط ما يجب أن يفعله.


أمثلة على المهارات الشائعة

المثال 1: مهارة مراجعة الكود

إنشاء الدليل والملف:

bash
mkdir -p ~/.claude/skills/review-pr
bash
cat > ~/.claude/skills/review-pr/SKILL.md << 'EOF'
---
name: review-pr
description: Review Pull Requests for code quality, security, and test coverage
---

You are a senior code reviewer.

## Review workflow

1. **Code style check**
   - Does the code follow team conventions?
   - Are names clear?
   - Are comments sufficient?

2. **Security check**
   - Are there security vulnerabilities?
   - Is sensitive information exposed?
   - Is input validation complete?

3. **Testing check**
   - Are there enough tests?
   - Do test cases cover edge conditions?
   - Are the tests runnable?

4. **Overall evaluation**
   - What are the strengths?
   - What needs improvement?
   - Do you recommend approving the merge?

## Output format

Please output the review results in a clear structure using a list format.
EOF

كيفية الاستخدام:

text
/review-pr
يرجى مراجعة طلب السحب للفرع الحالي

المثال 2: مهارة الالتزام التلقائي بـ Git

bash
mkdir -p ~/.claude/skills/git-commit
bash
cat > ~/.claude/skills/git-commit/SKILL.md << 'EOF'
---
name: git-commit
description: Automatically detect changes, generate a commit message, and commit the code
---

You are a skilled Git user.

## Execution workflow

1. **Check changes**
   Run `git status` to view modified files
   Run `git diff` to view detailed changes

2. **Generate commit message**
   Analyze the nature of the changes
   Generate a commit message that follows Conventional Commits
   Format: `type(scope): description`

3. **Security check**
   Check whether there is sensitive information such as keys, passwords, or tokens
   Check whether directories that should not be committed are included

4. **Execute after confirmation**
   Show the commit message for confirmation
   Run `git add` and `git commit`
   Ask whether a push is needed

## Notes

- Do not commit directories such as node_modules/, dist/, or .next/
- Run tests before committing to ensure the code works
- The commit message should clearly explain the change
EOF

كيفية الاستخدام:

text
/git-commit

المثال 3: مهارة توليد الاختبارات

bash
mkdir -p ~/.claude/skills/gen-test
bash
cat > ~/.claude/skills/gen-test/SKILL.md << 'EOF'
---
name: gen-test
description: Automatically generate unit tests for code to ensure correctness
---

You are a test engineer.

## Workflow

1. **Analyze the code**
   - Understand the function or class
   - Identify inputs and outputs
   - Find edge cases

2. **Generate tests**
   - Use an appropriate test framework
   - Cover normal cases
   - Cover edge cases
   - Cover exceptional cases

3. **Validate the tests**
   - Make sure the tests can run
   - Make sure the tests can catch problems
   - Do not over-mock the implementation

## Test frameworks

- JavaScript/TypeScript: Jest or Vitest
- Python: pytest
- Go: testing package

## Output format

Output the test code first, then explain how to run the tests.
EOF

كيفية الاستخدام:

text
/gen-test
أنشئ اختبارات وحدة لـ src/utils.ts

المثال 4: مهارة توليد الوثائق

bash
mkdir -p ~/.claude/skills/gen-readme
bash
cat > ~/.claude/skills/gen-readme/SKILL.md << 'EOF'
---
name: gen-readme
description: Automatically generate a README document for a project
---

You are a technical documentation expert.

## Workflow

1. **Analyze the project**
   - Scan the project directory structure
   - Check package.json or other configuration files
   - Read the existing code

2. **Generate content**
   - Project introduction
   - Installation steps
   - Usage instructions
   - API documentation
   - Development guide

3. **Formatting**
   - Use a clear section structure
   - Add code examples
   - Add appropriate badges
   - Add license information

## Standard README structure

- Project title and introduction
- Features
- Installation
- Quick start
- Usage instructions
- API documentation
- Development guide
- Contribution guide
- License
EOF

كيفية الاستخدام:

text
/gen-readme
أنشئ وثيقة README للمشروع الحالي

نصائح متقدمة

دمج المهارات مع الخطافات (Hooks)

الخطافات يمكنها تنفيذ إجراءات تلقائيًا عند أحداث محددة. بدمجها مع المهارات، تتيح أتمتة أكثر قوة.

على سبيل المثال، تنسيق الكود تلقائيًا بعد الحفظ:

json
// .claude/hooks.json
{
  "hooks": {
    "PostToolUse": [{
      "matcher": {
        "tool_name": "Edit"
      },
      "hook": {
        "type": "command",
        "command": "/format-code"  // استدعاء مهارة format-code
      }
    }]
  }
}

دمج المهارات مع الأوامر (Commands)

الأوامر هي أوامر اختصار بسيطة. المهارات هي سير عمل معقد. يمكن استخدامهما معًا.

التعاون الجماعي

مشاركة مهارات المشروع:

  1. ضع المهارات تحت .claude/skills/
  2. ألتزم بها في Git
  3. أعضاء الفريق يمكنهم استخدامها بعد استنساخ المشروع

التحكم بالإصدارات:

  • المهارات يمكن التحكم بإصداراتها مثل الكود
  • كل التزام يمكن أن يسجل التغييرات في المهارات
  • يمكنك العودة إلى إصدارات أقدم

الأسئلة الشائعة

س 1: لماذا لم تُفعَّل المهارة؟

الأسباب المحتملة:

  • تنسيق YAML frontmatter خاطئ
  • الوصف غير محدد بما فيه الكفاية
  • لم يُعاد تشغيل Claude Code

الحل:

  • تحقق من أن تنسيق YAML صحيح
  • حسّن الوصف وضمّن سيناريوهات استخدام محددة
  • أعد تشغيل Claude Code

س 2: كيف أكتب وصفًا دقيقًا؟

الوصف الجيد يتضمن:

  • الوظيفة المحددة للمهارة
  • سيناريو الاستخدام، مثل "عندما يذكر المستخدم..."
  • كلمات التفعيل المفتاحية

مثال سيء:

text
description: Review code

مثال جيد:

text
description: Review Pull Request code. Trigger when the user mentions PR, review, or code review.

س 3: ما الفرق بين المهارات والأوامر؟

الأوامرالمهارات
أوامر اختصار بسيطةسير عمل كامل
ملف .md واحدهيكل دليل (SKILL.md + ملفات اختيارية)
تُفعَّل يدويًايمكن تفعيلها تلقائيًا
مناسبة للعمليات البسيطةمناسبة للعمليات المعقدة

س 4: كيف أقوم بتصحيح أخطاء المهارة؟

  1. استخدم /skills للتحقق مما إذا تم التعرف على المهارة
  2. أدخل اسم المهارة مباشرة للتفعيل اليدوي
  3. تحقق من أن محتوى SKILL.md صحيح
  4. راجع سجلات Claude Code

المراجع

الموارد الرسمية

دلائل الموارد

مشاريع مجتمع GitHub

أمثلة المهارات الرسمية

دروس صينية

قراءة متعمقة: الآلية الداخلية لمهارات Claude

بعد ذلك، سنتعمق في كيفية عمل مهارات Claude داخليًا، لتعرف ليس فقط كيفية استخدامها، بل أيضًا لماذا صُممت بهذا الشكل.

نظرة من المبادئ الأولى: الحقن الديناميكي للسياق القائم على التعليمات

أولاً، افهم حقيقة رئيسية واحدة: المهارات ليست كودًا قابلاً للتنفيذ.

المهارات هي في جوهرها تعليمات متقدمة، أو تعليمات (prompts)، يتم "حقنها" في سياق Claude عند الحاجة. هذا التصميم يُسمى "Prompt-based Dynamic Context Injection & Meta-Tool Architecture".

text
┌─────────────┐      ┌─────────────┐      ┌──────────────┐
│ User Request│ ───> │ LLM Matches │ ───> │ Trigger Skill│
└─────────────┘      │Description  │      └──────────────┘
                     └─────────────┘              │

                                          ┌──────────────┐
                                          │ Inject Full  │
                                          │ Instructions │
                                          └──────────────┘


                                          ┌──────────────┐
                                          │ Execute Task │
                                          └──────────────┘

بنية التحميل التدريجي ثلاثية الطبقات (تحسين التوكنات)

للتعامل مع عدد كبير من المهارات دون استهلاك الكثير من التوكنات، يستخدم Claude آلية تحميل ذكية من ثلاث طبقات:

الطبقةالمحتوىوقت التحميلتكلفة التوكن
الطبقة 1: البيانات الوصفيةYAML frontmatter (name + description)عند بدء تشغيل Claude~30-50 توكن/مهارة
الطبقة 2: التعليماتمحتوى SKILL.md الكاملعند تفعيل المهارة~5,000 توكن
الطبقة 3: المواردالنصوص والقوالب والمراجعالوصول من نظام الملفات عند الحاجةلا تُضاف إلى السياق

مزايا هذا التصميم:

  • افترض أن لديك 100 مهارة. عند بدء التشغيل، يتم استهلاك حوالي 3,000-5,000 توكن فقط للبيانات الوصفية
  • فقط المهارة المُفعَّلة تحمّل محتواها الكامل
  • ملفات الموارد مثل الوثائق المرجعية لا تُحمَّل بالكامل في السياق أبدًا

المقارنة بدون مهارات:

text
بدون مهارات: كل محادثة تحتاج 50,000+ توكن لوصف جميع القدرات
مع المهارات: بدء التشغيل ~100 توكن/مهارة + 5,000 توكن محمّلة عند الحاجة
التوفير: متوسط 40,000+ توكن موفرة لكل محادثة

آلية الحقن المزدوج للسياق

عند تفعيل مهارة، يقوم النظام بإجراء تعديلين في نفس الوقت:

1. حقن سياق المحادثة

javascript
// ما يراه المستخدم (رسالة مرئية)
<command-message>The "pdf" skill is loading</command-message>

// ما يتلقاه الذكاء الاصطناعي فعليًا (رسالة وصفية مخفية)
{
  isMeta: true,  // محددة كرسالة وصفية، لا تظهر في واجهة المستخدم
  content: `
    # PDF Analysis Expert Instructions

    You are a professional PDF analysis expert. Workflow:
    1. Use pdftotext to extract text
    2. Analyze the document structure
    3. Generate a summary report
    ...
  `  // محتوى SKILL.md الكامل، قد يكون آلاف الكلمات
}

2. تعديل سياق التنفيذ

إلى جانب حقن التعليمات، يمكن للمهارة أيضًا تعديل بيئة Claude ديناميكيًا:

نوع التعديلمثالالشرح
أذونات الأدواتallowed-tools: "Bash(pdftotext:*)"منح وصول مؤقت لأداة محددة
تبديل النموذجالتبديل من Sonnet إلى Opusبعض المهام المعقدة تحتاج استدلالًا أقوى
عزل السياقإنشاء مساحة جلسة فرعيةتجنب تلويث سياق المحادثة الرئيسي

آلية التوجيه المبنية بالكامل على استدلال LLM

هذا قرار تصميمي مهم جدًا: مهارات Claude لا تستخدم التوجيه المشفر بشكل ثابت.

النهج التقليديمهارات Claude
❌ مطابقة متجهات التضمين✅ استدلال LLM خالص
❌ مصنف✅ تمرير أمامي لـ Transformer
❌ التعبيرات النمطية أو مطابقة الكلمات المفتاحية✅ فهم اللغة الطبيعية
❌ خوارزمية توجيه منفصلة✅ اتخاذ قرار نموذج موحد

سير العمل:

text
1. اسم ووصف كل مهارة يُنسَّقان في وصف أداة المهارة

2. Claude يتلقى:
   - رسالة المستخدم
   - قائمة الأدوات المتاحة، بما في ذلك الأداة الوصفية للمهارة
   - قائمة المهارات، مع name + description

3. فهم اللغة الطبيعية لـ Claude يطابق نية المستخدم بوصف المهارة

4. عند نجاح المطابقة، يستدعي: command: "skill-name"

لماذا صُمم بهذا الشكل؟

التوجيه المشفر بشكل ثابت يتطلب:

  • تكلفة صيانة إضافية
  • عدم القدرة على فهم العلاقات الدلالية المعقدة
  • صعوبة التعامل مع لغات متعددة
  • عدم دعم المطابقة التقريبية

استدلال LLM الخالص:

  • يستفيد من فهم اللغة الخاص بـ Claude نفسه
  • يتعامل تلقائيًا مع اللغات المتعددة والمرادفات والأوصاف الغامضة
  • لا يتطلب صيانة إضافية
  • يجعل قرارات التوجيه أكثر ذكاءً

آلية تحليل الملفات

هيكل ملف SKILL.md:

bash
my-custom-skill/
├── SKILL.md              # مطلوب: ملف التعريف الأساسي
├── config.json           # اختياري: تهيئة البيانات الوصفية
├── README.md             # موصى به: وثائق الاستخدام
├── scripts/              # اختياري: نصوص قابلة للتنفيذ
├── templates/            # اختياري: مجلد القوالب
└── references/           # اختياري: وثائق مرجعية

تدفق التحليل:

text
┌─────────────────────────────────────────────────────────────┐
│                    Claude Code startup                      │
└─────────────────────────────────────────────────────────────┘


┌─────────────────────────────────────────────────────────────┐
│  Scan ~/.claude/skills/ and .claude/skills/ directories    │
└─────────────────────────────────────────────────────────────┘


┌─────────────────────────────────────────────────────────────┐
│  Use the gray-matter library to parse each SKILL.md        │
│  YAML frontmatter                                           │
└─────────────────────────────────────────────────────────────┘


┌─────────────────────────────────────────────────────────────┐
│  Validate required fields (name and description)           │
│  - name: max 64 characters, only lowercase letters,        │
│    numbers, and hyphens                                     │
│  - description: used for LLM automatic matching            │
└─────────────────────────────────────────────────────────────┘


┌─────────────────────────────────────────────────────────────┐
│  Extract metadata and build the Skill list                 │
│  (only load name + description, not the full body)         │
└─────────────────────────────────────────────────────────────┘

مثال على تدفق التنفيذ الكامل

دعنا نلقي نظرة على العملية بالكامل من خلال مثال محدد:

text
المستخدم: "ساعدني في تحليل ملف PDF هذا"

═══════════════════════════════════════════════════════════════

الخطوة 1: قرار LLM
────────────────
Claude يجد وصف مهارة "pdf" في قائمة المهارات:
  description: "Analyze PDF document content, extract text, generate a summary"

═══════════════════════════════════════════════════════════════

الخطوة 2: تدخل النظام
────────────────
Claude Code ينفذ:
  1. قراءة ~/.claude/skills/pdf/SKILL.md
  2. توليد رسالة مرئية: "The pdf skill is loading"
  3. توليد رسالة وصفية مخفية: محتوى SKILL.md الكامل
  4. تعديل أذونات الجلسة: allowed-tools = ["Bash(pdftotext:*)"]

═══════════════════════════════════════════════════════════════

الخطوة 3: تنفيذ LLM
────────────────
سياق Claude الآن يحتوي على:
  - طلب المستخدم الأصلي
  - تعليمات سير عمل خبير PDF
  - إذن الوصول إلى أداة pdftotext

Claude ينفذ:
  1. استخدام pdftotext لاستخراج نص PDF
  2. تحليل بنية المحتوى
  3. توليد تقرير ملخص
  4. عرض النتيجة على المستخدم

═══════════════════════════════════════════════════════════════

الخطوة 4: التخلص بعد الاستخدام
────────────────
بعد إكمال المهمة، محتوى المهارة الكامل يُزال من السياق
(يتبقى فقط سجل المحادثة، وليس تعليمات المهارة الكاملة)

ابتكارات التصميم الأساسية

الابتكارالنهج التقليدينهج المهاراتالميزة
مصدر القدرةثابت في أوزان النموذجتعليمات محمّلة ديناميكيًاقابل للتوسيع والتحديث
كفاءة التوكنجميع القدرات تبقى في الذاكرة دائمًاالتحميل عند الحاجةتوفير 80%+ من التوكنات
إدارة المعرفةمبعثرة في سجل المحادثةنظام ملفات نموذجيقابل للتحكم بالإصدارات والمشاركة
دورة الحياةيشغل مساحة باستمرارالتخلص بعد الاستخدامسياق أنظف

الأسس الأكاديمية

تصميم مهارات Claude يستلهم من الأبحاث التالية:

مجال البحثالعمل التمثيليالتطبيق هنا كـ
التعلم المعززVoyager (2023)فكرة تراكم مكتبة المهارات
الهندسة المعرفيةACT-R، Soarفصل الذاكرة الإجرائية عن الذاكرة التصريحية
السياسة الهرميةOptions Frameworkالتحميل التدريجي ثلاثي الطبقات

التحول الأساسي في التفكير:

text
التقليدي: الذكاء الاصطناعي يحتاج إلى تذكر كل شيء

المهارات: الذكاء الاصطناعي يعرف أين يجد المعرفة المتخصصة

النتيجة: أقرب إلى نمط تفكير الخبير البشري

العلاقة بمعيار Agent Skills

مهارات Claude تتبع معيار Agent Skills المفتوح، مما يعني:

  • ✅ التوافق بين المنصات: أدوات مثل Cursor و Windsurf و Aider تدعمه أيضًا
  • ✅ تنسيق ملف موحد: هيكل SKILL.md معياري
  • ✅ قابلية التشغيل البيني: يمكن مشاركة المهارات عبر أدوات مختلفة
text
معيار Agent Skills يحدد:
├── مطلوب: ملف SKILL.md (بيانات وصفية + تعليمات)
├── اختياري: scripts/ (كود قابل للتنفيذ)
├── اختياري: references/ (وثائق قاعدة المعرفة)
└── اختياري: assets/ (قوالب وموارد)

الملخص: لماذا هذا التصميم رائع؟

  1. يفصل القدرة عن النموذج: المعرفة المتخصصة لم تعد تعتمد على تدريب النموذج ويمكن تحديثها في أي وقت عبر ملفات Markdown

  2. كفاءة توكن قصوى: آلية التحميل ثلاثية الطبقات تضمن تحميل المحتوى الضروري فقط

  3. يستفيد من نقاط قوة LLM: التوجيه والمطابقة يعتمدان كليًا على فهم Claude للغة، بدون خوارزمية إضافية

  4. ودود للمطورين: إنشاء مهارة يتطلب كتابة Markdown فقط، بدون برمجة

  5. قابل للتركيب: المهارات يمكن أن تشير وتتجمع مع بعضها لتشكيل سير عمل معقد

  6. التخلص بعد الاستخدام: التنظيف التلقائي بعد الإكمال والحفاظ على السياق منعشًا


الخلاصة

المهارات هي المفتاح لتحويل Claude Code من "مساعد عام" إلى "خبير فريق".

من خلال المهارات، يمكنك:

  • توحيد سير العمل
  • إعادة استخدام معرفة الفريق
  • تحسين كفاءة التعاون
  • تقليل الشرح المتكرر

تذكر: إذا وجدت نفسك تكرر نفس التعليمات مرتين، يجب أن تفكر في إنشاء مهارة.

الآن اذهب وأنشئ مهارتك الأولى.