ai-developer-skill-os 1.0.0 → 1.0.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +50 -109
- package/bin/install.js +19 -4
- package/docs/HUONG_DAN_SU_DUNG.md +37 -47
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -1,142 +1,83 @@
|
|
|
1
|
-
# AI Developer Skill OS
|
|
1
|
+
# 🚀 AI Developer Skill OS
|
|
2
2
|
|
|
3
|
-
|
|
4
|
-
|
|
3
|
+
[](https://badge.fury.io/js/ai-developer-skill-os)
|
|
4
|
+
[](https://opensource.org/licenses/MIT)
|
|
5
5
|
|
|
6
|
-
|
|
7
|
-
|
|
6
|
+
**A multi-agent skill package for AI coding assistants (Claude Code, Cursor, Windsurf, Antigravity/Gemini).**
|
|
7
|
+
Hệ điều hành kỹ năng (Skill OS) giúp biến AI của bạn từ một "cỗ máy sinh code" thành một Senior Software Engineer thực thụ với quy trình làm việc chuẩn mực.
|
|
8
8
|
|
|
9
|
-
|
|
10
|
-
- [Hướng dẫn sử dụng](file:///docs/HUONG_DAN_SU_DUNG.md)
|
|
11
|
-
- [Chi tiết toàn bộ Skills (Tiếng Việt)](file:///docs/CHI_TIET_SKILLS.md)
|
|
9
|
+
> Tác giả: **Quang Khánh**
|
|
12
10
|
|
|
13
11
|
---
|
|
14
12
|
|
|
15
|
-
##
|
|
13
|
+
## 🌟 Tính năng nổi bật (Features)
|
|
16
14
|
|
|
17
|
-
|
|
15
|
+
Bộ Skill OS cung cấp **23 kỹ năng chuyên biệt**, chia làm 3 nhóm chính:
|
|
16
|
+
- 🛠️ **Engineering Core (8 skills):** Agent Orchestrator (Lên kế hoạch), Context Manager, Project Audit, Bug Fix, Refactor, API Integration, Migration, Git Engineer.
|
|
17
|
+
- 🎨 **Frontend (11 skills):** Frontend Architecture, Design System, UI Builder, Component Generator, State Management, Form Builder, Table CRUD, Debug, Testing, Performance, A11Y Audit.
|
|
18
|
+
- ⚙️ **Backend (4 skills):** Backend Architecture, Database Engineer, Auth & Security, Deployment (DevOps).
|
|
18
19
|
|
|
19
|
-
|
|
20
|
+
👉 [Xem chi tiết chức năng của toàn bộ 23 Skills tại đây](docs/CHI_TIET_SKILLS.md)
|
|
20
21
|
|
|
21
22
|
---
|
|
22
23
|
|
|
23
|
-
##
|
|
24
|
+
## 📦 Cài đặt (Installation)
|
|
24
25
|
|
|
25
|
-
|
|
26
|
-
agent-orchestrator → Plan only. Routes work to correct skills.
|
|
27
|
-
context-manager → Understands project structure. Manages what to read.
|
|
28
|
-
project-audit → Diagnoses codebase before any changes.
|
|
29
|
-
↓
|
|
30
|
-
frontend-architecture → Decides file placement and folder conventions.
|
|
31
|
-
design-system → Enforces component library usage.
|
|
32
|
-
↓
|
|
33
|
-
ui-builder · component-generator · form-builder · table-crud-generator
|
|
34
|
-
↓
|
|
35
|
-
api-integration → FE ↔ BE contract layer.
|
|
36
|
-
state-management → Chooses correct state strategy.
|
|
37
|
-
↓
|
|
38
|
-
bug-fix · frontend-debug · refactor · migration
|
|
39
|
-
↓
|
|
40
|
-
frontend-testing · accessibility-audit · frontend-performance
|
|
41
|
-
↓
|
|
42
|
-
git-engineer → Commit, PR, changelog, release.
|
|
43
|
-
```
|
|
26
|
+
Bạn có thể cài đặt bộ Skill này vào bất kỳ dự án nào cực kỳ nhanh chóng qua NPM hoặc Git.
|
|
44
27
|
|
|
45
|
-
|
|
28
|
+
### Cách 1: Sử dụng NPM (Khuyên dùng)
|
|
29
|
+
Mở terminal tại thư mục gốc dự án của bạn và chạy:
|
|
30
|
+
```bash
|
|
31
|
+
npx ai-developer-skill-os init
|
|
32
|
+
```
|
|
33
|
+
*Lệnh này sẽ tự động tải và khởi tạo thư mục `rules-skill/` chứa toàn bộ kỹ năng vào dự án của bạn.*
|
|
46
34
|
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
| `agent-orchestrator` | Plans tasks, routes to correct skills — never writes code |
|
|
53
|
-
| `context-manager` | Selects relevant files, summarizes architecture |
|
|
54
|
-
| `project-audit` | Full codebase health check (Quick / Standard / Full mode) |
|
|
55
|
-
| `bug-fix` | Diagnose and fix specific bugs with evidence |
|
|
56
|
-
| `refactor` | Safe restructuring without breaking behavior |
|
|
57
|
-
| `api-integration` | Build production-ready API integration layers |
|
|
58
|
-
| `migration` | Dependency upgrades and framework migrations |
|
|
59
|
-
| `git-engineer` | Commit messages, PR descriptions, changelogs |
|
|
60
|
-
|
|
61
|
-
### Frontend (11 skills)
|
|
62
|
-
| Skill | Purpose |
|
|
63
|
-
|-------|---------|
|
|
64
|
-
| `frontend-architecture` | Folder structure, file placement conventions |
|
|
65
|
-
| `design-system` | Enforce component library — no raw HTML elements |
|
|
66
|
-
| `ui-builder` | Build UI screens from requirements |
|
|
67
|
-
| `component-generator` | Generate typed, reusable components |
|
|
68
|
-
| `state-management` | Choose and implement correct state layer |
|
|
69
|
-
| `form-builder` | Forms with schema validation and error handling |
|
|
70
|
-
| `table-crud-generator` | Admin tables with pagination, filter, sort, CRUD |
|
|
71
|
-
| `frontend-debug` | React errors, hydration, state, CSS issues |
|
|
72
|
-
| `frontend-testing` | Unit, component, and e2e tests |
|
|
73
|
-
| `frontend-performance` | Bundle, render, lazy load optimization |
|
|
74
|
-
| `accessibility-audit` | ARIA, contrast, keyboard, mobile accessibility |
|
|
75
|
-
|
|
76
|
-
### Backend (4 skills)
|
|
77
|
-
| Skill | Purpose |
|
|
78
|
-
|-------|---------|
|
|
79
|
-
| `backend-architecture` | Service / controller / repository pattern |
|
|
80
|
-
| `database-engineer` | Schema design, migrations, indexing |
|
|
81
|
-
| `auth-security` | JWT, OAuth, RBAC implementation |
|
|
82
|
-
| `deployment` | CI/CD, Docker, environment configuration |
|
|
35
|
+
### Cách 2: Sử dụng Git Submodule
|
|
36
|
+
Nếu bạn không dùng Node.js, bạn có thể nhúng trực tiếp qua Git:
|
|
37
|
+
```bash
|
|
38
|
+
git submodule add https://github.com/phamquangkhanh2999/ai-developer-skill-os.git rules-skill
|
|
39
|
+
```
|
|
83
40
|
|
|
84
41
|
---
|
|
85
42
|
|
|
86
|
-
##
|
|
43
|
+
## 🛠️ Cấu hình cho IDE / AI Agent
|
|
87
44
|
|
|
88
|
-
|
|
45
|
+
Sau khi thư mục `rules-skill/` đã xuất hiện trong dự án của bạn, hãy cấu hình để AI biết cách sử dụng nó.
|
|
89
46
|
|
|
90
|
-
|
|
47
|
+
### Cho Cursor / Windsurf (AI Code Editors)
|
|
48
|
+
Tạo file `.cursorrules` (nếu dùng Cursor) hoặc `.windsurfrules` (nếu dùng Windsurf) ở gốc dự án và dán đoạn sau vào:
|
|
49
|
+
```md
|
|
50
|
+
# AI Developer Skill OS by Quang Khánh
|
|
91
51
|
|
|
52
|
+
When answering or generating code, you MUST act as an expert engineer using the skills defined in `./rules-skill/skills.json`.
|
|
53
|
+
Always read the relevant `SKILL.md` from `./rules-skill/skills/` before providing a solution.
|
|
54
|
+
Speak to me in Vietnamese, but write all code in English.
|
|
92
55
|
```
|
|
93
|
-
your-project/
|
|
94
|
-
└── .agents/
|
|
95
|
-
└── skills/ ← copy the `skills/` folder here
|
|
96
|
-
├── engineering/
|
|
97
|
-
├── frontend/
|
|
98
|
-
└── backend/
|
|
99
|
-
```
|
|
100
|
-
|
|
101
|
-
Or register globally in `C:\Users\<you>\.gemini\config\skills\`.
|
|
102
|
-
|
|
103
|
-
### Claude Code / Kilo Code / Cursor
|
|
104
|
-
|
|
105
|
-
Reference skills from your project rules file (`.cursorrules`, `CLAUDE.md`, etc.):
|
|
106
56
|
|
|
57
|
+
### Cho Claude Code / Kilo Code (CLI Agents)
|
|
58
|
+
Tạo file `CLAUDE.md` (hoặc `KILO.md`) ở gốc dự án và dán đoạn sau vào:
|
|
107
59
|
```md
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
```
|
|
111
|
-
|
|
112
|
-
---
|
|
60
|
+
# System Instructions
|
|
61
|
+
Bạn đang chạy bằng **AI Developer Skill OS** (Tác giả: Quang Khánh).
|
|
113
62
|
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
| SKILL.md content | 🇬🇧 English |
|
|
119
|
-
| Code, identifiers | 🇬🇧 English always |
|
|
120
|
-
| AI responses | Matches user's language automatically |
|
|
121
|
-
| README, docs | 🇬🇧 English + 🇻🇳 Vietnamese |
|
|
63
|
+
Vui lòng tìm đọc danh sách kỹ năng tại file `./rules-skill/skills.json`.
|
|
64
|
+
Trước khi thực hiện bất kỳ yêu cầu nào, hãy gọi file `SKILL.md` tương ứng trong thư mục `./rules-skill/skills/` để biết quy trình làm việc chuẩn.
|
|
65
|
+
Luôn giao tiếp bằng tiếng Việt nhưng viết code, đặt tên biến, comment trong code bằng tiếng Anh.
|
|
66
|
+
```
|
|
122
67
|
|
|
123
68
|
---
|
|
124
69
|
|
|
125
|
-
##
|
|
70
|
+
## 🚀 Cách sử dụng (Usage)
|
|
126
71
|
|
|
127
|
-
|
|
128
|
-
2. Fill in all sections (Trigger, Scope, Non-goals, Workflow, Decision Tree, Output Format, Validation, Examples)
|
|
129
|
-
3. Add to `skills.json` with `trigger[]` and `dependencies[]`
|
|
130
|
-
4. Add to correct category folder under `skills/`
|
|
131
|
-
|
|
132
|
-
---
|
|
72
|
+
Giờ đây bạn chỉ cần chat với AI như giao việc cho một kỹ sư thật sự. Không cần viết prompt dài dòng!
|
|
133
73
|
|
|
134
|
-
|
|
74
|
+
- **Nhờ AI lên kế hoạch:** *"Dự án này đang cần thêm tính năng Đăng nhập. Cậu lên kế hoạch giúp mình nhé."* (Kích hoạt `agent-orchestrator`)
|
|
75
|
+
- **Fix lỗi:** *"Bị lỗi Hydration error trên Next.js rồi. Fix giúp mình."* (Kích hoạt `bug-fix` / `frontend-debug`)
|
|
76
|
+
- **Audit Code:** *"Audit nhanh cho tôi thư mục src/components/ xem có vấn đề gì không."* (Kích hoạt `project-audit`)
|
|
135
77
|
|
|
136
|
-
|
|
137
|
-
Engineering foundation + Frontend core complete.
|
|
78
|
+
👉 [Đọc Hướng Dẫn Sử Dụng chi tiết tại đây](docs/HUONG_DAN_SU_DUNG.md)
|
|
138
79
|
|
|
139
80
|
---
|
|
140
81
|
|
|
141
|
-
|
|
142
|
-
|
|
82
|
+
## 📄 License
|
|
83
|
+
Được phát hành dưới giấy phép [MIT](LICENSE). Tự do sử dụng, chỉnh sửa và chia sẻ.
|
package/bin/install.js
CHANGED
|
@@ -4,7 +4,15 @@ const fs = require('fs');
|
|
|
4
4
|
const path = require('path');
|
|
5
5
|
|
|
6
6
|
const sourceDir = path.join(__dirname, '..');
|
|
7
|
-
|
|
7
|
+
let targetDir = path.join(process.cwd(), 'rules-skill');
|
|
8
|
+
|
|
9
|
+
// Check arguments for IDE-specific paths
|
|
10
|
+
const args = process.argv.slice(2);
|
|
11
|
+
const isGemini = args.includes('--gemini') || args.includes('--antigravity');
|
|
12
|
+
|
|
13
|
+
if (isGemini) {
|
|
14
|
+
targetDir = path.join(process.cwd(), '.agents', 'skills');
|
|
15
|
+
}
|
|
8
16
|
|
|
9
17
|
function copyRecursiveSync(src, dest) {
|
|
10
18
|
const exists = fs.existsSync(src);
|
|
@@ -24,6 +32,11 @@ function copyRecursiveSync(src, dest) {
|
|
|
24
32
|
}
|
|
25
33
|
|
|
26
34
|
console.log('🚀 Đang cài đặt AI Developer Skill OS...');
|
|
35
|
+
if (isGemini) {
|
|
36
|
+
console.log('⚙️ Chế độ: Gemini / Antigravity IDE (Cài vào thư mục .agents/skills/)');
|
|
37
|
+
} else {
|
|
38
|
+
console.log('⚙️ Chế độ: Mặc định (Cài vào thư mục rules-skill/)');
|
|
39
|
+
}
|
|
27
40
|
|
|
28
41
|
const filesAndFolders = [
|
|
29
42
|
'skills',
|
|
@@ -42,14 +55,16 @@ try {
|
|
|
42
55
|
|
|
43
56
|
filesAndFolders.forEach(item => {
|
|
44
57
|
const src = path.join(sourceDir, item);
|
|
45
|
-
|
|
58
|
+
let dest = path.join(targetDir, item);
|
|
59
|
+
|
|
60
|
+
// For Gemini, we dump the contents directly into .agents/skills/
|
|
46
61
|
if (fs.existsSync(src)) {
|
|
47
62
|
copyRecursiveSync(src, dest);
|
|
48
63
|
}
|
|
49
64
|
});
|
|
50
65
|
|
|
51
|
-
console.log(
|
|
52
|
-
console.log('\n💡 Tiếp theo, hãy tham khảo
|
|
66
|
+
console.log(`✅ Đã cài đặt thành công vào thư mục: ${targetDir.replace(process.cwd(), '.')}`);
|
|
67
|
+
console.log('\n💡 Tiếp theo, hãy tham khảo tài liệu trong mục docs/HUONG_DAN_SU_DUNG.md để biết cách tương tác với AI nhé!');
|
|
53
68
|
} catch (error) {
|
|
54
69
|
console.error('❌ Có lỗi xảy ra trong quá trình cài đặt:', error.message);
|
|
55
70
|
process.exit(1);
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
# Hướng Dẫn Sử Dụng — AI Developer Skill OS
|
|
2
2
|
|
|
3
3
|
**Tác giả:** Quang Khánh
|
|
4
|
-
**Phiên bản:** v1.0.
|
|
4
|
+
**Phiên bản:** v1.0.1
|
|
5
5
|
|
|
6
|
-
Chào mừng bạn đến với **AI Developer Skill OS**, bộ khung quản lý kỹ năng (Skill Framework) biến các trợ lý AI (
|
|
6
|
+
Chào mừng bạn đến với **AI Developer Skill OS**, bộ khung quản lý kỹ năng (Skill Framework) biến các trợ lý AI (Gemini, Antigravity, Claude Code, Cursor, Windsurf) từ một "cỗ máy sinh code" thành một Senior Software Engineer thực thụ.
|
|
7
7
|
|
|
8
8
|
---
|
|
9
9
|
|
|
@@ -20,44 +20,37 @@ Với hệ điều hành kỹ năng (Skill OS) này:
|
|
|
20
20
|
|
|
21
21
|
---
|
|
22
22
|
|
|
23
|
-
## 2. Hướng dẫn cài đặt
|
|
23
|
+
## 2. Hướng dẫn cài đặt qua NPM (Khuyên dùng)
|
|
24
24
|
|
|
25
|
-
Bộ Skin này rất linh hoạt và có thể
|
|
25
|
+
Bộ Skin này rất linh hoạt và được phân phối qua NPM để bạn có thể cài vào bất kỳ dự án nào cực kỳ nhanh chóng.
|
|
26
26
|
|
|
27
|
-
|
|
28
|
-
|
|
27
|
+
Mở terminal tại gốc dự án của bạn và chạy lệnh cài đặt tương ứng với công cụ AI bạn đang dùng:
|
|
28
|
+
|
|
29
|
+
### Dành cho Gemini IDE / Antigravity
|
|
30
|
+
Các công cụ này đọc cấu hình từ thư mục `.agents/skills/`. Bạn chỉ cần thêm cờ `--gemini` khi chạy cài đặt:
|
|
31
|
+
```bash
|
|
32
|
+
npx ai-developer-skill-os init --gemini
|
|
29
33
|
```
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
34
|
+
*Lệnh này sẽ tự tạo thư mục `.agents/skills/` và tải toàn bộ bộ kỹ năng vào đó.*
|
|
35
|
+
|
|
36
|
+
### Dành cho Cursor / Windsurf / Claude Code / Kilo Code
|
|
37
|
+
Các công cụ này linh hoạt hơn, bạn cài đặt mặc định:
|
|
38
|
+
```bash
|
|
39
|
+
npx ai-developer-skill-os init
|
|
36
40
|
```
|
|
37
|
-
|
|
38
|
-
`C:\Users\<Tên-Máy-Bạn>\.gemini\config\skills\`
|
|
41
|
+
*Lệnh này sẽ tạo thư mục `rules-skill/` ở gốc dự án.*
|
|
39
42
|
|
|
40
|
-
|
|
41
|
-
Claude Code và Kilo Code đọc các quy tắc (rules) từ thư mục gốc của dự án.
|
|
42
|
-
**Cách cài đặt:**
|
|
43
|
-
1. Copy toàn bộ thư mục `rules-skill/` vào gốc dự án của bạn.
|
|
44
|
-
2. Tạo (hoặc sửa) file `CLAUDE.md` (đối với Claude) hoặc `KILO.md` (đối với Kilo) ở thư mục gốc, dán nội dung sau vào:
|
|
43
|
+
---
|
|
45
44
|
|
|
46
|
-
|
|
47
|
-
# System Instructions
|
|
48
|
-
Bạn đang chạy bằng **AI Developer Skill OS** (Tác giả: Quang Khánh).
|
|
45
|
+
## 3. Cấu hình cho IDE / AI Agent
|
|
49
46
|
|
|
50
|
-
|
|
51
|
-
Trước khi thực hiện bất kỳ yêu cầu nào, hãy gọi file `SKILL.md` tương ứng trong thư mục `./rules-skill/skills/` để biết quy trình làm việc chuẩn.
|
|
52
|
-
Luôn giao tiếp bằng tiếng Việt nhưng viết code, đặt tên biến, comment trong code bằng tiếng Anh.
|
|
53
|
-
```
|
|
47
|
+
Sau khi thư mục kỹ năng đã xuất hiện trong dự án của bạn, hãy cấu hình để AI biết cách sử dụng nó.
|
|
54
48
|
|
|
55
|
-
### Cho
|
|
56
|
-
|
|
57
|
-
**Cách cài đặt:**
|
|
58
|
-
1. Copy toàn bộ thư mục `rules-skill/` vào gốc dự án của bạn.
|
|
59
|
-
2. Mở file `.cursorrules` (với Cursor) hoặc `.windsurfrules` (với Windsurf), dán nội dung sau vào:
|
|
49
|
+
### Cho Gemini IDE / Antigravity
|
|
50
|
+
**Không cần cấu hình gì thêm!** Gemini/Antigravity sẽ tự động nhận diện các file trong `.agents/skills/` và sẵn sàng làm việc ngay.
|
|
60
51
|
|
|
52
|
+
### Cho Cursor / Windsurf (AI Code Editors)
|
|
53
|
+
Tạo file `.cursorrules` (nếu dùng Cursor) hoặc `.windsurfrules` (nếu dùng Windsurf) ở gốc dự án và dán đoạn sau vào:
|
|
61
54
|
```md
|
|
62
55
|
# AI Developer Skill OS by Quang Khánh
|
|
63
56
|
|
|
@@ -66,11 +59,22 @@ Always read the relevant `SKILL.md` from `./rules-skill/skills/` before providin
|
|
|
66
59
|
Speak to me in Vietnamese, but write all code in English.
|
|
67
60
|
```
|
|
68
61
|
|
|
62
|
+
### Cho Claude Code / Kilo Code (CLI Agents)
|
|
63
|
+
Tạo file `CLAUDE.md` (hoặc `KILO.md`) ở gốc dự án và dán đoạn sau vào:
|
|
64
|
+
```md
|
|
65
|
+
# System Instructions
|
|
66
|
+
Bạn đang chạy bằng **AI Developer Skill OS** (Tác giả: Quang Khánh).
|
|
67
|
+
|
|
68
|
+
Vui lòng tìm đọc danh sách kỹ năng tại file `./rules-skill/skills.json`.
|
|
69
|
+
Trước khi thực hiện bất kỳ yêu cầu nào, hãy gọi file `SKILL.md` tương ứng trong thư mục `./rules-skill/skills/` để biết quy trình làm việc chuẩn.
|
|
70
|
+
Luôn giao tiếp bằng tiếng Việt nhưng viết code, đặt tên biến, comment trong code bằng tiếng Anh.
|
|
71
|
+
```
|
|
72
|
+
|
|
69
73
|
---
|
|
70
74
|
|
|
71
|
-
##
|
|
75
|
+
## 4. Cách tương tác với AI
|
|
72
76
|
|
|
73
|
-
|
|
77
|
+
Giờ đây bạn chỉ cần chat với AI như giao việc cho một kỹ sư thật sự. Không cần viết prompt dài dòng!
|
|
74
78
|
|
|
75
79
|
**Ví dụ 1: Nhờ AI tự lên kế hoạch (Kích hoạt `agent-orchestrator`)**
|
|
76
80
|
> "Quang Khánh ơi, dự án này đang cần thêm tính năng Đăng nhập. Cậu lên kế hoạch giúp mình nên làm gì trước nhé."
|
|
@@ -86,17 +90,3 @@ Vì AI giờ đây đã có "nghề" (Skill), bạn không cần phải prompt q
|
|
|
86
90
|
|
|
87
91
|
**Ví dụ 5: Tích hợp API (Kích hoạt `api-integration`)**
|
|
88
92
|
> "Tích hợp cái swagger login này vào frontend giúp. Nhớ dùng React Query như chuẩn của project."
|
|
89
|
-
|
|
90
|
-
---
|
|
91
|
-
|
|
92
|
-
## 4. Tùy chỉnh Skin (Dành cho Advanced User)
|
|
93
|
-
|
|
94
|
-
Nếu bạn muốn thêm kỹ năng mới cho AI, hãy sử dụng mẫu (Template) đã được tác giả chuẩn bị sẵn:
|
|
95
|
-
1. Copy file từ thư mục `_template/SKILL.md`.
|
|
96
|
-
2. Chỉnh sửa các thông số: Name, Description, Trigger, Scope, v.v.
|
|
97
|
-
3. Đăng ký nó vào file `skills.json` ở gốc.
|
|
98
|
-
4. Tận hưởng AI với kỹ năng mới của riêng bạn!
|
|
99
|
-
|
|
100
|
-
---
|
|
101
|
-
|
|
102
|
-
Để xem danh sách chi tiết và công dụng của từng skill, vui lòng xem [Chi Tiết Skills](CHI_TIET_SKILLS.md).
|
package/package.json
CHANGED