ai-developer-skill-os 9.1.2 → 9.3.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 +139 -42
- package/.agents/DEV_PROFILE.md +95 -0
- package/.agents/registry/capability-graph.yml +171 -334
- package/.agents/registry/graph.json +37 -19
- package/.agents/registry/index.yaml +59 -13
- package/.agents/registry/skills-index.yml +204 -447
- package/.agents/rules/coding.md +23 -0
- package/.agents/rules/global.md +44 -30
- package/.agents/skills/_template/SKILL.md +2 -377
- package/.agents/skills/qk-access-policy/SKILL.md +98 -473
- package/.agents/skills/qk-agent-observability/SKILL.md +3 -439
- package/.agents/skills/qk-ai-builder/SKILL.md +132 -565
- package/.agents/skills/qk-api-consumer/SKILL.md +256 -0
- package/.agents/skills/qk-api-consumer/capability.yaml +21 -0
- package/.agents/skills/qk-api-consumer/evals/scorecard.yaml +29 -0
- package/.agents/skills/qk-api-lifecycle/SKILL.md +133 -456
- package/.agents/skills/qk-bug-resolution/SKILL.md +128 -561
- package/.agents/skills/qk-code-review/SKILL.md +142 -420
- package/.agents/skills/qk-context-loader/SKILL.md +99 -471
- package/.agents/skills/qk-data-engineer/SKILL.md +119 -340
- package/.agents/skills/qk-data-lifecycle/SKILL.md +89 -488
- package/.agents/skills/qk-db-optimizer/SKILL.md +102 -488
- package/.agents/skills/qk-design-system-engineering/SKILL.md +76 -461
- package/.agents/skills/qk-devops-platform/SKILL.md +77 -463
- package/.agents/skills/qk-docs/SKILL.md +88 -494
- package/.agents/skills/qk-engineering-standard/SKILL.md +4 -588
- package/.agents/skills/qk-fe-api-integration/SKILL.md +343 -343
- package/.agents/skills/qk-fe-api-integration/evals/scorecard.yaml +29 -29
- package/.agents/skills/qk-feature-delivery/SKILL.md +137 -445
- package/.agents/skills/qk-feature-delivery/evals/scorecard.yaml +1 -1
- package/.agents/skills/qk-frontend-architecture/SKILL.md +5 -479
- package/.agents/skills/qk-help/evals/scorecard.yaml +13 -13
- package/.agents/skills/qk-orchestrator/SKILL.md +63 -502
- package/.agents/skills/qk-orchestrator/references/routing-table.md +10 -14
- package/.agents/skills/qk-product-specification/SKILL.md +70 -479
- package/.agents/skills/qk-production-release/SKILL.md +80 -537
- package/.agents/skills/qk-project-audit/SKILL.md +174 -0
- package/.agents/skills/qk-project-bootstrap/SKILL.md +243 -471
- package/.agents/skills/qk-project-health/SKILL.md +97 -496
- package/.agents/skills/qk-project-memory/SKILL.md +76 -21
- package/.agents/skills/qk-refactor/SKILL.md +167 -384
- package/.agents/skills/qk-security-audit/SKILL.md +141 -463
- package/.agents/skills/qk-security-audit/capability.yaml +1 -2
- package/.agents/skills/qk-system-evolution/SKILL.md +343 -343
- package/.agents/skills/qk-system-evolution/evals/scorecard.yaml +26 -26
- package/.agents/skills/qk-test-engineering/SKILL.md +119 -509
- package/.agents/skills/qk-ui-audit/SKILL.md +73 -537
- package/.agents/skills/qk-ui-builder/SKILL.md +521 -482
- package/.agents/skills/qk-ui-system-builder/SKILL.md +68 -514
- package/.agents/skills/qk-upgrade/SKILL.md +301 -0
- package/.agents/skills/qk-upgrade/capability.yaml +24 -0
- package/.agents/skills/qk-upgrade/evals/scorecard.yaml +26 -0
- package/.agents/skills/qk-validation-gate/SKILL.md +4 -603
- package/.agents/skills/qk-web-quality-gate/SKILL.md +85 -463
- package/.agents/workflows/bug-resolution.yml +6 -6
- package/.agents/workflows/context-discovery.yml +94 -0
- package/.agents/workflows/feature-delivery.yml +8 -4
- package/.agents/workflows/refactor.yml +6 -3
- package/.agents/workflows/shared/quality-gate.yml +94 -0
- package/.agents/workflows/skin-governance.yml +115 -0
- package/README.md +152 -67
- package/package.json +2 -2
- package/tooling/build-registry.js +30 -8
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
---
|
|
1
|
+
---
|
|
2
2
|
name: qk-agent-observability
|
|
3
|
-
version: 9.1
|
|
4
|
-
status:
|
|
3
|
+
version: 9.2.1
|
|
4
|
+
status: archived
|
|
5
5
|
description: "Lớp theo dõi (Observability) cho phép giám sát quyết định, luân chuyển và các mô hình lỗi."
|
|
6
6
|
platforms: [antigravity, claude-code, cursor, windsurf, kilo-code]
|
|
7
7
|
|
|
@@ -106,439 +106,3 @@ token_budget:
|
|
|
106
106
|
|
|
107
107
|
# Agent Observability Capability
|
|
108
108
|
This skill enables tracking and observing the AI agent's own behavior, decisions, and accuracy metrics without interfering with application or infrastructure observability systems.
|
|
109
|
-
|
|
110
|
-
---
|
|
111
|
-
|
|
112
|
-
## Memory Workflow
|
|
113
|
-
|
|
114
|
-
### 0. Self-Init Protocol (Khởi Tạo Bộ Nhớ Local & Gitignore)
|
|
115
|
-
- Trước khi tra cứu hoặc lưu trữ tri thức, BẮT BUỘC kiểm tra sự tồn tại của thư mục `.ai-local/` tại gốc dự án:
|
|
116
|
-
- **Tự động tạo mới:** Nếu `.ai-local/` chưa tồn tại, AI phải tự động tạo cấu trúc thư mục `.ai-local/knowledge/` (và file `index.yaml` nếu cần thiết) cùng `.ai-local/candidates/`. Tuyệt đối không ngưng chạy hay hỏi ý kiến người dùng về thao tác khởi tạo tiêu chuẩn này.
|
|
117
|
-
- **Bảo mật Gitignore:** BẮT BUỘC kiểm tra file `.gitignore` của dự án, nếu chưa có dòng `.ai-local/` thì phải tự động thêm vào để tuyệt đối bảo mật tri thức cá nhân và tránh lộ lọt lên Git.
|
|
118
|
-
|
|
119
|
-
---
|
|
120
|
-
|
|
121
|
-
### Pre-flight Retrieve (Trước khi thực thi)
|
|
122
|
-
- Trước các task có tính lặp lại, debug, refactor, kiến trúc hoặc rủi ro cao:
|
|
123
|
-
bắt buộc tra cứu:
|
|
124
|
-
- `.ai-local/knowledge/index.yaml` (Private Local Knowledge)
|
|
125
|
-
|
|
126
|
-
- Ưu tiên sử dụng các Knowledge đang có trạng thái `Active` thuộc:
|
|
127
|
-
- Architecture
|
|
128
|
-
- Hard Bug
|
|
129
|
-
- Convention
|
|
130
|
-
- Pattern
|
|
131
|
-
- Tech Debt Pattern
|
|
132
|
-
- 👉 *Domain Focus:* Hard Bug / Convention (vd: mô hình lỗi lặp vô tận, giới hạn token budget).
|
|
133
|
-
|
|
134
|
-
- Memory chỉ đóng vai trò **Navigator (bản đồ chỉ đường)**.
|
|
135
|
-
Không được xem Memory là Source of Truth.
|
|
136
|
-
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.
|
|
137
|
-
|
|
138
|
-
---
|
|
139
|
-
|
|
140
|
-
### Learning Flow (AI tự học có kiểm soát)
|
|
141
|
-
- 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:
|
|
142
|
-
- Hard Bug có khả năng tái diễn.
|
|
143
|
-
- Pattern làm việc lặp lại trong dự án.
|
|
144
|
-
- Convention hoặc quy tắc kiến trúc mới.
|
|
145
|
-
- Quyết định Architecture quan trọng.
|
|
146
|
-
- Tech Debt Pattern hoặc Code Smell có tính hệ thống.
|
|
147
|
-
- 👉 *Domain Harvest:* Hard Bug mới có khả năng tái diễn (vd: lỗi loop định tuyến cần blacklist).
|
|
148
|
-
|
|
149
|
-
- Candidate Memory chỉ là bản nháp quan sát, chưa phải tri thức chính thức.
|
|
150
|
-
- Candidate Memory có thể lưu tạm tại: `.ai-local/candidates/`
|
|
151
|
-
- AI không được tự động Promote Candidate Memory thành Project Knowledge.
|
|
152
|
-
|
|
153
|
-
---
|
|
154
|
-
|
|
155
|
-
### Post-flight Harvest (Đề xuất → Phê duyệt)
|
|
156
|
-
Sau khi hoàn thành task:
|
|
157
|
-
- AI đánh giá các Candidate Memory đã tạo.
|
|
158
|
-
- Nếu phát hiện tri thức có giá trị tái sử dụng:
|
|
159
|
-
- Đề xuất người dùng xem xét.
|
|
160
|
-
- Gửi yêu cầu phê duyệt thông qua:
|
|
161
|
-
- `/learn`
|
|
162
|
-
- `qk-project-memory`
|
|
163
|
-
- Chỉ sau khi được phê duyệt, Candidate Memory mới được chuyển thành Knowledge chính thức:
|
|
164
|
-
|
|
165
|
-
```
|
|
166
|
-
.ai-local/candidates/ ──(Approve)──> .ai-local/knowledge/index.yaml
|
|
167
|
-
```
|
|
168
|
-
|
|
169
|
-
- Project Knowledge phải được xem như tài sản kỹ thuật của dự án:
|
|
170
|
-
- Có thể review, cập nhật, loại bỏ và có lịch sử thay đổi.
|
|
171
|
-
|
|
172
|
-
---
|
|
173
|
-
|
|
174
|
-
### Ignore (Không đưa vào Memory)
|
|
175
|
-
Không lưu:
|
|
176
|
-
- Trace log của một session đơn lẻ.
|
|
177
|
-
- Temporary debugging data.
|
|
178
|
-
- Output của một lần chạy test/scan.
|
|
179
|
-
- Report health tạm thời của một đợt kiểm tra.
|
|
180
|
-
- Lỗi nhỏ chỉ xảy ra một lần.
|
|
181
|
-
- Thông tin không có khả năng tái sử dụng.
|
|
182
|
-
- 👉 *Domain Ignore:* Trace log của một session đơn lẻ (tự XÓA sau khi thực thi).
|
|
183
|
-
|
|
184
|
-
---
|
|
185
|
-
|
|
186
|
-
### Golden Rule
|
|
187
|
-
> **AI được phép học, nhưng không được tự quyết định tri thức chính thức.**
|
|
188
|
-
> **AI quan sát → Đề xuất → Con người phê duyệt → Dự án tiến hóa.**
|
|
189
|
-
|
|
190
|
-
---
|
|
191
|
-
|
|
192
|
-
|
|
193
|
-
|
|
194
|
-
### 0. Self-Init Protocol (Khởi Tạo Bộ Nhớ Local & Gitignore)
|
|
195
|
-
- Trước khi tra cứu hoặc lưu trữ tri thức, BẮT BUỘC kiểm tra sự tồn tại của thư mục `.ai-local/` tại gốc dự án:
|
|
196
|
-
- **Tự động tạo mới:** Nếu `.ai-local/` chưa tồn tại, AI phải tự động tạo cấu trúc thư mục `.ai-local/knowledge/` (và file `index.yaml` nếu cần thiết) cùng `.ai-local/candidates/`. Tuyệt đối không ngưng chạy hay hỏi ý kiến người dùng về thao tác khởi tạo tiêu chuẩn này.
|
|
197
|
-
- **Bảo mật Gitignore:** BẮT BUỘC kiểm tra file `.gitignore` của dự án, nếu chưa có dòng `.ai-local/` thì phải tự động thêm vào để tuyệt đối bảo mật tri thức cá nhân và tránh lộ lọt lên Git.
|
|
198
|
-
|
|
199
|
-
---
|
|
200
|
-
|
|
201
|
-
### Pre-flight Retrieve (Trước khi thực thi)
|
|
202
|
-
- Trước các task có tính lặp lại, debug, refactor, kiến trúc hoặc rủi ro cao:
|
|
203
|
-
bắt buộc tra cứu:
|
|
204
|
-
- `.ai-local/knowledge/index.yaml` (Private Local Knowledge)
|
|
205
|
-
|
|
206
|
-
- Ưu tiên sử dụng các Knowledge đang có trạng thái `Active` thuộc:
|
|
207
|
-
- Architecture
|
|
208
|
-
- Hard Bug
|
|
209
|
-
- Convention
|
|
210
|
-
- Pattern
|
|
211
|
-
- Tech Debt Pattern
|
|
212
|
-
- 👉 *Domain Focus:* Hard Bug / Convention (vd: mô hình lỗi lặp vô tận, giới hạn token budget).
|
|
213
|
-
|
|
214
|
-
- Memory chỉ đóng vai trò **Navigator (bản đồ chỉ đường)**.
|
|
215
|
-
Không được xem Memory là Source of Truth.
|
|
216
|
-
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.
|
|
217
|
-
|
|
218
|
-
---
|
|
219
|
-
|
|
220
|
-
### Learning Flow (AI tự học có kiểm soát)
|
|
221
|
-
- 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:
|
|
222
|
-
- Hard Bug có khả năng tái diễn.
|
|
223
|
-
- Pattern làm việc lặp lại trong dự án.
|
|
224
|
-
- Convention hoặc quy tắc kiến trúc mới.
|
|
225
|
-
- Quyết định Architecture quan trọng.
|
|
226
|
-
- Tech Debt Pattern hoặc Code Smell có tính hệ thống.
|
|
227
|
-
- 👉 *Domain Harvest:* Hard Bug mới có khả năng tái diễn (vd: lỗi loop định tuyến cần blacklist).
|
|
228
|
-
|
|
229
|
-
- Candidate Memory chỉ là bản nháp quan sát, chưa phải tri thức chính thức.
|
|
230
|
-
- Candidate Memory có thể lưu tạm tại: `.ai-local/candidates/`
|
|
231
|
-
- AI không được tự động Promote Candidate Memory thành Project Knowledge.
|
|
232
|
-
|
|
233
|
-
---
|
|
234
|
-
|
|
235
|
-
### Post-flight Harvest (Đề xuất → Phê duyệt)
|
|
236
|
-
Sau khi hoàn thành task:
|
|
237
|
-
- AI đánh giá các Candidate Memory đã tạo.
|
|
238
|
-
- Nếu phát hiện tri thức có giá trị tái sử dụng:
|
|
239
|
-
- Đề xuất người dùng xem xét.
|
|
240
|
-
- Gửi yêu cầu phê duyệt thông qua:
|
|
241
|
-
- `/learn`
|
|
242
|
-
- `qk-project-memory`
|
|
243
|
-
- Chỉ sau khi được phê duyệt, Candidate Memory mới được chuyển thành Knowledge chính thức:
|
|
244
|
-
|
|
245
|
-
```
|
|
246
|
-
.ai-local/candidates/ ──(Approve)──> .ai-local/knowledge/index.yaml
|
|
247
|
-
```
|
|
248
|
-
|
|
249
|
-
- Project Knowledge phải được xem như tài sản kỹ thuật của dự án:
|
|
250
|
-
- Có thể review, cập nhật, loại bỏ và có lịch sử thay đổi.
|
|
251
|
-
|
|
252
|
-
---
|
|
253
|
-
|
|
254
|
-
### Ignore (Không đưa vào Memory)
|
|
255
|
-
Không lưu:
|
|
256
|
-
- Trace log của một session đơn lẻ.
|
|
257
|
-
- Temporary debugging data.
|
|
258
|
-
- Output của một lần chạy test/scan.
|
|
259
|
-
- Report health tạm thời của một đợt kiểm tra.
|
|
260
|
-
- Lỗi nhỏ chỉ xảy ra một lần.
|
|
261
|
-
- Thông tin không có khả năng tái sử dụng.
|
|
262
|
-
- 👉 *Domain Ignore:* Trace log của một session đơn lẻ (tự XÓA sau khi thực thi).
|
|
263
|
-
|
|
264
|
-
---
|
|
265
|
-
|
|
266
|
-
### Golden Rule
|
|
267
|
-
> **AI được phép học, nhưng không được tự quyết định tri thức chính thức.**
|
|
268
|
-
> **AI quan sát → Đề xuất → Con người phê duyệt → Dự án tiến hóa.**
|
|
269
|
-
|
|
270
|
-
---
|
|
271
|
-
|
|
272
|
-
|
|
273
|
-
|
|
274
|
-
### Pre-flight Retrieve (Trước khi thực thi)
|
|
275
|
-
- Trước các task có tính lặp lại, debug, refactor, kiến trúc hoặc rủi ro cao:
|
|
276
|
-
bắt buộc tra cứu:
|
|
277
|
-
- `.agents/knowledge/index.yaml` (Shared Project Knowledge)
|
|
278
|
-
- `.ai-local/knowledge/index.yaml` (Private Local Knowledge)
|
|
279
|
-
|
|
280
|
-
- Ưu tiên sử dụng các Knowledge đang có trạng thái `Active` thuộc:
|
|
281
|
-
- Architecture
|
|
282
|
-
- Hard Bug
|
|
283
|
-
- Convention
|
|
284
|
-
- Pattern
|
|
285
|
-
- Tech Debt Pattern
|
|
286
|
-
- 👉 *Domain Focus:* Hard Bug / Convention (vd: mô hình lỗi lặp vô tận, giới hạn token budget).
|
|
287
|
-
|
|
288
|
-
- Memory chỉ đóng vai trò **Navigator (bản đồ chỉ đường)**.
|
|
289
|
-
Không được xem Memory là Source of Truth.
|
|
290
|
-
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.
|
|
291
|
-
|
|
292
|
-
---
|
|
293
|
-
|
|
294
|
-
### Learning Flow (AI tự học có kiểm soát)
|
|
295
|
-
- 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:
|
|
296
|
-
- Hard Bug có khả năng tái diễn.
|
|
297
|
-
- Pattern làm việc lặp lại trong dự án.
|
|
298
|
-
- Convention hoặc quy tắc kiến trúc mới.
|
|
299
|
-
- Quyết định Architecture quan trọng.
|
|
300
|
-
- Tech Debt Pattern hoặc Code Smell có tính hệ thống.
|
|
301
|
-
- 👉 *Domain Harvest:* Hard Bug mới có khả năng tái diễn (vd: lỗi loop định tuyến cần blacklist).
|
|
302
|
-
|
|
303
|
-
- Candidate Memory chỉ là bản nháp quan sát, chưa phải tri thức chính thức.
|
|
304
|
-
- Candidate Memory có thể lưu tạm tại: `.ai-local/candidates/`
|
|
305
|
-
- AI không được tự động Promote Candidate Memory thành Project Knowledge.
|
|
306
|
-
|
|
307
|
-
---
|
|
308
|
-
|
|
309
|
-
### Post-flight Harvest (Đề xuất → Phê duyệt)
|
|
310
|
-
Sau khi hoàn thành task:
|
|
311
|
-
- AI đánh giá các Candidate Memory đã tạo.
|
|
312
|
-
- Nếu phát hiện tri thức có giá trị tái sử dụng:
|
|
313
|
-
- Đề xuất người dùng xem xét.
|
|
314
|
-
- Gửi yêu cầu phê duyệt thông qua:
|
|
315
|
-
- `/learn`
|
|
316
|
-
- `qk-project-memory`
|
|
317
|
-
- Chỉ sau khi được phê duyệt, Candidate Memory mới được chuyển thành Knowledge chính thức:
|
|
318
|
-
|
|
319
|
-
```
|
|
320
|
-
.ai-local/candidates/ ──(Approve)──> .agents/knowledge/index.yaml
|
|
321
|
-
```
|
|
322
|
-
|
|
323
|
-
- Project Knowledge phải được xem như tài sản kỹ thuật của dự án:
|
|
324
|
-
- Có thể review, cập nhật, loại bỏ và có lịch sử thay đổi.
|
|
325
|
-
|
|
326
|
-
---
|
|
327
|
-
|
|
328
|
-
### Ignore (Không đưa vào Memory)
|
|
329
|
-
Không lưu:
|
|
330
|
-
- Trace log của một session đơn lẻ.
|
|
331
|
-
- Temporary debugging data.
|
|
332
|
-
- Output của một lần chạy test/scan.
|
|
333
|
-
- Report health tạm thời của một đợt kiểm tra.
|
|
334
|
-
- Lỗi nhỏ chỉ xảy ra một lần.
|
|
335
|
-
- Thông tin không có khả năng tái sử dụng.
|
|
336
|
-
- 👉 *Domain Ignore:* Trace log của một session đơn lẻ (tự XÓA sau khi thực thi).
|
|
337
|
-
|
|
338
|
-
---
|
|
339
|
-
|
|
340
|
-
### Golden Rule
|
|
341
|
-
> **AI được phép học, nhưng không được tự quyết định tri thức chính thức.**
|
|
342
|
-
> **AI quan sát → Đề xuất → Con người phê duyệt → Dự án tiến hóa.**
|
|
343
|
-
|
|
344
|
-
---
|
|
345
|
-
---
|
|
346
|
-
|
|
347
|
-
### Learning Flow (AI tự học có kiểm soát)
|
|
348
|
-
- 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:
|
|
349
|
-
- Hard Bug có khả năng tái diễn.
|
|
350
|
-
- Pattern làm việc lặp lại trong dự án.
|
|
351
|
-
- Convention hoặc quy tắc kiến trúc mới.
|
|
352
|
-
- Quyết định Architecture quan trọng.
|
|
353
|
-
- Tech Debt Pattern hoặc Code Smell có tính hệ thống.
|
|
354
|
-
- 👉 *Domain Harvest:* Hard Bug mới có khả năng tái diễn (vd: lỗi loop định tuyến cần blacklist).
|
|
355
|
-
|
|
356
|
-
- Candidate Memory chỉ là bản nháp quan sát, chưa phải tri thức chính thức.
|
|
357
|
-
- Candidate Memory có thể lưu tạm tại: `.ai-local/candidates/`
|
|
358
|
-
- AI không được tự động Promote Candidate Memory thành Project Knowledge.
|
|
359
|
-
|
|
360
|
-
---
|
|
361
|
-
|
|
362
|
-
### Post-flight Harvest (Đề xuất → Phê duyệt)
|
|
363
|
-
Sau khi hoàn thành task:
|
|
364
|
-
- AI đánh giá các Candidate Memory đã tạo.
|
|
365
|
-
- Nếu phát hiện tri thức có giá trị tái sử dụng:
|
|
366
|
-
- Đề xuất người dùng xem xét.
|
|
367
|
-
- Gửi yêu cầu phê duyệt thông qua:
|
|
368
|
-
- `/learn`
|
|
369
|
-
- `qk-project-memory`
|
|
370
|
-
- Chỉ sau khi được phê duyệt, Candidate Memory mới được chuyển thành Knowledge chính thức:
|
|
371
|
-
|
|
372
|
-
```
|
|
373
|
-
.ai-local/candidates/ ──(Approve)──> .agents/knowledge/index.yaml
|
|
374
|
-
```
|
|
375
|
-
|
|
376
|
-
- Project Knowledge phải được xem như tài sản kỹ thuật của dự án:
|
|
377
|
-
- Có thể review, cập nhật, loại bỏ và có lịch sử thay đổi.
|
|
378
|
-
|
|
379
|
-
---
|
|
380
|
-
|
|
381
|
-
### Ignore (Không đưa vào Memory)
|
|
382
|
-
Không lưu:
|
|
383
|
-
- Trace log của một session đơn lẻ.
|
|
384
|
-
- Temporary debugging data.
|
|
385
|
-
- Output của một lần chạy test/scan.
|
|
386
|
-
- Report health tạm thời của một đợt kiểm tra.
|
|
387
|
-
- Lỗi nhỏ chỉ xảy ra một lần.
|
|
388
|
-
- Thông tin không có khả năng tái sử dụng.
|
|
389
|
-
- 👉 *Domain Ignore:* Trace log của một session đơn lẻ (tự XÓA sau khi thực thi).
|
|
390
|
-
|
|
391
|
-
---
|
|
392
|
-
|
|
393
|
-
### Golden Rule
|
|
394
|
-
> **AI được phép học, nhưng không được tự quyết định tri thức chính thức.**
|
|
395
|
-
> **AI quan sát → Đề xuất → Con người phê duyệt → Dự án tiến hóa.**
|
|
396
|
-
|
|
397
|
-
---
|
|
398
|
-
---
|
|
399
|
-
|
|
400
|
-
### Learning Flow (AI tự học có kiểm soát)
|
|
401
|
-
- 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:
|
|
402
|
-
- Hard Bug có khả năng tái diễn.
|
|
403
|
-
- Pattern làm việc lặp lại trong dự án.
|
|
404
|
-
- Convention hoặc quy tắc kiến trúc mới.
|
|
405
|
-
- Quyết định Architecture quan trọng.
|
|
406
|
-
- Tech Debt Pattern hoặc Code Smell có tính hệ thống.
|
|
407
|
-
- 👉 *Domain Harvest:* Hard Bug mới có khả năng tái diễn (vd: lỗi loop định tuyến cần blacklist).
|
|
408
|
-
|
|
409
|
-
- Candidate Memory chỉ là bản nháp quan sát, chưa phải tri thức chính thức.
|
|
410
|
-
- Candidate Memory có thể lưu tạm tại: `.ai-local/candidates/`
|
|
411
|
-
- AI không được tự động Promote Candidate Memory thành Project Knowledge.
|
|
412
|
-
|
|
413
|
-
---
|
|
414
|
-
|
|
415
|
-
### Post-flight Harvest (Đề xuất → Phê duyệt)
|
|
416
|
-
Sau khi hoàn thành task:
|
|
417
|
-
- AI đánh giá các Candidate Memory đã tạo.
|
|
418
|
-
- Nếu phát hiện tri thức có giá trị tái sử dụng:
|
|
419
|
-
- Đề xuất người dùng xem xét.
|
|
420
|
-
- Gửi yêu cầu phê duyệt thông qua:
|
|
421
|
-
- `/learn`
|
|
422
|
-
- `qk-project-memory`
|
|
423
|
-
- Chỉ sau khi được phê duyệt, Candidate Memory mới được chuyển thành Knowledge chính thức:
|
|
424
|
-
|
|
425
|
-
```
|
|
426
|
-
.ai-local/candidates/ ──(Approve)──> .agents/knowledge/index.yaml
|
|
427
|
-
```
|
|
428
|
-
|
|
429
|
-
- Project Knowledge phải được xem như tài sản kỹ thuật của dự án:
|
|
430
|
-
- Có thể review, cập nhật, loại bỏ và có lịch sử thay đổi.
|
|
431
|
-
|
|
432
|
-
---
|
|
433
|
-
|
|
434
|
-
### Ignore (Không đưa vào Memory)
|
|
435
|
-
Không lưu:
|
|
436
|
-
- Trace log của một session đơn lẻ.
|
|
437
|
-
- Temporary debugging data.
|
|
438
|
-
- Output của một lần chạy test/scan.
|
|
439
|
-
- Report health tạm thời của một đợt kiểm tra.
|
|
440
|
-
- Lỗi nhỏ chỉ xảy ra một lần.
|
|
441
|
-
- Thông tin không có khả năng tái sử dụng.
|
|
442
|
-
- 👉 *Domain Ignore:* Trace log của một session đơn lẻ (tự XÓA sau khi thực thi).
|
|
443
|
-
|
|
444
|
-
---
|
|
445
|
-
|
|
446
|
-
### Golden Rule
|
|
447
|
-
> **AI được phép học, nhưng không được tự quyết định tri thức chính thức.**
|
|
448
|
-
> **AI quan sát → Đề xuất → Con người phê duyệt → Dự án tiến hóa.**
|
|
449
|
-
|
|
450
|
-
---
|
|
451
|
-
---
|
|
452
|
-
---
|
|
453
|
-
---
|
|
454
|
-
|
|
455
|
-
## Scope
|
|
456
|
-
- ✅ Monitor agent decision boundaries and token budgets during execution
|
|
457
|
-
- ✅ Record execution traces and accuracy metrics into `evals/traces/` for quantitative verification
|
|
458
|
-
- ✅ Detect failure patterns or repetitive tool calling loops to trigger safe demotion/stopping
|
|
459
|
-
|
|
460
|
-
## Non-Goals
|
|
461
|
-
- ❌ Monitor infrastructure servers, Kubernetes pods, or external application metrics
|
|
462
|
-
- ❌ Alter runtime execution paths outside of established boundary validation rules
|
|
463
|
-
- ❌ Tự tính pass/fail hay enforce threshold — đó là việc của `qk-validation-gate` (xem `decision_boundary.does_not_own`)
|
|
464
|
-
|
|
465
|
-
---
|
|
466
|
-
|
|
467
|
-
## 🧭 V1 Knowledge Protocol (AI Skin V9)
|
|
468
|
-
- **Pre-flight Check:** BẮT BUỘC tra cứu `.ai-local/knowledge/index.yaml` hoặc `.agents/knowledge/index.yaml` (nếu tồn tại) trước khi tiến hành tìm kiếm mù toàn dự án. Nếu có pattern/fact liên quan (`status: Active`), áp dụng ngay để bỏ qua bước search dài dòng.
|
|
469
|
-
- **Post-flight Harvest (AI Đề xuất -> Con người Phê duyệt):** Sau khi hoàn thành task, nếu phát hiện tri thức thuộc 4 loại (`Architecture`, `Convention`, `Pattern`, `Hard Bug`) có giá trị giảm thời gian cho tương lai, hãy tóm tắt đề xuất và yêu cầu Người dùng xác nhận trước khi lưu lại. Bỏ qua các thay đổi lặt vặt (typo, CSS, CRUD thường).
|
|
470
|
-
|
|
471
|
-
---
|
|
472
|
-
|
|
473
|
-
## Preconditions
|
|
474
|
-
|
|
475
|
-
- [ ] Task vừa hoàn tất (bất kỳ `exit_code` nào — kể cả `FAILED`/`BLOCKED` cũng phải ghi trace, vì thất bại cũng là dữ liệu quan sát quan trọng).
|
|
476
|
-
- [ ] `evals/scorecard.yaml` tồn tại và định nghĩa được metric cần ghi nhận.
|
|
477
|
-
|
|
478
|
-
```
|
|
479
|
-
On missing scorecard.yaml:
|
|
480
|
-
EXIT: BLOCKED
|
|
481
|
-
Message: "Không tìm thấy scorecard.yaml — không xác định được field nào cần ghi vào trace."
|
|
482
|
-
```
|
|
483
|
-
|
|
484
|
-
---
|
|
485
|
-
|
|
486
|
-
## Workflow
|
|
487
|
-
|
|
488
|
-
### Bước 1 — Xác định có cần ghi trace không
|
|
489
|
-
|
|
490
|
-
Chỉ ghi trace khi task vừa thực hiện có `complexity >= medium` (theo `global.md` R-G-01), hoặc khi task có `side_effects` khác `read_only` (nghĩa là có khả năng ảnh hưởng hệ thống thật). Task đọc-hiểu đơn giản (fast-path, complexity `low`, `read_only`) **không bắt buộc** ghi trace — tránh phình `evals/traces/` với dữ liệu ít giá trị (đúng tinh thần `token_budget.stop_early`).
|
|
491
|
-
|
|
492
|
-
### Bước 2 — Thu thập dữ liệu quan sát trong lúc chạy task chính
|
|
493
|
-
|
|
494
|
-
Trong lúc skill khác (không phải chính observability) thực thi, thu thập các tín hiệu sau — không cần thêm shell command nào (`max_shell_commands: 0`), chỉ đọc lại chính transcript/tool-call history của phiên:
|
|
495
|
-
|
|
496
|
-
| Field cần thu thập | Lấy từ đâu |
|
|
497
|
-
|---|---|
|
|
498
|
-
| `skill_used`, `skill_candidates_considered` | Bước retrieval path (`global.md` R-G-05) |
|
|
499
|
-
| `routing.selected_on_first_try`, `clarification_asked`, `skill_switched_mid_task` | Diễn biến thực tế của phiên |
|
|
500
|
-
| `boundary.anti_pattern_violations`, `out_of_scope_edits`, `violated_rule_ids` | Đối chiếu file đã sửa với `coding.md` R-C-09 và `global.md` R-G-03 |
|
|
501
|
-
| `token_budget.actual_files_read`, `actual_shell_commands` | Đếm số lần gọi `view`/`bash` thực tế trong phiên |
|
|
502
|
-
| `zero_trust.*` | Có gặp nội dung nghi injection không, có báo cáo không (`security.md` R-SEC-04) |
|
|
503
|
-
| `exit_code` | Exit code thật của task chính (`global.md` R-G-06) |
|
|
504
|
-
|
|
505
|
-
### Bước 3 — Ghi file trace
|
|
506
|
-
|
|
507
|
-
Ghi 1 file JSON vào `evals/traces/{yyyy-mm-dd}_{task-slug}.json`, đúng cấu trúc `evals/traces/TRACE_SCHEMA.md`. Để `final_score: null` — **KHÔNG** tự tính điểm ở bước này (thuộc về `qk-validation-gate`).
|
|
508
|
-
|
|
509
|
-
### Bước 4 — Phát hiện pattern lỗi lặp lại (Failure Pattern Detection)
|
|
510
|
-
|
|
511
|
-
Nếu `evals/traces/` đã có ≥ 3 trace gần nhất cùng `skill_used` với `routing.selected_on_first_try: false` hoặc `boundary.anti_pattern_violations > 0`, đánh dấu cảnh báo trong report cuối: skill đó có dấu hiệu cần xem lại `decision_boundary` hoặc bổ sung tài liệu tham chiếu (theo `demotion_gate.triggers: repeated_failure`).
|
|
512
|
-
|
|
513
|
-
---
|
|
514
|
-
|
|
515
|
-
## Output Format
|
|
516
|
-
|
|
517
|
-
```
|
|
518
|
-
📊 Observability Trace Recorded
|
|
519
|
-
─────────────────────────────────────────────────
|
|
520
|
-
Session: [session_id]
|
|
521
|
-
Skill used: [skill_used]
|
|
522
|
-
Trace file: evals/traces/[filename].json
|
|
523
|
-
|
|
524
|
-
Signals ghi nhận:
|
|
525
|
-
Routing: [selected_on_first_try / clarification / switched]
|
|
526
|
-
Boundary: [N vi phạm | 0 vi phạm]
|
|
527
|
-
Token budget: [actual/declared files_read]
|
|
528
|
-
Zero-trust: [injection detected & reported | không có injection | KHÔNG phát hiện]
|
|
529
|
-
|
|
530
|
-
⚠️ Failure pattern: [nếu có, nêu skill nào cần review]
|
|
531
|
-
|
|
532
|
-
Exit Code: SUCCESS
|
|
533
|
-
```
|
|
534
|
-
|
|
535
|
-
---
|
|
536
|
-
|
|
537
|
-
## Exit Codes
|
|
538
|
-
|
|
539
|
-
| Code | Khi nào |
|
|
540
|
-
|---|---|
|
|
541
|
-
| `SUCCESS` | Trace đã ghi thành công vào `evals/traces/` |
|
|
542
|
-
| `BLOCKED` | Thiếu `scorecard.yaml` hoặc không xác định được `session_id`/`skill_used` |
|
|
543
|
-
| `PARTIAL` | Ghi được trace nhưng thiếu một số field không bắt buộc (ví dụ không đếm được `actual_shell_commands` chính xác) |
|
|
544
|
-
| `FAILED` | Không ghi được file (lỗi filesystem) |
|