Thủ thuật
Nâng cấp kỹ năng cho Google Antigravity: Xây dựng luồng công việc UI tương tác
(giờ Việt Nam)
Tóm tắt AI
Bài viết hướng dẫn cách biến AI từ trình phân tích văn bản thành người phỏng vấn chủ động bằng cách nhúng UI gốc vào lệnh SKILL.md, hỗ trợ lưu trạng thái qua user_prefs.json.
Bản dịch AI

Bằng cách nhúng các thành phần giao diện trò chuyện (chat UI) trực tiếp vào các chỉ dẫn trong tệp SKILL.md, bạn sẽ biến tác nhân (agent) của mình từ một trình phân tích văn bản thụ động thành một người phỏng vấn kỹ thuật chủ động với trải nghiệm người dùng đầy thú vị.
Dưới đây là những gì bạn sẽ nhận được từ bài phân tích chuyên sâu này:
📝 Về loạt bài này: Chào mừng bạn đến với loạt bài "Nâng tầm kỹ năng cho Antigravity Agent", một hướng dẫn kỹ thuật gồm 5 phần giúp bạn làm chủ các công cụ của agent nhằm giảm bớt gánh nặng điều phối và biến các AI agent thành những cộng sự tự chủ: ask_question, generate_image, define_subagent + invoke_subagent, send_message và manage_subagents.
Giải phẫu một kỹ năng tương tác
Trong Antigravity, các khả năng của agent được đóng gói dưới dạng các kỹ năng (skills). Đây là các thư mục chuyên biệt chứa tệp SKILL.md với phần YAML frontmatter để khám phá và các chỉ dẫn Markdown để thực thi. Theo mặc định, các agent sẽ diễn giải chỉ dẫn theo trình tự và thực thi các lệnh terminal hoặc chỉnh sửa tệp. Tuy nhiên, khi một Antigravity agent gặp các chỉ dẫn rõ ràng để gọi công cụ ask_question, nó sẽ tạm dừng thực thi và hiển thị một modal giao diện tương tác gốc ngay trong cửa sổ trò chuyện.
Việc gọi công cụ đơn giản này giúp thu hẹp khoảng cách giữa tính tự chủ của agent và sự phối hợp của con người (Human-in-the-loop - HITL). Thay vì phải đoán các giá trị tham số hoặc phân tích các câu lệnh mơ hồ, agent sẽ trình bày các nút radio, hộp kiểm (checkbox) và các trường nhập liệu có cấu trúc.
Để loại bỏ việc hỏi đi hỏi lại giữa các phiên làm việc và các subagent, tôi kết hợp việc truy vấn qua giao diện với cơ chế duy trì trạng thái (persistent state hydration). Vòng đời của agent của tôi tuân theo một trình tự có cấu trúc:
Lệnh tích hợp /grill-me
Trước khi đi sâu vào việc tạo kỹ năng tùy chỉnh, cần lưu ý rằng Antigravity hỗ trợ sẵn tính năng căn chỉnh tương tác thông qua lệnh gạch chéo /grill-me.
Khi bạn kích hoạt /grill-me trong một phiên trò chuyện, agent sẽ tạm dừng thực thi mã để tiến hành một cuộc phỏng vấn nghiêm ngặt với nhiều câu hỏi. Thay vì tự đưa ra các giả định về kiến trúc, agent sẽ hệ thống hóa việc truy vấn bạn về các đánh đổi trong thiết kế, các trường hợp biên (edge cases) và giới hạn triển khai cho đến khi mọi sự mơ hồ được giải quyết.
Mặc dù /grill-me là một công cụ tích hợp tuyệt vời cho việc lập kế hoạch phiên làm việc đột xuất và thu thập yêu cầu chung, các Kỹ năng Tương tác (Interactive Skills) tùy chỉnh còn đưa khái niệm này tiến xa hơn. Bằng cách soạn thảo các kỹ năng markdown tùy chỉnh có khả năng gọi các modal lựa chọn giao diện, các đội ngũ kỹ thuật có thể chuẩn hóa các quy trình phỏng vấn đặc thù (như tạo khung biểu mẫu hoặc triển khai đám mây) và lưu trữ các câu trả lời thu được trực tiếp vào các tệp cấu hình không gian làm việc để làm cơ sở cho subagent.
Bạn có thể tìm hiểu thêm về lệnh /grill-me trong bài viết của Richard Seroter: "Crafting an agent team that still includes me" (Tạm dịch: Xây dựng một đội ngũ agent vẫn có sự tham gia của tôi).
Hướng dẫn tham khảo về quy trình làm việc với giao diện tương tác của chúng tôi
Để thấy kiến trúc này hoạt động, hãy xem cách tôi đã triển khai kỹ năng mẫu making-forms-demo. Kỹ năng này phỏng vấn các lập trình viên trước khi tạo một biểu mẫu web, đảm bảo các quy tắc xác thực và bố cục nhãn khớp với tiêu chuẩn của nhóm.

