1. Giới thiệu

Trong phòng thí nghiệm này, bạn sẽ tìm hiểu cách tạo Kỹ năng của tác nhân để cung cấp cho LLM quyền truy cập vào kiến thức và quy trình công việc riêng biệt. Bạn sẽ tạo kỹ năng này dưới dạng một kỹ năng cục bộ có thể truy cập từ Gemini CLI.
Bạn sẽ thực hiện
- Tạo Kỹ năng cho tác nhân của riêng bạn cho những nội dung bạn yêu thích.
- Sử dụng Gemini CLI để truy vấn kỹ năng của bạn.
- Cài đặt Kỹ năng của tác nhân chính thức cho Firebase và sử dụng các kỹ năng này để tạo và triển khai một ứng dụng.
Kiến thức bạn sẽ học được
- Cách cấu trúc một kỹ năng.
- Cách viết tệp
SKILL.md. - Cách sử dụng các kỹ năng cục bộ với Gemini CLI.
2. Thiết lập dự án
- Nếu chưa có Tài khoản Google, bạn phải tạo một Tài khoản Google.
- Sử dụng tài khoản cá nhân thay vì tài khoản do nơi làm việc hoặc trường học cấp. Tài khoản do nơi làm việc hoặc trường học cấp có thể có những hạn chế khiến bạn không thể bật các API cần thiết cho lớp học này.
- Đăng nhập vào Google Cloud Console.
- Bật tính năng thanh toán trong Bảng điều khiển Cloud.
- Việc hoàn thành bài tập thực hành này sẽ tốn ít hơn 1 USD cho các tài nguyên trên Cloud.
- Bạn có thể làm theo các bước ở cuối bài thực hành này để xoá tài nguyên nhằm tránh bị tính thêm phí.
- Người dùng mới đủ điều kiện dùng thử miễn phí 300 USD.
- Tạo dự án mới hoặc chọn sử dụng lại một dự án hiện có.
- Nếu bạn thấy lỗi về hạn mức dự án, hãy sử dụng lại một dự án hiện có hoặc xoá một dự án hiện có để tạo dự án mới.
3. Mở Trình chỉnh sửa Cloud Shell
- Nhấp vào đường liên kết này để chuyển trực tiếp đến Cloud Shell Editor
- Nếu được nhắc uỷ quyền vào bất kỳ thời điểm nào trong hôm nay, hãy nhấp vào Uỷ quyền để tiếp tục.

- Nếu thiết bị đầu cuối không xuất hiện ở cuối màn hình, hãy mở thiết bị đầu cuối:
- Nhấp vào Xem
- Nhấp vào Terminal (Thiết bị đầu cuối)

- Trong thiết bị đầu cuối, hãy thiết lập dự án bằng lệnh sau:
- Định dạng:
gcloud config set project [PROJECT_ID] - Ví dụ:
gcloud config set project lab-project-id-example - Nếu bạn không nhớ mã dự án của mình, hãy làm như sau:
- Bạn có thể liệt kê tất cả mã dự án bằng cách dùng lệnh:
gcloud projects list | awk '/PROJECT_ID/{print $2}'

