ai-developer-skill-os 8.3.0 → 9.0.0

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 (115) hide show
  1. package/.agents/AGENTS.md +21 -0
  2. package/.agents/registry/capability-graph.yml +74 -21
  3. package/.agents/registry/graph.json +138 -255
  4. package/.agents/registry/index.yaml +70 -96
  5. package/.agents/registry/skills-index.yml +70 -47
  6. package/.agents/rules/anti-patterns.md +45 -0
  7. package/.agents/rules/global.md +13 -0
  8. package/.agents/skills/_template/SKILL.md +127 -2
  9. package/.agents/skills/_template/capability.yaml +34 -20
  10. package/.agents/skills/qk-access-policy/SKILL.md +132 -2
  11. package/.agents/skills/qk-access-policy/capability.yaml +23 -0
  12. package/.agents/skills/qk-access-policy/evals/scorecard.yaml +36 -0
  13. package/.agents/skills/qk-agent-observability/SKILL.md +139 -3
  14. package/.agents/skills/qk-agent-observability/capability.yaml +29 -0
  15. package/.agents/skills/qk-agent-observability/evals/scorecard.yaml +29 -0
  16. package/.agents/skills/qk-ai-builder/SKILL.md +132 -2
  17. package/.agents/skills/qk-ai-builder/capability.yaml +23 -0
  18. package/.agents/skills/qk-ai-builder/evals/scorecard.yaml +30 -0
  19. package/.agents/skills/qk-api-lifecycle/SKILL.md +132 -2
  20. package/.agents/skills/qk-api-lifecycle/capability.yaml +23 -0
  21. package/.agents/skills/qk-api-lifecycle/evals/scorecard.yaml +29 -0
  22. package/.agents/skills/qk-bug-resolution/SKILL.md +132 -2
  23. package/.agents/skills/qk-bug-resolution/capability.yaml +25 -0
  24. package/.agents/skills/qk-bug-resolution/evals/scorecard.yaml +30 -0
  25. package/.agents/skills/qk-code-review/SKILL.md +132 -2
  26. package/.agents/skills/qk-code-review/capability.yaml +23 -0
  27. package/.agents/skills/qk-code-review/evals/scorecard.yaml +29 -0
  28. package/.agents/skills/qk-context-loader/SKILL.md +135 -4
  29. package/.agents/skills/qk-context-loader/capability.yaml +23 -0
  30. package/.agents/skills/qk-context-loader/evals/scorecard.yaml +28 -0
  31. package/.agents/skills/qk-data-lifecycle/SKILL.md +132 -2
  32. package/.agents/skills/qk-data-lifecycle/capability.yaml +23 -0
  33. package/.agents/skills/qk-data-lifecycle/evals/scorecard.yaml +29 -0
  34. package/.agents/skills/qk-db-optimizer/SKILL.md +132 -2
  35. package/.agents/skills/qk-db-optimizer/capability.yaml +22 -0
  36. package/.agents/skills/qk-db-optimizer/evals/scorecard.yaml +28 -0
  37. package/.agents/skills/qk-design-system-engineering/SKILL.md +132 -2
  38. package/.agents/skills/qk-design-system-engineering/capability.yaml +25 -0
  39. package/.agents/skills/qk-design-system-engineering/evals/scorecard.yaml +27 -0
  40. package/.agents/skills/qk-devops-platform/SKILL.md +132 -2
  41. package/.agents/skills/qk-devops-platform/capability.yaml +29 -0
  42. package/.agents/skills/qk-devops-platform/evals/scorecard.yaml +28 -0
  43. package/.agents/skills/qk-docs/SKILL.md +132 -2
  44. package/.agents/skills/qk-docs/capability.yaml +23 -0
  45. package/.agents/skills/qk-docs/evals/scorecard.yaml +27 -0
  46. package/.agents/skills/qk-engineering-standard/SKILL.md +132 -2
  47. package/.agents/skills/qk-engineering-standard/capability.yaml +23 -0
  48. package/.agents/skills/qk-engineering-standard/evals/scorecard.yaml +28 -0
  49. package/.agents/skills/qk-fe-api-integration/SKILL.md +132 -2
  50. package/.agents/skills/qk-fe-api-integration/capability.yaml +21 -0
  51. package/.agents/skills/qk-fe-api-integration/evals/scorecard.yaml +29 -0
  52. package/.agents/skills/qk-feature-delivery/SKILL.md +132 -2
  53. package/.agents/skills/qk-feature-delivery/capability.yaml +24 -0
  54. package/.agents/skills/qk-feature-delivery/evals/scorecard.yaml +28 -0
  55. package/.agents/skills/qk-frontend-architecture/SKILL.md +132 -2
  56. package/.agents/skills/qk-frontend-architecture/capability.yaml +28 -0
  57. package/.agents/skills/qk-frontend-architecture/evals/scorecard.yaml +28 -0
  58. package/.agents/skills/qk-help/SKILL.md +3 -3
  59. package/.agents/skills/qk-help/capability.yaml +20 -0
  60. package/.agents/skills/qk-help/evals/scorecard.yaml +13 -0
  61. package/.agents/skills/qk-orchestrator/SKILL.md +132 -2
  62. package/.agents/skills/qk-orchestrator/capability.yaml +22 -0
  63. package/.agents/skills/qk-orchestrator/evals/scorecard.yaml +27 -0
  64. package/.agents/skills/qk-product-specification/SKILL.md +132 -2
  65. package/.agents/skills/qk-product-specification/capability.yaml +27 -0
  66. package/.agents/skills/qk-product-specification/evals/scorecard.yaml +27 -0
  67. package/.agents/skills/qk-production-release/SKILL.md +133 -3
  68. package/.agents/skills/qk-production-release/capability.yaml +27 -0
  69. package/.agents/skills/qk-production-release/evals/scorecard.yaml +28 -0
  70. package/.agents/skills/qk-project-bootstrap/SKILL.md +147 -4
  71. package/.agents/skills/qk-project-bootstrap/capability.yaml +23 -0
  72. package/.agents/skills/qk-project-bootstrap/evals/scorecard.yaml +28 -0
  73. package/.agents/skills/qk-project-health/SKILL.md +132 -2
  74. package/.agents/skills/qk-project-health/capability.yaml +23 -0
  75. package/.agents/skills/qk-project-health/evals/scorecard.yaml +27 -0
  76. package/.agents/skills/qk-project-memory/SKILL.md +252 -277
  77. package/.agents/skills/qk-project-memory/capability.yaml +23 -0
  78. package/.agents/skills/qk-project-memory/evals/scorecard.yaml +27 -0
  79. package/.agents/skills/qk-refactor/SKILL.md +247 -0
  80. package/.agents/skills/qk-refactor/capability.yaml +26 -0
  81. package/.agents/skills/qk-refactor/evals/scorecard.yaml +27 -0
  82. package/.agents/skills/qk-security-audit/SKILL.md +132 -2
  83. package/.agents/skills/qk-security-audit/capability.yaml +30 -0
  84. package/.agents/skills/qk-security-audit/evals/scorecard.yaml +27 -0
  85. package/.agents/skills/qk-system-evolution/SKILL.md +132 -2
  86. package/.agents/skills/qk-system-evolution/capability.yaml +24 -0
  87. package/.agents/skills/qk-system-evolution/evals/scorecard.yaml +26 -0
  88. package/.agents/skills/qk-test-engineering/SKILL.md +132 -2
  89. package/.agents/skills/qk-test-engineering/capability.yaml +28 -0
  90. package/.agents/skills/qk-test-engineering/evals/scorecard.yaml +26 -0
  91. package/.agents/skills/qk-ui-audit/SKILL.md +132 -2
  92. package/.agents/skills/qk-ui-audit/capability.yaml +23 -0
  93. package/.agents/skills/qk-ui-audit/evals/scorecard.yaml +26 -0
  94. package/.agents/skills/qk-ui-builder/capability.yaml +29 -0
  95. package/.agents/skills/qk-ui-builder/evals/scorecard.yaml +26 -0
  96. package/.agents/skills/qk-ui-system-builder/SKILL.md +132 -2
  97. package/.agents/skills/qk-ui-system-builder/capability.yaml +25 -0
  98. package/.agents/skills/qk-ui-system-builder/evals/scorecard.yaml +26 -0
  99. package/.agents/skills/qk-validation-gate/SKILL.md +132 -2
  100. package/.agents/skills/qk-validation-gate/capability.yaml +23 -0
  101. package/.agents/skills/qk-validation-gate/evals/scorecard.yaml +26 -0
  102. package/.agents/skills/qk-web-quality-gate/SKILL.md +132 -2
  103. package/.agents/skills/qk-web-quality-gate/capability.yaml +24 -0
  104. package/.agents/skills/qk-web-quality-gate/evals/scorecard.yaml +26 -0
  105. package/.agents/workflows/production-release.yml +173 -0
  106. package/CHANGELOG.md +35 -0
  107. package/README.md +13 -4
  108. package/bin/install.js +1 -1
  109. package/package.json +6 -3
  110. package/tooling/build-registry.js +186 -186
  111. package/tooling/fix-refactor.js +8 -0
  112. package/tooling/sync-versions.js +299 -0
  113. package/tooling/validate-graph.js +87 -87
  114. package/tooling/validate-skills.js +1 -1
  115. package/tooling/generate-registry.js +0 -157
