DEV Community

Cover image for كيفية إنشاء مهارات Claude Code تلقائيًا باستخدام Skill Creator
Yusuf Khalidd
Yusuf Khalidd

Posted on • Originally published at apidog.com

كيفية إنشاء مهارات Claude Code تلقائيًا باستخدام Skill Creator

TL;DR

مهارات Claude Code هي قدرات مخصصة توسع وظائف Claude لسير عمل معين. نظام Skill Creator (منشئ المهارات) يقوم بأتمتة إنشاء المهارات من خلال عملية منظمة: حدد الغرض من مهارتك، قم بصياغة ملف SKILL.md، أنشئ حالات اختبار، قم بتشغيل التقييمات بمعايير كمية، وحسّن تكرارًا بناءً على الملاحظات.

جرّب Apidog اليوم


مقدمة

أنت تستخدم Claude Code يوميًا. تلاحظ أنك تكرر نفس التسلسلات: إعداد هياكل المشروع، تشغيل أوامر اختبار محددة، تنسيق المخرجات بطريقة معينة. في كل مرة، تشرح سير العمل من الصفر. ماذا لو تذكر Claude؟ ماذا لو كان بإمكانك التقاط سير العمل هذا مرة واحدة، وجعله متاحًا إلى الأبد؟

هذا ما تفعله مهارات Claude Code. إنها قدرات مخصصة تنشئها لتوسيع وظائف Claude لسير عملك المحدد. ومع Skill Creator، تكون العملية مؤتمتة ومنهجية.

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

💡 إذا كنت تقوم بإنشاء مهارات متعلقة بـ API، فإن Apidog يندمج بشكل طبيعي. اختبر نقاط نهاية API الخاصة بك، تحقق من صحة الاستجابات، وقم بإنشاء الوثائق كلها ضمن سير عمل مهارة واحدة.


ما هي مهارات Claude Code؟

مهارات Claude Code هي مجموعات تعليمات متخصصة توسع قدرات Claude لمجالات أو سير عمل محددة. فكر فيها كإضافات مخصصة تعيش في ملفات markdown.

هندسة نظام المهارة

تستخدم المهارات نظام تحميل من ثلاثة مستويات:

  1. البيانات الوصفية (Metadata) (~100 كلمة) - الاسم والوصف، دائمًا في السياق.
  2. جسم SKILL.md (<500 سطر) - التعليمات الأساسية، يتم تحميلها عند تشغيل المهارة.
  3. الموارد المجمعة (Bundled resources) (غير محدودة) - البرامج النصية، المراجع، الأصول التي يتم تحميلها عند الطلب.
skill-name/
├── SKILL.md (مطلوب)
│   ├── YAML frontmatter (الاسم، الوصف)
│   └── تعليمات Markdown
└── موارد مجمعة (اختياري)
    ├── scripts/    - تعليمات برمجية قابلة للتنفيذ للمهام المتكررة
    ├── references/ - وثائق يتم تحميلها حسب الحاجة
    └── assets/     - قوالب، أيقونات، خطوط
Enter fullscreen mode Exit fullscreen mode

متى يتم تشغيل المهارات

تظهر المهارات في قائمة available_skills لدى Claude مع اسمها ووصفها. يقرر Claude ما إذا كان سيستشير مهارة بناءً على هذا الوصف.

مهم: لا يتم تشغيل المهارات إلا للمهام التي لا يستطيع Claude التعامل معها مباشرة. الاستعلامات البسيطة مثل "اقرأ هذا الملف" لن تؤدي إلى تشغيل مهارة حتى مع وصف مطابق. سير العمل المعقد متعدد الخطوات يتم تشغيله بشكل موثوق عندما يتطابق الوصف.

أمثلة واقعية من مستودع Anthropic

المهارة الغرض الميزات الرئيسية
skill-creator إنشاء مهارات جديدة توليد حالات الاختبار، تقييم المعايير، تحسين الوصف
mcp-builder إنشاء خوادم MCP قوالب Python/Node، إطار عمل التقييم، أفضل الممارسات
docx توليد مستندات Word برامج python-docx، نظام القوالب، دليل التنسيق
pdf استخراج ومعالجة PDF معالجة النماذج، استخراج النص، وثائق مرجعية
frontend-design بناء واجهات الويب مكتبة المكونات، أنماط Tailwind، فحوصات إمكانية الوصول

سير عمل إنشاء المهارة

