السياق · فصل ٥

CLAUDE.md و AGENTS.md

CLAUDE.md · AGENTS.md · CLAUDE.local.md · auto memory
🎯 الهدف: تدّي Claude تعليمات المشروع مرة واحدة، بدل ما تعيدها كل جلسة.

لما تقفل Claude Code وترجعله بكرة، مش هيفتكر إنك بتستخدم pnpm، ولا إنك بتعرّف الـ schema بـ Drizzle، ولا الغلطة اللي صححتهاله مرتين قبل كده. ومش منطقي تعيد الكلام ده في كل جلسة.

CLAUDE.md ملف markdown بتكتب فيه تعليمات المشروع، و Claude بيقراه لوحده أول ما الجلسة تبدأ، قبل ما تكتب أول طلب.

مثلًا: “استخدم pnpm مش npm”، و “استخدم Drizzle لأي حاجة في الداتابيز”، و “شغّل pnpm typecheck قبل ما تخلص أي تغيير كبير”.

وفي النسخ الجديدة من Claude Code، لو مفيش CLAUDE.md في الفولدر، بيقرا AGENTS.md. ده الملف اللي باقي أدوات الـ AI بتستخدمه. فأي حاجة هنقولها عن CLAUDE.md تنطبق على AGENTS.md كمان.

ده تعليمات، مش قفل

الملف بيتحط فين؟

مش مكان واحد. فيه كذا مستوى:

~/.claude/CLAUDE.md          # تعليماتك الشخصية لكل المشاريعproject/CLAUDE.md            # تعليمات المشروع، وبتتعمل commitproject/AGENTS.md            # بيتقري لو مفيش CLAUDE.mdproject/CLAUDE.local.md      # ليك إنت بس على المشروع ده، برا Gitproject/apps/web/CLAUDE.md   # تعليمات لجزء معين من المشروع
  • الملف الشخصي: حاجات عايز Claude يمشي عليها في كل مشاريعك.
  • ملف المشروع: ده اللي هتستخدمه أكتر حاجة. بتحط فيه الـ stack، والأوامر، وقواعد الداتابيز، والتستات، وقواعد التصميم. ولأنه بيتعمله commit، كل اللي شغالين على المشروع بيدّوا Claude نفس التعليمات.
  • الملف الـ local: ليك إنت بس، زي حساب تست أو sandbox URL خاص بيك. ده بيفضل برا Git.
  • ملفات جوه فولدرات: في الـ monorepo أو المشروع الكبير، تقدر تحط CLAUDE.md جوه فولدر معين. Claude بيحمّل تعليمات الجزء ده بس لما يشتغل فيه.

Claude بيجمع التعليمات من كل المستويات دي مع بعض.

وإيه هي الـ auto memory؟

Claude Code كمان عنده memory بيكتب فيها لوحده:

CLAUDE.md

اللي إنت قررت تقوله لـ Claude بنفسك. إنت اللي بتكتبه، وإنت اللي بتراجعه، وإنت اللي بتمسح منه اللي مبقاش صح.

Auto memory

اللي Claude اتعلمه وهو شغال معاك. زي مشكلة غريبة في الـ setup بتاعك، أو حاجة صححتهاله أكتر من مرة. كل مشروع ليه فولدر memory، والملف الأساسي فيه اسمه MEMORY.md.

/memory بيوريك الـ memory شغالة ولا لأ، وأنهي ملفات تعليمات اتحمّلت، وبيفتحلك فولدر الـ auto memory.

خلّي الملف قصير

خلّصت الفصل لما

🧠 اختبر نفسك
١) لو مفيش CLAUDE.md في الفولدر، Claude Code بيقرا إيه؟
AGENTS.md، في النسخ الجديدة.
٢) ليه سطر في CLAUDE.md مش كفاية يمنع تعديل ملفات الـ migration؟
لأنه مجرد تعليمات للموديل. المنع الحقيقي بيبقى بالـ permissions أو الـ sandboxing أو الـ hooks.
٣) حساب التست بتاعك على المشروع ده تحطه فين؟
في CLAUDE.local.md، ويفضل برا Git.