@@ -0,0 +1,247 @@
1
+ ---
2
+ name: qk-refactor
3
+ version: 9.0.0
4
+ status: stable
5
+ description: "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."
6
+ platforms: [antigravity, claude-code, cursor, windsurf, kilo-code]
7
+
8
+ type: capability
9
+
10
+ intent:
11
+ - refactoring
12
+ - code-cleanup
13
+ - complexity-reduction
14
+
15
+ complexity:
16
+ level: medium
17
+ criteria:
18
+ files_affected: "2-5"
19
+ has_behavior_change: false
20
+ has_external_dependency: false
21
+ has_breaking_change: false
22
+
23
+ triggers:
24
+ - refactor
25
+ - tái cấu trúc
26
+ - clean up this code
27
+ - simplify
28
+ - reduce complexity
29
+ - dẫn cấu trúc code
30
+
31
+ selection:
32
+ priority: medium
33
+ confidence_threshold: 0.80
34
+
35
+ workflow: refactor
36
+
37
+ rules:
38
+ - global
39
+ - coding
40
+ - safety
41
+
42
+ tools:
43
+ - filesystem
44
+ - terminal
45
+
46
+ related_skills:
47
+ - qk-engineering-standard
48
+ - qk-project-health
49
+
50
+ knowledge_scope:
51
+ owns:
52
+ - refactoring-patterns
53
+ - code-smells
54
+ references:
55
+ - architecture
56
+ - coding-standards
57
+
58
+ verification:
59
+ required: true
60
+ strategy: refactor
61
+
62
+ examples: []
63
+ learnings: []
64
+
65
+ execution_mode: deterministic
66
+ cost: medium
67
+ latency: medium
68
+ risk: medium
69
+ side_effects: edit_files
70
+ produces: [code, report]
71
+ consumes: [source-code]
72
+
73
+ token_budget:
74
+ max_files_read: 3
75
+ max_lines_per_read: 150
76
+ max_shell_commands: 2
77
+ stop_early: true
78
+
79
+ exit_codes: [SUCCESS, BLOCKED, FAILED, PARTIAL]
80
+ ---
81
+
82
+ # qk-refactor - Safe Refactor
83
+
84
+ > Language rule: Code, identifiers, file names → English. Explanations, summaries → Vietnamese.
85
+
86
+ ## Memory Workflow
87
+
88
+ ### Pre-flight Retrieve (Trước khi thực thi)
89
+ - Trước các task có tính lặp lại, debug, refactor, kiến trúc hoặc rủi ro cao:
90
+ bắt buộc tra cứu:
91
+ - `.agents/knowledge/index.yaml` (Shared Project Knowledge)
92
+ - `.ai-local/knowledge/index.yaml` (Private Local Knowledge)
93
+
94
+ - Ưu tiên sử dụng các Knowledge đang có trạng thái `Active` thuộc:
95
+ - Architecture
96
+ - Hard Bug
97
+ - Convention
98
+ - Pattern
99
+ - Tech Debt Pattern
100
+ - 👉 *Domain Focus:* Pattern / Convention (vd: chiến lược tách file anti-slop, bảo toàn public contract).
101
+
102
+ - Memory chỉ đóng vai trò **Navigator (bản đồ chỉ đường)**.
103
+ Không được xem Memory là Source of Truth.
104
+ Luôn xác minh lại bằng source code, configuration và trạng thái hiện tại của dự án trước khi áp dụng.
105
+
106
+ ---
107
+
108
+ ### Learning Flow (AI tự học có kiểm soát)
109
+ - Trong quá trình làm việc, AI được phép tự phát hiện và tạo **Candidate Memory** khi nhận thấy:
110
+ - Hard Bug có khả năng tái diễn.
111
+ - Pattern làm việc lặp lại trong dự án.
112
+ - Convention hoặc quy tắc kiến trúc mới.
113
+ - Quyết định Architecture quan trọng.
114
+ - Tech Debt Pattern hoặc Code Smell có tính hệ thống.
115
+ - 👉 *Domain Harvest:* Pattern tái cấu trúc mã nguồn hiệu quả (vd: bẻ gẫy god-file thành module O(1)).
116
+
117
+ - Candidate Memory chỉ là bản nháp quan sát, chưa phải tri thức chính thức.
118
+ - Candidate Memory có thể lưu tạm tại: `.ai-local/candidates/`
119
+ - AI không được tự động Promote Candidate Memory thành Project Knowledge.
120
+
121
+ ---
122
+
123
+ ### Post-flight Harvest (Đề xuất → Phê duyệt)
124
+ Sau khi hoàn thành task:
125
+ - AI đánh giá các Candidate Memory đã tạo.
126
+ - Nếu phát hiện tri thức có giá trị tái sử dụng:
127
+ - Đề xuất người dùng xem xét.
128
+ - Gửi yêu cầu phê duyệt thông qua:
129
+ - `/learn`
130
+ - `qk-project-memory`
131
+ - Chỉ sau khi được phê duyệt, Candidate Memory mới được chuyển thành Knowledge chính thức:
132
+
133
+ ```
134
+ .ai-local/candidates/ ──(Approve)──> .agents/knowledge/index.yaml
135
+ ```
136
+
137
+ - Project Knowledge phải được xem như tài sản kỹ thuật của dự án:
138
+ - Có thể review, cập nhật, loại bỏ và có lịch sử thay đổi.
139
+
140
+ ---
141
+
142
+ ### Ignore (Không đưa vào Memory)
143
+ Không lưu:
144
+ - Trace log của một session đơn lẻ.
145
+ - Temporary debugging data.
146
+ - Output của một lần chạy test/scan.
147
+ - Report health tạm thời của một đợt kiểm tra.
148
+ - Lỗi nhỏ chỉ xảy ra một lần.
149
+ - Thông tin không có khả năng tái sử dụng.
150
+ - 👉 *Domain Ignore:* Các thao tác đổi tên biến (rename) hoặc format đơn giản.
151
+
152
+ ---
153
+
154
+ ### Golden Rule
155
+ > **AI được phép học, nhưng không được tự quyết định tri thức chính thức.**
156
+ > **AI quan sát → Đề xuất → Con người phê duyệt → Dự án tiến hóa.**
157
+
158
+ ---
159
+ ---
160
+
161
+ ### Learning Flow (AI tự học có kiểm soát)
162
+ - Trong quá trình làm việc, AI được phép tự phát hiện và tạo **Candidate Memory** khi nhận thấy:
163
+ - Hard Bug có khả năng tái diễn.
164
+ - Pattern làm việc lặp lại trong dự án.
165
+ - Convention hoặc quy tắc kiến trúc mới.
166
+ - Quyết định Architecture quan trọng.
167
+ - Tech Debt Pattern hoặc Code Smell có tính hệ thống.
168
+ - 👉 *Domain Harvest:* Pattern tái cấu trúc mã nguồn hiệu quả (vd: bẻ gẫy god-file thành module O(1)).
169
+
170
+ - Candidate Memory chỉ là bản nháp quan sát, chưa phải tri thức chính thức.
171
+ - Candidate Memory có thể lưu tạm tại: `.ai-local/candidates/`
172
+ - AI không được tự động Promote Candidate Memory thành Project Knowledge.
173
+
174
+ ---
175
+
176
+ ### Post-flight Harvest (Đề xuất → Phê duyệt)
177
+ Sau khi hoàn thành task:
178
+ - AI đánh giá các Candidate Memory đã tạo.
179
+ - Nếu phát hiện tri thức có giá trị tái sử dụng:
180
+ - Đề xuất người dùng xem xét.
181
+ - Gửi yêu cầu phê duyệt thông qua:
182
+ - `/learn`
183
+ - `qk-project-memory`
184
+ - Chỉ sau khi được phê duyệt, Candidate Memory mới được chuyển thành Knowledge chính thức:
185
+
186
+ ```
187
+ .ai-local/candidates/ ──(Approve)──> .agents/knowledge/index.yaml
188
+ ```
189
+
190
+ - Project Knowledge phải được xem như tài sản kỹ thuật của dự án:
191
+ - Có thể review, cập nhật, loại bỏ và có lịch sử thay đổi.
192
+
193
+ ---
194
+
195
+ ### Ignore (Không đưa vào Memory)
196
+ Không lưu:
197
+ - Trace log của một session đơn lẻ.
198
+ - Temporary debugging data.
199
+ - Output của một lần chạy test/scan.
200
+ - Report health tạm thời của một đợt kiểm tra.
201
+ - Lỗi nhỏ chỉ xảy ra một lần.
202
+ - Thông tin không có khả năng tái sử dụng.
203
+ - 👉 *Domain Ignore:* Các thao tác đổi tên biến (rename) hoặc format đơn giản.
204
+
205
+ ---
206
+
207
+ ### Golden Rule
208
+ > **AI được phép học, nhưng không được tự quyết định tri thức chính thức.**
209
+ > **AI quan sát → Đề xuất → Con người phê duyệt → Dự án tiến hóa.**
210
+
211
+ ---
212
+ ---
213
+ ---
214
+ ---
215
+
216
+ ## Preconditions
217
+ - [ ] Target file(s) or module(s) are specified
218
+ - [ ] Tests exist for the target code (or can be created)
219
+
220
+ On missing precondition:
221
+ EXIT: BLOCKED
222
+ Message: "Missing: target files or test coverage"
223
+
224
+ ## Scope
225
+ - Improve internal code quality without changing external behavior
226
+ - Reduce complexity, improve naming, extract functions
227
+ - Remove dead code and duplication
228
+
229
+ ## Non-Goals
230
+ - Add new functionality
231
+ - Change public API signatures
232
+ - Modify behavior or business logic
233
+
234
+ ## Workflow
235
+ 1. Establish baseline (current behavior + tests)
236
+ 2. Plan refactor steps
237
+ 3. Execute step by step
238
+ 4. Verify behavior unchanged
239
+ 5. Run validation gate
240
+
241
+ ## Exit Codes
242
+ | Code | Meaning |
243
+ |------|---------|
244
+ | SUCCESS | Refactor complete, behavior preserved, tests pass |
245
+ | PARTIAL | Refactor done, some tests need attention |
246
+ | BLOCKED | Missing preconditions |
247
+ | FAILED | Behavior changed or tests broken |
@@ -0,0 +1,26 @@
1
+ schema_version: 1
2
+ id: "qk-refactor"
3
+ version: "9.0.0"
4
+ description: "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
+ dependencies:
6
+ - "refactor"
7
+ tools:
8
+ - "filesystem"
9
+ - "terminal"
10
+ knowledge:
11
+ owns:
12
+ - "refactoring-patterns"
13
+ - "code-smells"
14
+ references:
15
+ - "architecture"
16
+ - "coding-standards"
17
+ eval:
18
+ scorecard: "evals/scorecard.yaml"
19
+ decision_boundary:
20
+ owns:
21
+ - "refactoring-patterns"
22
+ does_not_own:
23
+ - "new-functionality"
24
+ - "api-changes"
25
+ conflicts_with: []
26
+ delegates_to: []
@@ -0,0 +1,27 @@
1
+ name: qk-refactor-eval
2
+ description: Đánh giá an toàn và hiệu quả của tiến trình Refactor
3
+ version: 9.0.0
4
+ threshold: 90 # Yêu cầu an toàn rất cao, refactor không được làm hỏng tính năng
5
+
6
+ metrics:
7
+ - id: behavior_preservation
8
+ name: Bảo toàn Logic (Behavior Preservation)
9
+ description: Tái cấu trúc có làm thay đổi logic hoạt động hoặc API public không?
10
+ weight: 40
11
+ criteria:
12
+ - Tuyệt đối không thêm tính năng mới trong quá trình refactor (20đ)
13
+ - Không thay đổi chữ ký (signature) của các public API (20đ)
14
+
15
+ - id: test_coverage_precondition
16
+ name: Tiền điều kiện Kiểm thử (Tests)
17
+ description: Agent có từ chối refactor nếu không có Tests bảo vệ không?
18
+ weight: 35
19
+ criteria:
20
+ - Chặn (BLOCKED) và yêu cầu viết test nếu code chưa có coverage (35đ)
21
+
22
+ - id: complexity_reduction
23
+ name: Giảm Độ phức tạp (Complexity Reduction)
24
+ description: Kết quả refactor có thực sự làm code sạch và dễ bảo trì hơn không?
25
+ weight: 25
26
+ criteria:
27
+ - Tách hàm, loại bỏ code chết, giảm cyclomatic complexity rõ rệt (25đ)
@@ -1,12 +1,12 @@
1
1
  ---
