Mấy hôm nay trong nhóm Antigravity Việt Nam có một bài chia sẻ được chuyền tay khá nhiều, nói về dự án mã nguồn mở tên AI-Money do bạn Dương Birken công bố, kèm lời giới thiệu rằng con agent tự thiết kế sản phẩm và tự kiếm được chút tiền trả cho máy chủ. Tôi đọc qua thì thấy cái đáng quan tâm không nằm ở số tiền, mà ở thư mục kỹ năng agent đi kèm.
Tôi dành một buổi tối clone repo về đọc hết mã nguồn, kiểm lại từng con số, rồi thử nhét vào Antigravity xem sao.
Repo nằm ở github.com/duongbirken2510/AI-Money, tạo ngày 3 tháng 11, đến lúc tôi kiểm đạt 37 sao và 33 lượt fork, tỉ lệ gần một-một cho thấy người ta kéo về chạy thử chứ không chỉ bấm sao. Toàn bộ dự án có 92 tệp, HTML khoảng 653 nghìn ký tự và Python khoảng 602 nghìn.
Về kiến trúc, đây là máy chủ web viết bằng Python thuần, không framework, chỉ dựa vào ThreadingHTTPServer trong thư viện chuẩn, cộng SQLite chế độ WAL và một cổng nhận webhook chuyển khoản của SePay.
Điểm đáng chú ý là tác giả ghi dự án chỉ cần một thư viện ngoài là Pillow để vẽ ảnh thẻ PNG phía máy chủ. Tôi mở cả chín tệp Python đối chiếu thì đúng là vậy, kể cả đoạn xác thực chữ ký webhook bằng HMAC.
Bốn kỹ năng agent mới là thứ đáng lấy
Bài giới thiệu trên Facebook nói có ba kỹ năng, nhưng đếm trong thư mục .agents/skills thì tôi thấy bốn, vì tác giả bổ sung thêm một cái ở lần cập nhật gần nhất. Cả bốn đều là tệp SKILL.md viết tay chứ không sinh tự động, mỗi tệp từ bốn đến tám nghìn ký tự.
Kỹ năng đầu tiên tên landing-page-craft, mô tả hai hệ thẩm mỹ dùng cho hai nhóm ngành khác hẳn nhau. Hệ thứ nhất dành cho thực phẩm và đặc sản, với nền giấy kem ấm, chữ nâu trầm, tiêu đề dùng font có chân còn thân bài dùng Be Vietnam Pro. Hệ thứ hai dành cho phần mềm và khoá học, với nền tối sâu, thẻ kính mờ, điểm nhấn xanh ngọc hoặc tím hồng. Tác giả ghi mã màu cụ thể từng mã, không nói chung chung kiểu dùng màu hài hoà.
Kỹ năng thứ hai là threejs-3d-vietnam-craft, dựng không gian ba chiều bằng Three.js với vật liệu sinh hoàn toàn bằng canvas, không tải texture từ ngoài, kèm hình học kiến trúc chùa Việt như mái đao cong hay sân gạch Bát Tràng.
Kỹ năng thứ ba là facebook-group-posting, cái tôi đọc kỹ nhất vì tôi cũng có sẵn quy trình đăng bài tự động. Nó ghi hai luật cứng: tuyệt đối không để đường dẫn hay tên miền trong phần chữ của bài đăng nhóm vì bộ lọc Admin Assist sẽ từ chối ngay, và tuyệt đối không bấm nút Đăng nếu chưa xác nhận trong hộp soạn thảo có ảnh xem trước thật. Cách kiểm ảnh cũng ghi cụ thể, dựa vào ảnh có địa chỉ dạng blob hoặc chiều rộng tối thiểu.
Kỹ năng thứ tư là visual-infographic-craft, hướng dẫn dựng poster và biểu đồ SVG như vòng tròn toả tia hay cột so sánh chỉ số.
Kiểm tra bảo mật và một chỗ thiếu nghiêm trọng
Trước khi cài bất cứ thứ gì lên máy, tôi quét sáu tệp nguồn chính để tìm khoá bí mật bị lộ, gồm khoá Gemini, khoá quản trị, số tài khoản thật, chữ ký webhook và khoá riêng. Kết quả không có cái nào, còn tệp .gitignore chặn đúng những thứ cần chặn.
Nhưng có một chỗ tôi phải nói thẳng vì nó quyết định bạn được dùng repo này đến đâu: dự án không có tệp giấy phép. Không MIT, không Apache, không GPL, không có cả một dòng ghi quyền sử dụng trong README. Theo cách hiểu thông thường của luật bản quyền, công bố mã nguồn mà không kèm giấy phép nghĩa là tác giả vẫn giữ toàn bộ quyền, người khác chỉ được đọc để học, không mặc nhiên được sao chép vào sản phẩm của mình rồi bán.
Điều này không làm repo mất giá trị, nhưng đổi cách dùng: bạn xem để hiểu cách tổ chức kỹ năng, học từ các quy tắc viết tay, rồi viết lại theo cách của mình. Còn việc bê nguyên bốn thư mục kỹ năng vào dự án thương mại thì nên hỏi tác giả một câu trước.
Cài lên Antigravity được không
Được, và dễ hơn tôi tưởng. Tài liệu chính thức của Antigravity ghi rõ hai nơi nó đọc kỹ năng: thư mục .agents/skills/ nằm trong gốc dự án dùng cho phạm vi từng dự án, và thư mục ~/.gemini/config/skills/ dùng cho phạm vi toàn máy áp cho mọi dự án bạn mở. Bản cũ vẫn nhận .agent/skills với một chữ a, nhưng mặc định hiện tại là số nhiều.
Cấu trúc repo AI-Money khớp đúng chuẩn đó, mỗi kỹ năng là một thư mục con chứa tệp SKILL.md có phần đầu dạng YAML gồm tên và mô tả. Bạn chỉ cần chép bốn thư mục sang, không phải sửa hay thêm tệp cấu hình.
Có hai đường chép. Đường thứ nhất là chép vào thư mục toàn máy để mọi dự án đều thấy, phù hợp với landing-page-craft vì làm landing page là việc lặp lại ở nhiều dự án. Đường thứ hai là chép vào .agents/skills của một dự án cụ thể, phù hợp với threejs-3d-vietnam-craft vì nó chỉ có nghĩa trong đúng dự án đang dựng cảnh chùa.
Một lưu ý về cách nó quét: Antigravity chỉ quét sâu một cấp, nên thư mục kỹ năng phải nằm ngay dưới skills/, đừng lồng thêm tầng nữa. Nếu bạn chép cả thư mục .agents từ repo về mà nó nằm trong một thư mục con khác thì Antigravity sẽ không thấy gì cả, và bạn dễ tưởng là kỹ năng hỏng.
Tôi cài cái nào và bỏ cái nào
Tôi chép hai kỹ năng vào thư mục toàn máy. landing-page-craft vì phần mô tả hai hệ thẩm mỹ có mã màu cụ thể giúp tôi khỏi phải quyết định lại từ đầu mỗi lần dựng trang. facebook-group-posting thì tôi đọc để đối chiếu với quy trình đăng bài đang dùng, và nó xác nhận đúng hai chỗ tôi từng mất thời gian: không để đường dẫn trong chữ, và phải kiểm ảnh xem trước thật trước khi bấm nút đăng.
Hai kỹ năng còn lại tôi để nguyên trong repo, vì threejs-3d-vietnam-craft chưa có dự án nào cần và visual-infographic-craft trùng cách tôi dựng ảnh cho blog bằng HTML rồi chụp ra PNG.
Phần máy chủ Python thì tôi không chạy thử, vì một tệp nặng gần hai trăm nghìn ký tự đọc để hiểu kiến trúc thì được, đưa vào vận hành thật thì tôi muốn chia nhỏ trước đã.
Câu hỏi thường gặp
Câu hỏi: Repo không có giấy phép thì tôi có được dùng không? Trả lời: Bạn được đọc để học và tham khảo cách tổ chức, nhưng muốn dùng trong sản phẩm thương mại thì nên liên hệ tác giả xin phép, vì thiếu giấy phép đồng nghĩa với việc tác giả giữ toàn quyền.
Câu hỏi: Kỹ năng viết cho Antigravity có dùng được cho công cụ khác không? Trả lời: Định dạng SKILL.md với phần đầu YAML là chuẩn mở, nên cùng một thư mục có thể dùng cho nhiều công cụ, chỉ khác nhau ở đường dẫn đặt thư mục mà mỗi công cụ quét.
Câu hỏi: Dự án có cần máy chủ mạnh để chạy không? Trả lời: Không, vì toàn bộ viết bằng Python thuần cộng SQLite, nên một máy ảo cấu hình thấp cũng đủ, và bạn có thể xem thêm bài cài gì cho Antigravity trên Windows 11 nếu muốn dựng ngay trên máy cá nhân.
Câu hỏi: Muốn học thêm về cách viết kỹ năng cho agent thì đọc ở đâu? Trả lời: Bạn có thể đọc bài Severian – plugin giúp Hermes nhớ dài hạn để thấy một ví dụ khác về mở rộng năng lực agent, hoặc bài 5 việc nên giao cho AI agent để chọn đúng việc trước khi viết.
Nếu bạn muốn thử, đường ngắn nhất là mở repo, tải riêng thư mục .agents/skills, chép bốn thư mục con vào ~/.gemini/config/skills/, rồi mở Antigravity kiểm trong bảng Customizations. Nhớ đọc phần thiếu giấy phép ở trên trước khi quyết định mang vào việc khách hàng, vì đó là chỗ dễ sai nhất và cũng khó sửa nhất về sau.
Bạn đã thử kỹ năng nào viết tay cho agent chưa, và thấy cái nào thực sự đổi được cách làm việc? Kể tôi nghe ở phần bình luận.
Quét mã QR để đọc bài viết này để xem tiếp trên điện thoại


