أفضل ممارسات CLAUDE.md: تكوين كود Claude لأي مشروع
CLAUDE.md is the single most impactful configuration for Claude Code. A well-written one turns generic AI assistance into project-specific expertise.
CLAUDE.md هو ملف تخفيض السعر في جذر مشروعك. يقرأها كلود كود في بداية كل جلسة قبل أن تكتب أي شيء. يقوم CLAUDE.md الجيد بتحويل الذكاء الاصطناعي العام إلى أداة تفهم اصطلاحات مشروعك ومكدس التكنولوجيا والخطوط الحمراء.
What should you include in CLAUDE.md?
ركز على المعلومات التي سيحتاجها المطور الذكي الذي ينضم إلى فريقك في اليوم الأول. اجعل الأمر عمليًا: مجموعة التكنولوجيا والأوامر والاصطلاحات والأشياء التي يجب تجنبها.
الحد الأدنى من قالب CLAUDE.md
# Project Context
Next.js 14 app with TypeScript, Tailwind CSS, and Prisma.
Database: PostgreSQL. Auth: NextAuth.js.
## Commands
- `npm run dev` — start dev server (port 3000)
- `npm run test` — run Jest tests
- `npm run lint` — run ESLint
- `npm run db:migrate` — run Prisma migrations
## Architecture
- Server components by default, client components in /components/client/
- API routes in /app/api/ with Zod validation
- Database queries in /lib/db/ (never in components)
## Conventions
- TypeScript strict mode, never use `any`
- Tailwind for styling, no CSS modules
- Conventional commits: feat:, fix:, chore:
## Do NOT
- Modify files in /legacy/ or /vendor/
- Change auth configuration without explicit approval
- Add new dependencies without asking firstما هي أخطاء CLAUDE.md الأكثر شيوعًا؟
| خطأ | لماذا يؤلمني | يصلح |
|---|---|---|
| طويل جدًا (أكثر من 500 سطر) | Wastes context window on every session | احتفظ بأقل من 200 سطر، واربط بالمستندات للحصول على التفاصيل |
| غامض جدًا ("اكتب رمزًا نظيفًا") | لا يعطي أي توجيهات قابلة للتنفيذ | كن محددًا: "استخدم مكونات الخادم بشكل افتراضي" |
| أوامر مفقودة | Claude guesses how to run/test/build | قم بإدراج كل برنامج نصي npm ذي صلة |
| لا قيود | قد يقوم كلود بتعديل الملفات الحساسة | أضف قسمًا واضحًا "ممنوع". |
| Duplicate of README | README مخصص للبشر، وCLAUDE.md مخصص للذكاء الاصطناعي | ركز على الأعراف والقواعد، وليس على وصف المشروع |
كيف يمكنك هيكلة CLAUDE.md للمشاريع الكبيرة؟
بالنسبة لقواعد التعليمات البرمجية الكبيرة، استخدم بناء جملة @import لتقسيم التكوين عبر الدلائل. يتبع كلود كود الواردات ويبني صورة كاملة.
# Root CLAUDE.md
## Global conventions
- TypeScript strict, no `any`
- All API routes validate input with Zod
@import packages/api/CLAUDE.md
@import packages/web/CLAUDE.md
@import packages/shared/CLAUDE.mdيحتوي كل sub-CLAUDE.md على قواعد خاصة بتلك الحزمة. يؤدي هذا إلى إبقاء الملف الجذر قصيرًا مع إعطاء Claude Code سياقًا عميقًا حول كل منطقة من قاعدة التعليمات البرمجية.
How do you generate CLAUDE.md automatically?
يمكن لـ Claude Code إنشاء CLAUDE.md للبدء من خلال تحليل مشروعك:
# Auto-generate CLAUDE.md
claude /init
# This creates a CLAUDE.md based on:
# - package.json scripts
# - Project structure
# - Existing config files
# - Git history patternsماذا عن التسلسل الهرمي للذاكرة CLAUDE.md؟
يقرأ Claude Code ملفات CLAUDE.md من مواقع متعددة، حسب الأولوية:
- +جذر المشروع CLAUDE.md (يشارك كل فرد في الفريق هذا)
- +ملفات الدليل الفرعي CLAUDE.md (عبرimport)
- +~/.claude/CLAUDE.md (your personal global preferences)
- +Auto Memory (MEMORY.md, managed by /memory command)
الإعدادات على مستوى المشروع تتجاوز الإعدادات الشخصية. وهذا يعني أن اتفاقيات الفريق تفوز دائمًا بالتفضيلات الفردية.