قواعد Claude Code موجودة في ملفات CLAUDE.md — وهي ملفات ماركداون تضعها في مستودع مشروعك، أو دليل المستخدم الرئيسي، أو تكوين المؤسسة التي يقرأها Claude في بداية كل جلسة. إلى جانب القواعد المحددة النطاق في .claude/rules/، وملف settings.json للأذونات، والذاكرة التلقائية للتفضيلات المُتعلَّمة، يمنحك نظام القواعد تحكمًا دقيقًا ومستمرًا في كيفية تصرف الوكيل البرمجي عبر أي مهمة.
ما هي قواعد Claude Code؟
تبدأ كل جلسة من جلسات Claude Code بإطار سياق فارغ. القواعد هي الطريقة التي تقوم بها بتحميل السياق الذي يحتاجه Claude مسبقًا حتى لا يبدأ من الصفر — أو يكرر نفس الخطأ مرتين.
هناك نظامان متكاملان يتعاملان مع هذا:
ملفات CLAUDE.md هي ملفات ماركداون تكتبها ويقرأها Claude في بداية كل جلسة. استخدمها للحصول على تعليمات يجب أن تنطبق دائمًا: أوامر البناء، اصطلاحات الكود، قرارات الهندسة المعمارية، القيود الصارمة.
الذاكرة التلقائية هي ملاحظات يكتبها Claude بنفسه بناءً على التصحيحات والتفضيلات التي تقدمها له أثناء الجلسات. تتراكم هذه الملاحظات تلقائيًا؛ يقرر Claude ما هو جدير بالحفظ ويقرأ تلك الملاحظات مرة أخرى في الجلسات المستقبلية.
يتم تحميل كليهما في السياق عند بدء الجلسة، لكنهما ليسا تكوينًا إلزاميًا. إنها تعليمات يتبعها Claude كسياق. للفرض الصارم — مثل حظر أمر معين بغض النظر عما يقرر Claude فعله — ستحتاج إلى خطاف PreToolUse أو قاعدة deny في settings.json. هذا التمييز مهم للتشغيلات المستقلة حيث تريد سلوكًا يمكن التنبؤ به، وليس امتثالًا احتماليًا.
مواقع ملفات CLAUDE.md ونطاقها
يقوم Claude Code بتحميل ملفات CLAUDE.md من عدة مواقع، يغطي كل منها نطاقًا مختلفًا. يتم تحميلها بالترتيب من الأوسع إلى الأكثر تحديدًا:
| الموقع | النطاق | الغرض منه |
|---|---|---|
~/.claude/CLAUDE.md |
جميع المشاريع على جهازك | التفضيلات الشخصية، عادات سير العمل العامة |
./CLAUDE.md (جذر المستودع) |
جميع الجلسات في ذلك المشروع | اصطلاحات المشروع، أوامر البناء، القواعد المشتركة للفريق |
./CLAUDE.local.md (جذر المستودع) |
جلساتك المحلية فقط | التفضيلات لكل مطور؛ أضفه إلى .gitignore |
./src/CLAUDE.md (دليل فرعي) |
الجلسات التي تلامس الملفات في ذلك الدليل | قواعد خاصة بالوحدة لا تنطبق على نطاق المشروع |
يتم دمج جميع الملفات المكتشفة في السياق — لا تتجاوز بعضها البعض. ضمن هذا الدمج، يتم ترتيب المحتوى من جذر نظام الملفات إلى دليل عملك بحيث يكون الأضيق هو الأخير، لذلك يظهر تعليم المشروع بعد تعليم المستخدم. يمنحك هذا خصوصية طبيعية: قاعدة المشروع هي التي تسود عندما تتعارض مع قاعدة على مستوى المستخدم.
يمكنك استيراد ملفات إضافية باستخدام مراجع @path داخل أي ملف CLAUDE.md:
@./docs/architecture.md
@./CONTRIBUTING.md
يتم تحميل الملفات المستوردة عند بدء الجلسة، تمامًا مثل ملف CLAUDE.md نفسه. الاستيرادات مفيدة للتنظيم لكنها لا توفر السياق — المحتوى المستورد يُحتسب ضمن ميزانية الرموز الخاصة بك.
للفرق: قم بتضمين ملف CLAUDE.md الخاص بالمشروع في التحكم بالمصادر. يضمن هذا أن جميع جلسات Claude لكل مطور — وأي تشغيلات وكيل قائمة على CI — تبدأ بنفس السياق المشترك. تعامل معه مثل .eslintrc أو pyproject.toml.
ما يجب وضعه في CLAUDE.md
المحتوى الأكثر فائدة هو ما قد تضطر إلى إعادة شرحه في كل جلسة، أو ما قد يحتاج عضو الفريق الجديد إلى معرفته في ساعته الأولى.
المرشحون الجيدون:
- أوامر البناء والاختبار التي تختلف عن الإعدادات الافتراضية الواضحة (
./scripts/test.sh --ci، ليس فقطnpm test) - اصطلاحات الكود التي لا يلتقطها المدقق اللغوي (“نستخدم التصدير المسى في كل مكان؛ لا توجد تصديرات افتراضية في الأدوات المساعدة المشتركة”)
- قرارات الهندسة المعمارية التي ليست واضحة من قراءة الكود (“دليل
lib/مشتركة عبر الخدمات — لا تقم بإضافة منطق خاص بخدمة معينة هناك”) - المشكلات المعروفة (“ملف
config.tsيتم إنشاؤه في وقت البناء؛ لا تقم بتحريره يدويًا”) - قيوود سير العمل (“قم دائمًا بإنشاء فرع قبل إجراء تغييرات؛ ادفع إلى المستودع البعيد قبل فتح طلب سحب”)
أشياء يجب تركها خارجًا:
- قوائم الدلائل وأشجار الملفات — يقرأها Claude من المستودع
- قوائم التبعيات — متاحة من
package.jsonوpyproject.tomlوما شابه - الأوصاف النثرية لما يفعله الكود الموجود — يقرأ Claude الكود المصدري مباشرة
- التغييرات الأخيرة — يستخدم Claude
git logوgit diffعندما يحتاج إلى التاريخ
اجعا ملف CLAUDE.md مركزًا على ما لا يمكن استخلاصه من قراءة قاعدة الكود. الملفات التي تزيد عن 200 سطر تستهلك سياقًا أكثر وتقلل من موثوقية الامتثال. يقوم الأمر /doctor في Claude Code بتدقيق ملف CLAUDE.md المُضمَّن ويقترح إزالة المحتوى المشتق من الكود — وهذه طريقة مفيدة لقص ملف متضخم.
كتابة قواعد فعالة
الخصوصية مهمة. قارن:
# غامض — أقل اتساقًا
اتبع معايير البرمجة الخاصة بالمشروع.
# محدد — أكثر اتساقًا
- استخدم pnpm، وليس npm أو yarn
- قم بتشغيل pnpm test قبل كل التزام؛ لا تقم بالالتزام إذا فشلت الاختبارات
- قم بتصدير جميع الأنواع المشتركة من src/types/index.ts — لا تقم بتعريف الأنواع داخل ملفات المكونات
- دليل data/ هو للقراءة فقط في الاختبارات؛ استخدم أدوات الاختبار من tests/fixtures/ بدلاً من ذلك
يجب أن تكون كل قاعدة قابلة للتنفيذ دون شرح إضافي. إذا كنت بحاجة لشرح مبرر قاعدة لشخص ما، قم بإضافتها داخل النص — فهذا يساعد Claude في تطبيق القاعدة بشكل صحيح في الحالات الحدية.
قواعد النطاق المساري مع .claude/rules/
يتيح لك الدليل .claude/rules/ إرفاق القواعد بأنماط ملفات محددة دون تحميلها في كل جلسة. يكتشف Claude الملفات في .claude/rules/ ويقوم بتحميلها عندما تعمل مع ملفات مطابقة.
هيكل نموذجي لمستودع TypeScript أحادي:
.claude/rules/
api.md # قواعد لـ src/api/** — التحقق من صحة الطلبات، تنسيقات الأخطاء
components.md # قواعد لـ src/components/** — أنواع الخصائص، اصطلاحات التنسيق
tests.md # قواعد لـ tests/** — أنماط الأدوات المساعدة، إعداد المحاكاة
database.md # قواعد لـ migrations/ و models/ — تسمية الترحيلات، أنماط الاستعلام
يستخدم كل ملف قاعدة بيانات YAML أمامية مع حقل paths للتحكم في وقت تحميله:
---
paths:
- "src/api/**/*.ts"
- "src/api/**/*.test.ts"
---
# قواعد تطوير API
- يجب على جميع معالجات المسارات التحقق من صحة الإدخال باستخدام zod قبل أي منطق تجاري
- قم بإرجاع الأخطاء كـ `{ error: string; code: string }` — لا تقم بإرجاع سلاسل نصية عادية أبدًا
- يتم تطبيق تحديد المعدل عند البوابة؛ لا تقم بإضافته داخل المعالجات
القواعد التي ليس لها حقل paths يتم تحميلها دون شرط عند بدء الجلسة، تمامًا مثل المحتوى الموجود في ملف CLAUDE.md الخاص بالمشروع. القواعد التي تحتوي على paths يتم تحميلها فقط عندما يفتح Claude ملفات تطابق تلك الأنماط.
هذا يحافظ على إيجاز ملف CLAUDE.md الجذري للمشروع ويضمن أن الاصطلاحات التفصيلية لطبقة واحدة من المكدس لا تملأ السياق أثناء الجلسات التي تركز على منطقة مختلفة.
settings.json مقابل CLAUDE.md
ملف CLAUDE.md يتحكم في ما يعرفه Claude وينوي فعله. ملف settings.json يتحكم في ما مسموح لـ Claude فعله فعليًا.
| CLAUDE.md | settings.json | |
|---|---|---|
| الغرض | التعليمات والسياق | الأذونات والتكوين |
| مفروض؟ | لا — يتصرف Claude بناءً عليه كدليل إرشادي | نعم — قواعد deny تمنع استدعاءات الأدوات دون شرط |
| التنسيق | ماركداون حر | JSON منظم |
| الموقع | ./CLAUDE.md، ~/.claude/CLAUDE.md |
.claude/settings.json، ~/.claude/settings.json |
ملف settings.json للمشروع في .claude/settings.json:
{
"permissions": {
"allow": [
"Bash(pnpm test)",
"Bash(pnpm build)",
"Bash(git status)",
"Bash(git diff *)"
],
"deny": [
"Bash(rm -rf *)",
"Bash(git push --force*)",
"Bash(git reset --hard*)"
]
}
}
قائمة allow توافق مسبقًا على أوامر محددة حتى يتمكن Claude من تشغيلها دون مطالبة. هذا يسرع الجلسات التفاعلية للعمليات التي تثق بها. قائمة deny تمنع الأوامر دون شرط — بغض النظر عما يقرر Claude فعله، بغض النظر عما يقوله CLAUDE.md. استخدم deny للعمليات التي لا رجعة فيها على بيانات الإنتاج أو البنية التحتية.
الإعدادات على مستوى المستخدم في ~/.claude/settings.json تنطبق على جميع المشاريع. إعدادات المشروع في .claude/settings.json تنطبق فقط في ذلك المستودع. إعدادات المشروع لها الأولوية على إعدادات المستخدم حيثما تتداخل.
إذا كان فريقك يحتاج أيضًا إلى مرجع لحزم أدوات MCP، وليس فقط قواعد لإدارتها، قم بإقران هذه الحواجز الواقية مع دليل ملحقات Claude Code. يشرح أين تتناسب إضافة MCP بالنسبة للقواعد والخطافات والتكوين المستقل.
الذاكرة التلقائية: ملاحظات Claude
الذاكرة التلقائية هي النظير لـ CLAUDE.md. بينما CLAUDE.md هو تعليمات تكتبها أنت، فإن الذاكرة التلقائية هي ملاحظات يكتبها Claude بنفسه بناءً على ما يتعلمه أثناء جلساتك.
عندما تصحح Claude أثناء جلسة — “نستخدم Vitest، وليس Jest في هذا المشروع” — يمكنه حفظ ذلك كملاحظة في ~/.claude/projects/<repo>/memory/. في الجلسة التالية، يقرأ Claude تلك الملاحظة مرة أخرى ويطبق التصحيح دون أن يُطلب منه ذلك مرة أخرى.
دليل الذاكرة يحتوي على:
~/.claude/projects/<repo>/memory/
MEMORY.md # فهرس يستخدمه Claude للعثور على الملفات الأخرى؛ أول 200 سطر يتم تحميلها كل جلسة
debugging.md # الأنماط التي اكتشفها Claude في حل المشكلات في هذا المستودع
conventions.md # الاصطلاحات التي تعلمها Claude من تصحيحاتك
هذا هو محلي للجهاز وحاص بكل مستودع. الذاكرة التلقائية تكمل CLAUDE.md بدلاً من استبداله: CLAUDE.md مخصص لقواعد المشروع المشتركة بين الفريق؛ الذاكرة التلقائية مخصصة للأنماط الشخصية التي تعلمها Claude من العمل معك.
الذاكرة التلقائية هي ماركداون قابل للقراءة يمكنك تحريره أو حذفه في أي وقت. قم بتشغيل /memory داخل جلسة لتصفح وتحرير الملفات. إذا كان هناك شيء قديم أو خاطئ، احذفه — سيتوقف Claude عن تطبيق القاعدة القديمة.
أفضل الممارسات للبرمجة الوكيلية
عند تشغيل Claude Code بشكل مستقل — من خلال claude -p أو Agent SDK أو خطوط أنابيب CI — فإن المخاطر تزداد لإعداد القواعد الخاص بك. قد يكمل الوكيل عشرات استدعاءات الأدوات دون توقف، ولا يوجد حوار تفاعلي لالتقاط سوء الفهم في منتصف التشغيل.
اكتب قيودًا صريحة، وليس مجرد تفضيلات. يمكن لـ Claude التفاعلي أن يطلب منك التوضيح. التشغيل المستقل يعمل بما يجده في السياق. إذا كان “لا تقم أبدًا بتعديل ملفات الترحيل دون إنشاء لقطة قاعدة بيانات أولاً” أمرًا مهمًا، فيجب أن يكون في CLAUDE.md. لا تفترض أن Claude سيستنتج القيد من هيكل قاعدة الكود.
استخدم قواعد deny لأي شيء يصعب عكسه. الموافقة المسبقة على Bash(pnpm build) تسرع الجلسات التفاعلية وهي منخفضة المخاطر. لكن للتشغيلات المستقلة، فإن قائمة deny هي شبكة الأمان الخاصة بك للعمليات التي تمس البنية التحتية للإنتاج، أو تلتزم بشكل دائم في تاريخ git، أو تحذف البيانات.
احتفظ بملف CLAUDE.md للمشروع في التحكم بالمصادر. ملف CLAUDE.md المُضمَّن في جذر المستودع ينطبق بشكل متسق على الجلسات التفاعلية، وتشغيلات CI، والوكيل المحلي لأي عضو في الفريق. هذا هو المكان المناسب للقواعد التي تحدد ما يعنيه “صحيح” لقاعدة الكود الخاصة بك.
استخدم .claude/rules/ للمحتوى الخاص بالمجال. إذا كان لمشروعك طبقات متميزة — مكونات الواجهة الأمامية، API الخلفية، مخطط قاعدة البيانات، نصوص البنية التحتية — ضع القواعد لكل طبقة في .claude/rules/ مع نطاق المسار. ملف CLAUDE.md واحد بطول 400 سطر يحتوي على كل شيء يصعب على Claude التنقل فيه ويكلف سياقًا أكثر لكل جلسة.
انقل المواد المرجعية إلى المهارات. المهارات (.claude/skills/) يتم تحميلها عند الطلب، وليس عند بدء الجلسة. توثيق API الطويل، وإجراءات النشر متعددة الخطوات، وأدلة استكشاف الأخطاء وإصلاحها تنتمي إلى المهارات التي تستدعيها باستخدام /deploy أو /debug — وليس في CLAUDE.md حيث تستهلك السياق حتى عندما تكون غير ذات صلة.
راجع الذاكرة التلقائية بشكل دوري. تتراكم الذاكرة التلقائية بمرور الوقت. تتغير أوامر البناء، ويتم إعادة هيكلة الاصطلاحات، وتتغير أنماط الاختبارات. ملاحظة ذاكرة قديمة تقول “استخدم عميل API الإصدار 1” عندما تكون قد انتقلت إلى الإصدار 2 ستسبب أخطاء دقيقة في التشغيلات المستقلة. دقق في ~/.claude/projects/<repo>/memory/ عندما تقوم بتغييرات كبيرة في هيكل المشروع.
استخدام النماذج مفتوحة المصدر مع إعداد القواعد الخاص بك
يعمل سياق CLAUDE.md وقواعد .claude/rules/ التي بنيتها بنفس الطريقة بغض النظر عن النموذج الذي يتعامل مع الاستدلال. بمجرد كتابة قواعدك، فإن تبديل خلفيات النماذج يحافظ على كل ذلك — والنماذج مفتوحة المصدر من خلال Novita AI’s LLM API هي خيار عملي للعمل الوكيلي عالي الحجم.
التكوين هو متغير بيئة واحد:
export ANTHROPIC_BASE_URL="https://api.novita.ai/anthropic"
export ANTHROPIC_AUTH_TOKEN="<your-novita-api-key>"
export ANTHROPIC_MODEL="qwen/qwen3-coder-480b-a35b-instruct"
مع ANTHROPIC_BASE_URL الموجه إلى Novita AI، يرسل Claude Code جميع طلبات الاستدلال إلى نقطة نهاية Novita المتوافقة مع Anthropic بدلاً من api.anthropic.com. ملف CLAUDE.md الخاص بك، وقواعد النطاق المساري، وملف settings.json جميعها تطبق تمامًا كم قبل — طبقة القواعد هي في مرحلة أعلى من اختيار النموذج.
تستضيف Novita AI نماذج مفتوحة الوزن موجهة للبرمجة بما في ذلك Qwen3-Coder وGLM-4.7 وMiniMax M2.5 وDeepSeek V4. هذه النماذج محسنة لاستخدام الأدوات متعددة الخطوات واستدعاء الوظائف، وهو ما يتوافق بشكل جيد مع أنماط استدعاء الأدوات التي يستخدمها Claude Code داخليًا لتحرير الملفات وأوامر الصدفة والتنقل في المستودع.
للفرق التي تدير مهام وكيلية على نطاق واسع — خطوط أنابيب مراجعة الكود، إعادة الهيكلة الآلية عبر المستودعات الكبيرة، إنشاء الاختبارات — فإن النماذج مفتوحة الوزن على Novita تكلف عادةً أقل بكثير لكل مليون رمز مقارنة بالبدائل مغلقة المصدر، بينما لا تزال تقرأ وتطبق قواعد مشروعك بفعالية.
إذا كنت تدير وكلاء ضد قاعدة كود إنتاجية وتريد طبقة أمان إضافية تتجاوز قواعد deny، فكر في إقران Novita AI’s LLM API مع Novita’s Agent Sandbox. يمنح الصندوق الرملي الوكيل بيئة Linux كاملة لعمليات الملفات وتنفيذ الأوامر، معزولة عن نطام المضيف الخاص بك. يسافر سياق CLAUDE.md الخاص بك مع المهمة؛ يبقى خطور التتنفيذ محتويًا.
الأسئلة الشائعة
ما هو CLAUDE.md في Claude Code؟
CLAUDE.md هو ملف ماركداون يعطي Claude Code تعليمات مستمرة عبر الجلسات. يتم تحميله عند بدء الجلسة حتى لا يحتاج Claude إلى إعادة تعليم اصطلاحات مشروعك في كل مرة. يمكن أن يكون لديك ملفات CLAUDE.md على نطاقات متعددة: على مستوى المستخدم (~/.claude/CLAUDE.md) للتفضيلات الشخصية التي تنطبق في كل مكان، وعلى مستوى المشروع (جذر المستودع) للقواعد المشتركة للفريق المضمنة في التحكم بالمصادر، وعلى مستوى الدليل الفرعي للقواعد الخاصة بالوحدة.
ما الذي يجب أن أضعه في ملفات قواعد claude md؟
اكتب ما قد تضطر إلى إعادة شراحه في كل جلسة: أوامر البناء والاختبار، واصطلاحات البرمجة التي تختلف عن إعدادات الإطار الافتراضية، وقيود الهندسة المعمارية، والمشكلات المعروفة في قاعدة الكود. اتر المحتوى الذي يمكن لـ Claude استخلاصه من قاعدة الكود نفسها — أشجار الملفات، وقوائم التبعيات، وأوصاف ما يفعله الكود الموجود. احتفظ بالملفات تحت 200 سطر لتحقيق التزام متناسق.
ما الفرق بين CLAUDE.md وsettings.json في Claude Code؟
CLAUDE.md هو تعليمات يتبعها Claude كدليل إرشادي. settings.json هو تكوين يفرضه Claude Code على مستوى النظام. قاعدة في CLAUDE.md تشكل ما ينوي Claude فعله؛ إدخال deny في settings.json يمنع استدعاء الأداة دون شرط. لأي شيء يجب ألا يحدث بغض النظر عن ما يقرره Claude — عمليات حذف لا رجعة فيها، دفعات قسرية، عمليات بيئة إنتاج — استخدم settings.json، وليس CLAUDE.md.
ما هو دليل .claude/rules/؟
.claude/rules/ يحتوي على ملفات قواعد مح ددة النطاق يتم تحميلها فقط عندما يعمل Claude مع ملفات تتطابق نطاق القاعدة. يتيح لك هذا كتابة قواعد تفصيلية خاصة بالمجال دون تحميلها في كل جلسة. القواعد هي ملفات ماركداون مع بيانات YAML أمامية اختيارية تحدد أنماط glob في حقل paths. القواعد التي ليس لها بيانات paths أمامية يتم تحميلها دون شرط عند بدء الجلسة، مثل محتوى CLAUDE.md إضافي.
هل يعمل CLAUDE.md في CI ومهام claude code الآلية؟
نعم. أي استدعاء لـ claude -p، أو استدعاء Agent SDK، أو خط أنابيب CI يعمل في دليل مستودع يقوم بتحميل ملف CLAUDE.md الخاص بالمشروع. هذ يجعا CLAUDE.md فعالاً لفرض سلوك متسق في كل من السياقات التفاعلية والآلية. تضمينه في التحكم بالمصادر يضمن أن كل تشغيل — محلي وCI — يبدا بنفس السياق المشترك.
كيف يعمل سياق claude code وكيف يمكنني إدارته؟
السياق هو ميزانية الرموز للجلسة الحالية. ملفات CLAUDE.md والمراجع المستوردة والذاكرة التلقائية وتاريخ المحادثة جميعها تحتسب ضمنه. قم بإدارته بالحفاظ على إيجاز CLAUDE.md، واستخدام .claude/rules/ لتحميل المحتوى الخاص بالمجال فقط عند الحاجة، واستخدام /compact لتلخيص الجلسات الطويلة دون فقان الاستمرارية. بعد /compact، يعيد Claude قراءة ملف CLAUDE.md الجذري للمشروع من القرص ويعيد حقنه في الجلسة تلقائيًا.
كيف يمكنني استخدام أفضل ممارسات claude code للبرمجة الوكيلية في فريق؟
قم بتضمين ملف CLAUDE.md الخاص بالمشروع في مستودعك حتى يشارك جميع أعضاء الفريق ووكلاء CI نفس القواعد. استخدم .claude/rules/ مع نطاق المسار للمحتوى الخاص بالمجال. أضف قواعد deny إلى .claude/settings.json للعمليات التي يجب ألا تعمل أبدًا في السياقات الآلية. احتفظ بالذاكرة التلقائية خارجة CI — إنها محلية للجهاز وخاصة بكل مطور؛ ملف CLAUDE.md المُضمَّن هو مصدر الحقيقة للسلوك المشترك.
Novita AI هي منصة سحابية للذكاء الاصطناعي تقدم للمطورين طريقة سهلة لنشر نماذج الذكاء الاصطناعي باستخدام API البسيط الخاص بنا، مع توفير GPU سحابي موثوق وبأسعار معقولة للبناء والتوسيع.
المقالات الموصى بها
- كيفية استخدام وكلاء Claude Code: الإعداد، الأدوات، الأذونات، وسير عمل الصندوق الرملي
- ملحقات Claude Code: كيف توسع أدوات MCP قدرات Claude Code
- توثيق CLI لـ Claude Code: الإعداد، أوامر الشرطة المائلة، وتكامات LLM API
- SDK لـ Claude Code: بناء وكلاء مستقليين باستخدام Python و TypeScript
- بناء وكيل برمجي باستخدام الصندوق الرملي لـ Novita
المصادر تم التحقق منها في 21 يوليو 2026: توثيق ذاكرة Claude Code، نظرة عامة على ميزات Claude Code، Novita AI LLM API
