Claude Code: دليل استخدام CLAUDE.md

آخر تحديث: 2026-08-31

CLAUDE.md هو "دليل مشروع" Claude Code — اكتبه جيداً، ويعمل Claude Code كعضو فريق خبير؛ اكتبه بشكل سيئ، ويعمل كقادم جديد مرتبك.

💡 نصيحة: المبدأ الأساسي لـ CLAUDE.md هو "الصريح أفضل من الضمني" — اكتب الاتفاقيات التي تعتبرها مسلّماً بها، لأن Claude Code لن يخمّن.

📋 المتطلبات المسبقة: الفصل 8 - الاستخدام الأساسي

1. ما ستتعلمه


2. بناء جملة وهيكل CLAUDE.md

(1) الهيكل الأساسي

MARKDOWN
# CLAUDE.md

## Project Overview
[One-line description of what the project is and does]

## Tech Stack
[Language, framework, database, toolchain]

## Common Commands
[Build, test, deploy, dev commands]

## Code Conventions
[Naming standards, file organization, style requirements]

## Constraints and Limitations
[What not to do, what must be done]

## Known Issues
[Technical debt and pitfalls requiring special attention]

(2) أنواع التعليمات

النوع مثال الأولوية
يجب فعله "جميع APIs يجب أن تعالج الأخطاء" عالية
يجب عدم فعله "لا تعدّل جداول قاعدة البيانات مباشرة" عالية
ينبغي فعله "يفضّل الأسلوب الوظيفي" متوسطة
معلومات مرجعية "المشروع يستخدم هيكل Monorepo" منخفضة

▶ مثال 1: CLAUDE.md عالي الجودة

MARKDOWN
# CLAUDE.md

## Project Overview
SaaS billing platform backend, handling subscription management, invoice generation, and payment integration.

## Tech Stack
- Node.js 20 + TypeScript 5.3
- Express 4.18 + middleware chain
- Prisma 5.x (PostgreSQL)
- Redis (cache + queue)
- Jest + Supertest (testing)

## Common Commands
- `npm run dev` — Start dev server (port 3000)
- `npm test` — Run all tests
- `npm run lint` — ESLint check
- `npx prisma migrate dev` — Database migration

## Code Conventions
- Service layer only handles business logic, no direct HTTP object access
- Controller layer handles request/response transformation
- All database operations via Repository pattern
- Errors use AppError class with statusCode and code
- API response format: `{ success: boolean, data: T, error?: string }`

## Constraints
- ❌ Never use pg client directly, must use Prisma
- ❌ Never access req/res in Service layer
- ❌ Never hardcode secrets and credentials
- ✅ Every API endpoint must have integration tests
- ✅ All amounts use cents (integer), avoid floating point errors

## Known Issues
- PaymentService.processRefund has concurrency issue (see ISSUE-342)
- InvoiceService.generatePDF performs poorly with many items (see ISSUE-156)

3. استراتيجية الإعداد الطبقي

(1) نظام الإعداد ثلاثي الطبقات

TEXT 📖 للعرض فقط
~/.claude/CLAUDE.md          # Global: Personal preferences
project-root/CLAUDE.md       # Project: Team conventions
project-root/src/api/CLAUDE.md  # Directory: Local instructions
الطبقة النطاق المحتوى النموذجي الأولوية
عالمي جميع المشاريع تفضيلات أسلوب البرمجة الشخصية الأدنى
المشروع المشروع الحالي الحزمة التقنية، الأوامر، القيود المتوسطة
الدليل دليل فرعي تعليمات محلية محددة الأعلى

(2) CLAUDE.md العالمي

MARKDOWN
<!-- ~/.claude/CLAUDE.md -->
# Global Preferences

## Code Style
- Use TypeScript strict mode
- Prefer const, avoid let
- Functions no longer than 20 lines
- Add JSDoc comments

## Testing Preferences
- Use describe/it style
- Each test independent, no execution order dependency
- Mock external dependencies, not internal modules

(3) CLAUDE.md على مستوى الدليل

MARKDOWN
<!-- src/api/CLAUDE.md -->
# API Module Conventions

