Skip to content

إتقان Claude Code6 / 12

سلامة قاعدة الكود في الإنتاج

الصلاحيات، الحواجز، وما لا يجب أتمتته. المقال غير المثير الذي يُقرّر ما إذا كان Claude Code سيصبح بنية تحتيّة أم سيكون السبب الذي يوقظك في الثانية صباحًا.

المقال غير المثير. الذي يُقرّر ما إذا كان Claude Code سيصبح بنية تحتيّة أم القصّة التي ترويها في postmortem.

إليك القاعدة التي تبني كلّ شيء آخر حولها:

هذه القاعدة وحدها توضّح 90% من قرارات الصلاحيات. كلّ ما تبقّى هو تشغيلها.

القابليّة للعكس، لا "ما يبدو مخيفًا"

تُعدّ معظم الفرق قوائم السماح بالحدس. "الاختبارات تبدو آمنة؛ الحذف مخيف." هذا خطأ.

أعد التأطير حول نطاق الضرر:

  • قابل للعكس: تعديل ملف في working tree، تشغيل اختبارات، تشغيل pnpm install، إنشاء feature branch. إن انكسر شيء، يُنقذك git checkout/git stash.
  • غير قابل للعكس: git push و npm publish وترحيلات قواعد البيانات في الإنتاج و terraform apply وإرسال الإيميلات وتمرير البطاقات وحذف موارد السحابة.

يجب أن تكون القائمة الأولى في allowlist الوكيل. ويجب أن تتطلّب القائمة الثانية ضغطة بشريّة في كلّ مرّة، دون استثناء.

أبسط .claude/settings.json لـ repo إنتاج

{
  "tools": {
    "shell": {
      "allow": [
        "pnpm test",
        "pnpm test:watch",
        "pnpm lint",
        "pnpm build",
        "pnpm db:migrate:dev",
        "pnpm db:reset:dev",
        "pnpm install",
        "git status",
        "git diff *",
        "git log *",
        "git stash *",
        "git checkout *",
        "git branch",
        "git add *",
        "git commit *",
        "ls *",
        "rg *",
        "cat *"
      ],
      "deny": [
        "git push *",
        "git rebase *",
        "git reset --hard *",
        "rm -rf *",
        "npm publish *",
        "pnpm publish *",
        "docker push *",
        "kubectl apply *",
        "terraform apply *",
        "aws *",
        "gcloud *",
        "psql -h prod*"
      ]
    }
  }
}

أمور للملاحظة:

  • git commit مسموح؛ git push لا. يستطيع الوكيل وضع تغيير محليًا؛ أنت تنشره.
  • pnpm db:migrate:dev مسموح؛ نسخة الإنتاج لا — وعلى أيّ حال لا ينبغي أن تكون ترحيلات الإنتاج قابلة للتشغيل من جهاز dev.
  • aws * و gcloud * مرفوضان شاملان. إن احتجت إلى sub-agent يستدعي APIs السحابة، أعطِه أمرًا محدّدًا، لا الـ CLI كاملاً.

قائمة "الملفات التي يجب ألّا يُعدّلها الوكيل"

حتى إن وثقت بالوكيل، بعض الملفات يجب أن تتطلّب تحريرًا بشريًا. اقفلها في CLAUDE.md:

# لا تُعدّل أبدًا
- /infra/terraform/   (للبشر فقط)
- /.github/workflows/release.yml
- حقل "version" في /package.json
- أيّ ملف في /db/migrations/ سبق تطبيقه
- /SECURITY.md

يحترم Claude Code تعليمات CLAUDE.md بقوّة. مع مراجعة git diff، يكفي ذلك لـ 99% من الفرق.

فصل أدوار الـ sub-agents = دفاع متعمّق حقيقي

غطّينا الـ 11 sub-agents في المقال 5. لماذا يهمّ فصل الأدوار للسلامة:

  • code-reviewer لا يستطيع التحرير. حتى إن "قرّر" أنّ شيئًا ما عاديّ، لا يستطيع شحنه.
  • test-writer لا يستطيع لمس كود الإنتاج. فالاختبار الفاشل دليل حقيقي، لا مخرج متذبذب.
  • migration-runner لا يستطيع سوى تشغيل pnpm db:migrate. حتى لو اخترق، نطاق الضرر أمر واحد.

هذا دفاع متعمّق حقيقي — مبنيّ من ملفات قيود، لا من مسرحيّة أمن.

أمور لا يجب أتمتتها

قائمة قصيرة لـ "لا، حتى لو نجح ذلك":

  • النشر في قنوات عامّة (Slack، Discord، Twitter). التأخير عاديّ؛ رسالة بنبرة خاطئة في #engineering ليست عاديّة.
  • إيميلات تواجه العملاء. المحتوى المُولّد لا بأس به في المسودّات. الإرسال للبشر.
  • المال. خصومات، استرجاعات، تحويلات. لا تُؤتمت. أبدًا.
  • التحقّق والهويّة. إضافة مستخدم، منح صلاحيات admin، تدوير المفاتيح.
  • Force pushes. حتى على فروع الميزات. تكلفة force-push عرضي مرتفعة جدًا.

قاعدة عامّة: إن كانت أسوأ تكلفة هي postmortem أو إيميل اعتذار أو رسالة من جهة تنظيميّة، احتفظ بضغطة بشريّة بين النيّة والتنفيذ.

مسار التدقيق — الميزة المُهمَلة

