التكرار · فصل ١٢

skills جاهزة و plugins

library skills · Better Auth · plugins · Stripe MCP
🎯 الهدف: تستخدم skills و plugins من أصحاب المكتبات، وتعرف الفرق بينهم.

بعد كده، الكورس ساب باقي المتجر تمرين ليك: الـ auth، والـ cart، والتحكم في الـ stock، والـ checkout، والـ orders، وحساب العميل.

كل ده نفس الدايرة اللي اتعلمتها: توصف الـ feature، وتعمل plan لو القرار صعب ترجع فيه، وتسيب Claude يبني، وبعدين تراجع وتتأكد. وفيه 3 حاجات بتسهّل التمرين ده.

١. الـ skill بتاعتك

صفحات الـ cart، والـ account، والـ order history، هي بالظبط الشغل اللي /build-ui معمولة له. نفس الخطوات على feature جديدة، وده الهدف من إنك تعمل skill من الأول.

٢. skills من صاحب المكتبة

الـ skill مش لازم تكون إنت اللي كاتبها. مكتبات زي Better Auth بتنشر skills رسمية، بتعلّم الـ agent يستخدم الـ API بتاعتها صح. كده Claude مش هيعتمد على ذاكرته عن نسخة قديمة من المكتبة.

npx skills add better-auth/skills

هيسألك عايز أنهي skills (في الكورس اتختارت الـ core auth skills)، وتسطّبها لأنهي أداة (Claude Code). بعد التسطيب، في الكورس ظهر فولدر .agents/skills جواه skill اسمها create-auth وواحدة اسمها better-auth-best-practices. راجع الـ docs للأمر بالظبط.

ونفس النصيحة: الـ skill ممكن يبقى فيها تعليمات و scripts وأدوات. حتى لو جاية من صاحب المكتبة، بص على اللي ضفته، واتأكد إنها هتشتغل مع البرومبت بتاعك.

٣. الـ plugins

زي ما المكتبات بتنشر skills، الأدوات الكبيرة بتنشر plugins رسمية لـ Claude. الـ plugin بتاع Stripe مثلًا بيوصّل Claude بالـ MCP server بتاع Stripe. وفيه كمان كل اللي الـ skill بتقدمه: best practices للـ checkout والـ subscriptions، وبيبعدك عن الـ APIs الـ deprecated.

claude plugin install stripe@claude-plugins-official

بعدين جوه Claude اكتب /plugins، هتلاقيه في الـ installed. دوس Enter عشان تعمل authenticate: هيفتحلك المتصفح، تدخل حساب Stripe، وتفعّل الـ MCP (في الكورس اتعمل على الـ test environment)، وتدّيله الصلاحيات، وترجع لـ Claude Code.

Skill

خطوات واحدة بتستخدمها تاني وتالت.

Plugin

package ممكن يبقى فيها skills، وحاجات تانية زي MCP servers.

ومفتاح Stripe السري تحطه إنت بنفسك في ملف الـ .env، زي رابط الداتابيز بالظبط. الـ plugin مش معناه إنك تلزق المفتاح في الشات.

متسطّبش أي plugin وخلاص

الـ plugin أكبر من ملف markdown. ممكن يبقى فيه أوامر، وصلاحيات على أدوات برا المشروع. سطّب بس من مصدر تثق فيه، زي صاحب المكتبة نفسه أو الـ marketplace الرسمي.

النتيجة

في الآخر المتجر بقى فيه login، و cart، و checkout حقيقي بـ Stripe في الـ sandbox mode، والدفع اتعمل بكارت التست. المخزون بيقل بعد الشراء، والمنتج اللي خلص بيظهر sold out.

صفحة الشكر بعد الدفع كان شكلها وحش، والحل كان بسيط: خد screenshot، واسحبها جوه Claude Code وإنت دايس Shift، واكتب: “التصميم مش مظبوط، حسّن صفحة الشكر، واستخدم الـ frontend skills”. وفي حوالي دقيقة اتظبطت.

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

🧠 اختبر نفسك
١) ليه الـ skill اللي صاحب المكتبة عاملها أحسن من إن Claude يعتمد على ذاكرته؟
لأن صاحب المكتبة بيحدّثها مع كل نسخة. ذاكرة Claude ممكن تكون عن نسخة قديمة.
٢) الـ plugin بيزيد على الـ skill بإيه؟
الـ plugin package ممكن يبقى فيها skills، وحاجات تانية زي MCP servers.
٣) بعد ما الـ plugin يتعمله authenticate، مفتاح Stripe يروح فين؟
في ملف .env على جهازك، مش في الشات.