1- مقدمة

في هذا التمرين المعملي، ستتعرّف على كيفية إنشاء مهارات الوكيل لمنح النماذج اللغوية الكبيرة إمكانية الوصول إلى المعارف وسير العمل المخصّصَين. ستنشئها كمهارة محلية يمكن الوصول إليها من Gemini CLI.
الإجراءات التي ستنفذّها
- إنشاء "مهارات الوكيل" الخاصة بك لأشياءك المفضّلة
- استخدام Gemini CLI للاستعلام عن مهارتك
- تثبيت "مهارات الوكيل" الرسمية لـ Firebase واستخدامها لإنشاء تطبيق ونشره
أهداف الدورة التعليمية
- كيفية تنظيم مهارة
- كيفية كتابة ملف
SKILL.md - كيفية استخدام المهارات المحلية مع Gemini CLI
2- إعداد المشروع
- إذا لم يكن لديك حساب على Google، عليك إنشاء حساب على Google.
- استخدِم حسابًا شخصيًا بدلاً من حساب عمل أو حساب تديره مؤسسة تعليمية. قد تتضمّن حسابات العمل والحسابات التي تديرها المؤسسات التعليمية قيودًا تمنعك من تفعيل واجهات برمجة التطبيقات اللازمة لهذا التمرين المعملي.
- سجِّل الدخول إلى Google Cloud Console.
- فعِّل الفوترة في Cloud Console.
- يجب أن تكلّف إكمال هذا التمرين المعملي أقل من دولار أمريكي واحد من موارد Cloud.
- يمكنك اتّباع الخطوات في نهاية هذا التمرين المعملي لحذف الموارد وتجنُّب تحصيل رسوم إضافية.
- يمكن للمستخدمين الجدد الاستفادة من فترة تجريبية مجانية بقيمة 300 دولار أمريكي.
- أنشِئ مشروعًا جديدًا أو اختَر إعادة استخدام مشروع حالي.
- إذا ظهر لك خطأ بشأن حصة المشروع، أعِد استخدام مشروع حالي أو احذف مشروعًا حاليًا لإنشاء مشروع جديد.
3- فتح محرِّر Cloud Shell
- انقر على هذا الرابط للانتقال مباشرةً إلى محرِّر Cloud Shell
- إذا طُلب منك منح الإذن في أي وقت اليوم، انقر على منح الإذن للمتابعة.

- إذا لم تظهر الوحدة الطرفية في أسفل الشاشة، افتحها:
- انقر على عرض
- انقر على الوحدة الطرفية

- في الوحدة الطرفية، اضبط مشروعك باستخدام هذا الأمر:
- التنسيق:
gcloud config set project [PROJECT_ID] - مثال:
gcloud config set project lab-project-id-example - إذا لم تتمكّن من تذكُّر رقم تعريف مشروعك:
- يمكنك إدراج جميع أرقام تعريف مشاريعك باستخدام:
gcloud projects list | awk '/PROJECT_ID/{print $2}'

