عرّف slash commands قابلة لإعادة الاستخدام كملفات Markdown، شاركها مع الفريق عبر git، وغطّ المهام المتكررة كمراجعة الكود وتوليد الاختبارات وأوصاف PR.
يأتي Claude Code مع عدد من slash commands المدمجة — /help، /clear، /compact. لكن الأوامر التي تُسرّع سير العمل فعلاً هي تلك التي تكتبها بنفسك.
تتناول هذه المقالة كيفية تصميم نظام slash commands قابل لإعادة الاستخدام، حتى يتشارك الفريق بأكمله مكتبة prompts واحدة، بدلاً من إعادة كتابة وصف المهام من الصفر في كل مرة.
في Claude Code، الـ slash command المخصص هو ببساطة ملف Markdown. ضعه في الدليل الصحيح، يكتشفه Claude Code عند التشغيل، وكتابة /اسم-الملف يُفعّله.
محتوى الملف هو الـ prompt الذي يُرسَل إلى Claude. هذا كل شيء.
لا توجد صياغة خاصة، ولا تنسيق إعدادات — ملف .md واحد يساوي أمراً واحداً.
موقعان، غرضان مختلفان:
| الموقع | المسار | النطاق |
|---|---|---|
| المشروع | .claude/commands/ |
المشروع الحالي فقط، يمكن إضافته إلى git |
| المستخدم | ~/.claude/commands/ |
جميع المشاريع، شخصي |
مستوى المشروع هو جوهر المشاركة في الفريق. أضف .claude/commands/ إلى git، وسيحصل كل من يستنسخ المستودع تلقائياً على مجموعة الأوامر الكاملة.
مستوى المستخدم مناسب للعادات الشخصية — عمليات التحقق من أسلوب الكود التي تفضلها، أو تكاملات الأدوات التي تستخدمها وحدك.
من جذر المشروع:
mkdir -p .claude/commands
أنشئ .claude/commands/review.md:
راجع جودة الكود في التغييرات الحالية. ركّز على:
1. الأخطاء المنطقية وحالات الحافة
2. وضوح التسمية
3. الكود المكرر الذي يستحق الاستخراج
4. مشاكل الأمان (حقن SQL، XSS، الأسرار المكشوفة)
قدّم اقتراحات محددة وقابلة للتنفيذ — لا نصائح عامة.
أعد تشغيل Claude Code واكتب /review لتفعيله.
الأوامر ذات المحتوى الثابت محدودة الاستخدام. $ARGUMENTS يجعلها مرنة — ما يكتبه المستخدم بعد /الأمر يُدرج في الـ prompt.
مثال .claude/commands/test.md:
اكتب اختبارات للتالي: $ARGUMENTS
المتطلبات:
- غطّ المسار الطبيعي وحالات الحافة
- أسماء الاختبارات يجب أن تكون واضحة بذاتها
- استخدم بيانات حقيقية بدلاً من mocks حيثما أمكن
الاستخدام:
/test دالة login في الكلاس UserAuthentication
يستقبل Claude:
اكتب اختبارات للتالي: دالة login في الكلاس UserAuthentication
المتطلبات:
...
يمكن لـ $ARGUMENTS أن يظهر في أي مكان بالـ prompt ويستخدم أكثر من مرة.
أمر واحد، مسؤولية واحدة
لا تكتب أمراً "للكل" يضم كل المهام. /review للمراجعة فقط، /test لكتابة الاختبارات فقط، /pr لأوصاف PR فقط. الأوامر المحددة أسهل في التذكر وإعادة الاستخدام.
اكتب prompts محددة، لا مجردة
سيء:
ساعدني في تحسين هذا الكود
جيد:
```
حسّن هذا الكود من ناحية الأداء. أولوياتك:
1. تقليل استعلامات قاعدة البيانات غير الضرورية (مشاكل N+1)
2. تجنب الحسابات المتكررة داخل الحلقات
3. استبدال البحث الخطي بهياكل بيانات أكثر كفاءة
أبقِ الواجهة دون تغيير — غيّر التنفيذ الداخلي فقط.
```
القيود المحددة تؤدي إلى نتائج دقيقة.
أضف frontmatter إلى أوامرك
يظهر حقل description في قائمة أوامر Claude Code، ليفهم أعضاء الفريق بسرعة الغرض من كل أمر:
---
description: يراجع التغييرات الحالية ويقدم ملاحظات حول جودة الكود
---
راجع جودة الكود في التغييرات الحالية...
لمشروع Rails، تغطي هذه الأوامر مهام التطوير اليومية الأكثر شيوعاً:
.claude/commands/review.md — مراجعة الكود
راجع التغييرات في git diff. تحقق من:
- الأخطاء المنطقية ومعالجة حالات الحافة
- مشاكل الأمان: حقن SQL، فحوصات التفويض
- وضوح التسمية
- المنطق المكرر الذي يستحق الاستخراج
لكل مشكلة، حدد الموقع الدقيق واقتراحاً محدداً.
```
.claude/commands/test.md — توليد الاختبارات
اكتب اختبارات لهذا الكود: $ARGUMENTS
استخدم RSpec. الغطاء: المسار الطبيعي، قيم الحافة، شروط الأخطاء.
تنسيق التسمية: describe ... context ... it ...
استخدم الكائنات الحقيقية افتراضياً؛ اعمل mock للتبعيات الخارجية عند الضرورة فقط.
```
.claude/commands/pr.md — وصف PR
بناءً على git diff وسجل الـ commits، أنشئ وصفاً لـ PR.
الشكل:
(2-3 جمل تلخّص ما تم)
(الخلفية والدافع)
(كيفية التحقق من هذا التغيير)
كن موجزاً، مكتوباً لمراجع الكود.
```
.claude/commands/explain.md — شرح الكود
اشرح ما يفعله $ARGUMENTS:
- ما هي مسؤوليته الإجمالية؟
- كيف تعمل المنطق الأساسي؟
- ما حالات الحافة التي تستحق الملاحظة؟
اكتب لمطور جديد على هذا الجزء من الكود. ركّز على لماذا، لا على ماذا فقط.
```
بعض العادات شخصية ولا يجب فرضها على الفريق بأكمله. ضعها في ~/.claude/commands/:
~/.claude/commands/standup.md — تحضير الاجتماع اليومي
```markdown
بناءً على git log اليوم والـ TODOs المفتوحة، أعدّ ملخصاً للاجتماع اليومي:
- ما أنجزته أمس
- ما أخطط للقيام به اليوم
- هل يوجد عوائق
بحد أقصى 5 جمل.
```
~/.claude/commands/refactor.md — اقتراحات إعادة الهيكلة
```markdown
حلّل $ARGUMENTS واقترح تحسينات لإعادة الهيكلة.
اطرح فقط التغييرات ذات القيمة الحقيقية — لا تُعيد الهيكلة من أجل إعادة الهيكلة.
لكل اقتراح، وضّح: أي مشكلة يحل، وكم الجهد المطلوب، وما المخاطر.
```
القيمة الحقيقية للأوامر المخصصة ليست الإنتاجية الشخصية — بل منح الفريق لغة مشتركة.
أضف .claude/commands/ إلى المستودع ووثّق الأوامر المتاحة في README أو CLAUDE.md. يحصل الأعضاء الجدد على مكتبة prompts التي جمعها الفريق لحظة استنساخهم للمستودع، دون الحاجة للاكتشاف بأنفسهم.
مع تطور المشروع، تتطور الأوامر. إذا لم يعمل prompt بشكل جيد، صحح سطراً واحداً وادفع — يحصل الفريق بأكمله على التحديث. هذه هي الطريقة الأقل تكلفة لترسيخ هندسة الـ prompt على مستوى الفريق.
.claude/
├── commands/
│ ├── review.md # مراجعة الكود
│ ├── test.md # توليد الاختبارات
│ ├── pr.md # وصف PR
│ └── explain.md # شرح الكود
└── settings.json