المستوى الجاي · فصل ١٨

Multi-agent workflows

custom subagents · writer/reviewer · orchestrator · CI
🎯 الهدف: تجمّع كل اللي فات في نظام فيه كذا agent، كل واحد ليه دور، وإنت بتراجع.

كل فصل لحد دلوقتي كان حتة: الـ subagents بتدوّر، والـ worktrees بتفصل الشغل، والـ MCP بيوصّل بخدمات، والـ hooks بتضمن إن حاجات تحصل. الـ multi-agent workflow هو إنك تركّب الحتت دي مع بعض.

مش agent واحد بيعمل كل حاجة. كل agent ليه دور واضح، و context لوحده، وأدوات على قد دوره.

اعمل subagent بتاعك

في فصل ١٣ استخدمنا الـ subagents الجاهزة. تقدر تعمل subagent بتاعك في .claude/agents/، أو من /agents جوه Claude:

.claude/agents/reviewer.md
---name: reviewerdescription: >  يراجع التعديلات بعد ما أي feature تخلص وقبل الـ commit.  استخدمه لما الكود يبقى جاهز للمراجعة.tools: Read, Grep, Glob, Bash---إنت بتراجع كود مكتوب لمتجر Next.js بـ Drizzle و Better Auth.1. شغّل git diff وافهم إيه اللي اتغير.2. دوّر على: صلاحيات بتتأكد على الـ client بس، و raw SQL،   وأسرار في الكود، وأي حاجة بتكسر الـ design system.3. شغّل pnpm typecheck و pnpm test.4. رجّع قايمة: مشكلة، والملف، وخطورتها، واقتراح.   متعدّلش أي ملف.

زي الـ skill بالظبط: الـ description هو اللي بيخلي Claude يعرف امتى يستخدمه. والفرق إن الـ subagent بيشتغل في context لوحده. وسطر tools بيحدد أدواته: هنا مفيش Edit ولا Write، فهو مش هيقدر يعدّل حتى لو حاول. وتقدر كمان تختار له موديل مختلف، راجع الـ docs.

لاحظ إن مفيش لقب “Senior Reviewer”. الدور واضح من المهمة والأدوات، مش من الاسم.

٣ طرق مشهورة

١. واحد يكتب وواحد يراجع

الـ agent اللي كتب الكود عنده context مليان بقراراته، فصعب يشوف غلطه. الـ reviewer بيبدأ بـ context فاضي، وبيشوف الـ diff بس. ده نفس فكرة فصل الأمان: عين تانية، بس جوه Claude Code.

٢. واحد بينسّق، وكذا واحد بينفذ

agent رئيسي بيقسم الـ feature الكبيرة لحتت مستقلة، وكل حتة بتتعمل في worktree لوحدها، وبعدين بيجمع النتايج. ده اللي بيتسمى orchestrator. الإصدارات الجديدة من Claude Code فيها طرق مدمجة للشغل ده، زي فرق agents بتكلم بعض، وأغلبها لسه بيتغير، فراجع الـ docs.

٣. Claude في الـ CI

claude -p من فصل ٣ بيشتغل من غير حد قاعد قدامه، فينفع جوه GitHub Actions: يراجع كل pull request، أو يصلّح تست واقع، أو يرد على issue. فيه GitHub Action رسمية لـ Claude Code، وأمر بيساعدك تعملها، راجع الـ docs. وفي الحالة دي الـ permissions مهمة جدًا، لأن مفيش حد بيوافق.

إزاي بتتركّب مع بعض

  • CLAUDE.md بيدّي كل agent نفس قواعد المشروع.
  • الـ permissions بتحدد كل واحد مسموحله بإيه.
  • الـ skills بتدّيهم نفس الطريقة في الشغل.
  • الـ MCP بيدّيهم وصول لخدمات زي المتصفح والداتابيز.
  • الـ hooks بتضمن إن الـ format والـ typecheck بيحصلوا كل مرة.
  • وإنت بتراجع وبتقرر إيه يدخل main.

متكبّرهاش من الأول

ده نفس الأساس اللي المذكرة كلها ماشية عليه: context كويس، ومهام صغيرة، ومراجعة، وكل ميزة بتيجي لما المشكلة بتاعتها تظهر.

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

🧠 اختبر نفسك
١) ليه الـ agent اللي كتب الكود مش أحسن واحد يراجعه؟
لأن الـ context بتاعه مليان بقراراته وافتراضاته. الـ reviewer بيبدأ فاضي وبيشوف الـ diff بس.
٢) إزاي تضمن إن الـ reviewer ميعدّلش أي ملف؟
تشيل Edit و Write من سطر tools في الملف بتاعه.
٣) عندك 3 features. تشغّل 3 agents في نفس الوقت من أول يوم؟
الأحسن تبدأ بواحد أو اتنين، لأن كل agent زيادة معناه مراجعة زيادة عليك.