Khi sử dụng Antigravity để làm việc với AI Agent, hai khái niệm Skill và Workflow rất dễ gây nhầm lẫn.
Có thể hiểu đơn giản:
Skill = AI biết làm việc như thế nào.
Workflow = AI phải thực hiện quy trình nào.
1. Skill là gì?
Skill là một tập instruction giúp Agent biết cách thực hiện một loại công việc.
Ví dụ, chúng ta muốn AI biết cách phân tích một screenshot UI.
Ta tạo:
.agent/
└── skills/
└── ui-analysis/
└── SKILL.md
SKILL.md có thể viết:
---
name: ui-analysis
description: Analyze UI screenshots and create a UI specification.
---
# UI Analysis
When analyzing a UI screenshot:
1. Identify the page structure.
2. Identify layout regions.
3. Identify UI components.
4. Identify visible fields.
5. Identify visible states.
6. Distinguish visible information from assumptions.
7. Check whether similar components already exist.
8. Do not invent business rules.
9. Do not implement code.
The result should be a structured UI specification.
Skill này nói cho AI biết:
"Nếu phân tích UI thì hãy làm theo cách này."
Nó không nhất thiết phải là một command mà developer trực tiếp gọi.
2. Workflow là gì?
Workflow là một quy trình được đóng gói để Agent thực hiện.
Ví dụ, thay vì mỗi lần phải nói:
Đọc screenshot này.
Phân tích layout.
Kiểm tra component hiện tại.
Tạo ui-spec.md.
Không được implement code.
...
ta tạo một workflow:
.agent/
└── workflows/
└── analyze-ui-image.md
Workflow có thể chứa:
---
description: Analyze a UI image and create a UI specification.
---
## Steps
1. Ask for the UI image path.
2. Read the UI image.
3. Use the UI analysis skill.
4. Inspect existing UI components.
5. Create or update:
docs/ui/ui-spec.md
6. Report the result.
Sau đó developer chỉ cần gọi workflow:
/analyze-ui-image
3. Ví dụ dễ hiểu
Hãy tưởng tượng bạn có một nhân viên.
Skill
Bạn dạy nhân viên:
"Đây là cách phân tích UI."
Nhân viên biết:
Screenshot
↓
Layout
↓
Components
↓
Fields
↓
States
↓
UI Specification
Đó là Skill.
Workflow
Bạn nói:
"Mỗi khi tôi yêu cầu phân tích UI, hãy thực hiện các bước này."
/analyze-ui-image
↓
Đọc image
↓
Phân tích UI
↓
Kiểm tra code hiện tại
↓
Tạo ui-spec.md
Đó là Workflow.
4. Skill và Workflow có thể kết hợp
Đây mới là cách sử dụng tốt khi project lớn.
Ví dụ:
.agent/
├── skills/
│ └── ui-analysis/
│ └── SKILL.md
│
└── workflows/
└── analyze-ui-image.md
Workflow:
/analyze-ui-image
sẽ sử dụng:
ui-analysis Skill
Có thể hình dung:
Workflow quyết định làm gì.
Skill quyết định làm như thế nào.
5. Khi nào chỉ cần Workflow?
Nếu project nhỏ, bạn có thể chỉ dùng Workflow.
Ví dụ:
.agent/
└── workflows/
└── analyze-ui-image.md
Trong file này chứa luôn:
Input
Rules
Steps
Output
Bạn không cần tạo Skill riêng.
Đây là cách đơn giản nhất để bắt đầu.
6. Khi nào nên dùng Skill?
Skill hữu ích khi nhiều Workflow cần cùng một kiến thức hoặc methodology.
Ví dụ project có:
/analyze-ui-image
/review-ui
/create-feature
Cả ba đều cần biết UI convention của project.
Thay vì copy cùng một prompt vào ba workflow:
UI Analysis Rules
UI Components
UI Conventions
...
ta đưa phần dùng chung vào:
.agent/
└── skills/
└── ui-analysis/
└── SKILL.md
Sau đó các Workflow có thể sử dụng Skill này.
Như vậy chỉ cần sửa Skill một lần.
7. Ví dụ thực tế với Spec-Kit
Nếu project đang sử dụng Spec-Kit, ta có thể kết hợp cả ba:
Skill
+
Workflow
+
Spec-Kit
Ví dụ:
/analyze-ui-image
tạo:
docs/ui/ui-spec.md
Sau đó:
/speckit.specify
tạo:
spec.md
Cuối cùng:
/speckit.plan
sử dụng:
spec.md
+
ui-spec.md
+
existing code
Có thể hình dung:
Ở đây:
Skill: cách phân tích UI.
Workflow: quy trình
/analyze-ui-image.Spec-Kit: quy trình Specification → Plan → Tasks → Implementation.
8. Một cách nhớ rất đơn giản
Chỉ cần nhớ hai câu:
Skill
= "AI biết làm việc này như thế nào?"
và:
Workflow
= "Tôi muốn AI thực hiện những bước nào?"
Ví dụ:
Skill:
"Đây là cách phân tích UI."
Workflow:
/analyze-ui-image
"Đọc image → phân tích → kiểm tra code → tạo ui-spec.md"
Nếu project còn nhỏ, bắt đầu bằng Workflow là đủ.
Khi có nhiều workflow sử dụng chung một methodology, hãy tách phần đó thành Skill.
Đây là cách giữ cho các prompt của AI không bị copy-paste và dễ quản lý khi project phát triển.
Nhận xét