如何使用 AI Agent Skills (搭配 Antigravity CLI 和 Firebase 適用的 Agent Skills)

1. 簡介

Agent Skills 實驗室封面相片

在本實驗室中,您將瞭解如何建立代理技能,讓 AI 代理存取專屬知識和工作流程。您將建立本機技能,可透過 Antigravity CLI 存取。

學習內容

  • 為喜愛的事物建立專屬的 Agent Skills。
  • 使用 Antigravity CLI 查詢技能。
  • 安裝官方的 Firebase 適用的 Agent Skills,並使用這些技能建構及部署應用程式。

課程內容

  • 如何建構技能。
  • 如何編寫 SKILL.md 檔案。
  • 如何透過 Antigravity CLI 使用本機技能。

2. 專案設定

  1. 如果沒有 Google 帳戶,請先建立帳戶
    • 請改用個人帳戶,而非公司或學校帳戶。公司和學校帳戶可能設有限制,導致您無法啟用本實驗室所需的 API。
  2. 登入 Google Cloud 控制台
  3. 在 Cloud 控制台中啟用計費功能
    • 完成本實驗室的 Cloud 資源費用應不到 $1 美元。
    • 您可以按照本實驗室結尾的步驟刪除資源,以免產生後續費用。
    • 新使用者可獲得價值 $300 美元的免費試用期
  4. 建立新專案,或選擇重複使用現有專案。
    • 如果看到專案配額相關錯誤,請重複使用現有專案,或刪除現有專案來建立新專案。

3. 開啟 Cloud Shell 編輯器

  1. 按一下這個連結,直接前往 Cloud Shell 編輯器
  2. 如果系統在今天任何時候提示您授權,請點選「授權」繼續操作。按一下即可授權 Cloud Shell
  3. 如果畫面底部未顯示終端機,請開啟終端機:
    • 按一下「查看」
    • 按一下「終端機」在 Cloud Shell 編輯器中開啟新的終端機
  4. 在終端機中,使用下列指令設定專案:
    • 格式:
      gcloud config set project [PROJECT_ID]
      
    • 範例:
      gcloud config set project lab-project-id-example
      
    • 如果忘記專案 ID,請按照下列步驟操作:
      • 您可以使用下列指令列出所有專案 ID:
        gcloud projects list | awk '/PROJECT_ID/{print $2}'
        
      在 Cloud Shell 編輯器終端機中設定專案 ID
  5. 您應會看到下列訊息:
    Updated property [core/project].
    
    如果看到 WARNING 並收到 Do you want to continue (Y/n)? 提示,表示您可能輸入了錯誤的專案 ID。請依序按下 nEnter,然後再次執行 gcloud config set project 指令。

4. 建立自訂技能

代理程式技能是目錄,至少包含一個 SKILL.md 檔案,可為 AI 代理程式提供指令和知識。在本節中,您將建立一項技能,讓 Antigravity 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 檔案,就建立第一個技能!現在可以在 Antigravity CLI 中使用這項技能。

5. 使用 Antigravity CLI 的技能

您已成功建立技能,由於技能位於 .agents/skills 目錄中,因此 Antigravity CLI 已經可以探索到該技能。

  1. 啟動 Antigravity CLI:
    agy
    
  1. 使用 Antigravity CLI 進行驗證:首次啟動時,系統會要求驗證。選取 OAuth (按下 Enter)。Antigravity 驗證畫面
  2. 按一下連結 (如果無法點選,請在 Cloud Shell 中反白顯示網址並複製,然後貼到瀏覽器中)
  3. 登入 Google 帳戶
  4. 複製程式碼
  5. 將程式碼貼到 Cloud Shell 編輯器終端機
  6. 按下 Enter 鍵。Antigravity 安全碼提示
  7. 按下 Enter 鍵接受部分預設設定。
  8. 讓 Antigravity CLI 列出目前環境中可用的技能
    /skills
    
    可用技能清單中應會顯示 my-favorite-thingsAntigravity 安全碼提示
  9. 按下 ESC 即可結束技能檢視畫面
  10. 向 Antigravity CLI 詢問你最喜歡的顏色:
    What is my favorite color?
    
    Antigravity CLI 應使用 my-favorite-things 技能回答您的問題。如果系統提示,請允許 Antigravity CLI 使用這項技能。

輸出內容應顯示 Antigravity CLI 使用了您的技能,並回覆「藍色」或「我最喜歡的顏色是藍色」等內容。

您已完成!您已成功建立技能,並使用 Antigravity CLI 進行測試。

如要結束工作階段,請輸入 /exit,然後按下 Enter 鍵退出 Antigravity CLI。

6. (選用) 建構應用程式並部署至 Firebase 託管

除了自行建立技能,你也可以安裝他人建立的技能。這項功能展示了如何使用可攜式技能,也就是可輕鬆分享及重複使用的知識、指令和工作流程獨立模組。

Firebase 適用的 Agent Skills 就是這類可攜式模組的絕佳範例。這些技能可協助 AI 助理瞭解 Firebase 最佳做法,並以更高的準確率和更低的詞元成本執行複雜工作。

現在使用 Agent Skills for Firebase 建立「待辦事項」網頁應用程式,其中包含使用者驗證和資料庫,並將其部署至 Firebase 託管。