2
2
  # ── Identity ───────────────────────────────────────────────
3
3
  name: qk-security-audit
4
- version: 8.1.0
4
+ version: 9.0.0
5
5
  status: experimental
6
6
  description: "Security audit (OWASP, dependency security, secret detection, permission model)."
7
7
  platforms: [antigravity, claude-code, cursor, windsurf, kilo-code]
8
8
 
9
- # ── V8: Classification ─────────────────────────────────────
9
+ # ── V9: Classification ─────────────────────────────────────
10
10
  type: capability
11
11
 
12
12
  intent:
@@ -125,6 +125,136 @@ exit_codes: [SUCCESS, BLOCKED, FAILED, PARTIAL]
125
125
 
126
126
  > **Language rule:** Code, identifiers, file names → English. Explanations, summaries → Vietnamese.
127
127
 
128
+ ## Memory Workflow
129
+
130
+ ### Pre-flight Retrieve (Trước khi thực thi)
131
+ - Trước các task có tính lặp lại, debug, refactor, kiến trúc hoặc rủi ro cao:
132
+ bắt buộc tra cứu:
133
+ - `.agents/knowledge/index.yaml` (Shared Project Knowledge)
134
+ - `.ai-local/knowledge/index.yaml` (Private Local Knowledge)
135
+
136
+ - Ưu tiên sử dụng các Knowledge đang có trạng thái `Active` thuộc:
137
+ - Architecture
138
+ - Hard Bug
139
+ - Convention
140
+ - Pattern
141
+ - Tech Debt Pattern
142
+ - 👉 *Domain Focus:* Hard Bug / Architecture (vd: lỗ hổng OWASP, lộ rò rỉ secret, quy chuẩn Zero-Trust R-SEC-04).
143
+
144
+ - Memory chỉ đóng vai trò **Navigator (bản đồ chỉ đường)**.
145
+ Không được xem Memory là Source of Truth.
146
+ Luôn xác minh lại bằng source code, configuration và trạng thái hiện tại của dự án trước khi áp dụng.
147
+
148
+ ---
149
+
150
+ ### Learning Flow (AI tự học có kiểm soát)
151
+ - Trong quá trình làm việc, AI được phép tự phát hiện và tạo **Candidate Memory** khi nhận thấy:
152
+ - Hard Bug có khả năng tái diễn.
153
+ - Pattern làm việc lặp lại trong dự án.
154
+ - Convention hoặc quy tắc kiến trúc mới.
155
+ - Quyết định Architecture quan trọng.
156
+ - Tech Debt Pattern hoặc Code Smell có tính hệ thống.
157
+ - 👉 *Domain Harvest:* Lỗ hổng bảo mật mới phát hiện (Hard Bug) hoặc chính sách an toàn mới.
158
+
159
+ - Candidate Memory chỉ là bản nháp quan sát, chưa phải tri thức chính thức.
160
+ - Candidate Memory có thể lưu tạm tại: `.ai-local/candidates/`
161
+ - AI không được tự động Promote Candidate Memory thành Project Knowledge.
162
+
163
+ ---
164
+
165
+ ### Post-flight Harvest (Đề xuất → Phê duyệt)
166
+ Sau khi hoàn thành task:
167
+ - AI đánh giá các Candidate Memory đã tạo.
168
+ - Nếu phát hiện tri thức có giá trị tái sử dụng:
169
+ - Đề xuất người dùng xem xét.
170
+ - Gửi yêu cầu phê duyệt thông qua:
171
+ - `/learn`
172
+ - `qk-project-memory`
173
+ - Chỉ sau khi được phê duyệt, Candidate Memory mới được chuyển thành Knowledge chính thức:
174
+
175
+ ```
176
+ .ai-local/candidates/ ──(Approve)──> .agents/knowledge/index.yaml
177
+ ```
178
+
179
+ - Project Knowledge phải được xem như tài sản kỹ thuật của dự án:
180
+ - Có thể review, cập nhật, loại bỏ và có lịch sử thay đổi.
181
+
182
+ ---
183
+
184
+ ### Ignore (Không đưa vào Memory)
185
+ Không lưu:
186
+ - Trace log của một session đơn lẻ.
187
+ - Temporary debugging data.
188
+ - Output của một lần chạy test/scan.
189
+ - Report health tạm thời của một đợt kiểm tra.
190
+ - Lỗi nhỏ chỉ xảy ra một lần.
191
+ - Thông tin không có khả năng tái sử dụng.
192
+ - 👉 *Domain Ignore:* Cảnh báo scanner giả (false positive) đã xác thực.
193
+
194
+ ---
195
+
196
+ ### Golden Rule
197
+ > **AI được phép học, nhưng không được tự quyết định tri thức chính thức.**
198
+ > **AI quan sát → Đề xuất → Con người phê duyệt → Dự án tiến hóa.**
199
+
200
+ ---
201
+ ---
202
+
203
+ ### Learning Flow (AI tự học có kiểm soát)
204
+ - Trong quá trình làm việc, AI được phép tự phát hiện và tạo **Candidate Memory** khi nhận thấy:
205
+ - Hard Bug có khả năng tái diễn.
206
+ - Pattern làm việc lặp lại trong dự án.
207
+ - Convention hoặc quy tắc kiến trúc mới.
208
+ - Quyết định Architecture quan trọng.
209
+ - Tech Debt Pattern hoặc Code Smell có tính hệ thống.
210
+ - 👉 *Domain Harvest:* Lỗ hổng bảo mật mới phát hiện (Hard Bug) hoặc chính sách an toàn mới.
211
+
212
+ - Candidate Memory chỉ là bản nháp quan sát, chưa phải tri thức chính thức.
213
+ - Candidate Memory có thể lưu tạm tại: `.ai-local/candidates/`
214
+ - AI không được tự động Promote Candidate Memory thành Project Knowledge.
215
+
216
+ ---
217
+
218
+ ### Post-flight Harvest (Đề xuất → Phê duyệt)
219
+ Sau khi hoàn thành task:
220
+ - AI đánh giá các Candidate Memory đã tạo.
221
+ - Nếu phát hiện tri thức có giá trị tái sử dụng:
222
+ - Đề xuất người dùng xem xét.
223
+ - Gửi yêu cầu phê duyệt thông qua:
224
+ - `/learn`
225
+ - `qk-project-memory`
226
+ - Chỉ sau khi được phê duyệt, Candidate Memory mới được chuyển thành Knowledge chính thức:
227
+
228
+ ```
229
+ .ai-local/candidates/ ──(Approve)──> .agents/knowledge/index.yaml
230
+ ```
231
+
232
+ - Project Knowledge phải được xem như tài sản kỹ thuật của dự án:
233
+ - Có thể review, cập nhật, loại bỏ và có lịch sử thay đổi.
234
+
235
+ ---
236
+
237
+ ### Ignore (Không đưa vào Memory)
238
+ Không lưu:
239
+ - Trace log của một session đơn lẻ.
240
+ - Temporary debugging data.
241
+ - Output của một lần chạy test/scan.
242
+ - Report health tạm thời của một đợt kiểm tra.
243
+ - Lỗi nhỏ chỉ xảy ra một lần.
244
+ - Thông tin không có khả năng tái sử dụng.
245
+ - 👉 *Domain Ignore:* Cảnh báo scanner giả (false positive) đã xác thực.
246
+
247
+ ---
248
+
249
+ ### Golden Rule
250
+ > **AI được phép học, nhưng không được tự quyết định tri thức chính thức.**
251
+ > **AI quan sát → Đề xuất → Con người phê duyệt → Dự án tiến hóa.**
252
+
253
+ ---
254
+ ---
255
+ ---
256
+ ---
257
+
128
258
  ## Preconditions
