كيفية استخدام مهارات وكيل الذكاء الاصطناعي (مع Gemini CLI و"مهارات وكيل الذكاء الاصطناعي" في Firebase)

1. مقدمة

صورة غلاف "مختبر مهارات الوكيل"

في هذا الدرس التطبيقي، ستتعرّف على كيفية إنشاء مهارات الوكيل لمنح النماذج اللغوية الكبيرة إمكانية الوصول إلى المعرفة وسير العمل المخصّصَين. ستنشئها كمهارة محلية يمكن الوصول إليها من Gemini CLI.

الإجراءات التي ستنفذّها

  • يمكنك إنشاء "مهارات الوكيل" الخاصة بك لتنفيذ المهام المفضّلة لديك.
  • استخدِم Gemini CLI للاستعلام عن مهارتك.
  • ثبِّت مهارات الوكيل الرسمية في Firebase واستخدِمها لإنشاء تطبيق ونشره.

أهداف الدورة التعليمية

  • كيفية تنظيم مهارة
  • كيفية كتابة ملف SKILL.md
  • كيفية استخدام المهارات المحلية مع Gemini CLI

2. إعداد المشروع

  1. إذا لم يكن لديك حساب على Google، عليك إنشاء حساب على Google.
    • استخدام حساب شخصي بدلاً من حساب تديره المؤسسة التعليمية أو حساب تابع للعمل. قد تتضمّن حسابات العمل والحسابات المُدارة من المؤسسات التعليمية قيودًا تمنعك من تفعيل واجهات برمجة التطبيقات اللازمة لهذا الدرس التطبيقي.
  2. سجِّل الدخول إلى Google Cloud Console.
  3. فعِّل الفوترة في Cloud Console.
    • يجب أن تكلّف إكمال هذا الدرس التطبيقي أقل من دولار أمريكي واحد من موارد السحابة الإلكترونية.
    • يمكنك اتّباع الخطوات في نهاية هذا المختبر لحذف الموارد وتجنُّب المزيد من الرسوم.
    • يمكن للمستخدمين الجدد الاستفادة من فترة تجريبية مجانية بقيمة 300 دولار أمريكي.
  4. أنشِئ مشروعًا جديدًا أو اختَر إعادة استخدام مشروع حالي.
    • إذا ظهر لك خطأ بشأن حصة المشروع، أعِد استخدام مشروع حالي أو احذف مشروعًا حاليًا لإنشاء مشروع جديد.

3- فتح "محرّر Cloud Shell"

  1. انقر على هذا الرابط للانتقال مباشرةً إلى محرّر Cloud Shell
  2. إذا طُلب منك منح الإذن في أي وقت اليوم، انقر على منح الإذن للمتابعة. انقر لتفويض Cloud Shell
  3. إذا لم تظهر المحطة الطرفية في أسفل الشاشة، افتحها باتّباع الخطوات التالية:
    • انقر على عرض.
    • انقر على Terminalفتح نافذة طرفية جديدة في "محرِّر Cloud Shell"
  4. في الوحدة الطرفية، اضبط مشروعك باستخدام الأمر التالي:
    • التنسيق:
      gcloud config set project [PROJECT_ID]
      
    • مثال:
      gcloud config set project lab-project-id-example
      
    • إذا تعذّر عليك تذكُّر رقم تعريف مشروعك، اتّبِع الخطوات التالية:
      • يمكنك إدراج جميع أرقام تعريف المشاريع باستخدام:
        gcloud projects list | awk '/PROJECT_ID/{print $2}'
        
      ضبط رقم تعريف المشروع في نافذة Cloud Shell Editor
  5. من المفترض أن تظهر لك هذه الرسالة:
    Updated property [core/project].
    
    إذا ظهرت لك WARNING وطُلب منك Do you want to continue (Y/n)?، من المحتمل أنّك أدخلت رقم تعريف المشروع بشكل غير صحيح. اضغط على n، ثم على Enter، وحاوِل تنفيذ الأمر gcloud config set project مرة أخرى.

4. إنشاء مهارة مخصّصة

مهارات الوكيل هي أدلة تحتوي على ملف SKILL.md على الأقل يقدّم تعليمات ومعلومات لوكيل يعمل بالذكاء الاصطناعي. في هذا القسم، ستنشئ مهارة تعلّم Gemini CLI عن اهتماماتك المفضّلة.

  1. أنشئ دليلاً لهذا الدرس التطبيقي وانتقِل إليه:
    mkdir ~/agent-skills-lab && cd ~/agent-skills-lab
    
  2. أنشئ دليلاً لمهارة مشروعك:
    mkdir -p ~/agent-skills-lab/.agents/skills/my-favorite-things
    
  3. أنشئ ملف SKILL.md جديدًا لمهارتك وافتحه:
    cloudshell edit ~/agent-skills-lab/.agents/skills/my-favorite-things/SKILL.md
    
    سيفتح الأمر cloudshell edit الملف SKILL.md في المحرِّر أعلى الوحدة الطرفية.
  4. أضِف المحتوى التالي إلى ملف 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.

  1. ابدأ Gemini CLI:
    gemini
    
    من المفترض أن يتعرّف Gemini CLI على المهارة الجديدة. قد تحتاج إلى الضغط على Enter لقبول بعض الإعدادات التلقائية.
  1. أن تطلب من Gemini إدراج المهارات المتاحة له ضمن سياقه
    /skills
    
    من المفترض أن يظهر my-favorite-things في قائمة المهارات المتاحة.
  2. اسأل Gemini عن لونك المفضّل:
    What is my favorite color?
    
    يجب أن تستخدم أداة Gemini CLI المهارة my-favorite-things للإجابة عن سؤالك. إذا طُلب منك ذلك، اسمح لـ Gemini CLI باستخدام المهارة.