Hình 1: Khi chúng ta nhập lệnh "Make a web form" (Tạo một biểu mẫu web), kỹ năng making-forms-demo của chúng ta sẽ được agent tự động phát hiện và đọc vào ngữ cảnh. Kỹ năng này chỉ dẫn agent trình bày cho người dùng một loạt câu hỏi bằng cách sử dụng công cụ ask_question.
Giai đoạn 1: Nạp trạng thái không gian làm việc (Workspace State Hydration)
Trước khi hiển thị các thành phần giao diện, kỹ năng này chỉ dẫn agent đọc trạng thái hiện có từ tệp user_prefs.json.
Vào chế độ toàn màn hình Thoát chế độ toàn màn hình
Giai đoạn 2: Giao diện tương tác
Nếu các tùy chọn ưu tiên trước đó đã tồn tại, agent sẽ thêm tiền tố "(Current Setting) " vào các chuỗi đó và đặt chúng ở đầu mảng tùy chọn. Khi được thực thi, khối Markdown này sẽ tạo ra một modal tương tác hỗ trợ các hộp kiểm chọn nhiều (is_multi_select: true). Vì các tùy chọn được liệt kê rõ ràng, agent sẽ không bao giờ phải đoán các yêu cầu xác thực.
Vào chế độ toàn màn hình Thoát chế độ toàn màn hình
Giai đoạn 3: Xử lý lựa chọn với các phương án dự phòng
Đối với các lựa chọn kiến trúc loại trừ lẫn nhau, kỹ năng này cấu hình các danh sách chọn đơn. Bằng cách bỏ qua chuỗi "other" (khác) trong mảng tùy chọn, agent sẽ tự động kích hoạt tùy chọn nhập liệu mặc định của Antigravity trong modal giao diện.
Vào chế độ toàn màn hình Thoát chế độ toàn màn hình
Nếu lập trình viên chọn tùy chọn nhập liệu trong modal và gõ "Inline below label", agent sẽ ghi lại chuỗi tùy chỉnh đó trực tiếp vào FIELD_VALIDATION_LOCATION mà không cần phân tích cú pháp tùy chỉnh.
Giai đoạn 4: Duy trì trạng thái
Sau khi người dùng gửi modal, agent sẽ làm sạch các chuỗi đầu vào bằng cách loại bỏ tiền tố "(Current Setting) " và ghi cấu trúc đã hoàn thiện trở lại thư mục gốc của không gian làm việc:
Vào chế độ toàn màn hình Thoát chế độ toàn màn hình
Bằng cách lồng các tùy chọn biểu mẫu dưới namespace "FORMS", tệp cấu hình không gian làm việc vẫn giữ được sự gọn gàng và khả năng mở rộng. Các kỹ năng khác, như triển khai hoặc khởi tạo cơ sở dữ liệu, có thể quản lý trạng thái của riêng chúng một cách an toàn trong cùng một gốc JSON mà không gây xung đột.

Hình 2: Lần tiếp theo kỹ năng được sử dụng, nó sẽ tìm thấy tệp user_prefs.json đã tạo trước đó và sử dụng dữ liệu để đánh dấu các phản hồi phù hợp là "(Current Selection) ". Tệp tùy chọn sẽ được cập nhật nếu người dùng thay đổi lựa chọn của họ.
4 điều cần tránh khi tạo các kỹ năng tương tác
Khi bạn chuyển đổi các kỹ năng tùy chỉnh của nhóm mình từ các câu lệnh văn bản tĩnh sang các trình phỏng vấn tương tác, hãy tuân thủ bốn phương pháp tốt nhất sau đây để giữ cho quy trình làm việc của bạn luôn hiệu quả và dễ bảo trì:
1. Tránh gây mệt mỏi vì quá nhiều tùy chọn (option-fatigue)
Các modal tương tác được thiết kế để quét nhanh. Nếu danh sách lựa chọn vượt quá bảy mục, người dùng có thể bị choáng ngợp và quay lại việc đoán mò. Khi xử lý các tập dữ liệu lớn, chẳng hạn như hàng trăm chiến dịch tiếp thị hoặc vùng đám mây, đừng bao giờ đổ trực tiếp mảng thô vào khối ask_question. Thay vào đó, hãy hướng dẫn agent truy vấn một công cụ MCP trước để lọc các lựa chọn xuống danh sách 5 mục hàng đầu phù hợp với không gian làm việc hiện tại trước khi hiển thị modal.
2. Tránh mẫu chống đối (anti-pattern) về việc nhập liệu thủ công
Một sai lầm phổ biến là thêm rõ ràng "Other" hoặc "Custom value" vào mảng tùy chọn trong SKILL.md. Trong Antigravity, công cụ ask_question sẽ tự động hiển thị một trường văn bản nhập liệu mặc định bất cứ khi nào một câu hỏi tương tác được đưa ra. Việc thêm rõ ràng chuỗi "other" sẽ tạo ra các tùy chọn dư thừa, gây nhầm lẫn và buộc agent phải xử lý thêm một bước nhắc văn bản phụ không cần thiết.
3. Tránh các khóa gốc phẳng (flat root keys) trong các tệp cấu hình
Bài viết được AI dịch và tổng hợp tự động từ Google AI: DEV. Liên kết bài gốc ở phía trên. Dữ liệu đồng bộ qua API công khai được ghi nguồn tại AI HOT (canonical) ↗. AIHOT.vn luôn dẫn nguồn đầy đủ — nếu bạn thấy điểm cần chỉnh sửa, hãy gửi ý kiến tại trang phản hồi.