اتبع هذه الخطوات بشكل عملي:

  1. التقاط النية - ماذا يجب أن تفعل المهارة؟
  2. كتابة مسودة - إنشاء ملف SKILL.md
  3. إنشاء حالات اختبار - تحديد مطالبات واقعية
  4. تشغيل التقييمات - التنفيذ مع وبدون المهارة
  5. مراجعة النتائج - ملاحظات نوعية + مقاييس كمية
  6. التكرار - التحسين بناءً على النتائج
  7. تحسين الوصف - زيادة دقة التشغيل
  8. التعبئة - التوزيع كملف .skill

دعنا نفصل كل خطوة مع أمثلة عملية.


الخطوة 1: التقاط النية

حدد بدقة ما تريد أن تنجزه المهارة. إذا كنت تكرر سير عمل معين، استخرج النمط من محادثاتك السابقة.

اطرح هذه الأسئلة:

  • ما الذي يجب أن تمكّن هذه المهارة Claude من فعله؟
  • متى يجب أن يتم تشغيل هذه المهارة؟
  • ما هو تنسيق الإخراج المتوقع؟
  • هل يجب علينا إعداد حالات اختبار؟

مثال: مهارة اختبار API

النية: مساعدة المطورين على اختبار واجهات برمجة التطبيقات REST بشكل منهجي
الزناد: عندما يذكر المستخدم اختبار API، أو نقاط النهاية، أو REST، أو GraphQL، أو يريد التحقق من صحة الاستجابات
الإخراج: تقارير اختبار مع حالة النجاح/الفشل، أوامر curl، مقارنات الاستجابة
حالات الاختبار: نعم - المخرجات قابلة للتحقق بشكل موضوعي
Enter fullscreen mode Exit fullscreen mode

الخطوة 2: كتابة ملف SKILL.md

ابدأ بكتابة ملف SKILL.md يحتوي على YAML frontmatter وتعليمات markdown.

تشريح المهارة:

---
name: api-tester
description: كيفية اختبار واجهات برمجة التطبيقات REST بشكل منهجي. استخدمها عندما يذكر المستخدمون اختبار API، أو نقاط النهاية، أو REST، أو GraphQL، أو يريدون التحقق من صحة استجابات API. تأكد من اقتراح هذه المهارة كلما كان هناك اختبار.
compatibility: تتطلب curl أو أدوات عميل HTTP
---

# مهارة اختبار API

## سير العمل الأساسي

عند اختبار API، اتبع الخطوات التالية:

1. **فهم نقطة النهاية** - اقرأ المواصفات أو اطلب المخطط
2. **تصميم حالات الاختبار** - المسار السعيد، الحالات الهامشية، ظروف الخطأ
3. **تنفيذ الاختبارات** - استخدم curl أو Apidog للطلبات
4. **التحقق من صحة الاستجابات** - تحقق من رموز الحالة، الرؤوس، بنية الجسم
5. **الإبلاغ عن النتائج** - تلخيص النجاح/الفشل مع الأدلة

## قالب حالة الاختبار

لكل نقطة نهاية، اختبر:

- مصادقة صحيحة مع حمولة صحيحة
- مصادقة صحيحة مع حقول مطلوبة مفقودة
- مصادقة غير صالحة (متوقع 401)
- سلوك تحديد المعدل
- وقت الاستجابة تحت الحمل

## تنسيق الإخراج

قم دائمًا بتنسيق التقارير هكذا:

# تقرير اختبار API

## ملخص
- الاختبارات التي تم تشغيلها: X
- ناجح: Y
- فاشل: Z

## الاختبارات الفاشلة

### اسم الاختبار
**المتوقع:** 200 OK
**الفعلي:** 400 Bad Request
**الاستجابة:** {...}

## التوصيات
...
Enter fullscreen mode Exit fullscreen mode

أفضل ممارسات الكتابة

  • استخدم الكشف التدريجي: حافظ على ملف SKILL.md أقل من 500 سطر، وانقل التفاصيل لملفات منفصلة.
  • اشرح السبب: لا تكتفِ بسرد القواعد، بل اشرح أهميتها.
  • استخدم صيغة الأمر: مثل "تحقق دائمًا من رمز الحالة أولاً".
  • تضمين أمثلة: أعطِ إدخال/إخراج عملي.

الخطوة 3: إنشاء حالات الاختبار

أنشئ 2-3 مطالبات اختبار واقعية واحفظها في evals/evals.json.

تنسيق حالة الاختبار:

