ai-developer-skill-os 1.0.7 → 1.3.1

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.
Files changed (29) hide show
  1. package/README.md +53 -29
  2. package/bin/install.js +105 -41
  3. package/docs/HUONG_DAN_SU_DUNG.md +27 -15
  4. package/package.json +34 -34
  5. package/rename.js +64 -0
  6. package/skills/backend/{auth-security → qk-auth-security}/SKILL.md +1 -1
  7. package/skills/backend/{backend-architecture → qk-backend-architecture}/SKILL.md +1 -1
  8. package/skills/backend/{database-engineer → qk-database-engineer}/SKILL.md +1 -1
  9. package/skills/backend/{deployment → qk-deployment}/SKILL.md +1 -1
  10. package/skills/engineering/{agent-orchestrator → qk-agent-orchestrator}/SKILL.md +1 -1
  11. package/skills/engineering/{api-integration → qk-api-integration}/SKILL.md +1 -1
  12. package/skills/engineering/{bug-fix → qk-bug-fix}/SKILL.md +1 -1
  13. package/skills/engineering/{context-manager → qk-context-manager}/SKILL.md +1 -1
  14. package/skills/engineering/{git-engineer → qk-git-engineer}/SKILL.md +1 -1
  15. package/skills/engineering/{migration → qk-migration}/SKILL.md +1 -1
  16. package/skills/engineering/{project-audit → qk-project-audit}/SKILL.md +1 -1
  17. package/skills/engineering/{refactor → qk-refactor}/SKILL.md +1 -1
  18. package/skills/frontend/{accessibility-audit → qk-accessibility-audit}/SKILL.md +1 -1
  19. package/skills/frontend/{component-generator → qk-component-generator}/SKILL.md +1 -1
  20. package/skills/frontend/{design-system → qk-design-system}/SKILL.md +1 -1
  21. package/skills/frontend/{form-builder → qk-form-builder}/SKILL.md +1 -1
  22. package/skills/frontend/{frontend-architecture → qk-frontend-architecture}/SKILL.md +1 -1
  23. package/skills/frontend/{frontend-debug → qk-frontend-debug}/SKILL.md +1 -1
  24. package/skills/frontend/{frontend-performance → qk-frontend-performance}/SKILL.md +1 -1
  25. package/skills/frontend/{frontend-testing → qk-frontend-testing}/SKILL.md +1 -1
  26. package/skills/frontend/{state-management → qk-state-management}/SKILL.md +1 -1
  27. package/skills/frontend/{table-crud-generator → qk-table-crud-generator}/SKILL.md +1 -1
  28. package/skills/frontend/{ui-builder → qk-ui-builder}/SKILL.md +1 -1
  29. package/skills.json +666 -666
package/README.md CHANGED
@@ -1,18 +1,23 @@
1
1
  # 🚀 AI Developer Skill OS
2
2
 
