ai-developer-skill-os 8.3.1 → 9.1.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.
- package/.agents/AGENTS.md +21 -0
- package/.agents/registry/capability-graph.yml +13 -2
- package/.agents/registry/graph.json +33 -33
- package/.agents/registry/index.yaml +33 -33
- package/.agents/rules/global.md +13 -0
- package/.agents/skills/_template/SKILL.md +178 -2
- package/.agents/skills/_template/capability.yaml +1 -1
- package/.agents/skills/qk-access-policy/SKILL.md +185 -2
- package/.agents/skills/qk-access-policy/capability.yaml +1 -1
- package/.agents/skills/qk-access-policy/evals/scorecard.yaml +1 -1
- package/.agents/skills/qk-agent-observability/SKILL.md +190 -1
- package/.agents/skills/qk-agent-observability/capability.yaml +1 -1
- package/.agents/skills/qk-agent-observability/evals/scorecard.yaml +1 -1
- package/.agents/skills/qk-ai-builder/SKILL.md +185 -2
- package/.agents/skills/qk-ai-builder/capability.yaml +1 -1
- package/.agents/skills/qk-ai-builder/evals/scorecard.yaml +1 -1
- package/.agents/skills/qk-api-lifecycle/SKILL.md +185 -2
- package/.agents/skills/qk-api-lifecycle/capability.yaml +1 -1
- package/.agents/skills/qk-api-lifecycle/evals/scorecard.yaml +1 -1
- package/.agents/skills/qk-bug-resolution/SKILL.md +185 -2
- package/.agents/skills/qk-bug-resolution/capability.yaml +1 -1
- package/.agents/skills/qk-bug-resolution/evals/scorecard.yaml +1 -1
- package/.agents/skills/qk-code-review/SKILL.md +185 -2
- package/.agents/skills/qk-code-review/capability.yaml +1 -1
- package/.agents/skills/qk-code-review/evals/scorecard.yaml +1 -1
- package/.agents/skills/qk-context-loader/SKILL.md +188 -4
- package/.agents/skills/qk-context-loader/capability.yaml +1 -1
- package/.agents/skills/qk-context-loader/evals/scorecard.yaml +1 -1
- package/.agents/skills/qk-data-lifecycle/SKILL.md +185 -2
- package/.agents/skills/qk-data-lifecycle/capability.yaml +1 -1
- package/.agents/skills/qk-data-lifecycle/evals/scorecard.yaml +1 -1
- package/.agents/skills/qk-db-optimizer/SKILL.md +185 -2
- package/.agents/skills/qk-db-optimizer/capability.yaml +1 -1
- package/.agents/skills/qk-db-optimizer/evals/scorecard.yaml +1 -1
- package/.agents/skills/qk-design-system-engineering/SKILL.md +185 -2
- package/.agents/skills/qk-design-system-engineering/capability.yaml +1 -1
- package/.agents/skills/qk-design-system-engineering/evals/scorecard.yaml +1 -1
- package/.agents/skills/qk-devops-platform/SKILL.md +185 -2
- package/.agents/skills/qk-devops-platform/capability.yaml +1 -1
- package/.agents/skills/qk-devops-platform/evals/scorecard.yaml +1 -1
- package/.agents/skills/qk-docs/SKILL.md +185 -2
- package/.agents/skills/qk-docs/capability.yaml +1 -1
- package/.agents/skills/qk-docs/evals/scorecard.yaml +1 -1
- package/.agents/skills/qk-engineering-standard/SKILL.md +185 -2
- package/.agents/skills/qk-engineering-standard/capability.yaml +1 -1
- package/.agents/skills/qk-engineering-standard/evals/scorecard.yaml +3 -3
- package/.agents/skills/qk-fe-api-integration/SKILL.md +185 -2
- package/.agents/skills/qk-fe-api-integration/capability.yaml +1 -1
- package/.agents/skills/qk-fe-api-integration/evals/scorecard.yaml +1 -1
- package/.agents/skills/qk-feature-delivery/SKILL.md +185 -2
- package/.agents/skills/qk-feature-delivery/capability.yaml +1 -1
- package/.agents/skills/qk-feature-delivery/evals/scorecard.yaml +1 -1
- package/.agents/skills/qk-frontend-architecture/SKILL.md +185 -2
- package/.agents/skills/qk-frontend-architecture/capability.yaml +1 -1
- package/.agents/skills/qk-frontend-architecture/evals/scorecard.yaml +1 -1
- package/.agents/skills/qk-help/SKILL.md +2 -2
- package/.agents/skills/qk-help/capability.yaml +1 -1
- package/.agents/skills/qk-help/evals/scorecard.yaml +1 -1
- package/.agents/skills/qk-orchestrator/SKILL.md +185 -2
- package/.agents/skills/qk-orchestrator/capability.yaml +1 -1
- package/.agents/skills/qk-orchestrator/evals/scorecard.yaml +1 -1
- package/.agents/skills/qk-product-specification/SKILL.md +185 -2
- package/.agents/skills/qk-product-specification/capability.yaml +1 -1
- package/.agents/skills/qk-product-specification/evals/scorecard.yaml +1 -1
- package/.agents/skills/qk-production-release/SKILL.md +185 -2
- package/.agents/skills/qk-production-release/capability.yaml +1 -1
- package/.agents/skills/qk-production-release/evals/scorecard.yaml +1 -1
- package/.agents/skills/qk-project-bootstrap/SKILL.md +200 -4
- package/.agents/skills/qk-project-bootstrap/capability.yaml +1 -1
- package/.agents/skills/qk-project-bootstrap/evals/scorecard.yaml +1 -1
- package/.agents/skills/qk-project-health/SKILL.md +185 -2
- package/.agents/skills/qk-project-health/capability.yaml +1 -1
- package/.agents/skills/qk-project-health/evals/scorecard.yaml +1 -1
- package/.agents/skills/qk-project-memory/SKILL.md +252 -277
- package/.agents/skills/qk-project-memory/capability.yaml +1 -1
- package/.agents/skills/qk-project-memory/evals/scorecard.yaml +1 -1
- package/.agents/skills/qk-refactor/SKILL.md +184 -1
- package/.agents/skills/qk-refactor/capability.yaml +1 -1
- package/.agents/skills/qk-refactor/evals/scorecard.yaml +1 -1
- package/.agents/skills/qk-security-audit/SKILL.md +185 -2
- package/.agents/skills/qk-security-audit/capability.yaml +1 -1
- package/.agents/skills/qk-security-audit/evals/scorecard.yaml +1 -1
- package/.agents/skills/qk-system-evolution/SKILL.md +185 -2
- package/.agents/skills/qk-system-evolution/capability.yaml +1 -1
- package/.agents/skills/qk-system-evolution/evals/scorecard.yaml +1 -1
- package/.agents/skills/qk-test-engineering/SKILL.md +185 -2
- package/.agents/skills/qk-test-engineering/capability.yaml +1 -1
- package/.agents/skills/qk-test-engineering/evals/scorecard.yaml +1 -1
- package/.agents/skills/qk-ui-audit/SKILL.md +185 -2
- package/.agents/skills/qk-ui-audit/capability.yaml +1 -1
- package/.agents/skills/qk-ui-audit/evals/scorecard.yaml +1 -1
- package/.agents/skills/qk-ui-builder/capability.yaml +1 -1
- package/.agents/skills/qk-ui-builder/evals/scorecard.yaml +26 -0
- package/.agents/skills/qk-ui-system-builder/SKILL.md +185 -2
- package/.agents/skills/qk-ui-system-builder/capability.yaml +1 -1
- package/.agents/skills/qk-ui-system-builder/evals/scorecard.yaml +1 -1
- package/.agents/skills/qk-validation-gate/SKILL.md +185 -2
- package/.agents/skills/qk-validation-gate/capability.yaml +1 -1
- package/.agents/skills/qk-validation-gate/evals/scorecard.yaml +1 -1
- package/.agents/skills/qk-web-quality-gate/SKILL.md +185 -2
- package/.agents/skills/qk-web-quality-gate/capability.yaml +1 -1
- package/.agents/skills/qk-web-quality-gate/evals/scorecard.yaml +2 -2
- package/CHANGELOG.md +8 -0
- package/README.md +13 -4
- package/package.json +4 -3
- package/tooling/sync-versions.js +256 -6
- package/tooling/validate-skills.js +1 -1
|
@@ -1,12 +1,12 @@
|
|
|
1
1
|
---
|
|
2
2
|
# ── Identity ───────────────────────────────────────────────
|
|
3
3
|
name: qk-docs
|
|
4
|
-
version:
|
|
4
|
+
version: 9.1.0
|
|
5
5
|
status: stable
|
|
6
6
|
description: "Viết và duy trì tài liệu chính xác tuyệt đối — phải match code thực tế, cấm bịa đặt."
|
|
7
7
|
platforms: [antigravity, claude-code, cursor, windsurf, kilo-code]
|
|
8
8
|
|
|
9
|
-
# ──
|
|
9
|
+
# ── V9: Classification ─────────────────────────────────────
|
|
10
10
|
type: utility
|
|
11
11
|
|
|
12
12
|
intent:
|
|
@@ -86,6 +86,189 @@ exit_codes: [SUCCESS, BLOCKED, FAILED, PARTIAL]
|
|
|
86
86
|
|
|
87
87
|
---
|
|
88
88
|
|
|
89
|
+
## Memory Workflow
|
|
90
|
+
|
|
91
|
+
### Pre-flight Retrieve (Trước khi thực thi)
|
|
92
|
+
- Trước các task có tính lặp lại, debug, refactor, kiến trúc hoặc rủi ro cao:
|
|
93
|
+
bắt buộc tra cứu:
|
|
94
|
+
- `.agents/knowledge/index.yaml` (Shared Project Knowledge)
|
|
95
|
+
- `.ai-local/knowledge/index.yaml` (Private Local Knowledge)
|
|
96
|
+
|
|
97
|
+
- Ưu tiên sử dụng các Knowledge đang có trạng thái `Active` thuộc:
|
|
98
|
+
- Architecture
|
|
99
|
+
- Hard Bug
|
|
100
|
+
- Convention
|
|
101
|
+
- Pattern
|
|
102
|
+
- Tech Debt Pattern
|
|
103
|
+
- 👉 *Domain Focus:* Convention (vd: chuẩn cấu trúc tài liệu, ngôn ngữ giải thích Tiếng Việt / Code Tiếng Anh).
|
|
104
|
+
|
|
105
|
+
- Memory chỉ đóng vai trò **Navigator (bản đồ chỉ đường)**.
|
|
106
|
+
Không được xem Memory là Source of Truth.
|
|
107
|
+
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.
|
|
108
|
+
|
|
109
|
+
---
|
|
110
|
+
|
|
111
|
+
### Learning Flow (AI tự học có kiểm soát)
|
|
112
|
+
- 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:
|
|
113
|
+
- Hard Bug có khả năng tái diễn.
|
|
114
|
+
- Pattern làm việc lặp lại trong dự án.
|
|
115
|
+
- Convention hoặc quy tắc kiến trúc mới.
|
|
116
|
+
- Quyết định Architecture quan trọng.
|
|
117
|
+
- Tech Debt Pattern hoặc Code Smell có tính hệ thống.
|
|
118
|
+
- 👉 *Domain Harvest:* Pattern hoặc Convention mới của dự án (vd: quy chuẩn viết ADR hoặc tài liệu kiến trúc mới).
|
|
119
|
+
|
|
120
|
+
- Candidate Memory chỉ là bản nháp quan sát, chưa phải tri thức chính thức.
|
|
121
|
+
- Candidate Memory có thể lưu tạm tại: `.ai-local/candidates/`
|
|
122
|
+
- AI không được tự động Promote Candidate Memory thành Project Knowledge.
|
|
123
|
+
|
|
124
|
+
---
|
|
125
|
+
|
|
126
|
+
### Post-flight Harvest (Đề xuất → Phê duyệt)
|
|
127
|
+
Sau khi hoàn thành task:
|
|
128
|
+
- AI đánh giá các Candidate Memory đã tạo.
|
|
129
|
+
- Nếu phát hiện tri thức có giá trị tái sử dụng:
|
|
130
|
+
- Đề xuất người dùng xem xét.
|
|
131
|
+
- Gửi yêu cầu phê duyệt thông qua:
|
|
132
|
+
- `/learn`
|
|
133
|
+
- `qk-project-memory`
|
|
134
|
+
- Chỉ sau khi được phê duyệt, Candidate Memory mới được chuyển thành Knowledge chính thức:
|
|
135
|
+
|
|
136
|
+
```
|
|
137
|
+
.ai-local/candidates/ ──(Approve)──> .agents/knowledge/index.yaml
|
|
138
|
+
```
|
|
139
|
+
|
|
140
|
+
- Project Knowledge phải được xem như tài sản kỹ thuật của dự án:
|
|
141
|
+
- Có thể review, cập nhật, loại bỏ và có lịch sử thay đổi.
|
|
142
|
+
|
|
143
|
+
---
|
|
144
|
+
|
|
145
|
+
### Ignore (Không đưa vào Memory)
|
|
146
|
+
Không lưu:
|
|
147
|
+
- Trace log của một session đơn lẻ.
|
|
148
|
+
- Temporary debugging data.
|
|
149
|
+
- Output của một lần chạy test/scan.
|
|
150
|
+
- Report health tạm thời của một đợt kiểm tra.
|
|
151
|
+
- Lỗi nhỏ chỉ xảy ra một lần.
|
|
152
|
+
- Thông tin không có khả năng tái sử dụng.
|
|
153
|
+
- 👉 *Domain Ignore:* Các lần sửa chính tả, ngữ pháp đơn lẻ.
|
|
154
|
+
|
|
155
|
+
---
|
|
156
|
+
|
|
157
|
+
### Golden Rule
|
|
158
|
+
> **AI được phép học, nhưng không được tự quyết định tri thức chính thức.**
|
|
159
|
+
> **AI quan sát → Đề xuất → Con người phê duyệt → Dự án tiến hóa.**
|
|
160
|
+
|
|
161
|
+
---
|
|
162
|
+
---
|
|
163
|
+
|
|
164
|
+
### Learning Flow (AI tự học có kiểm soát)
|
|
165
|
+
- 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:
|
|
166
|
+
- Hard Bug có khả năng tái diễn.
|
|
167
|
+
- Pattern làm việc lặp lại trong dự án.
|
|
168
|
+
- Convention hoặc quy tắc kiến trúc mới.
|
|
169
|
+
- Quyết định Architecture quan trọng.
|
|
170
|
+
- Tech Debt Pattern hoặc Code Smell có tính hệ thống.
|
|
171
|
+
- 👉 *Domain Harvest:* Pattern hoặc Convention mới của dự án (vd: quy chuẩn viết ADR hoặc tài liệu kiến trúc mới).
|
|
172
|
+
|
|
173
|
+
- Candidate Memory chỉ là bản nháp quan sát, chưa phải tri thức chính thức.
|
|
174
|
+
- Candidate Memory có thể lưu tạm tại: `.ai-local/candidates/`
|
|
175
|
+
- AI không được tự động Promote Candidate Memory thành Project Knowledge.
|
|
176
|
+
|
|
177
|
+
---
|
|
178
|
+
|
|
179
|
+
### Post-flight Harvest (Đề xuất → Phê duyệt)
|
|
180
|
+
Sau khi hoàn thành task:
|
|
181
|
+
- AI đánh giá các Candidate Memory đã tạo.
|
|
182
|
+
- Nếu phát hiện tri thức có giá trị tái sử dụng:
|
|
183
|
+
- Đề xuất người dùng xem xét.
|
|
184
|
+
- Gửi yêu cầu phê duyệt thông qua:
|
|
185
|
+
- `/learn`
|
|
186
|
+
- `qk-project-memory`
|
|
187
|
+
- Chỉ sau khi được phê duyệt, Candidate Memory mới được chuyển thành Knowledge chính thức:
|
|
188
|
+
|
|
189
|
+
```
|
|
190
|
+
.ai-local/candidates/ ──(Approve)──> .agents/knowledge/index.yaml
|
|
191
|
+
```
|
|
192
|
+
|
|
193
|
+
- Project Knowledge phải được xem như tài sản kỹ thuật của dự án:
|
|
194
|
+
- Có thể review, cập nhật, loại bỏ và có lịch sử thay đổi.
|
|
195
|
+
|
|
196
|
+
---
|
|
197
|
+
|
|
198
|
+
### Ignore (Không đưa vào Memory)
|
|
199
|
+
Không lưu:
|
|
200
|
+
- Trace log của một session đơn lẻ.
|
|
201
|
+
- Temporary debugging data.
|
|
202
|
+
- Output của một lần chạy test/scan.
|
|
203
|
+
- Report health tạm thời của một đợt kiểm tra.
|
|
204
|
+
- Lỗi nhỏ chỉ xảy ra một lần.
|
|
205
|
+
- Thông tin không có khả năng tái sử dụng.
|
|
206
|
+
- 👉 *Domain Ignore:* Các lần sửa chính tả, ngữ pháp đơn lẻ.
|
|
207
|
+
|
|
208
|
+
---
|
|
209
|
+
|
|
210
|
+
### Golden Rule
|
|
211
|
+
> **AI được phép học, nhưng không được tự quyết định tri thức chính thức.**
|
|
212
|
+
> **AI quan sát → Đề xuất → Con người phê duyệt → Dự án tiến hóa.**
|
|
213
|
+
|
|
214
|
+
---
|
|
215
|
+
---
|
|
216
|
+
|
|
217
|
+
### Learning Flow (AI tự học có kiểm soát)
|
|
218
|
+
- 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:
|
|
219
|
+
- Hard Bug có khả năng tái diễn.
|
|
220
|
+
- Pattern làm việc lặp lại trong dự án.
|
|
221
|
+
- Convention hoặc quy tắc kiến trúc mới.
|
|
222
|
+
- Quyết định Architecture quan trọng.
|
|
223
|
+
- Tech Debt Pattern hoặc Code Smell có tính hệ thống.
|
|
224
|
+
- 👉 *Domain Harvest:* Pattern hoặc Convention mới của dự án (vd: quy chuẩn viết ADR hoặc tài liệu kiến trúc mới).
|
|
225
|
+
|
|
226
|
+
- Candidate Memory chỉ là bản nháp quan sát, chưa phải tri thức chính thức.
|
|
227
|
+
- Candidate Memory có thể lưu tạm tại: `.ai-local/candidates/`
|
|
228
|
+
- AI không được tự động Promote Candidate Memory thành Project Knowledge.
|
|
229
|
+
|
|
230
|
+
---
|
|
231
|
+
|
|
232
|
+
### Post-flight Harvest (Đề xuất → Phê duyệt)
|
|
233
|
+
Sau khi hoàn thành task:
|
|
234
|
+
- AI đánh giá các Candidate Memory đã tạo.
|
|
235
|
+
- Nếu phát hiện tri thức có giá trị tái sử dụng:
|
|
236
|
+
- Đề xuất người dùng xem xét.
|
|
237
|
+
- Gửi yêu cầu phê duyệt thông qua:
|
|
238
|
+
- `/learn`
|
|
239
|
+
- `qk-project-memory`
|
|
240
|
+
- Chỉ sau khi được phê duyệt, Candidate Memory mới được chuyển thành Knowledge chính thức:
|
|
241
|
+
|
|
242
|
+
```
|
|
243
|
+
.ai-local/candidates/ ──(Approve)──> .agents/knowledge/index.yaml
|
|
244
|
+
```
|
|
245
|
+
|
|
246
|
+
- Project Knowledge phải được xem như tài sản kỹ thuật của dự án:
|
|
247
|
+
- Có thể review, cập nhật, loại bỏ và có lịch sử thay đổi.
|
|
248
|
+
|
|
249
|
+
---
|
|
250
|
+
|
|
251
|
+
### Ignore (Không đưa vào Memory)
|
|
252
|
+
Không lưu:
|
|
253
|
+
- Trace log của một session đơn lẻ.
|
|
254
|
+
- Temporary debugging data.
|
|
255
|
+
- Output của một lần chạy test/scan.
|
|
256
|
+
- Report health tạm thời của một đợt kiểm tra.
|
|
257
|
+
- Lỗi nhỏ chỉ xảy ra một lần.
|
|
258
|
+
- Thông tin không có khả năng tái sử dụng.
|
|
259
|
+
- 👉 *Domain Ignore:* Các lần sửa chính tả, ngữ pháp đơn lẻ.
|
|
260
|
+
|
|
261
|
+
---
|
|
262
|
+
|
|
263
|
+
### Golden Rule
|
|
264
|
+
> **AI được phép học, nhưng không được tự quyết định tri thức chính thức.**
|
|
265
|
+
> **AI quan sát → Đề xuất → Con người phê duyệt → Dự án tiến hóa.**
|
|
266
|
+
|
|
267
|
+
---
|
|
268
|
+
---
|
|
269
|
+
---
|
|
270
|
+
---
|
|
271
|
+
|
|
89
272
|
## Preconditions
|
|
90
273
|
- [ ] Target code file or module is specified
|
|
91
274
|
|
|
@@ -1,12 +1,12 @@
|
|
|
1
1
|
---
|
|
2
2
|
# ── Identity ───────────────────────────────────────────────
|
|
3
3
|
name: qk-engineering-standard
|
|
4
|
-
version:
|
|
4
|
+
version: 9.1.0
|
|
5
5
|
status: stable
|
|
6
6
|
description: "Ép buộc SOLID, DRY, Clean Code với ngưỡng số liệu cụ thể — không có rule mơ hồ."
|
|
7
7
|
platforms: [antigravity, claude-code, cursor, windsurf, kilo-code]
|
|
8
8
|
|
|
9
|
-
# ──
|
|
9
|
+
# ── V9: Classification ─────────────────────────────────────
|
|
10
10
|
type: utility
|
|
11
11
|
|
|
12
12
|
intent:
|
|
@@ -86,6 +86,189 @@ exit_codes: [SUCCESS, BLOCKED, FAILED, PARTIAL]
|
|
|
86
86
|
|
|
87
87
|
> **Language rule:** Code, identifiers, file names → English. Explanations, summaries → Vietnamese.
|
|
88
88
|
|
|
89
|
+
## Memory Workflow
|
|
90
|
+
|
|
91
|
+
### Pre-flight Retrieve (Trước khi thực thi)
|
|
92
|
+
- Trước các task có tính lặp lại, debug, refactor, kiến trúc hoặc rủi ro cao:
|
|
93
|
+
bắt buộc tra cứu:
|
|
94
|
+
- `.agents/knowledge/index.yaml` (Shared Project Knowledge)
|
|
95
|
+
- `.ai-local/knowledge/index.yaml` (Private Local Knowledge)
|
|
96
|
+
|
|
97
|
+
- Ưu tiên sử dụng các Knowledge đang có trạng thái `Active` thuộc:
|
|
98
|
+
- Architecture
|
|
99
|
+
- Hard Bug
|
|
100
|
+
- Convention
|
|
101
|
+
- Pattern
|
|
102
|
+
- Tech Debt Pattern
|
|
103
|
+
- 👉 *Domain Focus:* Convention / Architecture (vd: ngưỡng định lượng độ phức tạp cyclomatic, DRY, SOLID).
|
|
104
|
+
|
|
105
|
+
- Memory chỉ đóng vai trò **Navigator (bản đồ chỉ đường)**.
|
|
106
|
+
Không được xem Memory là Source of Truth.
|
|
107
|
+
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.
|
|
108
|
+
|
|
109
|
+
---
|
|
110
|
+
|
|
111
|
+
### Learning Flow (AI tự học có kiểm soát)
|
|
112
|
+
- 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:
|
|
113
|
+
- Hard Bug có khả năng tái diễn.
|
|
114
|
+
- Pattern làm việc lặp lại trong dự án.
|
|
115
|
+
- Convention hoặc quy tắc kiến trúc mới.
|
|
116
|
+
- Quyết định Architecture quan trọng.
|
|
117
|
+
- Tech Debt Pattern hoặc Code Smell có tính hệ thống.
|
|
118
|
+
- 👉 *Domain Harvest:* Convention hoặc ranh giới kỹ thuật mới (vd: áp đặt giới hạn 100 dòng cho file AGENTS.md).
|
|
119
|
+
|
|
120
|
+
- Candidate Memory chỉ là bản nháp quan sát, chưa phải tri thức chính thức.
|
|
121
|
+
- Candidate Memory có thể lưu tạm tại: `.ai-local/candidates/`
|
|
122
|
+
- AI không được tự động Promote Candidate Memory thành Project Knowledge.
|
|
123
|
+
|
|
124
|
+
---
|
|
125
|
+
|
|
126
|
+
### Post-flight Harvest (Đề xuất → Phê duyệt)
|
|
127
|
+
Sau khi hoàn thành task:
|
|
128
|
+
- AI đánh giá các Candidate Memory đã tạo.
|
|
129
|
+
- Nếu phát hiện tri thức có giá trị tái sử dụng:
|
|
130
|
+
- Đề xuất người dùng xem xét.
|
|
131
|
+
- Gửi yêu cầu phê duyệt thông qua:
|
|
132
|
+
- `/learn`
|
|
133
|
+
- `qk-project-memory`
|
|
134
|
+
- Chỉ sau khi được phê duyệt, Candidate Memory mới được chuyển thành Knowledge chính thức:
|
|
135
|
+
|
|
136
|
+
```
|
|
137
|
+
.ai-local/candidates/ ──(Approve)──> .agents/knowledge/index.yaml
|
|
138
|
+
```
|
|
139
|
+
|
|
140
|
+
- Project Knowledge phải được xem như tài sản kỹ thuật của dự án:
|
|
141
|
+
- Có thể review, cập nhật, loại bỏ và có lịch sử thay đổi.
|
|
142
|
+
|
|
143
|
+
---
|
|
144
|
+
|
|
145
|
+
### Ignore (Không đưa vào Memory)
|
|
146
|
+
Không lưu:
|
|
147
|
+
- Trace log của một session đơn lẻ.
|
|
148
|
+
- Temporary debugging data.
|
|
149
|
+
- Output của một lần chạy test/scan.
|
|
150
|
+
- Report health tạm thời của một đợt kiểm tra.
|
|
151
|
+
- Lỗi nhỏ chỉ xảy ra một lần.
|
|
152
|
+
- Thông tin không có khả năng tái sử dụng.
|
|
153
|
+
- 👉 *Domain Ignore:* Cảnh báo linter tạm thời.
|
|
154
|
+
|
|
155
|
+
---
|
|
156
|
+
|
|
157
|
+
### Golden Rule
|
|
158
|
+
> **AI được phép học, nhưng không được tự quyết định tri thức chính thức.**
|
|
159
|
+
> **AI quan sát → Đề xuất → Con người phê duyệt → Dự án tiến hóa.**
|
|
160
|
+
|
|
161
|
+
---
|
|
162
|
+
---
|
|
163
|
+
|
|
164
|
+
### Learning Flow (AI tự học có kiểm soát)
|
|
165
|
+
- 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:
|
|
166
|
+
- Hard Bug có khả năng tái diễn.
|
|
167
|
+
- Pattern làm việc lặp lại trong dự án.
|
|
168
|
+
- Convention hoặc quy tắc kiến trúc mới.
|
|
169
|
+
- Quyết định Architecture quan trọng.
|
|
170
|
+
- Tech Debt Pattern hoặc Code Smell có tính hệ thống.
|
|
171
|
+
- 👉 *Domain Harvest:* Convention hoặc ranh giới kỹ thuật mới (vd: áp đặt giới hạn 100 dòng cho file AGENTS.md).
|
|
172
|
+
|
|
173
|
+
- Candidate Memory chỉ là bản nháp quan sát, chưa phải tri thức chính thức.
|
|
174
|
+
- Candidate Memory có thể lưu tạm tại: `.ai-local/candidates/`
|
|
175
|
+
- AI không được tự động Promote Candidate Memory thành Project Knowledge.
|
|
176
|
+
|
|
177
|
+
---
|
|
178
|
+
|
|
179
|
+
### Post-flight Harvest (Đề xuất → Phê duyệt)
|
|
180
|
+
Sau khi hoàn thành task:
|
|
181
|
+
- AI đánh giá các Candidate Memory đã tạo.
|
|
182
|
+
- Nếu phát hiện tri thức có giá trị tái sử dụng:
|
|
183
|
+
- Đề xuất người dùng xem xét.
|
|
184
|
+
- Gửi yêu cầu phê duyệt thông qua:
|
|
185
|
+
- `/learn`
|
|
186
|
+
- `qk-project-memory`
|
|
187
|
+
- Chỉ sau khi được phê duyệt, Candidate Memory mới được chuyển thành Knowledge chính thức:
|
|
188
|
+
|
|
189
|
+
```
|
|
190
|
+
.ai-local/candidates/ ──(Approve)──> .agents/knowledge/index.yaml
|
|
191
|
+
```
|
|
192
|
+
|
|
193
|
+
- Project Knowledge phải được xem như tài sản kỹ thuật của dự án:
|
|
194
|
+
- Có thể review, cập nhật, loại bỏ và có lịch sử thay đổi.
|
|
195
|
+
|
|
196
|
+
---
|
|
197
|
+
|
|
198
|
+
### Ignore (Không đưa vào Memory)
|
|
199
|
+
Không lưu:
|
|
200
|
+
- Trace log của một session đơn lẻ.
|
|
201
|
+
- Temporary debugging data.
|
|
202
|
+
- Output của một lần chạy test/scan.
|
|
203
|
+
- Report health tạm thời của một đợt kiểm tra.
|
|
204
|
+
- Lỗi nhỏ chỉ xảy ra một lần.
|
|
205
|
+
- Thông tin không có khả năng tái sử dụng.
|
|
206
|
+
- 👉 *Domain Ignore:* Cảnh báo linter tạm thời.
|
|
207
|
+
|
|
208
|
+
---
|
|
209
|
+
|
|
210
|
+
### Golden Rule
|
|
211
|
+
> **AI được phép học, nhưng không được tự quyết định tri thức chính thức.**
|
|
212
|
+
> **AI quan sát → Đề xuất → Con người phê duyệt → Dự án tiến hóa.**
|
|
213
|
+
|
|
214
|
+
---
|
|
215
|
+
---
|
|
216
|
+
|
|
217
|
+
### Learning Flow (AI tự học có kiểm soát)
|
|
218
|
+
- 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:
|
|
219
|
+
- Hard Bug có khả năng tái diễn.
|
|
220
|
+
- Pattern làm việc lặp lại trong dự án.
|
|
221
|
+
- Convention hoặc quy tắc kiến trúc mới.
|
|
222
|
+
- Quyết định Architecture quan trọng.
|
|
223
|
+
- Tech Debt Pattern hoặc Code Smell có tính hệ thống.
|
|
224
|
+
- 👉 *Domain Harvest:* Convention hoặc ranh giới kỹ thuật mới (vd: áp đặt giới hạn 100 dòng cho file AGENTS.md).
|
|
225
|
+
|
|
226
|
+
- Candidate Memory chỉ là bản nháp quan sát, chưa phải tri thức chính thức.
|
|
227
|
+
- Candidate Memory có thể lưu tạm tại: `.ai-local/candidates/`
|
|
228
|
+
- AI không được tự động Promote Candidate Memory thành Project Knowledge.
|
|
229
|
+
|
|
230
|
+
---
|
|
231
|
+
|
|
232
|
+
### Post-flight Harvest (Đề xuất → Phê duyệt)
|
|
233
|
+
Sau khi hoàn thành task:
|
|
234
|
+
- AI đánh giá các Candidate Memory đã tạo.
|
|
235
|
+
- Nếu phát hiện tri thức có giá trị tái sử dụng:
|
|
236
|
+
- Đề xuất người dùng xem xét.
|
|
237
|
+
- Gửi yêu cầu phê duyệt thông qua:
|
|
238
|
+
- `/learn`
|
|
239
|
+
- `qk-project-memory`
|
|
240
|
+
- Chỉ sau khi được phê duyệt, Candidate Memory mới được chuyển thành Knowledge chính thức:
|
|
241
|
+
|
|
242
|
+
```
|
|
243
|
+
.ai-local/candidates/ ──(Approve)──> .agents/knowledge/index.yaml
|
|
244
|
+
```
|
|
245
|
+
|
|
246
|
+
- Project Knowledge phải được xem như tài sản kỹ thuật của dự án:
|
|
247
|
+
- Có thể review, cập nhật, loại bỏ và có lịch sử thay đổi.
|
|
248
|
+
|
|
249
|
+
---
|
|
250
|
+
|
|
251
|
+
### Ignore (Không đưa vào Memory)
|
|
252
|
+
Không lưu:
|
|
253
|
+
- Trace log của một session đơn lẻ.
|
|
254
|
+
- Temporary debugging data.
|
|
255
|
+
- Output của một lần chạy test/scan.
|
|
256
|
+
- Report health tạm thời của một đợt kiểm tra.
|
|
257
|
+
- Lỗi nhỏ chỉ xảy ra một lần.
|
|
258
|
+
- Thông tin không có khả năng tái sử dụng.
|
|
259
|
+
- 👉 *Domain Ignore:* Cảnh báo linter tạm thời.
|
|
260
|
+
|
|
261
|
+
---
|
|
262
|
+
|
|
263
|
+
### Golden Rule
|
|
264
|
+
> **AI được phép học, nhưng không được tự quyết định tri thức chính thức.**
|
|
265
|
+
> **AI quan sát → Đề xuất → Con người phê duyệt → Dự án tiến hóa.**
|
|
266
|
+
|
|
267
|
+
---
|
|
268
|
+
---
|
|
269
|
+
---
|
|
270
|
+
---
|
|
271
|
+
|
|
89
272
|
## Preconditions
|
|
90
273
|
- [ ] Target file(s) or module(s) are specified
|
|
91
274
|
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
name: qk-engineering-standard-eval
|
|
2
2
|
description: Đánh giá việc áp dụng Tiêu chuẩn Kỹ thuật và Clean Code
|
|
3
|
-
version:
|
|
3
|
+
version: 9.1.0
|
|
4
4
|
threshold: 80 # Đánh giá tính chính xác của việc tính điểm Health Score
|
|
5
5
|
|
|
6
6
|
metrics:
|
|
@@ -17,8 +17,8 @@ metrics:
|
|
|
17
17
|
description: Báo cáo có tính toán điểm sức khỏe (Health Score) chuẩn xác không?
|
|
18
18
|
weight: 35
|
|
19
19
|
criteria:
|
|
20
|
-
- Trừ điểm đúng theo thang điểm (CRITICAL: -25, HIGH: -10, MEDIUM: -5, LOW: -2) (20đ)
|
|
21
|
-
- Trả về đúng mức Exit Code tương ứng (SUCCESS nếu >=80, FAILED nếu <60) (15đ)
|
|
20
|
+
- 'Trừ điểm đúng theo thang điểm (CRITICAL: -25, HIGH: -10, MEDIUM: -5, LOW: -2) (20đ)'
|
|
21
|
+
- 'Trả về đúng mức Exit Code tương ứng (SUCCESS nếu >=80, FAILED nếu <60) (15đ)'
|
|
22
22
|
|
|
23
23
|
- id: non_intrusive_reporting
|
|
24
24
|
name: Báo cáo không can thiệp (Read-only)
|
|
@@ -1,12 +1,12 @@
|
|
|
1
1
|
---
|
|
2
2
|
# ── Identity ───────────────────────────────────────────────
|
|
3
3
|
name: qk-fe-api-integration
|
|
4
|
-
version:
|
|
4
|
+
version: 9.1.0
|
|
5
5
|
status: stable
|
|
6
6
|
description: "Consume API Backend, quản lý State, bind vào UI — tuân thủ kiến trúc Base dự án"
|
|
7
7
|
platforms: [antigravity, claude-code, cursor, windsurf, kilo-code]
|
|
8
8
|
|
|
9
|
-
# ──
|
|
9
|
+
# ── V9: Classification ─────────────────────────────────────
|
|
10
10
|
type: capability
|
|
11
11
|
|
|
12
12
|
intent:
|
|
@@ -85,6 +85,189 @@ exit_codes: [SUCCESS, BLOCKED, FAILED, PARTIAL]
|
|
|
85
85
|
|
|
86
86
|
---
|
|
87
87
|
|
|
88
|
+
## Memory Workflow
|
|
89
|
+
|
|
90
|
+
### Pre-flight Retrieve (Trước khi thực thi)
|
|
91
|
+
- Trước các task có tính lặp lại, debug, refactor, kiến trúc hoặc rủi ro cao:
|
|
92
|
+
bắt buộc tra cứu:
|
|
93
|
+
- `.agents/knowledge/index.yaml` (Shared Project Knowledge)
|
|
94
|
+
- `.ai-local/knowledge/index.yaml` (Private Local Knowledge)
|
|
95
|
+
|
|
96
|
+
- Ưu tiên sử dụng các Knowledge đang có trạng thái `Active` thuộc:
|
|
97
|
+
- Architecture
|
|
98
|
+
- Hard Bug
|
|
99
|
+
- Convention
|
|
100
|
+
- Pattern
|
|
101
|
+
- Tech Debt Pattern
|
|
102
|
+
- 👉 *Domain Focus:* Pattern / Convention (vd: cách quản lý state TanStack Query/Zustand, binding chuẩn).
|
|
103
|
+
|
|
104
|
+
- Memory chỉ đóng vai trò **Navigator (bản đồ chỉ đường)**.
|
|
105
|
+
Không được xem Memory là Source of Truth.
|
|
106
|
+
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.
|
|
107
|
+
|
|
108
|
+
---
|
|
109
|
+
|
|
110
|
+
### Learning Flow (AI tự học có kiểm soát)
|
|
111
|
+
- 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:
|
|
112
|
+
- Hard Bug có khả năng tái diễn.
|
|
113
|
+
- Pattern làm việc lặp lại trong dự án.
|
|
114
|
+
- Convention hoặc quy tắc kiến trúc mới.
|
|
115
|
+
- Quyết định Architecture quan trọng.
|
|
116
|
+
- Tech Debt Pattern hoặc Code Smell có tính hệ thống.
|
|
117
|
+
- 👉 *Domain Harvest:* Pattern mới (vd: quy tắc cache/revalidate dữ liệu tầng Frontend).
|
|
118
|
+
|
|
119
|
+
- Candidate Memory chỉ là bản nháp quan sát, chưa phải tri thức chính thức.
|
|
120
|
+
- Candidate Memory có thể lưu tạm tại: `.ai-local/candidates/`
|
|
121
|
+
- AI không được tự động Promote Candidate Memory thành Project Knowledge.
|
|
122
|
+
|
|
123
|
+
---
|
|
124
|
+
|
|
125
|
+
### Post-flight Harvest (Đề xuất → Phê duyệt)
|
|
126
|
+
Sau khi hoàn thành task:
|
|
127
|
+
- AI đánh giá các Candidate Memory đã tạo.
|
|
128
|
+
- Nếu phát hiện tri thức có giá trị tái sử dụng:
|
|
129
|
+
- Đề xuất người dùng xem xét.
|
|
130
|
+
- Gửi yêu cầu phê duyệt thông qua:
|
|
131
|
+
- `/learn`
|
|
132
|
+
- `qk-project-memory`
|
|
133
|
+
- Chỉ sau khi được phê duyệt, Candidate Memory mới được chuyển thành Knowledge chính thức:
|
|
134
|
+
|
|
135
|
+
```
|
|
136
|
+
.ai-local/candidates/ ──(Approve)──> .agents/knowledge/index.yaml
|
|
137
|
+
```
|
|
138
|
+
|
|
139
|
+
- Project Knowledge phải được xem như tài sản kỹ thuật của dự án:
|
|
140
|
+
- Có thể review, cập nhật, loại bỏ và có lịch sử thay đổi.
|
|
141
|
+
|
|
142
|
+
---
|
|
143
|
+
|
|
144
|
+
### Ignore (Không đưa vào Memory)
|
|
145
|
+
Không lưu:
|
|
146
|
+
- Trace log của một session đơn lẻ.
|
|
147
|
+
- Temporary debugging data.
|
|
148
|
+
- Output của một lần chạy test/scan.
|
|
149
|
+
- Report health tạm thời của một đợt kiểm tra.
|
|
150
|
+
- Lỗi nhỏ chỉ xảy ra một lần.
|
|
151
|
+
- Thông tin không có khả năng tái sử dụng.
|
|
152
|
+
- 👉 *Domain Ignore:* Logic call API của 1 component riêng rẽ.
|
|
153
|
+
|
|
154
|
+
---
|
|
155
|
+
|
|
156
|
+
### Golden Rule
|
|
157
|
+
> **AI được phép học, nhưng không được tự quyết định tri thức chính thức.**
|
|
158
|
+
> **AI quan sát → Đề xuất → Con người phê duyệt → Dự án tiến hóa.**
|
|
159
|
+
|
|
160
|
+
---
|
|
161
|
+
---
|
|
162
|
+
|
|
163
|
+
### Learning Flow (AI tự học có kiểm soát)
|
|
164
|
+
- 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:
|
|
165
|
+
- Hard Bug có khả năng tái diễn.
|
|
166
|
+
- Pattern làm việc lặp lại trong dự án.
|
|
167
|
+
- Convention hoặc quy tắc kiến trúc mới.
|
|
168
|
+
- Quyết định Architecture quan trọng.
|
|
169
|
+
- Tech Debt Pattern hoặc Code Smell có tính hệ thống.
|
|
170
|
+
- 👉 *Domain Harvest:* Pattern mới (vd: quy tắc cache/revalidate dữ liệu tầng Frontend).
|
|
171
|
+
|
|
172
|
+
- Candidate Memory chỉ là bản nháp quan sát, chưa phải tri thức chính thức.
|
|
173
|
+
- Candidate Memory có thể lưu tạm tại: `.ai-local/candidates/`
|
|
174
|
+
- AI không được tự động Promote Candidate Memory thành Project Knowledge.
|
|
175
|
+
|
|
176
|
+
---
|
|
177
|
+
|
|
178
|
+
### Post-flight Harvest (Đề xuất → Phê duyệt)
|
|
179
|
+
Sau khi hoàn thành task:
|
|
180
|
+
- AI đánh giá các Candidate Memory đã tạo.
|
|
181
|
+
- Nếu phát hiện tri thức có giá trị tái sử dụng:
|
|
182
|
+
- Đề xuất người dùng xem xét.
|
|
183
|
+
- Gửi yêu cầu phê duyệt thông qua:
|
|
184
|
+
- `/learn`
|
|
185
|
+
- `qk-project-memory`
|
|
186
|
+
- Chỉ sau khi được phê duyệt, Candidate Memory mới được chuyển thành Knowledge chính thức:
|
|
187
|
+
|
|
188
|
+
```
|
|
189
|
+
.ai-local/candidates/ ──(Approve)──> .agents/knowledge/index.yaml
|
|
190
|
+
```
|
|
191
|
+
|
|
192
|
+
- Project Knowledge phải được xem như tài sản kỹ thuật của dự án:
|
|
193
|
+
- Có thể review, cập nhật, loại bỏ và có lịch sử thay đổi.
|
|
194
|
+
|
|
195
|
+
---
|
|
196
|
+
|
|
197
|
+
### Ignore (Không đưa vào Memory)
|
|
198
|
+
Không lưu:
|
|
199
|
+
- Trace log của một session đơn lẻ.
|
|
200
|
+
- Temporary debugging data.
|
|
201
|
+
- Output của một lần chạy test/scan.
|
|
202
|
+
- Report health tạm thời của một đợt kiểm tra.
|
|
203
|
+
- Lỗi nhỏ chỉ xảy ra một lần.
|
|
204
|
+
- Thông tin không có khả năng tái sử dụng.
|
|
205
|
+
- 👉 *Domain Ignore:* Logic call API của 1 component riêng rẽ.
|
|
206
|
+
|
|
207
|
+
---
|
|
208
|
+
|
|
209
|
+
### Golden Rule
|
|
210
|
+
> **AI được phép học, nhưng không được tự quyết định tri thức chính thức.**
|
|
211
|
+
> **AI quan sát → Đề xuất → Con người phê duyệt → Dự án tiến hóa.**
|
|
212
|
+
|
|
213
|
+
---
|
|
214
|
+
---
|
|
215
|
+
|
|
216
|
+
### Learning Flow (AI tự học có kiểm soát)
|
|
217
|
+
- 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:
|
|
218
|
+
- Hard Bug có khả năng tái diễn.
|
|
219
|
+
- Pattern làm việc lặp lại trong dự án.
|
|
220
|
+
- Convention hoặc quy tắc kiến trúc mới.
|
|
221
|
+
- Quyết định Architecture quan trọng.
|
|
222
|
+
- Tech Debt Pattern hoặc Code Smell có tính hệ thống.
|
|
223
|
+
- 👉 *Domain Harvest:* Pattern mới (vd: quy tắc cache/revalidate dữ liệu tầng Frontend).
|
|
224
|
+
|
|
225
|
+
- Candidate Memory chỉ là bản nháp quan sát, chưa phải tri thức chính thức.
|
|
226
|
+
- Candidate Memory có thể lưu tạm tại: `.ai-local/candidates/`
|
|
227
|
+
- AI không được tự động Promote Candidate Memory thành Project Knowledge.
|
|
228
|
+
|
|
229
|
+
---
|
|
230
|
+
|
|
231
|
+
### Post-flight Harvest (Đề xuất → Phê duyệt)
|
|
232
|
+
Sau khi hoàn thành task:
|
|
233
|
+
- AI đánh giá các Candidate Memory đã tạo.
|
|
234
|
+
- Nếu phát hiện tri thức có giá trị tái sử dụng:
|
|
235
|
+
- Đề xuất người dùng xem xét.
|
|
236
|
+
- Gửi yêu cầu phê duyệt thông qua:
|
|
237
|
+
- `/learn`
|
|
238
|
+
- `qk-project-memory`
|
|
239
|
+
- Chỉ sau khi được phê duyệt, Candidate Memory mới được chuyển thành Knowledge chính thức:
|
|
240
|
+
|
|
241
|
+
```
|
|
242
|
+
.ai-local/candidates/ ──(Approve)──> .agents/knowledge/index.yaml
|
|
243
|
+
```
|
|
244
|
+
|
|
245
|
+
- Project Knowledge phải được xem như tài sản kỹ thuật của dự án:
|
|
246
|
+
- Có thể review, cập nhật, loại bỏ và có lịch sử thay đổi.
|
|
247
|
+
|
|
248
|
+
---
|
|
249
|
+
|
|
250
|
+
### Ignore (Không đưa vào Memory)
|
|
251
|
+
Không lưu:
|
|
252
|
+
- Trace log của một session đơn lẻ.
|
|
253
|
+
- Temporary debugging data.
|
|
254
|
+
- Output của một lần chạy test/scan.
|
|
255
|
+
- Report health tạm thời của một đợt kiểm tra.
|
|
256
|
+
- Lỗi nhỏ chỉ xảy ra một lần.
|
|
257
|
+
- Thông tin không có khả năng tái sử dụng.
|
|
258
|
+
- 👉 *Domain Ignore:* Logic call API của 1 component riêng rẽ.
|
|
259
|
+
|
|
260
|
+
---
|
|
261
|
+
|
|
262
|
+
### Golden Rule
|
|
263
|
+
> **AI được phép học, nhưng không được tự quyết định tri thức chính thức.**
|
|
264
|
+
> **AI quan sát → Đề xuất → Con người phê duyệt → Dự án tiến hóa.**
|
|
265
|
+
|
|
266
|
+
---
|
|
267
|
+
---
|
|
268
|
+
---
|
|
269
|
+
---
|
|
270
|
+
|
|
88
271
|
## Preconditions
|
|
89
272
|
- [ ] Backend JSON payload hoặc API endpoint schema được cung cấp
|
|
90
273
|
- [ ] Project's API client pattern được xác định (Axios wrapper, RTK Query, React Query, etc.)
|