- يمكنك إدراج جميع أرقام تعريف مشاريعك باستخدام:
- التنسيق:
- من المفترض أن تظهر لك هذه الرسالة:
إذا ظهرت لكUpdated property [core/project].
WARNINGوطُلب منكDo you want to continue (Y/n)?، فمن المحتمل أنّك أدخلت رقم تعريف المشروع بشكل غير صحيح. اضغط علىn، ثم اضغط علىEnter، وحاوِل تشغيل الأمرgcloud config set projectمرة أخرى.
4- إنشاء مهارتك المخصّصة
"مهارات الوكيل" هي أدلة تحتوي على ملف SKILL.md على الأقل يقدّم تعليمات ومعارف لوكيل الذكاء الاصطناعي. في هذا القسم، ستنشئ مهارة تعلّم Gemini CLI عن الأشياء المفضّلة لديك.
- أنشِئ دليلًا لهذا التمرين المعملي وانتقِل إليه:
mkdir ~/agent-skills-lab && cd ~/agent-skills-lab - أنشِئ دليلًا لمهارة مشروعك:
mkdir -p ~/agent-skills-lab/.agents/skills/my-favorite-things - أنشِئ ملف
SKILL.mdجديدًا وافتحه لمهارتك: سيفتح الأمرcloudshell edit ~/agent-skills-lab/.agents/skills/my-favorite-things/SKILL.mdcloudshell editملفSKILL.mdفي المحرِّر أعلى الوحدة الطرفية. - أضِف المحتوى التالي إلى ملف
SKILL.md:--- name: my-favorite-things description: Provides personal information about my favorite color, food, and programming language. Use this skill when the user asks questions about my personal preferences or favorite things. --- # Knowledge - **Favorite Color:** Blue - **Favorite Food:** Pizza - **Favorite Programming Language:** Python If asked about one of my favorite things, please respond with the information provided above.
باستخدام ملف SKILL.md فقط، تكون قد أنشأت مهارتك الأولى. حان الوقت لاستخدام هذه المهارة في Gemini CLI.
5- استخدام مهارتك من Gemini CLI
بعد إنشاء مهارة بنجاح، يمكن لـ Gemini CLI اكتشافها لأنّها موجودة في الدليل .agents/skills.
- ابدأ Gemini CLI:
من المفترض أن يتعرّف Gemini CLI على المهارة الجديدة. قد تحتاج إلى الضغط علىgeminiEnterلقبول بعض الإعدادات التلقائية.
- اطلب من Gemini إدراج المهارات المتاحة له ضمن سياقه
من المفترض أن يظهر/skillsmy-favorite-thingsفي قائمة المهارات المتاحة. - اسأل Gemini عن لونك المفضّل:
من المفترض أن يستخدم Gemini CLI مهارةWhat is my favorite color?my-favorite-thingsللإجابة عن سؤالك. إذا طُلب منك ذلك، اسمح لـ Gemini CLI باستخدام المهارة.
من المفترض أن يوضّح الناتج أنّ Gemini CLI استخدم مهارتك وأجاب بشيء مثل "أزرق" أو "لوني المفضّل هو الأزرق".
أحسنت! لقد أنشأت مهارة بنجاح واختبرتها باستخدام Gemini CLI.
عندما تكون مستعدًا لإنهاء جلستك، اكتب /quit ثم اضغط على Enter للخروج من Gemini CLI.
6- (اختياري) إنشاء تطبيق ونشره على استضافة Firebase
بالإضافة إلى إنشاء مهاراتك الخاصة، يمكنك تثبيت المهارات التي أنشأها مستخدمون آخرون. يوضّح ذلك استخدام المهارات القابلة للنقل، وهي وحدات مستقلة من المعارف والتعليمات وسير العمل التي يمكن مشاركتها وإعادة استخدامها بسهولة.
"مهارات الوكيل" لـ Firebase هي مثال رائع على هذه الوحدات القابلة للنقل. تم تصميمها لمساعدة مساعدي الذكاء الاصطناعي على فهم أفضل ممارسات Firebase وتنفيذ المهام المعقّدة بدقة أعلى وتكلفة أقل للرموز المميّزة.
استخدِم الآن "مهارات الوكيل" لـ Firebase لإنشاء تطبيق ويب "قائمة المهام"، مع مصادقة المستخدم وقاعدة بيانات، ونشره على استضافة Firebase.
إعداد المشروع
- إذا كنت لا تزال في Gemini CLI، اكتب
/quitللخروج. - أنشِئ دليلًا جديدًا لمشروعك وانتقِل إليه:
mkdir ~/todo-app && cd ~/todo-app - سجِّل الدخول إلى Firebase باستخدام حسابك على Google. استخدِم العلامة
--no-localhostلأنّك في Cloud Shell:firebase login --no-localhost- تفاعَل مع طلبات CLI:
- عندما يُطلب منك
Enable Gemini in Firebase features?، اكتبY(لـ نعم) واضغط علىEnter. - عندما يُطلب منك
Allow Firebase to collect CLI and Emulator Suite usage and error reporting information?، اكتبYواضغط علىEnter.
- عندما يُطلب منك
- منح الإذن في المتصفّح:
- سيظهر لك عنوان URL في الوحدة الطرفية. انقر على الرابط (إذا لم يكن قابلاً للنقر، حدِّد عنوان URL في Cloud Shell لنسخه، ثم ألصِقه في متصفّحك) لفتح صفحة تسجيل الدخول في علامة تبويب متصفّح جديدة.
- الخطوة 1 من 3 (تأكيد الأمر): انقر على نعم، لقد نفّذت هذا الأمر للتو.
- الخطوة 2 من 3 (تأكيد رقم تعريف الجلسة): تأكَّد من أنّ رقم تعريف الجلسة يطابق ما يظهر في الوحدة الطرفية، ثم انقر على نعم، هذا هو رقم تعريف جلستي.
- الخطوة 3 من 3 (نسخ الرمز): انقر على نسخ لنسخ رمز التفويض إلى الحافظة.
- إكمال تسجيل الدخول:
- ارجع إلى الوحدة الطرفية في Cloud Shell وألصِق رمز التفويض في الطلب
? Enter authorization code:. - اضغط على
Enter.
- ارجع إلى الوحدة الطرفية في Cloud Shell وألصِق رمز التفويض في الطلب
✔ Success! Logged in as. - تفاعَل مع طلبات CLI:
تثبيت "مهارات الوكيل" لـ Firebase
بعد إنشاء دليل مشروعك، عليك تثبيت "مهارات الوكيل" لـ Firebase ضمنه.
يمكنك تثبيت "مهارات الوكيل" لـ Firebase باستخدام skills CLI في الوحدة الطرفية:
npx skills add firebase/agent-skills
أثناء التثبيت، سيُطلب منك اختيار المهارات التي تريد تثبيتها. استخدِم مفاتيح الأسهم للتنقّل في القائمة ومفتاح المسافة لاختيار هذه المهارات.
firebase-basicsfirebase-hosting-basicsfirebase-auth-basicsfirebase-firestore-enterprise-native-mode

