كلٌّ من الـ hooks والـ skills يعمل تلقائيًا — لا تستدعي أيًا منهما. لكنهما يفعلان شيئين مختلفين جوهريًا، واستخدام الخاطئ يؤدي إلى إعداد هشّ أو غير فعّال.
الخلاصة في سطر
- الـ hook ينفّذ أمر shell حين يحدث حدث معيّن (قبل تعديل، بعد حفظ، عند بدء session).
- الـ skill يعطي Claude معرفة عن كيفية فعل شيء ما — يشكّل التفكير، لا الأفعال.
الـ Hook — الإجراء التلقائي
الـ hook أمر ينطلق في لحظة محدّدة:
After every edit, run `prettier --write` on the changed file.
إنه ميكانيكي. لا يغيّر ما يفكّر فيه Claude — ينفّذ أمرًا عند نقطة محفّزة. الـ hooks للتطبيق الإلزامي، التنسيق، التسجيل، والحماية.
استخدم hook حين:
- تريد شيئًا يحدث في لحظة محدّدة (تنسيق، lint، تسجيل، منع)
- الإجراء أمر shell، لا معرفة
- كنت ستؤتمت هذا حتى بدون ذكاء اصطناعي
الـ Skill — المعرفة التلقائية
الـ skill ملف SKILL.md يعلّم Claude كيف يفعل شيئًا:
.claude/skills/api-design/SKILL.md
→ "When designing API endpoints, always use plural nouns, return consistent error shapes..."
لا ينفّذ أمرًا. يشكّل طريقة تعامل Claude مع العمل حين يكون الموضوع ذا صلة. الـ skills للاصطلاحات والعمليات والخبرة.
استخدم skill حين:
- تريد تغيير طريقة تفكير Claude في شيء ما
- التعليمة معرفة أو اصطلاح، لا أمر shell
- كنت ستشرح هذا لزميل فريق جديد، لا تكتبه كسكريبت
مقارنة جنبًا إلى جنب
| Hook | Skill | |
|---|---|---|
| ما هو | أمر shell على محفّز | ملف معرفة يقرأه Claude |
| متى ينطلق | عند حدث نظامي (قبل/بعد تعديل، بدء session) | حين يرى Claude أن الموضوع ذو صلة |
| ما يفعله | ينفّذ أمرًا | يشكّل تفكير Claude |
| مناسب لـ | التنسيق، الـ linting، التسجيل، المنع | الاصطلاحات، العمليات، الخبرة |
| التشبيه | سلك تعثّر | دليل تدريب |
| هل يمنع إجراءً؟ | نعم (PreToolUse) | لا — يوجّه، لا يحرس |
كيف يعملان معًا
أفضل الإعدادات تستخدم كليهما:
- Skill: “حين تكتب CSS، استخدم logical properties و design tokens الخاصة بنا” (يشكّل ما يكتبه Claude)
- Hook: “بعد كل تعديل على ملف
.css، نفّذstylelint --fix” (يلتقط أي شيء ميكانيكي)
الـ skill يمنع الأخطاء بتشكيل النيّة. والـ hook يلتقط ما يفلت بتنفيذ الإلزام. معًا، شبكة أمان من طبقتين: المعرفة أولًا، الأتمتة ثانيًا.
القاعدة العملية
إن كان أمرًا يستطيع script تنفيذه → hook. إن كان معرفة يشرحها إنسان → skill.