- Bạn có thể liệt kê tất cả mã dự án bằng cách dùng lệnh:
- Định dạng:
- Bạn sẽ thấy thông báo sau:
Nếu thấy biểu tượngUpdated property [core/project].
WARNINGvà được yêu cầuDo you want to continue (Y/n)?, thì có thể bạn đã nhập sai mã dự án. Nhấnn, nhấnEnterrồi thử chạy lại lệnhgcloud config set project.
4. Tạo kỹ năng tuỳ chỉnh
Agent Skills là các thư mục chứa ít nhất một tệp SKILL.md cung cấp hướng dẫn và kiến thức cho một tác nhân AI. Trong phần này, bạn sẽ tạo một kỹ năng để dạy Gemini CLI về những điều bạn yêu thích.
- Tạo một thư mục cho lớp học này rồi chuyển đến thư mục đó:
mkdir ~/agent-skills-lab && cd ~/agent-skills-lab - Tạo một thư mục cho kỹ năng của dự án:
mkdir -p ~/agent-skills-lab/.agents/skills/my-favorite-things - Tạo và mở một tệp
SKILL.mdmới cho kỹ năng của bạn: Lệnhcloudshell edit ~/agent-skills-lab/.agents/skills/my-favorite-things/SKILL.mdcloudshell editsẽ mở tệpSKILL.mdtrong trình chỉnh sửa phía trên cửa sổ dòng lệnh. - Thêm nội dung sau vào tệp
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.
Chỉ với một tệp SKILL.md, bạn đã tạo được kỹ năng đầu tiên! Đã đến lúc sử dụng kỹ năng này trong Gemini CLI.
5. Sử dụng kỹ năng của bạn trên Gemini CLI
Giờ đây, bạn đã tạo thành công một kỹ năng và kỹ năng đó đã có thể được Gemini CLI phát hiện vì nằm trong thư mục .agents/skills.
- Bắt đầu Gemini CLI:
Bạn sẽ thấy Gemini CLI nhận ra kỹ năng mới. Bạn có thể cần nhấngeminiEnterđể chấp nhận một số chế độ cài đặt mặc định.
- Yêu cầu Gemini liệt kê những kỹ năng mà Gemini có thể sử dụng trong bối cảnh hiện tại
Bạn sẽ thấy/skillsmy-favorite-thingstrong danh sách các kỹ năng có sẵn. - Hỏi Gemini về màu sắc yêu thích của bạn:
Gemini CLI nên sử dụng kỹ năngWhat is my favorite color?my-favorite-thingsđể trả lời câu hỏi của bạn. Nếu được nhắc, hãy cho phép Gemini CLI sử dụng kỹ năng này.
Đầu ra phải cho thấy Gemini CLI đã sử dụng kỹ năng của bạn và trả lời bằng nội dung như "Xanh dương" hoặc "Màu tôi yêu thích là xanh dương".
Bạn đã hoàn thành! Bạn đã tạo thành công một kỹ năng và thử nghiệm kỹ năng đó bằng Gemini CLI.
Khi bạn đã sẵn sàng kết thúc phiên, hãy nhập /quit rồi nhấn Enter để thoát Gemini CLI.
6. (Không bắt buộc) Tạo và triển khai một ứng dụng lên Firebase Hosting
Ngoài việc tạo kỹ năng của riêng mình, bạn có thể cài đặt các kỹ năng do người khác tạo. Điều này minh hoạ việc sử dụng kỹ năng linh hoạt – các mô-đun kiến thức, hướng dẫn và quy trình công việc độc lập có thể dễ dàng chia sẻ và sử dụng lại.
Kỹ năng của tác nhân cho Firebase là một ví dụ điển hình về các mô-đun di động này. Các chỉ dẫn này được thiết kế để giúp trợ lý AI hiểu rõ các phương pháp hay nhất của Firebase và thực hiện các tác vụ phức tạp với độ chính xác cao hơn và chi phí mã thông báo thấp hơn.
Giờ đây, hãy sử dụng Agent Skills cho Firebase để tạo một ứng dụng web "Việc cần làm", có tính năng xác thực người dùng và cơ sở dữ liệu, rồi triển khai ứng dụng đó vào Lưu trữ Firebase.
Thiết lập dự án
- Nếu bạn vẫn đang ở trong Gemini CLI, hãy nhập
/quitđể thoát. - Tạo một thư mục mới cho dự án của bạn rồi chuyển đến thư mục đó:
mkdir ~/todo-app && cd ~/todo-app - Đăng nhập vào Firebase bằng Tài khoản Google của bạn. Sử dụng cờ
--no-localhostvì bạn đang ở trong Cloud Shell:firebase login --no-localhost- Tương tác với lời nhắc trên giao diện dòng lệnh:
- Khi được hỏi
Enable Gemini in Firebase features?, hãy nhậpY(để chọn Có) rồi nhấnEnter. - Khi được hỏi
Allow Firebase to collect CLI and Emulator Suite usage and error reporting information?, hãy nhậpY(để chọn Có) rồi nhấnEnter.
- Khi được hỏi
- Uỷ quyền trong trình duyệt:
- Bạn sẽ thấy một URL trong cửa sổ dòng lệnh. Nhấp vào đường liên kết (nếu không nhấp được, hãy đánh dấu URL trong Cloud Shell để sao chép, sau đó dán vào trình duyệt) để mở trang đăng nhập trong một thẻ trình duyệt mới.
- Bước 1/3 (Xác nhận lệnh): Nhấp vào Có, tôi vừa chạy lệnh này.
- Bước 2/3 (Xác nhận mã phiên): Đảm bảo Mã phiên khớp với mã phiên xuất hiện trong thiết bị đầu cuối của bạn, sau đó nhấp vào Có, đây là mã phiên của tôi.
- Bước 3/3 (Sao chép mã): Nhấp vào Sao chép để sao chép mã uỷ quyền vào bảng nhớ tạm.
- Hoàn tất quá trình đăng nhập:
- Quay lại cửa sổ dòng lệnh Cloud Shell rồi dán mã uỷ quyền tại dấu nhắc
? Enter authorization code:. - Nhấn
Enter.
- Quay lại cửa sổ dòng lệnh Cloud Shell rồi dán mã uỷ quyền tại dấu nhắc
✔ Success! Logged in as. - Tương tác với lời nhắc trên giao diện dòng lệnh:
Cài đặt Kỹ năng của tác nhân cho Firebase
Sau khi tạo thư mục dự án, bạn nên cài đặt Agent Skills cho Firebase trong thư mục đó.
Bạn có thể cài đặt Agent Skills cho Firebase bằng skills CLI trong thiết bị đầu cuối:
npx skills add firebase/agent-skills
Trong quá trình cài đặt, bạn sẽ được nhắc chọn những kỹ năng cần cài đặt. Sử dụng các phím mũi tên để di chuyển trong danh sách và phím cách để chọn những kỹ năng này.
firebase-basicsfirebase-hosting-basicsfirebase-auth-basicsfirebase-firestore-enterprise-native-mode