3
3
  [![npm version](https://badge.fury.io/js/ai-developer-skill-os.svg)](https://badge.fury.io/js/ai-developer-skill-os)
4
- [![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](https://opensource.org/licenses/MIT)
4
+ [![Author](https://img.shields.io/badge/Author-Quang%20Kh%C3%A1nh-blue.svg)](https://github.com/phamquangkhanh2999)
5
+ [![License: MIT](https://img.shields.io/badge/License-MIT-green.svg)](https://opensource.org/licenses/MIT)
5
6
 
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
-
9
- > Tác giả: **Quang Khánh**
7
+ > **"Biến mọi AI Code Editor (Cursor, Windsurf, Cline) thành một Senior Engineer thực thụ với 23 kỹ năng được lập trình sẵn."**
10
8
 
11
9
  ---
12
10
 
13
- ## 🌟 Tính năng nổi bật (Features)
11
+ ## 🌟 Tại sao bạn cần Skill OS?
12
+
13
+ Các AI Editor hiện tại rất thông minh, nhưng nếu không có quy trình rõ ràng, chúng thường **lan man, tự ý sửa code lung tung, hoặc viết code không theo chuẩn kiến trúc**.
14
+
15
+ **AI Developer Skill OS (by Quang Khánh)** giải quyết triệt để vấn đề này bằng cách:
16
+ - 🧠 **Ép AI tư duy theo Workflow (Chain-of-Thought):** Phân tích trước, code sau.
17
+ - 🛡️ **Scope & Non-goals rõ ràng:** Khoá chặt giới hạn, tuyệt đối không cho AI sửa hỏng các file không liên quan.
18
+ - 🎨 **Output chuyên nghiệp:** Mọi câu trả lời của AI đều được định dạng thành bảng biểu, báo cáo y hệt một hệ thống thật.
14
19
 
15
- Bộ Skill OS cung cấp **23 kỹ năng chuyên biệt**, chia làm 3 nhóm chính:
20
+ ### Hệ thống 23 Kỹ năng (Skillset)
16
21
  - 🛠️ **Engineering Core (8 skills):** Agent Orchestrator (Lên kế hoạch), Context Manager, Project Audit, Bug Fix, Refactor, API Integration, Migration, Git Engineer.
17
22
  - 🎨 **Frontend (11 skills):** Frontend Architecture, Design System, UI Builder, Component Generator, State Management, Form Builder, Table CRUD, Debug, Testing, Performance, A11Y Audit.
18
23
  - ⚙️ **Backend (4 skills):** Backend Architecture, Database Engineer, Auth & Security, Deployment (DevOps).
@@ -47,21 +52,23 @@ Sau khi thư mục kỹ năng đã xuất hiện trong dự án của bạn, hã
47
52
  ### Cho Antigravity / Gemini IDE
48
53
  **Không cần cấu hình gì thêm!** Nếu bạn đã cài đặt bằng cờ `--gemini` (thư mục `.agents/skills/`), hệ thống sẽ tự động quét và load toàn bộ 23 kỹ năng này. Bạn có thể sử dụng ngay lập tức!
49
54
 
50
- ### Cho Cursor / Windsurf (AI Code Editors)
51
- 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:
55
+ ### Cho Claude Code / Kilo Code (CLI Agents)
56
+ Tạo file `CLAUDE.md` (hoặc `KILO.md`) ở gốc dự án và dán đoạn sau vào:
52
57
  ```md
53
- # AI Developer Skill OS by Quang Khánh
58
+ # System Instructions
59
+ Bạn đang chạy bằng **AI Developer Skill OS** (Tác giả: Quang Khánh).
54
60
 
55
- When answering or generating code, you MUST act as an expert engineer using the skills defined in `./.rules-skill/skills.json`.
56
- Always read the relevant `SKILL.md` from `./.rules-skill/skills/` before providing a solution.
57
- Speak to me in Vietnamese, but write all code in English.
61
+ Vui lòng tìm đọc danh sách kỹ năng tại file `./.qk-ai-skill-os/skills.json`.
62
+ ĐẶC BIỆT LƯU Ý: Bất cứ khi nào người dùng gõ lệnh bắt đầu bằng `./qk [tên-skill]`, bạn BẮT BUỘC phải gọi và đọc nội dung file `SKILL.md` tương ứng trong thư mục `./.qk-ai-skill-os/skills/` trước khi phân tích hoặc viết code.
63
+ 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.
58
64
  ```
59
65
 
60
- ### Cho Cline / Roo Code / Kilo Code (VS Code Extensions)
61
- Tạo file `.clinerules`, `.roorules` hoặc `KILO.md` ở gốc dự án và dán nội dung:
66
+ ### Cho Cline / Roo Code (VS Code Extensions)
67
+ Tạo file `.clinerules` hoặc `.roorules` ở gốc dự án và dán nội dung:
62
68
  ```md
63
69
  Bạn đang chạy bằng **AI Developer Skill OS** (Tác giả: Quang Khánh).
64
- Vui lòng tìm đọc danh sách kỹ năng tại file `./.qk-ai-skill-os/skills.json`. 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 `./.qk-ai-skill-os/skills/`.
70
+ Vui lòng tìm đọc danh sách kỹ năng tại file `./.qk-ai-skill-os/skills.json`.
71
+ Bất cứ khi nào người dùng gõ lệnh `./qk [tên-skill]`, bạn BẮT BUỘC phải đọc file `SKILL.md` tương ứng trong thư mục `./.qk-ai-skill-os/skills/`.
65
72
  Luôn giao tiếp bằng tiếng Việt nhưng viết code bằng tiếng Anh.
66
73
  ```
67
74
 
@@ -72,33 +79,50 @@ Tạo file `.github/copilot-instructions.md` và dán đoạn prompt tương t
72
79
 
73
80
  ## 🎯 Cách kiểm tra cài đặt thành công
74
81
 
75
- Để biết AI của bạn đã thực sự "nhập môn" bộ Skill OS này chưa, hãy mở khung chat AI trong dự án và gõ chính xác câu sau:
76
- > *"Hãy kích hoạt skill project-audit cho tôi biết bạn sẽ làm những gì."*
82
+ Để biết AI của bạn đã thực sự "nhập môn" bộ Skill OS này chưa, hãy mở khung chat AI trong dự án và gõ pháp lệnh chuyên nghiệp sau:
83
+ > **`./qk project-audit`** Hãy cho tôi biết bạn sẽ làm những gì.
77
84
 
78
85
  ✅ **Thành công:** Nếu AI trả lời bằng tiếng Việt, liệt kê đúng các bước khám bệnh (Phase 1, Phase 2, Phase 3...) theo đúng như trong file `SKILL.md` của `project-audit`.
79
86
  ❌ **Thất bại:** Nếu AI trả lời chung chung hoặc bảo không biết skill này là gì, bạn cần kiểm tra lại đường dẫn file cấu hình ở bước trên.
80
87
 
81
88
  ---
82
89
 
83
- ## 🚀 Cách sử dụng & Gọi Skill (Usage)
90
+ ## 🚀 Cách gọi lệnh Skill chuyên nghiệp (Usage)
84
91
 
85
- AI sẽ tự động nhận diện skill qua ngữ cảnh, nhưng để chắc chắn 100%, bạn **nên gọi thẳng tên skill** trong câu lệnh (prompt) của mình.
92
+ AI sẽ tự động nhận diện skill qua ngữ cảnh, nhưng để chắc chắn 100% tiết kiệm thời gian prompt, bạn hãy dùng cú pháp lệnh độc quyền: **`./qk-[tên-skill]`**
86
93
 
87
94
  Dưới đây là các ví dụ cụ thể để bạn copy - paste và trải nghiệm ngay:
88
95
 
89
- ### 1. Khi bắt đầu dự án / Nhờ AI lên kế hoạch (Planning)
90
- > *"Hãy dùng skill **`agent-orchestrator`** để lên kế hoạch làm tính năng Giỏ Hàng cho tôi. Nhớ gọi thêm **`context-manager`** để kiểm tra thư mục hiện tại có những file gì trước nhé."*
96
+ ### 1. Nhờ AI lên kế hoạch (Planning) & Kiến trúc
97
+ > **`./qk-agent-orchestrator`** Hãy lên kế hoạch làm tính năng Giỏ Hàng cho tôi. Nhớ gọi thêm **`./qk-context-manager`** để đọc cấu trúc dự án trước nhé.
98
+
99
+ ### 2. Xây dựng Giao diện (Frontend/UI)
100
+ > **`./qk-ui-builder`** & **`./qk-design-system`** Hãy tạo cho tôi một màn hình Đăng Nhập (Login) xịn xò. Đảm bảo Responsive và dùng đúng chuẩn Component.
91
101
 
92
- ### 2. Khi muốn tạo Giao diện (UI)
93
- > *"Kích hoạt skill **`ui-builder`** và **`design-system`**. Hãy tạo cho tôi một màn hình Đăng Nhập (Login) sử dụng Tailwind CSS. Hãy đọc các rule trong skill để code cho chuẩn."*
102
+ ### 3. Thiết kế Database (Backend)
103
+ > **`./qk-database-engineer`** Hãy viết cho tôi schema Prisma cho bảng Product User quan hệ 1-N. Tối ưu index cho truy vấn nhanh.
94
104
 
95
- ### 3. Khi muốn làm việc với Database (Backend)
96
- > *"Sử dụng skill **`database-engineer`**. Hãy viết cho tôi schema Prisma cho bảng Product (Sản phẩm) User (Người dùng) quan hệ 1-N. Làm theo đúng chuẩn kiến trúc trong skill."*
105
+ ### 4. Tìm Diệt Bug (Debugging)
106
+ > **`./qk-frontend-debug`** & **`./qk-bug-fix`** Code đang bị crash với lỗi `Hydration error`. Hãy tìm nguyên nhân gốc rễ sửa dứt điểm giúp tôi.
97
107
 
98
- ### 4. Khi gặp Bug cứng đầu
99
- > *"Code đang bị crash với lỗi `Hydration error`. Hãy dùng skill **`frontend-debug`** và **`bug-fix`** để tìm hiểu nguyên nhân gốc rễ và sửa nó giúp tôi."*
108
+ ---
109
+
110
+ ## 💎 Danh sách 23+ Kỹ Năng Độc Quyền
111
+
112
+ | Phân hệ | Kỹ năng tiêu biểu | Chức năng chính |
113
+ |---------|-------------------|-----------------|
114
+ | 🏗️ **Engineering** | `qk-project-audit`, `qk-agent-orchestrator` | Kiểm toán dự án, lập kế hoạch, quản lý Git, Refactor code. |
115
+ | 🎨 **Frontend** | `qk-ui-builder`, `qk-frontend-performance` | Dựng UI, tối ưu tốc độ, test component, quản lý State. |
116
+ | ⚙️ **Backend** | `qk-database-engineer`, `qk-auth-security` | Thiết kế DB Schema, bảo mật JWT/OAuth, cấu hình CI/CD. |
117
+
118
+ 👉 [Xem danh sách toàn bộ Kỹ năng tại đây](docs/CHI_TIET_SKILLS.md)
119
+
120
+ ---
100
121
 
101
- 👉 [Đọc Hướng Dẫn Sử Dụng chi tiết tại đây](docs/HUONG_DAN_SU_DUNG.md)
122
+ <div align="center">
123
+ <b>Được thiết kế và phát triển bởi Quang Khánh (QK)</b><br>
124
+ <i>Empowering Vietnamese Developers with World-Class AI Workflows.</i>
125
+ </div>
102
126
 
103
127
  ---
104
128
 
package/bin/install.js CHANGED
@@ -2,18 +2,11 @@
2
2
 
3
3
  const fs = require('fs');
4
4
  const path = require('path');
5
+ const readline = require('readline');
5
6
 
6
7
  const sourceDir = path.join(__dirname, '..');
7
8
  let targetDir = path.join(process.cwd(), '.qk-ai-skill-os');
8
9
 
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
- }
16
-
17
10
  function copyRecursiveSync(src, dest) {
18
11
  const exists = fs.existsSync(src);
19
12
  const stats = exists && fs.statSync(src);
@@ -31,41 +24,112 @@ function copyRecursiveSync(src, dest) {
31
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 .qk-ai-skill-os/)');
39
- }
27
+ const systemPrompt = `[Role]
28
+ You are an elite AI Software Engineer. You must strictly follow the rules in this project.
29
+ Vui lòng tìm đọc danh sách kỹ năng tại file \`./.qk-ai-skill-os/skills.json\`.
30
+
31
+ [Trigger Mechanism]
32
+ Bất cứ khi nào người dùng gõ lệnh bắt đầu bằng \`./qk-[tên-skill]\`, bạn BẮT BUỘC phải đọc file \`SKILL.md\` tương ứng trong thư mục \`./.qk-ai-skill-os/skills/...\` trước khi làm bất cứ việc gì. Đừng bao giờ đoán mò.
33
+
34
+ [Command Arguments]
35
+ Người dùng có thể truyền thêm tham số vào lệnh (ví dụ: \`./qk-ui-builder --fw=react --css=tailwind\`).
36
+ Nếu người dùng sử dụng tham số (argument), bạn BẮT BUỘC phải tuân thủ tuyệt đối các công nghệ/yêu cầu được chỉ định trong tham số đó thay vì dùng mặc định.`;
37
+
38
+ const rl = readline.createInterface({
39
+ input: process.stdin,
40
+ output: process.stdout
41
+ });
42
+
43
+ console.log('🚀 Đang chuẩn bị cài đặt AI Developer Skill OS...\n');
44
+
45
+ const questionText = `Vui lòng chọn IDE/AI Assistant bạn đang sử dụng để tự động cấu hình (Auto-Generate Config):
46
+ (1) Cursor
47
+ (2) Windsurf
48
+ (3) Cline / Roo Code
49
+ (4) Antigravity / Gemini
50
+ (5) Codex
51
+ (6) Kilo Code
52
+ (0) Bỏ qua (Không tạo file config)
53
+
54
+ Nhập số (0-6): `;
55
+
56
+ rl.question(questionText, (answer) => {
57
+ let isGemini = false;
58
+ let ruleFile = null;
40
59
 
41
- const filesAndFolders = [
42
- 'skills',
43
- '_template',
44
- 'docs',
45
- 'skills.json',
46
- 'README.md',
47
- 'CHANGELOG.md',
48
- 'LICENSE'
49
- ];
50
-
51
- try {
52
- if (!fs.existsSync(targetDir)) {
53
- fs.mkdirSync(targetDir, { recursive: true });
60
+ switch(answer.trim()) {
61
+ case '1': ruleFile = '.cursorrules'; break;
62
+ case '2': ruleFile = '.windsurfrules'; break;
63
+ case '3': ruleFile = '.clinerules'; break;
64
+ case '4':
65
+ isGemini = true;
66
+ targetDir = path.join(process.cwd(), '.agents', 'skills');
67
+ ruleFile = path.join('.agents', 'AGENTS.md');
68
+ break;
69
+ case '5': ruleFile = '.codexrules'; break;
70
+ case '6': ruleFile = '.kilorules'; break;
71
+ case '0':
72
+ default:
73
+ console.log('👉 Bỏ qua bước tạo file cấu hình tự động.');
74
+ break;
54
75
  }
55
76
 
56
- filesAndFolders.forEach(item => {
57
- const src = path.join(sourceDir, item);
58
- let dest = path.join(targetDir, item);
59
-
60
- // For Gemini, we dump the contents directly into .agents/skills/
61
- if (fs.existsSync(src)) {
62
- copyRecursiveSync(src, dest);
77
+ if (isGemini) {
78
+ console.log('\n⚙️ Chế độ: Gemini / Antigravity IDE (Cài vào thư mục .agents/)');
79
+ } else {
80
+ console.log('\n⚙️ Chế độ: Mặc định (Cài vào thư mục .qk-ai-skill-os/)');
81
+ }
82
+
83
+ try {
84
+ if (!fs.existsSync(targetDir)) {
85
+ fs.mkdirSync(targetDir, { recursive: true });
63
86
  }
64
- });
65
87
 
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 .qk-ai-skill-os/docs/HUONG_DAN_SU_DUNG.md để biết cách tương tác với AI nhé!');
68
- } catch (error) {
69
- console.error('❌ Có lỗi xảy ra trong quá trình cài đặt:', error.message);
70
- process.exit(1);
71
- }
88
+ const filesAndFolders = [
89
+ 'skills',
90
+ '_template',
91
+ 'docs',
92
+ 'skills.json',
93
+ 'README.md',
94
+ 'CHANGELOG.md',
95
+ 'LICENSE'
96
+ ];
97
+
98
+ filesAndFolders.forEach(item => {
99
+ const src = path.join(sourceDir, item);
100
+ let dest = path.join(targetDir, item);
101
+
102
+ if (fs.existsSync(src)) {
103
+ copyRecursiveSync(src, dest);
104
+ }
105
+ });
106
+
107
+ if (ruleFile) {
108
+ const fullRulePath = path.join(process.cwd(), ruleFile);
109
+ const ruleDir = path.dirname(fullRulePath);
110
+ if (ruleDir !== process.cwd() && !fs.existsSync(ruleDir)) {
111
+ fs.mkdirSync(ruleDir, { recursive: true });
112
+ }
113
+
114
+ let writeContent = systemPrompt;
115
+ if (isGemini) {
116
+ writeContent = `\n<RULE[ai_skill_os]>\n---\ntrigger: always_on\n---\n${systemPrompt}\n</RULE[ai_skill_os]>\n`;
117
+ }
118
+
119
+ if (fs.existsSync(fullRulePath)) {
120
+ fs.appendFileSync(fullRulePath, "\n\n" + writeContent);
121
+ console.log(`✅ Đã GHI THÊM cấu hình tự động vào file: ${ruleFile}`);
122
+ } else {
123
+ fs.writeFileSync(fullRulePath, writeContent);
124
+ console.log(`✅ Đã TẠO MỚI file cấu hình: ${ruleFile}`);
125
+ }
126
+ }
127
+
128
+ console.log(`✅ Đã cài đặt thư viện thành công vào thư mục: ${targetDir.replace(process.cwd(), '.')}`);
129
+ console.log('\n💡 Hãy tận hưởng trải nghiệm Auto-Config và Command Arguments (VD: ./qk-ui-builder --fw=react)!');
130
+ } catch (error) {
131
+ console.error('❌ Có lỗi xảy ra trong quá trình cài đặt:', error.message);
132
+ } finally {
133
+ rl.close();
134
+ }
135
+ });
@@ -55,15 +55,27 @@ Tạo file `.cursorrules` (nếu dùng Cursor) hoặc `.windsurfrules` (nếu d
55
55
  # AI Developer Skill OS by Quang Khánh
56
56
 
57
57
  When answering or generating code, you MUST act as an expert engineer using the skills defined in `./.qk-ai-skill-os/skills.json`.
58
- Always read the relevant `SKILL.md` from `./.qk-ai-skill-os/skills/` before providing a solution.
58
+ Bất cứ khi nào người dùng gõ lệnh `./qk [tên-skill]`, bạn BẮT BUỘC phải đọc file `SKILL.md` tương ứng trong thư mục `./.qk-ai-skill-os/skills/` trước khi thực hiện.
59
59
  Speak to me in Vietnamese, but write all code in English.
60
60
  ```
61
61
 
62
- ### Cho Cline / Roo Code / Kilo Code (VS Code Extensions)
63
- Tạo file `.clinerules`, `.roorules` hoặc `KILO.md` ở gốc dự án và dán nội dung:
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
64
  ```md
65
+ # System Instructions
65
66
  Bạn đang chạy bằng **AI Developer Skill OS** (Tác giả: Quang Khánh).
66
- Vui lòng tìm đọc danh sách kỹ năng tại file `./.qk-ai-skill-os/skills.json`. 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 `./.qk-ai-skill-os/skills/`.
67
+
68
+ Vui lòng tìm đọc danh sách kỹ năng tại file `./.qk-ai-skill-os/skills.json`.
69
+ ĐẶC BIỆT LƯU Ý: Bất cứ khi nào người dùng gõ lệnh bắt đầu bằng `./qk [tên-skill]`, bạn BẮT BUỘC phải gọi và đọc nội dung file `SKILL.md` tương ứng trong thư mục `./.qk-ai-skill-os/skills/` trước khi phân tích hoặc viết code.
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
+
73
+ ### Cho Cline / Roo Code (VS Code Extensions)
74
+ Tạo file `.clinerules` hoặc `.roorules` ở gốc dự án và dán nội dung:
75
+ ```md
76
+ Bạn đang chạy bằng **AI Developer Skill OS** (Tác giả: Quang Khánh).
77
+ Vui lòng tìm đọc danh sách kỹ năng tại file `./.qk-ai-skill-os/skills.json`.
78
+ Bất cứ khi nào người dùng gõ lệnh `./qk [tên-skill]`, bạn BẮT BUỘC phải đọc file `SKILL.md` tương ứng trong thư mục `./.qk-ai-skill-os/skills/`.
67
79
  Luôn giao tiếp bằng tiếng Việt nhưng viết code bằng tiếng Anh.
68
80
  ```
69
81
 
@@ -74,34 +86,34 @@ Tạo file `.github/copilot-instructions.md` và dán đoạn prompt tương t
74
86
 
75
87
  ## 4. Cách kiểm tra cài đặt thành công
76
88
 
77
- Để biết AI của bạn đã thực sự "nhập môn" bộ Skill OS này chưa, hãy mở khung chat AI trong dự án và gõ chính xác câu sau:
78
- > *"Hãy kích hoạt skill project-audit cho tôi biết bạn sẽ làm những gì."*
89
+ Để biết AI của bạn đã thực sự "nhập môn" bộ Skill OS này chưa, hãy mở khung chat AI trong dự án và gõ pháp lệnh chuyên nghiệp sau:
90
+ > **`./qk-project-audit`** Hãy cho tôi biết bạn sẽ làm những gì.
79
91
 
80
- ✅ **Thành công:** Nếu AI trả lời bằng tiếng Việt, liệt kê đúng các bước khám bệnh (Phase 1, Phase 2, Phase 3...) theo đúng như trong file `SKILL.md` của `project-audit`.
92
+ ✅ **Thành công:** Nếu AI trả lời bằng tiếng Việt, liệt kê đúng các bước khám bệnh (Phase 1, Phase 2, Phase 3...) theo đúng như trong file `SKILL.md` của `qk-project-audit`.
81
93
  ❌ **Thất bại:** Nếu AI trả lời chung chung hoặc bảo không biết skill này là gì, bạn cần kiểm tra lại đường dẫn file cấu hình ở bước trên.
82
94
 
83
95
  ---
84
96
 
85
- ## 5. Cách tương tác & Gọi Skill cụ thể
97
+ ## 5. Cách gọi lệnh Skill chuyên nghiệp (Usage)
86
98
 
87
- AI thể tự đoán ngữ cảnh, cách chuyên nghiệp nhất bạn **gọi thẳng tên skill** trong câu lệnh của mình để ép AI phải tuân thủ đúng quy trình.
99
+ AI sẽ tự động nhận diện skill qua ngữ cảnh, nhưng cách chuyên nghiệp tiết kiệm thời gian prompt nhất bạn sử dụng pháp lệnh độc quyền: **`./qk-[tên-skill]`**
88
100
 
89
101
  Dưới đây là các câu lệnh (prompt) mẫu cực kỳ hiệu quả mà bạn nên dùng:
90
102
 
91
103
  ### 🎯 Ví dụ 1: Nhờ AI lên kế hoạch (Planning)
92
- > *"Quang Khánh ơi, dự án này đang cần thêm tính năng Đăng nhập. Hãy dùng skill **`agent-orchestrator`** để lên kế hoạch làm tính năng này cho tôi. Nhớ gọi thêm **`context-manager`** để kiểm tra thư mục hiện tại có những file gì trước nhé."*
104
+ > **`./qk-agent-orchestrator`** Hãy lên kế hoạch làm tính năng Đăng nhập này cho tôi. Nhớ gọi thêm **`./qk-context-manager`** để kiểm tra thư mục hiện tại có những file gì trước nhé.
93
105
 
94
106
  ### 🎯 Ví dụ 2: Fix lỗi cứng đầu (Bug Fix)
95
- > *"Code đang bị crash với lỗi `Hydration error`. Hãy dùng skill **`frontend-debug`** và **`bug-fix`** để tìm hiểu nguyên nhân gốc rễ và sửa nó giúp tôi."*
107
+ > **`./qk-frontend-debug`** & **`./qk-bug-fix`** Code đang bị crash với lỗi `Hydration error`. Hãy tìm hiểu nguyên nhân gốc rễ và sửa nó giúp tôi.
96
108
 
97
109
  ### 🎯 Ví dụ 3: Review Codebase (Audit)
98
- > *"Kích hoạt skill **`project-audit`**. Hãy kiểm tra nhanh cho tôi thư mục `src/components/` xem có bị vấn đề về hiệu năng hay code smell không."*
110
+ > **`./qk-project-audit`** Hãy kiểm tra nhanh cho tôi thư mục `src/components/` xem có bị vấn đề về hiệu năng hay code smell không.
99
111
 
100
112
  ### 🎯 Ví dụ 4: Xây dựng Giao diện Frontend (UI)
101
- > *"Kích hoạt skill **`ui-builder`** **`design-system`**. Hãy tạo cho tôi một màn hình Danh sách User. Chú ý dùng chuẩn components của thư mục `src/components/ui/` nhé."*
113
+ > **`./qk-ui-builder`** & **`./qk-design-system`** Hãy tạo cho tôi một màn hình Danh sách User. Chú ý dùng chuẩn components của thư mục `src/components/ui/` nhé.
102
114
 
103
115
  ### 🎯 Ví dụ 5: Làm việc với API (Backend & Integration)
104
- > *"Sử dụng skill **`api-integration`**. 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."*
116
+ > **`./qk-api-integration`** 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.
105
117
 
106
118
  ### 🎯 Ví dụ 6: Database & Backend
107
- > *"Sử dụng skill **`database-engineer`**. Hãy viết cho tôi schema Prisma cho bảng Product (Sản phẩm) và User (Người dùng) có quan hệ 1-N. Làm theo đúng chuẩn kiến trúc trong skill."*
119
+ > **`./qk-database-engineer`** Hãy viết cho tôi schema Prisma cho bảng Product và User có quan hệ 1-N. Làm theo đúng chuẩn kiến trúc trong skill.
package/package.json CHANGED
@@ -1,34 +1,34 @@
1
- {
2
- "name": "ai-developer-skill-os",
3
- "version": "1.0.7",
4
- "description": "Multi-agent skill package cho AI coding agents (Claude, Cursor, Windsurf, Antigravity) với 23 skills chuyên nghiệp.",
5
- "main": "bin/install.js",
6
- "bin": {
7
- "ai-developer-skill-os": "bin/install.js",
8
- "ai-skill": "bin/install.js"
9
- },
10
- "scripts": {
11
- "test": "echo \"Error: no test specified\" && exit 1"
12
- },
13
- "repository": {
14
- "type": "git",
15
- "url": "git+https://github.com/phamquangkhanh2999/ai-developer-skill-os.git"
16
- },
17
- "keywords": [
18
- "ai",
19
- "claude",
20
- "cursor",
21
- "windsurf",
22
- "skills",
23
- "developer",
24
- "agent",
25
- "prompts",
26
- "framework"
27
- ],
28
- "author": "Quang Khánh",
29
- "license": "MIT",
30
- "bugs": {
31
- "url": "https://github.com/phamquangkhanh2999/ai-developer-skill-os/issues"
32
- },
33
- "homepage": "https://github.com/phamquangkhanh2999/ai-developer-skill-os#readme"
34
- }
1
+ {
2
+ "name": "ai-developer-skill-os",
3
+ "version": "1.3.1",
4
+ "description": "Multi-agent skill package cho AI coding agents (Claude, Cursor, Windsurf, Antigravity) với 23 skills chuyên nghiệp.",
5
+ "main": "bin/install.js",
6
+ "bin": {
7
+ "ai-developer-skill-os": "bin/install.js",
8
+ "ai-skill": "bin/install.js"
9
+ },
10
+ "scripts": {
11
+ "test": "echo \"Error: no test specified\" && exit 1"
12
+ },
13
+ "repository": {
14
+ "type": "git",
15
+ "url": "git+https://github.com/phamquangkhanh2999/ai-developer-skill-os.git"
16
+ },
17
+ "keywords": [
18
+ "ai",
19
+ "claude",
20
+ "cursor",
21
+ "windsurf",
22
+ "skills",
23
+ "developer",
24
+ "agent",
25
+ "prompts",
26
+ "framework"
27
+ ],
28
+ "author": "Quang Khánh",
29
+ "license": "MIT",
30
+ "bugs": {
31
+ "url": "https://github.com/phamquangkhanh2999/ai-developer-skill-os/issues"
32
+ },
33
+ "homepage": "https://github.com/phamquangkhanh2999/ai-developer-skill-os#readme"
34
+ }
package/rename.js ADDED
@@ -0,0 +1,64 @@
1
+ const fs = require('fs');
2
+ const path = require('path');
3
+ const { execSync } = require('child_process');
4
+
5
+ const skillsDir = 'skills';
6
+ const categories = fs.readdirSync(skillsDir).filter(f => fs.statSync(path.join(skillsDir, f)).isDirectory());
7
+
8
+ categories.forEach(category => {
9
+ const catPath = path.join(skillsDir, category);
10
+ const skills = fs.readdirSync(catPath).filter(f => fs.statSync(path.join(catPath, f)).isDirectory());
11
+ skills.forEach(skill => {
12
+ if (!skill.startsWith('qk-')) {
13
+ const oldPath = path.join(catPath, skill).replace(/\\/g, '/');
14
+ const newPath = path.join(catPath, 'qk-' + skill).replace(/\\/g, '/');
15
+ try {
16
+ console.log(`Đang đổi tên: ${oldPath} -> ${newPath}`);
17
+ execSync(`git mv "${oldPath}" "${newPath}"`);
18
+ } catch(e) {
19
+ console.error('LỖI (Hãy chắc chắn bạn đã tắt hoàn toàn IDE/Cursor đang mở folder này):', e.message);
20
+ }
21
+ }
22
+ });
23
+ });
24
+
25
+ // Update skills.json
26
+ const skillsJsonPath = 'skills.json';
27
+ let skillsData = JSON.parse(fs.readFileSync(skillsJsonPath, 'utf8'));
28
+
29
+ // Fix entries and modify their paths
30
+ if(skillsData.skills) {
31
+ skillsData.skills = skillsData.skills.map(s => {
32
+ if(!s.name.startsWith('qk-')) {
33
+ s.name = 'qk-' + s.name;
34
+ const parts = s.path.split('/');
35
+ const skillFolder = parts[2];
36
+ if(!skillFolder.startsWith('qk-')) {
37
+ parts[2] = 'qk-' + skillFolder;
38
+ }
39
+ s.path = parts.join('/');
40
+ }
41
+ return s;
42
+ });
43
+ }
44
+ fs.writeFileSync(skillsJsonPath, JSON.stringify(skillsData, null, 2));
45
+
46
+ // Update SKILL.md names
47
+ categories.forEach(category => {
48
+ const catPath = path.join(skillsDir, category);
49
+ const skills = fs.readdirSync(catPath).filter(f => fs.statSync(path.join(catPath, f)).isDirectory());
50
+ skills.forEach(skill => {
51
+ if (skill.startsWith('qk-')) {
52
+ const skillMdPath = path.join(catPath, skill, 'SKILL.md');
53
+ if (fs.existsSync(skillMdPath)) {
54
+ let content = fs.readFileSync(skillMdPath, 'utf8');
55
+ content = content.replace(/^name:\s*([a-zA-Z0-9-]+)\s*$/m, (match, p1) => {
56
+ if (!p1.startsWith('qk-')) return 'name: qk-' + p1;
57
+ return match;
58
+ });
59
+ fs.writeFileSync(skillMdPath, content);
60
+ }
61
+ }
62
+ });
63
+ });
64
+ console.log('✅ Đã đổi tên thành công toàn bộ sang hệ qk-* !');
@@ -1,5 +1,5 @@
1
1
  ---
2
- name: auth-security
2
+ name: qk-
3
3
  description: >-
4
4
  Triển khai tính năng đăng nhập (JWT, OAuth), phân quyền (RBAC) và bảo vệ app khỏi các lỗ hổng OWASP.
5
5
  version: 1.0.0
@@ -1,5 +1,5 @@
1
1
  ---
2
- name: backend-architecture
2
+ name: qk-
3
3
  description: >-
4
4
  Kiểm soát cấu trúc backend, ép buộc tuân thủ mô hình Layer (Controller/Service/Repository) và vị trí file.
5
5
  version: 1.0.0
@@ -1,5 +1,5 @@
1
1
  ---
2
- name: database-engineer
2
+ name: qk-database-engineer
3
3
  description: >-
4
4
  Thiết kế database schema, viết script migration và tối ưu truy vấn cho SQL/NoSQL bằng ORM (Prisma, Drizzle...).
5
5
  version: 1.0.0
@@ -1,5 +1,5 @@
1
1
  ---
2
- name: deployment
2
+ name: qk-deployment
3
3
  description: >-
4
4
  Cấu hình CI/CD pipelines, tạo Dockerfile và thiết lập môi trường để deploy lên Vercel, AWS hoặc VPS.
5
5
  version: 1.0.0
@@ -1,5 +1,5 @@
1
1
  ---
2
- name: agent-orchestrator
2
+ name: qk-agent-orchestrator
3
3
  description: >-
4
4
  Phân tích yêu cầu, lên kế hoạch thực thi chi tiết và điều phối các tác vụ cho đúng skill. Không tự viết code.
5
5
  version: 1.0.0
@@ -1,5 +1,5 @@
1
1
  ---
2
- name: api-integration
2
+ name: qk-api-integration
3
3
  description: >-
4
4
  Chuyển đổi tài liệu API (curl, swagger...) thành code tích hợp frontend chuẩn xác, có type an toàn và xử lý lỗi.
5
5
  version: 2.0.0
@@ -1,5 +1,5 @@
1
1
  ---
2
- name: bug-fix
2
+ name: qk-bug-fix
3
3
  description: >-
4
4
  Chẩn đoán và sửa lỗi an toàn. Tái hiện lỗi, tìm nguyên nhân gốc rễ và áp dụng bản sửa lỗi tối thiểu, có kiểm chứng.
5
5
  version: 2.0.0
@@ -1,5 +1,5 @@
1
1
  ---
2
- name: context-manager
2
+ name: qk-context-manager
3
3
  description: >-
4
4
  Xác định các file cần thiết, tóm tắt kiến trúc và quản lý bộ nhớ ngữ cảnh để tránh tràn bộ nhớ.
5
5
  version: 1.0.0
@@ -1,5 +1,5 @@
1
1
  ---
2
- name: git-engineer
2
+ name: qk-git-engineer
3
3
  description: >-
4
4
  Viết commit message chuẩn Conventional Commits, mô tả Pull Request, Changelog và Release Notes chuyên nghiệp.
5
5
  version: 1.0.0
@@ -1,5 +1,5 @@
1
1
  ---
2
- name: migration
2
+ name: qk-migration
3
3
  description: >-
4
4
  Nâng cấp dependency, chuyển đổi framework và thay thế thư viện một cách an toàn với chiến lược không downtime.
5
5
  version: 1.0.0
@@ -1,5 +1,5 @@
1
1
  ---
2
- name: project-audit
2
+ name: qk-project-audit
3
3
  description: >-
4
4
  Kiểm toán toàn bộ dự án để phát hiện bug ẩn, rủi ro bảo mật, vấn đề hiệu năng và nợ kỹ thuật trước khi sửa code.
5
5
  version: 1.0.0
@@ -1,5 +1,5 @@
1
1
  ---
2
- name: refactor
2
+ name: qk-refactor
3
3
  description: >-
4
4
  Tái cấu trúc và dọn dẹp mã nguồn để dễ bảo trì hơn mà không làm thay đổi logic hoạt động bên ngoài.
5
5
  version: 1.0.0
@@ -1,5 +1,5 @@
1
1
  ---
2
- name: accessibility-audit
2
+ name: qk-accessibility-audit
3
3
  description: >-
4
4
  Kiểm tra và sửa lỗi khả năng tiếp cận (a11y/WCAG). Đảm bảo hỗ trợ phím, screen reader và semantic HTML.
5
5
  version: 1.0.0
@@ -1,5 +1,5 @@
1
1
  ---
2
- name: component-generator
2
+ name: qk-component-generator
3
3
  description: >-
4
4
  Tạo các UI Component độc lập, tái sử dụng được, có type an toàn và tuân thủ chuẩn design system.
5
5
  version: 1.0.0