129
259
  - [ ] Tuân thủ `security.md`.
130
260
  - [ ] Xác định phạm vi codebase cần audit.
@@ -0,0 +1,30 @@
1
+ # Auto-generated from SKILL.md frontmatter
2
+ schema_version: 1
3
+ id: "qk-security-audit"
4
+ version: "9.0.0"
5
+ description: "Security audit (OWASP, dependency security, secret detection, permission model)."
6
+ tools:
7
+ - "filesystem"
8
+ - "terminal"
9
+ knowledge:
10
+ owns:
11
+ - "qk-security-audit"
12
+ references:
13
+ - "architecture"
14
+ - "security"
15
+ - "anti-patterns"
16
+ eval:
17
+ scorecard: "evals/scorecard.yaml"
18
+ decision_boundary:
19
+ owns:
20
+ - "application-security"
21
+ - "agent-security"
22
+ - "prompt-injection"
23
+ - "dependency-risk"
24
+ does_not_own:
25
+ - "access control implementation"
26
+ - "penetration testing"
27
+ - "compliance certification"
28
+ conflicts_with: []
29
+ delegates_to:
30
+ - "qk-validation-gate"
@@ -0,0 +1,27 @@
1
+ name: qk-security-audit-eval
2
+ description: Đánh giá chất lượng Kiểm toán Bảo mật
3
+ version: 9.0.0
4
+ threshold: 95 # Threshold gần như tuyệt đối vì đây là lưới lọc bảo mật cuối cùng
5
+
6
+ metrics:
7
+ - id: secret_leak_detection
8
+ name: Nhận diện rò rỉ Secret (Secret Leak)
9
+ description: Agent có phát hiện được API keys/Passwords bị hardcode không?
10
+ weight: 40
11
+ criteria:
12
+ - Rà quét và chỉ điểm chính xác file/line chứa secret bị hardcode (40đ)
13
+
14
+ - id: r_sec_04_enforcement
15
+ name: Rà soát Zero-Trust & Phân quyền
16
+ description: Có kiểm tra các lỗ hổng RBAC/ABAC và Prompt Injection không?
17
+ weight: 35
18
+ criteria:
19
+ - Đánh giá mô hình quyền hạn xem có lỗ hổng BOLA hoặc Broken Auth không (15đ)
20
+ - Quét nguy cơ Prompt Injection (nếu có LLM integration) theo chuẩn R-SEC-04 (20đ)
21
+
22
+ - id: owasp_and_dependencies
23
+ name: Lỗ hổng OWASP & Dependencies
24
+ description: Có kiểm tra các thư viện lỗi thời hoặc lỗ hổng phổ biến không?
25
+ weight: 25
26
+ criteria:
27
+ - Đưa ra danh sách cảnh báo dựa trên OWASP Top 10 và Dependency Tree (25đ)
@@ -1,12 +1,12 @@
1
1
  ---