Đối với các lời nhắc tiếp theo, bạn có thể chấp nhận các giá trị mặc định một cách an toàn bằng cách nhấn Enter.
Lệnh này sẽ tải xuống và cài đặt các kỹ năng, bao gồm cả firebase-basics và firebase-hosting-basics, giúp bạn có thể sử dụng các kỹ năng này trong Gemini CLI cùng với kỹ năng my-favorite-things.
Để tìm hiểu thêm về Kỹ năng của tác nhân cho Firebase, hãy xem các kỹ năng hiện có.
Tạo và triển khai một ứng dụng web cơ bản
- Bật các API bắt buộc cho dự án của bạn:
gcloud services enable \ cloudresourcemanager.googleapis.com \ firebase.googleapis.com - Bật Firebase trên dự án hiện tại của bạn trên Google Cloud:
firebase projects:addfirebase ${GOOGLE_CLOUD_PROJECT} - Bắt đầu Gemini CLI:
gemini - Yêu cầu Gemini tạo một
index.htmlcơ bản: Gemini sẽ yêu cầu tạoGenerate an index.html file with the content "Hello Firebase Hosting" and deploy the application to Firebase Hosting using the current Google Cloud Project.index.htmlvà thực thifirebase. NhấnEnterđể cho phép Gemini CLI làm việc này.Gemini CLI nên sử dụng Agent Skills cho Firebase để tạo và triển khai trang web của bạn. Hướng dẫn nhân viên hỗ trợ cùng với các bước phê duyệt nếu cần.
Khi quá trình triển khai hoàn tất, hệ thống sẽ cung cấp một URL cho ứng dụng web của bạn. Hãy sử dụng ctrl+click (Windows/Linux) hoặc cmd+click (Mac) để mở các đường liên kết trong thiết bị đầu cuối Cloud Shell Editor. Truy cập vào URL của ứng dụng bạn đã triển khai!
Thêm Xác thực Firebase
- Khởi động Gemini CLI nếu chưa khởi động:
Gemini có thể hỏi những câu hỏi như "Bạn có tin tưởng thư mục này không?" NhấngeminiEnterđể chấp nhận các giá trị mặc định. - Giờ đây, hãy yêu cầu Gemini thêm tính năng Đăng nhập bằng Google:
Gemini có thể yêu cầu bạn tạo hoặc cập nhật các tệp như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.cssvàscript.js. Cho phép Gemini làm như vậy. Gemini có thể yêu cầu bạn thực hiện một số thao tác trong bảng điều khiển của Firebase. CLI có thể thực hiện hầu hết các thao tác này nếu bạn yêu cầu, nhưng bạn có thể phải hoàn tất các bước theo cách thủ công (chẳng hạn như bật Google OAuth) nếu phiên bản Cloud Shell của bạn đã cài đặt phiên bản cũ hơn của Firebase CLI.
Sau khi triển khai xong, ứng dụng sẽ cung cấp một URL cho ứng dụng web của bạn. Hãy dùng ctrl+click (Windows/Linux) hoặc cmd+click (Mac) để mở các đường liên kết trong thiết bị đầu cuối Cloud Shell Editor. Truy cập vào URL của ứng dụng bạn đã triển khai!
Để xem các thay đổi mới nhất, bạn có thể cần thực hiện thao tác "Làm mới hoàn toàn" bằng ctrl+shift+R (Windows/Linux) hoặc cmd+shift+R (Mac).
Thêm Cloud Firestore
- Khởi động Gemini CLI nếu chưa khởi động:
Gemini có thể hỏi những câu hỏi như "Bạn có tin tưởng thư mục này không?" NhấngeminiEnterđể chấp nhận các giá trị mặc định. - Yêu cầu Gemini thêm Firestore để lưu các việc cần làm:
Gemini sẽ cập nhật các tệp. Cho phép ứng dụng làm như vậy.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.
Sau khi triển khai xong, ứng dụng sẽ cung cấp một URL cho ứng dụng web của bạn. Hãy dùng ctrl+click (Windows/Linux) hoặc cmd+click (Mac) để mở các đường liên kết trong thiết bị đầu cuối Cloud Shell Editor. Truy cập vào URL của ứng dụng bạn đã triển khai!
Để xem các thay đổi mới nhất, bạn có thể cần thực hiện thao tác "Làm mới hoàn toàn" bằng ctrl+shift+R (Windows/Linux) hoặc cmd+shift+R (Mac).
Nếu ứng dụng của bạn không hoạt động như mong đợi, hãy tiếp tục làm việc với Gemini CLI để có được chức năng mà bạn mong muốn. Ví dụ: shell Hide the task form when the user is logged out. Update the security rules so the user can see their TODOs.
Hãy tiếp tục thử nghiệm với phòng thí nghiệm này để thêm những tính năng bạn muốn thấy trong ứng dụng Firebase mới.
7. Kết luận
Xin chúc mừng! Bạn đã tạo thành công một kỹ năng và tìm hiểu cách cài đặt các kỹ năng bổ sung cho Gemini CLI.
(Không bắt buộc) Dọn dẹp
Nếu muốn dọn dẹp, bạn có thể xoá dự án trên đám mây để tránh phát sinh thêm chi phí.
Nếu muốn, hãy xoá dự án:
gcloud projects delete $GOOGLE_CLOUD_PROJECT
Bạn cũng có thể xoá các tài nguyên không cần thiết khỏi ổ đĩa Cloud Shell để giải phóng dung lượng.
- Xoá thư mục phòng thí nghiệm (thao tác này sẽ xoá cả kỹ năng và ứng dụng):
rm -rf ~/agent-skills-lab - Xoá thư mục ứng dụng "Việc cần làm" (nếu bạn đã tạo thư mục này bên ngoài):
rm -rf ~/todo-app
Nếu cần đặt lại Cloud Shell về trạng thái mặc định, bạn có thể tham khảo tài liệu chính thức để biết hướng dẫn về cách thực hiện một cách an toàn.