يجب أن يوضّح الناتج أنّ Gemini CLI استخدم مهارتك وأجاب بعبارة مثل "أزرق" أو "لوني المفضّل هو الأزرق".

لقد فعلت ذلك! لقد نجحت في إنشاء مهارة واختبارها باستخدام Gemini CLI.

عندما تكون مستعدًا لإنهاء جلستك، اكتب /quit ثم اضغط على Enter للخروج من Gemini CLI.

6. (اختياري) إنشاء تطبيق ونشره على "استضافة Firebase"

بالإضافة إلى إنشاء مهاراتك الخاصة، يمكنك تثبيت مهارات أنشأها مستخدمون آخرون. يوضّح ذلك استخدام المهارات القابلة للنقل، وهي وحدات مستقلة من المعرفة والتعليمات وسير العمل التي يمكن مشاركتها وإعادة استخدامها بسهولة.

تُعدّ "مهارات الوكيل" في Firebase مثالاً رائعًا على هذه الوحدات القابلة للنقل. وهي مصمَّمة لمساعدة مساعدات الذكاء الاصطناعي في فهم أفضل ممارسات Firebase وتنفيذ المهام المعقّدة بدقة أعلى وبتكلفة أقل.

يمكنك الآن استخدام "مهارات الوكيل" في Firebase لإنشاء تطبيق ويب "قائمة المهام"، مع مصادقة المستخدمين وقاعدة بيانات، ونشره على "استضافة Firebase".

إعداد مشروعك

  1. إذا كنت لا تزال تستخدم Gemini CLI، اكتب /quit للخروج.
  2. أنشئ دليلاً جديدًا لمشروعك وانتقِل إليه:
    mkdir ~/todo-app && cd ~/todo-app
    
  3. سجِّل الدخول إلى Firebase باستخدام حسابك على Google. استخدِم العلامة --no-localhost لأنّك في Cloud Shell:
    firebase login --no-localhost
    
    1. التفاعل مع طلبات واجهة سطر الأوامر:
      • عندما يُطلب منك ذلك، اكتب Y (نعم) واضغط على Enter.Enable Gemini in Firebase features?
      • عندما يُطلب منك ذلك، اكتب Y (نعم) واضغط على Enter.Allow Firebase to collect CLI and Emulator Suite usage and error reporting information?
    2. التفويض في المتصفّح:
      • سيظهر لك عنوان URL في نافذة الوحدة الطرفية. انقر على الرابط لفتح صفحة تسجيل الدخول في علامة تبويب متصفّح جديدة.
      • الخطوة 1 من 3 (تأكيد الأمر): انقر على نعم، نفّذتُ هذا الأمر للتو.
      • الخطوة 2 من 3 (تأكيد معرّف الجلسة): تأكَّد من تطابق معرّف الجلسة مع ما يظهر في جهازك، ثم انقر على نعم، هذا هو معرّف الجلسة.
      • الخطوة 3 من 3 (نسخ الرمز): انقر على نسخ لنسخ رمز التفويض إلى الحافظة.
    3. إكمال عملية تسجيل الدخول:
      • ارجع إلى نافذة Cloud Shell وألصِق رمز التفويض في طلب ? Enter authorization code:.
      • اضغط على المفتاح Enter.
    من المفترض أن تظهر لك رسالة تفيد بنجاح العملية: ✔ Success! Logged in as .

تثبيت Agent Skills for Firebase

بعد إنشاء دليل المشروع، عليك تثبيت "مهارات الوكيل" في Firebase ضمنه.

يمكنك تثبيت "مهارات الوكيل" في Firebase باستخدام skills CLI في نافذة الأوامر:

npx skills add firebase/agent-skills

أثناء عملية التثبيت، سيُطلب منك اختيار المهارات التي تريد تثبيتها. استخدِم مفاتيح الأسهم للتنقّل في القائمة ومفتاح المسافة لاختيار هذه المهارات.

  • firebase-basics
  • firebase-hosting-basics
  • firebase-auth-basics
  • firebase-firestore-enterprise-native-mode

اختيار أربع مهارات في Firebase

بالنسبة إلى الطلبات اللاحقة، يمكنك قبول الإعدادات التلقائية بأمان من خلال الضغط على Enter.

