(Show All)_ · **Bài 2/6** · [🌐 English](../../en/02-creating-your-first-skill/en.md)
← Bài trước · 📋 Mục lục khoá · Bài sau →
Tạo skill đầu tiên của bạn
👨💻 Track: Developer Track · 📚 Course: Introduction to Agent Skills · ⏱ 20 phút · 🧭
Path C
📖 Nội dung bài học
Bạn sẽ học được gì
Thời gian ước tính: 20 phút
Cuối bài học này, bạn sẽ có thể:
- Tạo một skill từ đầu với cấu trúc frontmatter phù hợp
- Kiểm tra và xác minh một skill tải thành công trong Claude Code
- Giải thích cách Claude Code khớp các yêu cầu đến với các skill có sẵn
- Mô tả thứ tự ưu tiên của skill (Enterprise, Personal, Project, Plugins)
Tạo skill đầu tiên của bạn
(4 phút)
Video này hướng dẫn cách xây dựng một skill từ đầu — một skill mô tả PR cá nhân hoạt động trên tất cả các dự án của bạn. Bạn sẽ thấy chính xác cách cấu trúc tệp SKILL.md, kiểm tra nó và hiểu cách Claude Code khám phá và khớp các skill với yêu cầu của bạn. Video cũng đề cập đến thứ tự ưu tiên xác định skill nào được chọn khi tên bị trùng lặp.
Điểm chính cần nhớ
- Skill là một thư mục chứa tệp
SKILL.mdvới metadata (tên, mô tả) trong frontmatter và hướng dẫn bên dưới. - Claude chỉ tải tên và mô tả skill khi khởi động, sau đó khớp các yêu cầu đến với các mô tả đó bằng cách khớp ngữ nghĩa.
- Bạn nhận được một prompt xác nhận trước khi Claude tải nội dung đầy đủ của skill vào ngữ cảnh.
- Ưu tiên cho xung đột tên: Enterprise → Personal → Project → Plugins.
- Để cập nhật một skill, hãy chỉnh sửa
SKILL.mdcủa nó. Để xóa một skill, hãy xóa thư mục của nó. Luôn khởi động lại Claude Code để các thay đổi có hiệu lực.
Hãy cùng đi qua việc tạo một skill từ đầu, sau đó xem cách Claude Code thực sự tải và khớp các skill ở chế độ nền.
Tạo một Skill
Chúng ta sẽ xây dựng một skill cá nhân để dạy Claude cách viết mô tả PR theo một định dạng nhất quán. Vì đây là một skill cá nhân, nó nằm trong thư mục chính của bạn và hoạt động trên tất cả các dự án của bạn.
Đầu tiên, tạo một thư mục cho skill của bạn bên trong thư mục skills. Tên thư mục phải khớp với tên skill của bạn:
mkdir -p ~/.claude/skills/pr-description
Sau đó, tạo một tệp SKILL.md bên trong thư mục đó. Tệp có hai phần, được phân tách bằng các dấu gạch ngang của frontmatter:
---
name: pr-description
description: Viết mô tả pull request. Sử dụng khi tạo PR, viết PR, hoặc khi người dùng yêu cầu tóm tắt các thay đổi cho pull request.
---
Khi viết mô tả PR:
1. Chạy `git diff main...HEAD` để xem tất cả các thay đổi trên nhánh này.
2. Viết mô tả theo định dạng sau:
## What (Cái gì)
Một câu giải thích PR này làm gì.
## Why (Tại sao)
Bối cảnh ngắn gọn về lý do thay đổi này là cần thiết.
## Changes (Thay đổi)
- Các gạch đầu dòng về những thay đổi cụ thể đã thực hiện.
- Nhóm các thay đổi liên quan lại với nhau.
- Đề cập đến bất kỳ tệp nào đã xóa hoặc đổi tên.
Tên xác định skill của bạn. Mô tả cho Claude biết khi nào nên sử dụng nó — đây là tiêu chí khớp. Mọi thứ sau bộ dấu gạch ngang thứ hai là các hướng dẫn mà Claude tuân theo khi skill được kích hoạt.

Kiểm tra Skill của bạn
Claude Code tải các skill khi khởi động, vì vậy hãy khởi động lại phiên của bạn sau khi tạo một skill. Bạn có thể xác minh nó có sẵn bằng cách kiểm tra danh sách các skill có sẵn.

