00:00:00ما الذي يحدث فعلياً عندما تجبر وكيلاً برمجياً على الالتزام بالقواعد؟
00:00:03جميعنا نواجه صراعاً مشتركاً عند العمل مع Claude وغيره من وكلاء البرمجة.
00:00:07فهم يميلون إلى عدم اتباع التعليمات وتجاهل ملف Claude.md تماماً.
00:00:11وحتى عندما حاولنا فرض منهجية التطوير القائم على الاختبار (TDD)، حاول الوكيل تعديل ملفات الاختبار نفسها.
00:00:15لذا، صادفنا هذا الملحق (plugin) الذي بدأ يحظى بشعبية واسعة، حيث حصد 58,000 نجمة في غضون 24 ساعة فقط.
00:00:21لكن هذا يوضح تماماً طبيعة دورة الضجيج المحيطة بأدوات الذكاء الاصطناعي.
00:00:25يعد هذا الملحق بفرض صارم لمنهجيات تطوير البرمجيات داخل سير العمل.
00:00:30لكن السؤال كان: هل يفي فعلاً بهذا الوعد؟
00:00:33لقد رأى فريقنا تدفقات عمل مماثلة من قبل، وتبيّن أن معظمها مجرد زوبعة إعلامية.
00:00:37لذا وضعنا هذا الملحق في بيئة عمل حقيقية لنرى ما إذا كان يستحق التنفيذ في مشاريع واقعية أم أنه مجرد ضجيج.
00:00:43Superpowers هو ملحق يفرض منهجيات تطوير البرمجيات التقليدية مباشرة داخل بيئة التطوير المتكاملة (IDE) التي تستخدمها.
00:00:50قد يظن البعض أن أطر العمل الرشيقة (Agile) الحالية مثل BMAD و OpenSpec تقوم بالشيء نفسه.
00:00:56لكن هذا الملحق مختلف؛ لأنه ليس مجرد نظام وكلاء يستخدم لكتابة مواصفات المشروع.
00:01:01إنه فرض لمنهجية Agile نفسها في سير العمل مع بوابات صارمة تضمن عدم انتقال الوكيل للخطوة التالية حتى تنجح الخطوة الحالية.
00:01:10هذه البوابات عبارة عن نقاط تفتيش صريحة تمنع Claude من الانحراف عما تم توجيهه إليه.
00:01:15الفلسفة الجوهرية لهذا الملحق هي التطوير القائم على الاختبار (TDD) وتفضيل العملية المنهجية على التخمين.
00:01:20فهو يتحقق قبل الادعاء بنجاح المشروع، ويوفر تعليمات مصممة لاستهداف المناطق الشائعة التي يفشل فيها الذكاء الاصطناعي عادةً لإصلاحها.
00:01:28ولا ينتقل إلى الخطوة التالية حتى يحصل على الضوء الأخضر من المستخدم.
00:01:32باختصار، هو يستخدم أفضل الممارسات التي تحدثنا عنها في فيديوهاتنا السابقة بشكل مدمج، مما يلغي الحاجة للإعداد اليدوي كما كنا نفعل.
00:01:40يركز الملحق على منهجية “أحمر-أخضر” الحقيقية في التطوير القائم على الاختبار ومبادئ برمجية أخرى مثل DRY و YAGNI التي تعلمناها سابقاً.
00:01:50الملحق متاح لجميع منصات الذكاء الاصطناعي.
00:01:52وبما أن فريقنا يستخدم Claude Code، قمنا أولاً بنسخ أمر تسجيل المتجر وإضافته للمشروع، ثم قمنا بتثبيت الملحق من المتجر.
00:02:02وبعد التثبيت وإعادة تشغيل Claude Code، أصبح ملحق Superpowers متاحاً للاستخدام في المشروع.
00:02:08بمجرد إعادة التشغيل، أعطيناه أمراً بأننا نريد بناء برنامج لإدارة المشاريع مشابه لـ Trello.
00:02:15قام بتنشيط مهارة “تبادل الأفكار” تلقائياً، وبدلاً من التخمين، استخدم وظائف المهارة لتحديد ما هو موجود في المشروع أولاً.
00:02:24طرح الكثير من الأسئلة لتوضيح طبيعة التطبيق، والجمهور المستهدف، والتقنيات المستخدمة، وناقش المشكلات المحتملة لكل خيار.
00:02:33مثلاً عند اختيار قاعدة البيانات، أشار إلى أن خيارنا قد لا يكون الأنسب لمشاكل أمنية لكونها تعمل في المتصفح، فقمنا بتغييرها.
00:02:44استمر في توضيح كافة التفاصيل حتى شعرنا بالرضا التام عن الخيارات المطروحة.
00:02:48بعد التأكيد، كانت الخطوة التالية هي تقديم ثلاثة نهج مختلفة لنختار واحداً منها لتنفيذه.
00:02:55اخترنا الخيار الذي أعجبنا واقترحنا بعض التعديلات بالتزامن مع الاختيار.
00:02:58بمجرد الانتهاء، قدم لنا تصميم البنية التحتية (Architecture) أيضاً.
00:03:02ثم قدم تصميم تجربة المستخدم (UX)، موضحاً كيفية التعامل مع لوحات المهام.
00:03:06كما قام بتأكيد هيكلية المشروع بالكامل معنا.
00:03:09وبعد الموافقة على التصميم، قام بتوثيق جميع البيانات في مجلد المستندات (docs).
00:03:13وهنا يتفوق هذا الملحق على غيره، لأنه يتضمن تعليمات git مدمجة لأرشفة كل تغيير، وهو ما كانت تفتقر إليه الأطر الأخرى.
00:03:22بمجرد أن وضعت مهارة العصف الذهني الخطط، استُدعيت مهارة “كتابة الخطة” لكتابة خطة التنفيذ وأرشفتها.
00:03:29قامت الخطة بتقسيم التطبيق الضخم إلى مهام فرعية يسهل تنفيذها.
00:03:33قد تظن أن وضع التخطيط المدمج في Claude يقوم بكل هذا بمفرده.
00:03:37لكن الفرق الجوهري هو أن تخطيط Claude Code مخصص فقط لتوجيه الوكيل عما يجب فعله.
00:03:44فهو يسأل فقط عن التقنيات التي يراها ضرورية، ويتخذ القرارات الصغيرة مثل مكتبات واجهة المستخدم بنفسه.
00:03:52في المقابل، Superpowers هو نظام فرض، أي لا يمكنك التقدم حتى تكتمل الخطوة الحالية، مما يضمن تنفيذ الخطة بدقة.
00:04:01بعد انتهاء مرحلة التخطيط، خيّرنا بين طريقتين للتنفيذ، فاخترنا التنفيذ المعتمد على الوكلاء الفرعيين.
00:04:09على الرغم من أن Claude ينشئ وكلاء فرعيين تلقائياً، إلا أن المهارات هنا كانت مختلفة لأنها أنشأت بيئة عمل (git worktree) منفصلة لكل وكيل.
00:04:20يحتاج الوكلاء للعزل في بيئات عمل منفصلة؛ لأنهم إذا عملوا في نفس المجلد، فسيقومون بالكتابة فوق عمل بعضهم البعض.
00:04:28وهذا هو الشيء الأساسي الذي يتعامل معه الملحق تلقائياً وبشكل أصيل.
00:04:31بمجرد الانتهاء من التخطيط، انتقل Claude إلى مرحلة التنفيذ.
00:04:34بدأ بمهمة، وفور انتهائها، أنشأ مهمة فرعية منفصلة للمراجعة للتحقق من التنفيذ مقابل المواصفات.
00:04:41وبعد الأرشفة في git، استخدم مهارة أخرى من مهارات Superpowers وهي “مُراجع الكود”.
00:04:46وفقط عندما يوافق الوكلاء السابقون على جودة الكود، يبدأ في المهمة التالية ويستمر في تحسين المهام السابقة حتى تتحقق الجودة.
00:04:54بعد اكتمال كل مهمة ومراجعتها وأرشفتها، لضمان عدم تداخل المهام، سألنا عما إذا كنا نريد الدمج في الفرع الرئيسي أم إنشاء طلب سحب (PR).
00:05:04طلبنا منه الدمج في الفرع الرئيسي بسرعة.
00:05:06بعدها قام بإزالة كافة بيئات العمل الفرعية ودمج المشروع بالكامل في الفرع الرئيسي.
00:05:11هذه العملية تستهلك الكثير من نافذة السياق (Context Window)؛ ففي حالتنا، استهلكت جولة واحدة حوالي 50% منها، لذا يجب الحذر.
00:05:24المشروع الذي أنشأه كان بسيطاً وبوظائف أساسية.
00:05:27أردنا ترتيب هذه القوائم حسب الحالة الحالية: “قيد الانتظار”، “قيد التنفيذ”، و”مكتمل”.
00:05:32ورغم وجود البطاقات الفردية، أردنا أن تكون هذه القوائم قابلة للتحريك أيضاً.
00:05:36عدنا لـ Claude Code وطلبنا منه معالجة ذلك، لكنه بدأ في البداية بالطريقة التقليدية لـ Claude دون مهارات الملحق.
00:05:42ربما حدث هذا بسبب استهلاك الكثير من السياق، فكان علينا تذكيره باستخدام ملحق Superpowers.
00:05:48بعد تذكيره، بدأ في تنفيذ المهام بنفس الطريقة المنظمة التي اتبعها سابقاً.
00:05:52عند المرور بجميع الخطوات، أنشأ Claude وكلاء للعمل في بيئات منفصلة، وهنا تظهر قوة هؤلاء الوكلاء في اتباع نهج TDD أصيل.
00:06:02يبدأ هؤلاء الوكلاء بكتابة الاختبارات لكل جزء سيتم تنفيذه أولاً.
00:06:05بعد كتابة الاختبارات، يضمن النظام كتابة الكود دون أي تعديل على حالات الاختبار الأصلية حتى ينجح الاختبار.
00:06:13تستخدم مهارات الملحق توجيهات قوية تمنعه من تعديل الاختبارات، مما يبطل كل الأعذار التي يتذرع بها Claude لتجاوز الخطوات.
00:06:23تبدو هذه التوجيهات مثل تعليمات صريحة تقول: “إذا كان هناك احتمال 1% لاستخدام مهارة، فاستخدمها”.
00:06:29ضمن هذا تنفيذ كل مهمة بطريقة مهيكلة وصحيحة.
00:06:32نقطة تجب ملاحظتها هي أن هؤلاء الوكلاء كانوا ينفذون المهام بالتتابع، لذا استغرق الأمر وقتاً أطول من المعتاد مقارنة بأسلوب Claude الأصلي.
00:06:41لكن بما أنه فرض إرشادات صارمة، فقد ضمن أن التطبيق يعمل كما هو مقصود تماماً.
00:06:45كما ذكرنا، يتم استهلاك السياق بسرعة كبيرة مع هذا الملحق، حيث أدت مهام قليلة إلى بقاء 5% فقط من السياق.
00:06:53لذا قبل المتابعة، قمنا بتشغيل أمر “compact” (الضغط) لضمان عدم فقدان السياق أثناء العصف الذهني للمهمة التالية.
00:07:01بمجرد ضغط المحادثة، أعطيناه أمراً بالميزة التالية التي نريد تنفيذها وبدأ العمل بنفس الأسلوب.
00:07:07لكن أفضل ما في هذه الجلسة هو أنه لم ينفذ الأمور بالتخمين، بل استمر في طرح الأسئلة من زوايا متعددة للتأكد من بناء التطبيق كما نريد.
00:07:17هذا الملحق دفع Claude لتوضيح حالات خاصة مثل شكل الأعمدة عندما تكون فارغة، وهو أمر بسيط قد يخمنه Claude وينفذه بمفرده.
00:07:29تتوفر إرشادات استخدام هذا الملحق بشكل أفضل في AI Labs Pro.
00:07:33لمن لا يعرف، هو مجتمعنا الذي أطلقناه مؤخراً حيث تحصل على قوالب جاهزة للاستخدام في مشاريعك لهذا الفيديو والفيديوهات السابقة.
00:07:42إذا وجدت قيمة فيما نقدمه وتريد دعم القناة، فهذه هي الطريقة الأفضل. الرابط في الوصف.
00:07:48من نقاط القوة الأخرى لهذا الملحق هي قدرته على استخدام استكشاف الأخطاء وإصلاحها بشكل منهجي.
00:07:52واجهنا خطأ في حفظ البيانات عند تحديث الصفحة، وأعطينا Claude أمراً غامضاً دون تحديد مكان الخطأ، وطلبنا منه إصلاحه منهجياً.
00:08:01قام بتحميل مهارة “التنقيح المنهجي” للقيام بالمهمة، حيث تم تقسيم العمل إلى أربع مراحل.
00:08:06حددت المرحلة الأولى السبب الجذري من خلال طرح أسئلة علينا حول المشكلة.
00:08:10بناءً على إجابتنا، حاول التقصي وتتبع المسار الذي حددناه، ووجد الملف الصحيح الذي قد يحتوي على الخلل.
00:08:16بعد تحديد السبب، استهدفت المرحلة الثانية عزل الخطأ، بينما ركزت المرحلة الثالثة على تضييق نطاق السبب الفعلي لحدوثه ليتمكن من إصلاحه.
00:08:25أما المرحلة الرابعة فكانت تطبيق الإصلاح، حيث جعل العملية أكثر تنظيماً من مجرد البحث العشوائي في الكود، وأنهى الإصلاح بالاختبار.
00:08:35هناك الكثير من المهام التي لا تتطلب سير عمل الملحق الكامل، حيث يكون استخدامه مبالغاً فيه، مثل تغيير واجهة المستخدم.
00:08:47لذا بالنسبة لهذه الأنواع من المهام التي لا تحتاج للعملية الكاملة، يمكننا تنفيذها بطريقة أبسط.
00:08:51بما أنه لم يكن لدينا هدف محدد لشكل التطبيق، طلبنا منه تحسين الواجهة وعدم الانتقال للتنفيذ، بل الاكتفاء بالعصف الذهني والتخطيط.
00:09:01بدأ بالعصف الذهني وسألنا عن التوجه البصري الذي نريده عبر أسئلة توضيحية حول جوانب مختلفة من التصميم.
00:09:08توقف Claude بعد التخطيط كما طلبنا، وبعدها طلبنا منه تنفيذ الخطة دون استخدام العملية المعقدة للملحق.
00:09:15تم تغيير واجهة التطبيق بالكامل في وقت أقصر بكثير، ومع ذلك، قام بأرشفة التغييرات في git بنفس التنسيق الذي تفرضه العملية المنظمة.
00:09:25تحول التطبيق من تخطيط أساسي بتنسيق بسيط إلى نظام ألوان مُحسن، وحالات تفاعلية للبطاقات، وتنسيق أكثر وظيفية بشكل عام.
00:09:32هذا ما يجعل إطار العمل عملياً؛ تترك لـ Claude حرية التصرف دون قيود في المهام التي يتقنها، وتفعل العملية الكاملة في الحالات التي قد يخطئ فيها.
00:09:43بهذا نصل إلى نهاية الفيديو. إذا أردت دعم القناة ومساعدتنا في الاستمرار، يمكنك فعل ذلك عبر زر “شكراً” (Super Thanks) أدناه.
00:09:51كالعادة، شكراً لمشاهدتكم، وأراكم في الفيديو القادم.