تكتب كلّ جلسة Claude Code transcript في ~/.claude/sessions/. في الفريق، اشحن هذه الـ transcripts إلى مكان دائم:

  • bucket S3 خاصّ.
  • تيّار logs في Datadog.
  • مجرّد git log لـ .claude/transcripts/ ملتزم في الـ repo.

لن تقرأها كثيرًا. لكن في اليوم الذي تقرأ فيه — حين يحدث شيء غريب في قاعدة الكود وتحتاج معرفة من/ماذا غيّره — تكون ذهبًا.

قائمة تحقّق سلامة عمليّة

قبل أن تُشغّل Claude Code على قاعدة حقيقيّة:

  • .claude/settings.json يحتوي allow و deny صريحَين.
  • CLAUDE.md يحتوي قسم "لا تُعدّل أبدًا".
  • .claude/agents/ يضمّ على الأقلّ code-reviewer و test-writer.
  • git push ليس في أيّ allowlist.
  • زميل راجع الـ allowlist.
  • شغّلت claude --dry-run (أو مكافئها في إصدارك) على feature branch أوّلاً.

ستّة عناصر. عشرون دقيقة عمل. تأتي معظم حوادث الإنتاج من تجاوز ثلاثة منها على الأقلّ.


المقال التالي: خطوط أنابيب متعدّدة الوكلاء — ربط sub-agents، تشغيلها بالتوازي، وأنماط "مراجعة-أثناء-الكتابة" دون فقدان عقلك.

شارك هذا المقال

#ClaudeCode #DevOps #Security #AgenticAI #ProductionEngineering

LinkedInX / TwitterBlueskyThreadsRedditHacker NewsWhatsAppبريد إلكتروني

السلسلة — إتقان Claude Code

  1. الجزء 01Claude Code مقابل ChatGPT و Copilot والوكلاءمعظم المطورين يستخدمون أداة الذكاء الاصطناعي الخاطئة للمهمة الخاطئة. إليك السبب — وما الذي يجب فعله بدلاً من ذلك.
  2. الجزء 02التثبيت + سير العمل المضاد للجاذبيةتثبيت Claude Code يستغرق 30 ثانية. أمّا إعداد سير العمل الذي يجعل الوكيل يبدو وكأنّه يقوم بكلّ العمل الثقيل — فهذا الجزء الذي لا يكتب عنه أحد.
  3. الجزء 03كتابة prompts ناجعة«اجعله أفضل» ليس prompt. «أعد هيكلة هذا للأداء» ليس prompt. إليك البنية رباعية الأقسام التي تجعل Claude Code يُنهي فعلاً ما طلبته.
  4. الجزء 04Slash commands — بناء مشروع من الألف إلى الياء/init و /agents و /compact وأوامرك المخصّصة. مجموعة الأدوات التي تنقلك من مجلّد فارغ إلى تطبيق يعمل دون مغادرة prompt الـ Claude.
  5. الجزء 05Sub-agents — الخبراء المتخصّصون الـ 11 داخل Claude Codeتُعيد slash commands استخدام الـ prompts. تُعيد sub-agents استخدام شخصيّات كاملة — code-reviewer و test-writer و migration-runner. هذا الفريق الذي ينبغي أن تمتلكه من اليوم الأول.
  6. الجزء 06سلامة قاعدة الكود في الإنتاجأنت هناالصلاحيات، الحواجز، وما لا يجب أتمتته. المقال غير المثير الذي يُقرّر ما إذا كان Claude Code سيصبح بنية تحتيّة أم سيكون السبب الذي يوقظك في الثانية صباحًا.
  7. الجزء 07خطوط أنابيب متعدّدة الوكلاءربط sub-agents، تشغيلها بالتوازي، وأنماط «مراجعة-أثناء-الكتابة» دون أن تفقد عقلك. حيث يبدأ Claude Code يبدو كمنظّمة هندسة صغيرة.
  8. الجزء 08بناء ميزات كاملةمن تذكرة Linear إلى PR مدموجة مع Claude Code. عرض حقيقي صادق — كيف بدا الـ prompt، ماذا أصاب الوكيل، ماذا أمسكت في المراجعة.
  9. الجزء 09الاختبارات والتصحيحالسماح لـ Claude Code بامتلاك حلقة الاختبار بأسرها. بما فيها الأجزاء التي تجعل المهندسين متوتّرين: regressions، flakies، اختبارات تكامل، وهامس stack-trace.
  10. الجزء 10سير العمل داخل الفرقكيف تدمج فرق الهندسة Claude Code فعلاً اليوم. مجلّد .claude/ المشترك، طقوس المراجعة، والأنماط المضادّة التي أراها في الميدان مرارًا.
  11. الجزء 11أنماط متقدّمة — Hooks، خوادم MCP، أدوات مخصّصة، system promptsحين تتجاوز الإعدادات الافتراضيّة: hooks لآثار جانبيّة حتميّة، خوادم MCP لبيانات المؤسّسة، أدوات مخصّصة، وجراحة system prompt.
  12. الجزء 12مستقبل التطوير الوكيليّإلى أين يتّجه هذا في 2026 وما بعدها. على ما سأراهن، على ما لن أراهن، والخطّ الذي بعده أصبح متشكّكًا في الـ hype.

تابع التعلّم

الدورة

دورة Claude Mastery

12 وحدة · 5 لغات · شهادة · تجربة 3 أيام مجاناً.

الخطط ←
LinkedInX / TwitterBlueskyThreads