سيؤدي هذا الأمر إلى تنزيل المهارات وتثبيتها، بما في ذلك firebase-basics وfirebase-hosting-basics، ما يتيح استخدامها في Gemini CLI إلى جانب مهارتك my-favorite-things.

لمزيد من المعلومات حول ميزة "مهارات الوكيل" في Firebase، اطّلِع على المهارات المتاحة.

إنشاء تطبيق ويب أساسي ونشره

  1. فعِّل واجهات برمجة التطبيقات المطلوبة لمشروعك:
    gcloud services enable \
      cloudresourcemanager.googleapis.com \
      firebase.googleapis.com
    
  2. فعِّل Firebase في مشروعك الحالي على Google Cloud باتّباع الخطوات التالية:
    firebase projects:addfirebase ${GOOGLE_CLOUD_PROJECT}
    
  3. ابدأ Gemini CLI:
    gemini
    
  4. اطلب من Gemini إنشاء index.html أساسي:
    Generate an index.html file with the content "Hello Firebase Hosting" and
    deploy the application to Firebase Hosting using the current Google Cloud
    Project.
    
    سيطلب منك Gemini إنشاء index.html وتنفيذ firebase. اضغط على Enter للسماح له بذلك.من المفترض أن يستخدم Gemini CLI ميزة "أدوات الوكيل في Firebase" لإنشاء موقعك الإلكتروني ونشره. توجيه الموظف وتقديم الموافقات له حسب الحاجة

بعد اكتمال عملية النشر، من المفترض أن يوفّر عنوان URL لتطبيق الويب. استخدِم ctrl+click (في نظام التشغيل Windows) أو cmc+click (في نظام التشغيل Mac) لفتح الروابط في نافذة Cloud Shell Editor. انتقِل إلى عنوان URL الخاص بتطبيقك الذي تم نشره.

إضافة خدمة "مصادقة Firebase"

  1. ابدأ استخدام Gemini CLI إذا لم يسبق لك ذلك:
    gemini
    
    قد يطرح Gemini أسئلة مثل "هل تثق بهذا المجلد؟" اضغط على Enter لقبول الإعدادات التلقائية.
  2. الآن، اطلب من Gemini إضافة ميزة "تسجيل الدخول باستخدام Google" باتّباع الخطوات التالية:
    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.
    
    قد يطلب منك Gemini إنشاء ملفات أو تعديلها، مثل index.html وstyle.css وscript.js. يجب السماح له بذلك، فقد يطلب منك Gemini اتّخاذ بعض الإجراءات في وحدة تحكّم Firebase. يمكن لواجهة سطر الأوامر تنفيذ معظم هذه الخطوات إذا طلبت منها ذلك، ولكن قد يكون من الضروري إكمال الخطوات يدويًا (مثل تفعيل Google OAuth) إذا كان إصدار أقدم من Firebase CLI مثبّتًا على آلة Cloud Shell الافتراضية.

بعد اكتمال عملية النشر، من المفترض أن يوفّر عنوان URL لتطبيق الويب. استخدِم ctrl+click (في نظام التشغيل Windows) أو cmc+click (في نظام التشغيل Mac) لفتح الروابط في نافذة Cloud Shell Editor. انتقِل إلى عنوان URL الخاص بتطبيقك الذي تم نشره.

للاطّلاع على آخر التغييرات، قد تحتاج إلى إجراء "إعادة تحميل تامّة" باستخدام ctrl+shift+R (في نظام التشغيل Windows) أو cmd+shift+R (في نظام التشغيل Mac).

إضافة Cloud Firestore

  1. ابدأ استخدام Gemini CLI إذا لم يسبق لك ذلك:
    gemini
    
    قد يطرح Gemini أسئلة مثل "هل تثق بهذا المجلد؟" اضغط على Enter لقبول الإعدادات التلقائية.
  2. اطلب من Gemini إضافة Firestore لحفظ المهام:
    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.
    
    سيعدّل Gemini الملفات. يجب السماح له بذلك.

بعد اكتمال عملية النشر، من المفترض أن يوفّر عنوان URL لتطبيق الويب. استخدِم ctrl+click (في نظام التشغيل Windows) أو cmc+click (في نظام التشغيل Mac) لفتح الروابط في نافذة Cloud Shell Editor. انتقِل إلى عنوان URL الخاص بتطبيقك الذي تم نشره.

للاطّلاع على آخر التغييرات، قد تحتاج إلى إجراء "إعادة تحميل تامّة" باستخدام ctrl+shift+R (في نظام التشغيل Windows) أو 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 لإخلاء بعض المساحة.

  1. احذف دليل المختبر (سيؤدي ذلك إلى إزالة كلّ من المهارة والتطبيق):
    rm -rf ~/agent-skills-lab
    
  2. احذف دليل تطبيق "قائمة المهام" (إذا أنشأته خارج هذا التطبيق):
    rm -rf ~/todo-app
    

إذا احتجت في أي وقت إلى إعادة ضبط Cloud Shell على حالته التلقائية، يمكنك اتّباع المستندات الرسمية للحصول على تعليمات حول كيفية إجراء ذلك بأمان.