Bạn sẽ thấy skill của mình được liệt kê. Để kiểm tra nó, hãy thực hiện một số thay đổi trên một nhánh và nói điều gì đó như "viết mô tả PR cho các thay đổi của tôi." Claude sẽ cho biết nó đang sử dụng skill mô tả PR, kiểm tra diff của bạn và viết mô tả theo mẫu của bạn — cùng một định dạng mỗi lần.
Cách Khớp Skill Hoạt Động
Khi Claude Code khởi động, nó quét bốn vị trí để tìm các skill nhưng chỉ tải tên và mô tả — không phải nội dung đầy đủ. Đây là một chi tiết quan trọng.
Khi bạn gửi một yêu cầu, Claude so sánh tin nhắn của bạn với mô tả của tất cả các skill có sẵn. Ví dụ: "giải thích chức năng này làm gì" sẽ khớp với một skill được mô tả là "giải thích mã bằng sơ đồ trực quan" vì ý định trùng lặp.
Sau khi tìm thấy kết quả khớp, Claude sẽ yêu cầu bạn xác nhận tải skill. Bước xác nhận này giúp bạn biết ngữ cảnh nào Claude đang lấy vào. Sau khi bạn xác nhận, Claude sẽ đọc tệp SKILL.md hoàn chỉnh và làm theo hướng dẫn của nó.

