Kỹ năng là một thư mục chứa các hướng dẫn (SKILL.md) dạy cho Claude cách xử lý các tác vụ hoặc quy trình cụ thể. Nó là một cách mạnh mẽ để tùy chỉnh Claude mà không phải giải thích lại ưu tiên trong mỗi cuộc trò chuyện.
Trước khi viết bất kỳ code nào, xác định 2-3 use case cụ thể mà kỹ năng của bạn nên hỗ trợ.
text
Use Case: Lập Kế Hoạch Sprint
Trigger: Người dùng nói "giúp tôi lập kế hoạch sprint này"
hoặc "tạo các nhiệm vụ sprint"
Bước:
1. Lấy trạng thái dự án hiện tại
2. Phân tích năng suất và dung lượng nhóm
3. Đề xuất ưu tiên tác vụ
4. Tạo tác vụ với nhãn và ước tính phù hợp
Kết Quả: Sprint được lập kế hoạch đầy đủ
Tạo thư mục với cấu trúc này:
text
ten-ky-nang/
├── SKILL.md # Bắt buộc
├── scripts/ # Tùy chọn
│ └── validate.py
├── references/ # Tùy chọn
│ └── examples.md
└── assets/ # Tùy chọn
└── template.md
Yêu CầuĐúngSaiTên FileSKILL.mdSKILL.MD, skill.mdTên Thư Mụcmy-skill-nameMy Skill NameFormatkebab-casesnake_case, CamelCase
Đây là phần quan trọng nhất.
yaml
---
name: ten-ky-nang
description: No lam gi. Su dung khi nao.
---
name (Bắt buộc)my-skill-namedescription (Bắt buộc)Phải bao gồm:
yaml
# Tốt
description: Quan ly Linear sprint planning. Su dung khi
"sprint planning", "create tasks", "project planning".
# Xấu
description: Giup voi cac du an.
license (Tùy chọn)yaml
license: MIT
metadata (Tùy chọn)yaml
metadata:
author: Tác Giả
version: 1.0.0
category: productivity
tags: [automation, workflow]
yaml
# Sai - thiếu dấu phân cách
name: my-skill
description: Does things
# Sai - indentation
metadata:
author: John
# Đúng
---
name: my-skill
description: Does things
metadata:
author: John
---
Sau frontmatter, viết hướng dẫn rõ ràng.
markdown
# Tên Kỹ Năng
## Hướng Dẫn
### Bước 1: [Tiêu đề]
Mô tả rõ ràng.
```bash
python scripts/example.py --input file.txt
Kết quả dự kiến: Mô tả output
Chi tiết thêm.
Người dùng nói: "..."
Hành động:
Kết quả: ...
Nguyên nhân: ... Giải pháp: ...
text
### Best Practices
✅ **Hành động Cụ Thể**
Chạy python scripts/validate.py --input data.csv để
kiểm tra dữ liệu.
Nếu xác thực thất bại:
text
✅ **Xử Lý Lỗi**
```markdown
### Lỗi: Kết Nối MCP Không Thành Công
Nếu "Connection refused":
1. Xác minh server MCP chạy
2. Kiểm tra API key hợp lệ
3. Thử kết nối lại
✅ Tham Chiếu Tài Liệu
text
Xem `references/api-guide.md` để:
- Hướng dẫn rate limiting
- Mẫu pagination
- Xử lý error codes
Mục tiêu: Skill tải khi nên, không tải khi không nên
text
Nên kích hoạt:
- "Giúp tôi tạo kỹ năng"
- "Hướng dẫn viết YAML"
- "Tôi muốn xây dựng skill"
Không nên kích hoạt:
- "Thời tiết hôm nay?"
- "Viết code Python"
Mục tiêu: Verify output đúng
text
Test: Tạo dự án với 5 task
Cho: Tên "Q4 Planning", 5 mô tả
Khi: Skill chạy
Thì:
- Dự án tạo thành công
- 5 task được tạo
- Tất cả liên kết với dự án
- 0 lỗi
Mục tiêu: Prove skill improve
text
Không có skill:
- 15 tin nhắn chat
- 3 lỗi API
- 12,000 tokens
Với skill:
- 2 câu hỏi
- 0 lỗi
- 6,000 tokens
markdown
# Workflow: Onboard Khách Hàng
### Bước 1: Tạo Tài Khoản
Gọi create_customer
Param: name, email, company
### Bước 2: Thanh Toán
Gọi setup_payment_method
Chờ: verification
### Bước 3: Subscription
Gọi create_subscription
Param: plan_id, customer_id
### Bước 4: Email
Gọi send_email
Template: welcome
markdown
# Phase 1: Design (Figma)
1. Export assets
2. Generate spec
3. Create manifest
# Phase 2: Storage (Drive)
1. Create folder
2. Upload assets
3. Generate links
# Phase 3: Tasks (Linear)
1. Create tasks
2. Attach links
3. Assign team
markdown
# Step 1: Draft
1. Fetch data
2. Generate draft
3. Save to temp
# Step 2: Check
1. Run validation
2. Identify issues
# Step 3: Refine
1. Fix issues
2. Regenerate
3. Re-validate
4. Repeat if needed
Nguyên nhân: Tên file sai
Sửa:
SKILL.mdls -la nên thấy SKILL.mdNguyên nhân: YAML syntax sai
Sửa:
yaml
# Sai
name: my-skill
description: Does things
# Đúng
---
name: my-skill
description: Does things
---
Nguyên nhân: Có spaces hoặc uppercase
Sửa:
yaml
# Sai
name: My Cool Skill
# Đúng
name: my-cool-skill
Triệu chứng: Skill không bao giờ tải
Nguyên nhân: Description không tốt
Sửa:
Triệu chứng: Skill tải cho queries không liên quan
Sửa:
yaml
description: Data analysis for CSV files. For statistical modeling,
regression. Do NOT use for simple exploration.
yaml
# Xấu
description: Processes documents
# Tốt
description: Processes PDF legal documents for contract review
Triệu chứng: Skill tải nhưng lỗi call MCP
Kiểm tra:
python
#!/usr/bin/env python3
"""Validate skill output"""
def validate_output(output_file):
try:
with open(output_file, 'r') as f:
content = f.read()
if not content.strip():
return False, "File empty"
if "# " not in content:
return False, "No headings"
return True, "Valid output"
except Exception as e:
return False, str(e)
Tạo skill trong 5 bước:
Key points:
Made by Claude VN | MIT License | v1.0.0