## Route Registration
- All routes registered centrally in index.ts
- Middleware order: auth → rateLimit → validate → handler

## Response Format
- Success: { success: true, data: T }
- Failure: { success: false, error: { code, message } }

## Prohibited
- ❌ Don't write business logic directly in handlers
- ❌ Don't skip parameter validation

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

(1) تعليمات فعالة مقابل غير فعالة

غير فعالة فعالة السبب
"اكتب كوداً جيداً" "دوال أقل من 20 سطراً، تعقيد دوري < 10" قابل للقياس
"انتبه للأمان" "كل مدخلات المستخدم يجب تطهيرها، لا دمج SQL" محدد وقابل للتنفيذ
"اتبع أفضل الممارسات" "استخدم نمط مستودع، الخدمات لا تصل لقاعدة البيانات مباشرة" نمط واضح
"اجعل الكود سريعاً" "استعلامات قاعدة البيانات يجب أن تحتوي فهارس، استعلامات N+1 تستخدم DataLoader" طريقة محددة

(2) قائمة المزالق

المزلق مثال النهج الصحيح
غامض جداً "حافظ على نظافة الكود" اكتب معايير محددة
مطوّل جداً CLAUDE.md من 500 سطر اختصر للاتفاقيات الأساسية
متضاد ذاتياً "استخدم REST" و "استخدم GraphQL" كُن متسقاً
قديم لا يزال يكتب "استخدم Express 3.x" حدّث مع المشروع
معلومات غير ذات صلة كتابة الهيكل التنظيمي للفريق اكتب فقط ما يؤثر على الكود

5. تحديث CLAUDE.md ديناميكياً

▶ مثال 2: اجعل Claude Code يُصون CLAUDE.md

TEXT 📖 للعرض فقط
> Update CLAUDE.md based on recent code changes

Claude Code:
  → Reading recent commits
  → Changes detected: Express → Fastify, added Redis, Jest → Vitest
  → Updating CLAUDE.md with current tech stack and commands
  CLAUDE.md updated ✓

❓ أسئلة شائعة

س كم يجب أن يكون طول CLAUDE.md؟
ج 50-150 سطراً هو الأمثل. قصير جداً ينقصه المعلومات؛ طويل جداً وقد يتخطى Claude Code أجزاءً. الاتفاقيات الأساسية أولاً، المعلومات المرجعية في الحد الأدنى.
س هل سيتبع Claude Code دائماً تعليمات CLAUDE.md؟
ج في الغالب نعم، لكن ليس 100%. التعليمات عالية الأولوية (❌ "أبداً"/✅ "يجب") لها امتثال أعلى. التعليمات الاقتراحية قد تُتجاهل.
س هل يمكن لملفات CLAUDE.md متعددة أن تتعارض؟
ج نعم. مستوى الدليل يتجاوز مستوى المشروع، الذي يتجاوز المستوى العالمي. الأكثر تحديداً يفوز.
س هل يمكنني وضع معلومات حساسة في CLAUDE.md؟
ج مطلقاً لا. CLAUDE.md يُلتزم في git. استخدم متغيرات البيئة لمفاتيح API وكلمات المرور وما شابه.
س هل يدعم CLAUDE.md منطقاً شرطياً؟
ج لا يُدعم منطق برمجي. تعليمات نصية ثابتة فقط. الحكم الشرطي هو قرار Claude Code.
س متى يجب تحديث CLAUDE.md؟
ج عند تغيير الحزمة التقنية أو إضافة اتفاقيات جديدة أو عندما يرتكب Claude Code أخطاء متكررة.

📖 ملخص


📝 تمارين

  1. أساسي (⭐): اكتب CLAUDE.md من 50 سطراً لمشروعك مع نظرة عامة وحزمة تقنية وأوامر.
  2. متوسط (⭐⭐): نفّذ إعداد CLAUDE.md ثلاثي الطبقات، اختبر أولوية التعليمات.
  3. متقدم (⭐⭐⭐): اكتب تعليمات غامضة ودقيقة، قارن فروق تنفيذ Claude Code، لخّص القواعد الذهبية لكتابة CLAUDE.md.
Web-Tutorial.com

فريق Web-Tutorial التقني

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

100%