Ưu tiên Skill
Nếu bạn clone một kho lưu trữ có skill với tên giống như một trong các skill cá nhân của bạn, skill nào sẽ được chọn? Có một thứ tự ưu tiên rõ ràng:
- Enterprise — cài đặt được quản lý, ưu tiên cao nhất.
- Personal — thư mục chính của bạn (
~/.claude/skills). - Project — thư mục
.claude/skillsbên trong một kho lưu trữ. - Plugins — các plugin đã cài đặt, ưu tiên thấp nhất.
Điều này cho phép các tổ chức thực thi các tiêu chuẩn thông qua các skill enterprise trong khi vẫn cho phép tùy chỉnh cá nhân. Nếu công ty của bạn có một skill "code-review" enterprise và bạn tạo một skill "code-review" cá nhân cùng tên, phiên bản enterprise sẽ được ưu tiên.
Để tránh xung đột, hãy sử dụng tên mô tả. Thay vì chỉ "review", hãy sử dụng một cái gì đó như "frontend-review" hoặc "backend-review".
Cập nhật và Xóa Skill
Để cập nhật một skill, hãy chỉnh sửa tệp SKILL.md của nó. Để xóa một skill, hãy xóa thư mục của nó. Khởi động lại Claude Code sau bất kỳ thay đổi nào để chúng có hiệu lực.
Suy ngẫm bài học
- Có một tác vụ nào trong quy trình làm việc hàng ngày của bạn mà bạn có thể biến thành một skill ngay bây giờ không? Mô tả của nó sẽ trông như thế nào?
- Thứ tự ưu tiên của skill có thể ảnh hưởng như thế nào đến chiến lược quản lý skill của nhóm bạn? Bạn sẽ dựa nhiều hơn vào các skill cá nhân hay cấp dự án?
Tiếp theo là gì
Trong bài học tiếp theo, bạn sẽ tìm hiểu về các tùy chọn cấu hình nâng cao bao gồm các trường metadata, giới hạn công cụ với allowed-tools và cách cấu trúc các skill lớn hơn bằng cách sử dụng tiết lộ lũy tiến và tổ chức đa tệp.
Phản hồi
Khi bạn tiến bộ trong khóa học, chúng tôi rất muốn biết cách bạn đang sử dụng các skill trong công việc của mình, cũng như bất kỳ phản hồi nào bạn có. Chia sẻ phản hồi của bạn tại đây.
🎬 Bản ghi video
Source video:
Wx6_vjFFyHM
📜 Mở rộng bản ghi (đã chỉnh sửa + dịch AI)
Giới thiệu về cách tạo Skill trong Claude Code
Hãy cùng tạo một skill. Skill này sẽ hướng dẫn Claude cách giải thích mã nguồn bằng sơ đồ trực quan và các phép ẩn dụ. Sau đó, chúng ta sẽ tìm hiểu cơ chế vận hành bên dưới khi Claude sử dụng skill này.
Thiết lập Skill đầu tiên
Trước tiên, hãy tạo một thư mục cho skill của bạn. Chúng ta sẽ tạo một skill cá nhân (personal skill) để có thể sử dụng trên nhiều dự án khác nhau. Do đó, nó sẽ nằm trong thư mục home của bạn. Lưu ý rằng chúng ta đang tạo một thư mục với tên skill nằm bên trong thư mục skills.
Cấu trúc tệp Skill và Metadata
Bây giờ, hãy tạo skill. Tên (name) dùng để định danh skill, và mô tả (description) sẽ cho Claude biết khi nào cần sử dụng nó—đây đóng vai trò là tiêu chí khớp lệnh (matching criteria). Mọi nội dung sau dấu gạch ngang thứ hai là các chỉ dẫn (instructions) mà Claude sẽ tuân theo.
Claude Code tải các skill khi khởi động, vì vậy bạn phải khởi động lại phiên làm việc sau khi tạo một skill mới. Sau đó, hãy kiểm tra xem nó đã sẵn sàng chưa; bạn sẽ thấy skill (ví dụ: PR description) xuất hiện trong danh sách.
Kiểm thử và Sử dụng thực tế
Bây giờ, hãy thử nghiệm. Thực hiện một số thay đổi trên một branch và yêu cầu: "Viết PR description cho các thay đổi của tôi." Claude sẽ hiển thị rằng nó đang sử dụng skill PR description. Sau đó, nó sẽ kiểm tra diff của bạn và viết mô tả theo template đã định sẵn, đảm bảo định dạng nhất quán trong mọi lần thực hiện.
Cách Claude Code xử lý Skill
Khi Claude Code khởi động, nó sẽ quét bốn vị trí để tìm skill:
- Enterprise paths (Đường dẫn doanh nghiệp)
- Personal Claude skills (Thư mục home của bạn)
- Project Claude skills (Thư mục
.claudebên trong repository của bạn) - Installed plugins (Các plugin đã cài đặt)
Nó chỉ tải tên và mô tả của skill chứ không tải toàn bộ nội dung. Điều này rất quan trọng để tối ưu hiệu suất. Khi bạn gửi một yêu cầu, Claude sẽ so khớp nó với mô tả của các skill. Ví dụ: yêu cầu "Giải thích chức năng của hàm này" sẽ khớp với một skill được mô tả là "giải thích mã nguồn bằng sơ đồ trực quan" vì ý định (intent) có sự trùng khớp.
Claude sau đó sẽ yêu cầu bạn xác nhận việc tải skill. Bước xác nhận này giúp bạn kiểm soát được context nào mà Claude đang sử dụng. Sau khi bạn xác nhận, Claude sẽ đọc toàn bộ tệp và thực hiện theo các chỉ dẫn bên trong.
Ưu tiên Skill và Giải quyết xung đột
Nếu bạn clone một Git repository và có tên skill bị trùng lặp, cái nào sẽ được ưu tiên? Dưới đây là danh sách thứ tự ưu tiên:
- Enterprise: Nằm trong các thiết lập được quản trị (Ưu tiên cao nhất).
- Personal: Nằm trong cấu hình thư mục gốc của bạn.
- Project: Thư mục Claude bên trong repository của bạn.
- Plugins: Nơi lưu trữ các plugin tải về từ internet (Ưu tiên thấp nhất).
Hệ thống phân cấp này cho phép các tổ chức thực thi các tiêu chuẩn chung trong khi vẫn cho phép cá nhân tùy chỉnh thông qua các skill có tên gọi khác nhau. Nếu công ty bạn có skill "Enterprise Code Review" và bạn tạo một skill "Personal Code Review", phiên bản Enterprise sẽ được ưu tiên. Để tránh xung đột, hãy sử dụng các tên gọi mang tính mô tả cụ thể. Thay vì dùng "Review", hãy dùng "Frontend PR Review" hoặc "Security Review".
Quản lý và Cập nhật Skill
Để cập nhật một skill, bạn chỉ cần chỉnh sửa tệp skill.md tương ứng. Để xóa một skill, hãy xóa thư mục của nó. Đừng quên khởi động lại Claude Code sau bất kỳ thay đổi nào để chúng có hiệu lực.
Tóm lại, việc tạo một skill bao gồm việc tạo một thư mục với tệp skill.md chứa metadata và các chỉ dẫn. Claude tải tên và mô tả khi khởi động, so khớp các yêu cầu đầu vào với các mô tả đó và yêu cầu xác nhận trước khi tải toàn bộ nội dung. Các quy tắc ưu tiên sẽ xử lý xung đột tên gọi: Enterprise ghi đè Personal, Personal ghi đè Project, và Project ghi đè Plugins.
🔁 Bài học liên quan
- Bài tiếp: Configuration and multi-file skills
- Bài trước: What are skills?
- Cùng section: What are skills? · Configuration and multi-file skills · Skills vs. other Claude Code features
- Thuộc lộ trình: Path C
- Docs tham khảo: Glossary · Skills atlas · By use-case
📚 Nguồn & ghi nhận
- Bài học gốc Anthropic Academy: https://anthropic.skilljar.com/introduction-to-agent-skills/434527
- © 2025 Anthropic. Chỉ dùng cho mục đích giáo dục, fair-use.
- Crawl: 2026-04-23 · Chuẩn hoá: 2026-05-01