{
  "skill_name": "api-tester",
  "evals": [
    {
      "id": 1,
      "prompt": "اختبر نقطة النهاية /users على api.example.com - تتطلب رمز Bearer وتعيد قائمة بالمستخدمين مع حقول id و name و email",
      "expected_output": "تقرير اختبار يتضمن ما لا يقل عن 5 حالات اختبار بما في ذلك فشل المصادقة، والنجاح، واختبارات الترحيل",
      "files": []
    },
    {
      "id": 2,
      "prompt": "أحتاج إلى التحقق من أن نقطة النهاية الجديدة POST /orders تتعامل مع الكميات غير الصالحة بشكل صحيح",
      "expected_output": "حالات اختبار ترسل كميات سالبة، صفر، وغير رقمية مع استجابات خطأ مناسبة",
      "files": ["openapi.yaml"]
    }
  ]
}
Enter fullscreen mode Exit fullscreen mode

مطالبة اختبار جيدة: تتضمن عنوان URL، سيناريو ملموس، سلوك متوقع، وسياق واقعي.


الخطوة 4: تشغيل التقييمات

شغّل كل حالة اختبار مرتين: مع المهارة وبدونها، وقارن النتائج.

هيكل مساحة العمل:

api-tester-workspace/
├── iteration-1/
│   ├── eval-0-auth-failure/
│   │   ├── with_skill/
│   │   │   ├── outputs/
│   │   │   └── timing.json
│   │   ├── without_skill/
│   │   │   ├── outputs/
│   │   │   └── timing.json
│   │   └── eval_metadata.json
...
Enter fullscreen mode Exit fullscreen mode

التقاط بيانات التوقيت: احفظ total_tokens و duration_ms في timing.json لكل تشغيل.


الخطوة 5: صياغة التأكيدات

أثناء انتظار نتائج التشغيل، اكتب تأكيدات كمية وقابلة للتحقق في eval_metadata.json:

{
  "assertions": [
    {
      "name": "includes_auth_failure_test",
      "description": "يتضمن تقرير الاختبار على الأقل حالة اختبار واحدة لفشل المصادقة",
      "type": "contains",
      "value": "401"
    },
    ...
  ]
}
Enter fullscreen mode Exit fullscreen mode

الخطوة 6: التقييم والتجميع

  • شغّل وكيل التقييم (grader subagent) لقراءة المخرجات ومقارنة التأكيدات.
  • احفظ النتائج في grading.json.
  • شغّل سكربت التجميع لإنتاج benchmark.json وbenchmark.md.

الخطوة 7: تشغيل عارضة التقييم

شغّل عارضة التقييم لعرض النتائج في المتصفح أو كملف HTML ثابت لجمع الملاحظات.

nohup python /path/to/skill-creator/eval-viewer/generate_review.py \
  api-tester-workspace/iteration-1 \
  --skill-name "api-tester" \
  --benchmark api-tester-workspace/iteration-1/benchmark.json \
  > /dev/null 2>&1 &
VIEWER_PID=$!
Enter fullscreen mode Exit fullscreen mode

المستخدم يراجع النتائج، يضيف ملاحظات، وتُنزل إلى feedback.json.


الخطوة 8: قراءة الملاحظات والتكرار

  • اقرأ feedback.json.
  • طبق التحسينات على المهارة بناءً على الملاحظات.
  • أعد تشغيل جميع حالات الاختبار وأعد مراجعة النتائج.
  • كرر حتى تكون جميع الملاحظات فارغة أو يصل المستخدم للرضا.

الخطوة 9: تحسين وصف المهارة

  • حسّن حقل الوصف في SKILL.md لتحقيق تشغيل أدق.
  • أنشئ 20 استعلام تقييم (ما يجب أن يطلق المهارة وما لا يجب).
  • استخدم سكربت التحسين، وحدث قسم الوصف بناءً على أفضل نتيجة.

الخطوة 10: التعبئة والتوزيع

  • عبئ المهارة كملف .skill باستخدام:
python -m scripts.package_skill /path/to/api-tester
Enter fullscreen mode Exit fullscreen mode
  • وزع الملف على الفريق أو المستخدمين المستهدفين.

أخطاء شائعة في إنشاء المهارات

الخطأ 1: وصف غامض

# سيء
description: مهارة للعمل مع واجهات برمجة التطبيقات
# جيد
description: كيفية اختبار واجهات برمجة التطبيقات REST بشكل منهجي. استخدمها عندما يذكر المستخدمون اختبار API، أو نقاط النهاية، أو REST، أو GraphQL، أو يريدون التحقق من صحة استجابات API.
Enter fullscreen mode Exit fullscreen mode

الخطأ 2: تعليمات مقيدة بشكل مفرط

# سيء
استخدم دائمًا هذا التنسيق بالضبط. لا تنحرف أبدًا.
# جيد
استخدم هذا التنسيق لأنه يضمن قدرة أصحاب المصلحة على العثور بسرعة على المعلومات التي يحتاجونها.
Enter fullscreen mode Exit fullscreen mode