بالنسبة إلى الطلبات اللاحقة، يمكنك قبول الإعدادات التلقائية بأمان من خلال الضغط على Enter.
سيؤدي هذا الأمر إلى تنزيل المهارات وتثبيتها، بما في ذلك firebase-basics وfirebase-hosting-basics، ما يتيح استخدامها في Gemini CLI إلى جانب مهارة my-favorite-things.
لمزيد من المعلومات عن "مهارات الوكيل" لـ Firebase، اطّلِع على المهارات المتاحة.
إنشاء تطبيق ويب أساسي ونشره
- فعِّل واجهات برمجة التطبيقات المطلوبة لمشروعك:
gcloud services enable \ cloudresourcemanager.googleapis.com \ firebase.googleapis.com - فعِّل Firebase في مشروعك الحالي على Google Cloud:
firebase projects:addfirebase ${GOOGLE_CLOUD_PROJECT} - ابدأ Gemini CLI:
gemini - اطلب من Gemini إنشاء
index.htmlأساسي: سيطلب Gemini إنشاءGenerate an index.html file with the content "Hello Firebase Hosting" and deploy the application to Firebase Hosting using the current Google Cloud Project.index.htmlوتنفيذfirebase. اضغط علىEnterللسماح له بذلك.من المفترض أن يستخدم Gemini CLI "مهارات الوكيل" لـ Firebase لإنشاء موقعك الإلكتروني ونشره. وجِّه الوكيل وقدِّم الموافقات حسب الحاجة.
عند اكتمال عملية النشر، من المفترض أن يقدّم عنوان URL لتطبيق الويب. استخدِم ctrl+click (في نظام التشغيل Windows/Linux) أو cmd+click (في نظام التشغيل Mac) لفتح الروابط في الوحدة الطرفية لمحرِّر Cloud Shell. انتقِل إلى عنوان URL لتطبيقك الذي تم نشره.
إضافة "مصادقة Firebase"
- ابدأ Gemini CLI إذا لم يسبق لك بدءه:
قد يطرح Gemini أسئلة مثل "هل تثق بهذا المجلد؟" اضغط علىgeminiEnterلقبول الإعدادات التلقائية. - اطلب الآن من Gemini إضافة ميزة "تسجيل الدخول باستخدام حساب Google":
قد يطلب Gemini إنشاء ملفات أو تعديلها، مثلGenerate HTML, CSS, and Javascript for a single page application. It should use Google Sign-in with Firebase Authentication. A user should be able to sign in with their Google Account. Deploy when you are done and give the URL to the user.index.htmlوstyle.cssوscript.js. اسمح له بذلك. قد يطلب منك Gemini اتّخاذ بعض الإجراءات في وحدة تحكم Firebase. يمكن لـ CLI تنفيذ معظم هذه الإجراءات إذا طلبت منه المحاولة، ولكن قد يكون من الضروري إكمال الخطوات يدويًا (مثل تفعيل Google OAuth) إذا كان مثبَّتًا على مثيل Cloud Shell إصدار قديم من Firebase CLI.
عند اكتمال عملية النشر، من المفترض أن يقدّم عنوان URL لتطبيق الويب. استخدِم ctrl+click (في نظام التشغيل Windows/Linux) أو cmd+click (في نظام التشغيل Mac) لفتح الروابط في الوحدة الطرفية لمحرِّر Cloud Shell. انتقِل إلى عنوان URL لتطبيقك الذي تم نشره.
لكي تظهر آخر التغييرات، قد تحتاج إلى إجراء "تحديث تام" باستخدام ctrl+shift+R (في نظام التشغيل Windows/Linux) أو cmd+shift+R (في نظام التشغيل Mac).
إضافة Cloud Firestore
- ابدأ Gemini CLI إذا لم يسبق لك بدءه:
قد يطرح Gemini أسئلة مثل "هل تثق بهذا المجلد؟" اضغط علىgeminiEnterلقبول الإعدادات التلقائية. - اطلب من Gemini إضافة Firestore لحفظ المهام:
سيعدّل Gemini الملفات. اسمح له بذلك.Update the application to save tasks in Cloud Firestore for the signed-in user. A user should be able to add new tasks and see a list of their tasks. Deploy when you are done and give the URL to the user.
عند اكتمال عملية النشر، من المفترض أن يقدّم عنوان URL لتطبيق الويب. استخدِم ctrl+click (في نظام التشغيل Windows/Linux) أو cmd+click (في نظام التشغيل Mac) لفتح الروابط في الوحدة الطرفية لمحرِّر Cloud Shell. انتقِل إلى عنوان URL لتطبيقك الذي تم نشره.
لكي تظهر آخر التغييرات، قد تحتاج إلى إجراء "تحديث تام" باستخدام ctrl+shift+R (في نظام التشغيل Windows/Linux) أو cmd+shift+R (في نظام التشغيل Mac).
إذا لم يكن تطبيقك يعمل على النحو المتوقّع، واصِل العمل مع Gemini CLI للحصول على الوظائف التي تتوقّعها. مثال: shell Hide the task form when the user is logged out. Update the security rules so the user can see their TODOs.
واصِل تجربة التمرين المعملي لإضافة الميزات التي تريدها في تطبيق Firebase الجديد.
7- الخاتمة
تهانينا! لقد أنشأت مهارة بنجاح وتعرّفت على كيفية تثبيت مهارات إضافية لـ Gemini CLI.
(اختياري) التنظيف
إذا أردت التنظيف، يمكنك حذف مشروع على السحابة الإلكترونية لتجنُّب تحصيل رسوم إضافية.
إذا أردت ذلك، احذف المشروع:
gcloud projects delete $GOOGLE_CLOUD_PROJECT
يمكنك أيضًا حذف الموارد غير الضرورية من قرص Cloud Shell لإخلاء بعض المساحة.
- احذف دليل التمرين المعملي (يؤدي ذلك إلى إزالة كل من المهارة والتطبيق):
rm -rf ~/agent-skills-lab - احذف دليل تطبيق "قائمة المهام" (إذا أنشأته خارج الدليل):
rm -rf ~/todo-app
إذا احتجت في أي وقت إلى إعادة ضبط Cloud Shell إلى حالته التلقائية، يمكنك اتّباع المستندات الرسمية للحصول على تعليمات حول كيفية إجراء ذلك بأمان.