設定專案

  1. 如果仍在 Antigravity CLI 中,請輸入 /exit 退出。
  2. 為專案建立新目錄,然後前往該目錄:
    mkdir ~/todo-app && cd ~/todo-app
    
  3. 使用 Google 帳戶登入 Firebase。由於您位於 Cloud Shell,請使用 --no-localhost 旗標:
    firebase login --no-localhost
    
    1. 與 CLI 提示互動
      • 系統詢問 Enable Gemini in Firebase features? 時,請輸入 Y (代表「是」),然後按下 Enter
      • 系統詢問 Allow Firebase to collect CLI and Emulator Suite usage and error reporting information? 時,請輸入 Y (代表「是」),然後按下 Enter
    2. 在瀏覽器中授權
      • 終端機中會顯示網址。按一下連結 (如果無法點選,請在 Cloud Shell 中反白顯示網址並複製,然後貼到瀏覽器中),在新瀏覽器分頁中開啟登入頁面。
      • 步驟 1 (確認指令):按一下「Yes, I just ran this command」
      • 步驟 2 (2/3):確認工作階段 ID:確認「工作階段 ID」與終端機顯示的 ID 一致,然後按一下「Yes, this is my session ID」
      • 步驟 3 (3/3):複製代碼:按一下「複製」,將授權碼複製到剪貼簿。
    3. 完成登入
      • 返回 Cloud Shell 終端機,在 ? Enter authorization code: 提示中貼上授權碼
      • 按下 Enter 鍵。
    畫面上應會顯示成功訊息:✔ Success! Logged in as

安裝 Firebase 適用的 Agent Skills

專案目錄建立完成後,請在其中安裝 Agent Skills for Firebase。

您可以在終端機中使用 skills CLI 安裝 Firebase 適用的 Agent Skills:

npx skills add firebase/agent-skills

安裝期間,系統會提示你選取要安裝的技能。使用方向鍵瀏覽清單,然後按空格鍵選取這些技能。

  • firebase-auth-basics
  • firebase-basics
  • firebase-firestore
  • firebase-hosting-basics
  • firebase-security-rules-auditor

選取五項 Firebase 技能

後續提示出現時,您可以按 Enter 安全地接受預設值。

這項指令會下載並安裝 firebase-basicsfirebase-hosting-basics 等技能,讓您可以在 Antigravity CLI 中使用這些技能,以及 my-favorite-things 技能。

如要進一步瞭解 Firebase 適用的 Agent Skills,請參閱可用技能

建立及部署基本網頁應用程式

  1. 為專案啟用必要的 API:
    gcloud services enable \
      cloudresourcemanager.googleapis.com \
      firebase.googleapis.com
    
  2. 在目前的 Google Cloud 專案中啟用 Firebase:
    firebase projects:addfirebase ${GOOGLE_CLOUD_PROJECT}
    
  3. 啟動 Antigravity CLI:
    agy
    
  4. 要求 Antigravity CLI 生成基本 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.
    
    Antigravity CLI 會在產生及部署應用程式時要求權限,請按下 Enter 允許。您可能需要輸入「approve」並按下 Enter。Antigravity CLI 應使用 Agent Skills for Firebase 建立及部署網站。視需要核准代理程式。

部署完成後,系統會提供網頁應用程式的網址。請使用 ctrl+click (Windows/Linux) 或 cmd+click (Mac) 開啟 Cloud Shell 編輯器終端機中的連結。前往已部署應用程式的網址!

新增 Firebase 驗證

  1. 啟動 Antigravity CLI (如果尚未啟動):
    agy
    
    Antigravity CLI 可能會詢問「您是否信任這個資料夾?」,請按 Enter 接受預設值。
  2. 現在,請 Antigravity CLI 新增 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 me.
    
    Antigravity CLI 可能會要求建立或更新 index.htmlstyle.cssscript.js 等檔案,請允許執行這項操作。Antigravity CLI 可能會要求您在 Firebase 控制台中執行某些動作。如果您要求 CLI 嘗試執行這些動作,CLI 大多都能完成,但如果 Cloud Shell 執行個體安裝的 Firebase CLI 版本較舊,可能需要手動完成步驟 (例如啟用 Google OAuth)。

部署完成後,系統會提供網頁應用程式的網址。請使用 ctrl+click (Windows/Linux) 或 cmd+click (Mac) 開啟 Cloud Shell 編輯器終端機中的連結。前往已部署應用程式的網址!

如要查看最新變更,可能需要使用 ctrl+shift+R (Windows/Linux) 或 cmd+shift+R (Mac) 執行「強制重新整理」。

新增 Cloud Firestore

  1. 啟動 Antigravity CLI (如果尚未啟動):
    agy
    
    Antigravity CLI 可能會詢問「您是否信任這個資料夾?」,請按 Enter 接受預設值。
  2. 要求 Antigravity CLI 新增 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 to me.
    
    Antigravity CLI 會更新檔案,請允許這項操作。

部署完成後,系統會提供網頁應用程式的網址。請使用 ctrl+click (Windows/Linux) 或 cmd+click (Mac) 開啟 Cloud Shell 編輯器終端機中的連結。前往已部署應用程式的網址!

如要查看最新變更,可能需要使用 ctrl+shift+R (Windows/Linux) 或 cmd+shift+R (Mac) 執行「強制重新整理」。

如果應用程式無法正常運作,請繼續使用 Antigravity 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. 結語

恭喜!您已成功建立技能,並瞭解如何為 Antigravity CLI 安裝其他技能。

(選用) 清理

如要清理資源,可以刪除雲端專案,以免產生額外費用。

如要刪除專案,請按照下列步驟操作:

gcloud projects delete $GOOGLE_CLOUD_PROJECT

您也可以從 Cloud Shell 磁碟刪除不必要的資源,藉此釋出空間。

  1. 刪除實驗室目錄 (這會移除技能和應用程式):
    rm -rf ~/agent-skills-lab
    
  2. 刪除「待辦事項」應用程式目錄 (如果您是在外部建立):
    rm -rf ~/todo-app
    

如需將 Cloud Shell 重設為預設狀態,請參閱官方說明文件,瞭解如何安全地執行這項操作。