الخطأ 3: تخطي حالات الاختبار

حتى للمهارات الذاتية، شغّل 2-3 أمثلة للتحقق من جودة الإخراج.

الخطأ 4: تجاهل بيانات التوقيت

المهارات البطيئة تضر الإنتاجية. التقط بيانات التوقيت وحسّن الكفاءة.

الخطأ 5: عدم تجميع البرامج النصية المتكررة

اجمع البرامج المساعدة المشتركة في scripts/ لتوفير الوقت وضمان الاتساق.


أمثلة لمهارات واقعية

مهارة بناء MCP

  • قوالب Python وNode.js
  • إطار تقييم خوادم MCP
  • وثائق مرجعية
mcp-builder/
├── SKILL.md
├── reference/
│   ├── mcp_best_practices.md
│   ├── python_mcp_server.md
│   └── node_mcp_server.md
└── evaluation/
    └── evaluation.md
Enter fullscreen mode Exit fullscreen mode

مهارة Docx

  • برامج python-docx النصية
  • نظام القوالب
  • دليل التنسيق

سير العمل: فهم المتطلبات → تحديد القالب → التوليد → التحقق من الإخراج.

مهارة تصميم الواجهة الأمامية

  • مكتبة مكونات
  • أنماط Tailwind CSS
  • فحوصات إمكانية الوصول

اختبار مهارتك باستخدام Apidog

إذا كنت تبني مهارات API، Apidog يندمج بشكل طبيعي مع سير العمل.

Apidog Example

مثال: دمج مهارة اختبار API

## تشغيل اختبارات API

استخدم Apidog للاختبار المنهجي:

1. استورد مواصفات OpenAPI إلى Apidog
2. أنشئ حالات اختبار من المواصفات
3. شغّل الاختبارات وصدّر النتائج كـ JSON
4. تحقق من صحة الاستجابات مقابل المخططات المتوقعة

للتأكيدات المخصصة، استخدم ميزة البرمجة النصية في Apidog.
Enter fullscreen mode Exit fullscreen mode

تجميع برامج Apidog النصية

api-tester/
├── SKILL.md
└── scripts/
    ├── run-apidog-tests.py
    └── generate-report.py
Enter fullscreen mode Exit fullscreen mode

هذا يوفر الكثير من التكرار في الاستدعاءات المستقبلية.


الخلاصة

توسع مهارات Claude Code قدرات Claude لسير عملك المحدد. نظام Skill Creator يوفر عملية عملية:

  1. التقاط النية: حدد هدف المهارة
  2. صياغة SKILL.md: اكتب تعليمات واضحة مع أمثلة
  3. إنشاء حالات اختبار: صمم مطالبات واقعية
  4. تشغيل التقييمات: قارن النتائج مع/بدون المهارة
  5. مراجعة النتائج: تحليل نوعي وكمّي
  6. التكرار: حسّن بناءً على الملاحظات
  7. تحسين الوصف: دقة تشغيل أعلى
  8. التعبئة: وزّع كملف .skill

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

كم من الوقت يستغرق إنشاء مهارة؟

المهارات البسيطة: 15-30 دقيقة. المهارات المعقدة: 2-3 ساعات مع التقييمات.

هل أحتاج إلى كتابة حالات اختبار لكل مهارة؟

ليس دائمًا. المهارات ذات المخرجات القابلة للتحقق تستفيد من حالات الاختبار. المهارات الذاتية يكفي تقييمها نوعيًا.

ماذا لو لم يتم تشغيل مهارتي بشكل موثوق؟

حسّن الوصف وأضف عبارات وسياقات تشغيل محددة. استخدم استعلامات تقييم متنوعة.

كيف أشارك المهارات مع فريقي؟

عبئ المهارة وشارك ملف .skill مع الفريق ليضعوه في دليل مهاراتهم.

هل يمكن للمهارات استدعاء واجهات برمجة التطبيقات الخارجية؟

نعم. اجمع السكربتات الضرورية في scripts/، واستخدم متغيرات البيئة لمفاتيح API.

ما هو حد حجم الملف للمهارات؟

لا يوجد حد صارم. حافظ على SKILL.md < 500 سطر. انقل المراجع لملفات منفصلة.

كيف أقوم بتحديث مهارة موجودة؟

انسخها لموقع قابل للكتابة، عدل ثم عبئ من جديد بنفس الاسم.


ابدأ الآن بتوسيع سير عملك مع Claude Code وجرّب Apidog للحصول على اختبارات API أكثر احترافية.

Top comments (0)