2
2
  # ── Identity ───────────────────────────────────────────────
3
3
  name: qk-system-evolution
4
- version: 8.0.0
4
+ version: 9.0.0
5
5
  status: stable
6
6
  description: "Nâng cấp thư viện/framework an toàn với rollback plan bắt buộc — incremental, không big-bang."
7
7
  platforms: [antigravity, claude-code, cursor, windsurf, kilo-code]
8
8
 
9
- # ── V8: Classification ─────────────────────────────────────
9
+ # ── V9: Classification ─────────────────────────────────────
10
10
  type: capability
11
11
 
12
12
  intent:
@@ -87,6 +87,136 @@ exit_codes: [SUCCESS, BLOCKED, FAILED, PARTIAL]
87
87
 
88
88
  > **Language rule:** Code, identifiers, file names → English. Explanations, summaries → Vietnamese.
89
89
 
90
+ ## Memory Workflow
91
+
92
+ ### Pre-flight Retrieve (Trước khi thực thi)
93
+ - Trước các task có tính lặp lại, debug, refactor, kiến trúc hoặc rủi ro cao:
94
+ bắt buộc tra cứu:
95
+ - `.agents/knowledge/index.yaml` (Shared Project Knowledge)
96
+ - `.ai-local/knowledge/index.yaml` (Private Local Knowledge)
97
+
98
+ - Ưu tiên sử dụng các Knowledge đang có trạng thái `Active` thuộc:
99
+ - Architecture
100
+ - Hard Bug
101
+ - Convention
102
+ - Pattern
103
+ - Tech Debt Pattern
104
+ - 👉 *Domain Focus:* Architecture / Hard Bug (vd: kế hoạch nâng cấp thư viện incremental, breaking changes).
105
+
106
+ - Memory chỉ đóng vai trò **Navigator (bản đồ chỉ đường)**.
107
+ Không được xem Memory là Source of Truth.
108
+ Luôn xác minh lại bằng source code, configuration và trạng thái hiện tại của dự án trước khi áp dụng.
109
+
110
+ ---
111
+
112
+ ### Learning Flow (AI tự học có kiểm soát)
113
+ - Trong quá trình làm việc, AI được phép tự phát hiện và tạo **Candidate Memory** khi nhận thấy:
114
+ - Hard Bug có khả năng tái diễn.
115
+ - Pattern làm việc lặp lại trong dự án.
116
+ - Convention hoặc quy tắc kiến trúc mới.
117
+ - Quyết định Architecture quan trọng.
118
+ - Tech Debt Pattern hoặc Code Smell có tính hệ thống.
119
+ - 👉 *Domain Harvest:* Kinh nghiệm xử lý xung đột dependency hoặc bài học downgrade/rollback.
120
+
121
+ - Candidate Memory chỉ là bản nháp quan sát, chưa phải tri thức chính thức.
122
+ - Candidate Memory có thể lưu tạm tại: `.ai-local/candidates/`
123
+ - AI không được tự động Promote Candidate Memory thành Project Knowledge.
124
+
125
+ ---
126
+
127
+ ### Post-flight Harvest (Đề xuất → Phê duyệt)
128
+ Sau khi hoàn thành task:
129
+ - AI đánh giá các Candidate Memory đã tạo.
130
+ - Nếu phát hiện tri thức có giá trị tái sử dụng:
131
+ - Đề xuất người dùng xem xét.
132
+ - Gửi yêu cầu phê duyệt thông qua:
133
+ - `/learn`
134
+ - `qk-project-memory`
135
+ - Chỉ sau khi được phê duyệt, Candidate Memory mới được chuyển thành Knowledge chính thức:
136
+
137
+ ```
138
+ .ai-local/candidates/ ──(Approve)──> .agents/knowledge/index.yaml
139
+ ```
140
+
141
+ - Project Knowledge phải được xem như tài sản kỹ thuật của dự án:
142
+ - Có thể review, cập nhật, loại bỏ và có lịch sử thay đổi.
143
+
144
+ ---
145
+
146
+ ### Ignore (Không đưa vào Memory)
147
+ Không lưu:
148
+ - Trace log của một session đơn lẻ.
149
+ - Temporary debugging data.
150
+ - Output của một lần chạy test/scan.
151
+ - Report health tạm thời của một đợt kiểm tra.
152
+ - Lỗi nhỏ chỉ xảy ra một lần.
153
+ - Thông tin không có khả năng tái sử dụng.
154
+ - 👉 *Domain Ignore:* Lockfile changes tạm thời trong local cache.
155
+
156
+ ---
157
+
158
+ ### Golden Rule
159
+ > **AI được phép học, nhưng không được tự quyết định tri thức chính thức.**
160
+ > **AI quan sát → Đề xuất → Con người phê duyệt → Dự án tiến hóa.**
161
+
162
+ ---
163
+ ---
164
+
165
+ ### Learning Flow (AI tự học có kiểm soát)
166
+ - Trong quá trình làm việc, AI được phép tự phát hiện và tạo **Candidate Memory** khi nhận thấy:
167
+ - Hard Bug có khả năng tái diễn.
168
+ - Pattern làm việc lặp lại trong dự án.
169
+ - Convention hoặc quy tắc kiến trúc mới.
170
+ - Quyết định Architecture quan trọng.
171
+ - Tech Debt Pattern hoặc Code Smell có tính hệ thống.
172
+ - 👉 *Domain Harvest:* Kinh nghiệm xử lý xung đột dependency hoặc bài học downgrade/rollback.
173
+
174
+ - Candidate Memory chỉ là bản nháp quan sát, chưa phải tri thức chính thức.
175
+ - Candidate Memory có thể lưu tạm tại: `.ai-local/candidates/`
176
+ - AI không được tự động Promote Candidate Memory thành Project Knowledge.
177
+
178
+ ---
179
+
180
+ ### Post-flight Harvest (Đề xuất → Phê duyệt)
181
+ Sau khi hoàn thành task:
182
+ - AI đánh giá các Candidate Memory đã tạo.
183
+ - Nếu phát hiện tri thức có giá trị tái sử dụng:
184
+ - Đề xuất người dùng xem xét.
185
+ - Gửi yêu cầu phê duyệt thông qua:
186
+ - `/learn`
187
+ - `qk-project-memory`
188
+ - Chỉ sau khi được phê duyệt, Candidate Memory mới được chuyển thành Knowledge chính thức:
189
+
190
+ ```
191
+ .ai-local/candidates/ ──(Approve)──> .agents/knowledge/index.yaml
192
+ ```
193
+
194
+ - Project Knowledge phải được xem như tài sản kỹ thuật của dự án:
195
+ - Có thể review, cập nhật, loại bỏ và có lịch sử thay đổi.
196
+
197
+ ---
198
+
199
+ ### Ignore (Không đưa vào Memory)
200
+ Không lưu:
201
+ - Trace log của một session đơn lẻ.
202
+ - Temporary debugging data.
203
+ - Output của một lần chạy test/scan.
204
+ - Report health tạm thời của một đợt kiểm tra.
205
+ - Lỗi nhỏ chỉ xảy ra một lần.
206
+ - Thông tin không có khả năng tái sử dụng.
207
+ - 👉 *Domain Ignore:* Lockfile changes tạm thời trong local cache.
208
+
209
+ ---
210
+
211
+ ### Golden Rule
212
+ > **AI được phép học, nhưng không được tự quyết định tri thức chính thức.**
213
+ > **AI quan sát → Đề xuất → Con người phê duyệt → Dự án tiến hóa.**
214
+
215
+ ---
216
+ ---
217
+ ---
218
+ ---
219
+
90
220
  ## Preconditions
91
221
  - [ ] Current version and target version are specified
92
222
  - [ ] Rollback strategy is defined (git tag OR package-lock.json snapshot)
@@ -0,0 +1,24 @@
1
+ # Auto-generated from SKILL.md frontmatter
2
+ schema_version: 1
3
+ id: "qk-system-evolution"
4
+ version: "9.0.0"
5
+ description: "Nâng cấp thư viện/framework an toàn với rollback plan bắt buộc — incremental, không big-bang."
6
+ tools:
7
+ - "filesystem"
8
+ - "terminal"
9
+ knowledge:
10
+ owns:
11
+ - "upgrade-strategy"
12
+ - "rollback-plan"
13
+ references:
14
+ - "testing"
15
+ - "architecture"
16
+ - "security"
17
+ - "anti-patterns"
18
+ eval:
19
+ scorecard: "evals/scorecard.yaml"
20
+ decision_boundary:
21
+ owns:
22
+ - "qk-system-evolution"
23
+ does_not_own: []
24
+ conflicts_with: []