ai-developer-skill-os 9.1.1 → 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.
Files changed (63) hide show
  1. package/.agents/AGENTS.md +139 -42
  2. package/.agents/DEV_PROFILE.md +95 -0
  3. package/.agents/registry/capability-graph.yml +171 -334
  4. package/.agents/registry/graph.json +52 -18
  5. package/.agents/registry/index.yaml +66 -12
  6. package/.agents/registry/skills-index.yml +204 -447
  7. package/.agents/rules/coding.md +23 -0
  8. package/.agents/rules/global.md +44 -30
  9. package/.agents/skills/_template/SKILL.md +2 -300
  10. package/.agents/skills/qk-access-policy/SKILL.md +98 -393
  11. package/.agents/skills/qk-agent-observability/SKILL.md +3 -359
  12. package/.agents/skills/qk-ai-builder/SKILL.md +132 -485
  13. package/.agents/skills/qk-api-consumer/SKILL.md +256 -0
  14. package/.agents/skills/qk-api-consumer/capability.yaml +21 -0
  15. package/.agents/skills/qk-api-consumer/evals/scorecard.yaml +29 -0
  16. package/.agents/skills/qk-api-lifecycle/SKILL.md +133 -376
  17. package/.agents/skills/qk-bug-resolution/SKILL.md +128 -481
  18. package/.agents/skills/qk-code-review/SKILL.md +142 -340
  19. package/.agents/skills/qk-context-loader/SKILL.md +99 -391
  20. package/.agents/skills/qk-data-engineer/SKILL.md +253 -0
  21. package/.agents/skills/qk-data-lifecycle/SKILL.md +89 -408
  22. package/.agents/skills/qk-db-optimizer/SKILL.md +102 -408
  23. package/.agents/skills/qk-design-system-engineering/SKILL.md +76 -381
  24. package/.agents/skills/qk-devops-platform/SKILL.md +77 -383
  25. package/.agents/skills/qk-docs/SKILL.md +88 -414
  26. package/.agents/skills/qk-engineering-standard/SKILL.md +4 -508
  27. package/.agents/skills/qk-fe-api-integration/SKILL.md +343 -263
  28. package/.agents/skills/qk-fe-api-integration/evals/scorecard.yaml +29 -29
  29. package/.agents/skills/qk-feature-delivery/SKILL.md +137 -365
  30. package/.agents/skills/qk-feature-delivery/evals/scorecard.yaml +1 -1
  31. package/.agents/skills/qk-frontend-architecture/SKILL.md +5 -399
  32. package/.agents/skills/qk-help/evals/scorecard.yaml +13 -13
  33. package/.agents/skills/qk-orchestrator/SKILL.md +63 -422
  34. package/.agents/skills/qk-orchestrator/references/routing-table.md +10 -14
  35. package/.agents/skills/qk-product-specification/SKILL.md +70 -399
  36. package/.agents/skills/qk-production-release/SKILL.md +80 -457
  37. package/.agents/skills/qk-project-audit/SKILL.md +174 -0
  38. package/.agents/skills/qk-project-bootstrap/SKILL.md +244 -392
  39. package/.agents/skills/qk-project-health/SKILL.md +97 -416
  40. package/.agents/skills/qk-project-memory/SKILL.md +76 -21
  41. package/.agents/skills/qk-refactor/SKILL.md +167 -304
  42. package/.agents/skills/qk-security-audit/SKILL.md +141 -383
  43. package/.agents/skills/qk-security-audit/capability.yaml +1 -2
  44. package/.agents/skills/qk-system-evolution/SKILL.md +343 -263
  45. package/.agents/skills/qk-system-evolution/evals/scorecard.yaml +26 -26
  46. package/.agents/skills/qk-test-engineering/SKILL.md +119 -429
  47. package/.agents/skills/qk-ui-audit/SKILL.md +73 -457
  48. package/.agents/skills/qk-ui-builder/SKILL.md +521 -482
  49. package/.agents/skills/qk-ui-system-builder/SKILL.md +68 -434
  50. package/.agents/skills/qk-upgrade/SKILL.md +301 -0
  51. package/.agents/skills/qk-upgrade/capability.yaml +24 -0
  52. package/.agents/skills/qk-upgrade/evals/scorecard.yaml +26 -0
  53. package/.agents/skills/qk-validation-gate/SKILL.md +4 -523
  54. package/.agents/skills/qk-web-quality-gate/SKILL.md +85 -383
  55. package/.agents/workflows/bug-resolution.yml +6 -6
  56. package/.agents/workflows/context-discovery.yml +94 -0
  57. package/.agents/workflows/feature-delivery.yml +8 -4
  58. package/.agents/workflows/refactor.yml +6 -3
  59. package/.agents/workflows/shared/quality-gate.yml +94 -0
  60. package/.agents/workflows/skin-governance.yml +115 -0
  61. package/README.md +152 -67
  62. package/package.json +2 -2
  63. package/tooling/build-registry.js +30 -8
@@ -1,9 +1,9 @@
1
- ---
1
+ ---
2
2
  # ── Identity ───────────────────────────────────────────────
3
3
  name: qk-devops-platform
4
- version: 9.1.0
4
+ version: 9.2.0
5
5
  status: experimental
6
- description: "Kỹ sư nền tảng: Chiến lược CI/CD, kiến trúc triển khai, quản lý môi trường và chiến lược rollback."
6
+ description: "Kỹ sư nền tảng: Chiến lược CI/CD, kiến trúc triển khai, quản lý môi trường và chiến lược rollback. Dùng skill này khi user nhắc đến: ci/cd, deployment, pipeline, docker, dockerfile, devops, github actions, cấu hình ci/cd, containerize — kể cả khi chỉ nói 'viết dockerfile và pipeline deploy staging'."
7
7
  platforms: [antigravity, claude-code, cursor, windsurf, kilo-code]
8
8
 
9
9
  # ── V9: Classification ─────────────────────────────────────
@@ -23,12 +23,17 @@ complexity:
23
23
  has_external_dependency: true
24
24
  has_breaking_change: false
25
25
 
26
- triggers:
27
- - "cấu hình ci/cd"
28
- - "deployment strategy"
29
- - "quản lý môi trường"
30
- - "devops platform"
31
- - "dockerize"
26
+ triggers:
27
+ - "ci/cd"
28
+ - "deployment"
29
+ - "pipeline"
30
+ - "docker"
31
+ - "dockerfile"
32
+ - "devops"
33
+ - "github actions"
34
+ - "cấu hình ci/cd"
35
+ - "containerize"
36
+
32
37
 
33
38
  # ── V8: References ─────────────────────────────────────────
34
39
  workflow: feature-delivery
@@ -93,7 +98,7 @@ latency: medium
93
98
  risk: high
94
99
  side_effects: edit_files
95
100
  produces: [report, plan, code]
96
- consumes: [user-description]
101
+ consumes: [user-description, source-code]
97
102
 
98
103
  token_budget:
99
104
  max_files_read: 5
@@ -101,404 +106,93 @@ token_budget:
101
106
  max_shell_commands: 2
102
107
  stop_early: true
103
108
 
104
- exit_codes: [SUCCESS, BLOCKED, FAILED, PARTIAL]
109
+ exit_codes: [SUCCESS, BLOCKED, FAILED, PARTIAL]
105
110
  ---
106
111
 
107
- # qk-devops-platform — Platform Engineer
112
+ # qk-devops-platform — Platform & CI/CD Engineer
108
113
 
109
114
  > **Language rule:** Code, identifiers, file names → English. Explanations, summaries → Vietnamese.
110
115
 
111
- ## Memory Workflow
112
-
113
- ### 0. Self-Init Protocol (Khởi Tạo Bộ Nhớ Local & Gitignore)
114
- - 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:
115
- - **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.
116
- - **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.
117
-
118
- ---
119
-
120
- ### Pre-flight Retrieve (Trước khi thực thi)
121
- - Trước các task có tính lặp lại, debug, refactor, kiến trúc hoặc rủi ro cao:
122
- bắt buộc tra cứu:
123
- - `.ai-local/knowledge/index.yaml` (Private Local Knowledge)
124
-
125
- - Ưu tiên sử dụng các Knowledge đang có trạng thái `Active` thuộc:
126
- - Architecture
127
- - Hard Bug
128
- - Convention
129
- - Pattern
130
- - Tech Debt Pattern
131
- - 👉 *Domain Focus:* Architecture / Hard Bug (vd: quy trình CI/CD pipeline, rollback strategy, docker env).
132
-
133
- - Memory chỉ đóng vai trò **Navigator (bản đồ chỉ đường)**.
134
- Không được xem Memory là Source of Truth.
135
- 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.
136
-
137
- ---
138
-
139
- ### Learning Flow (AI tự học có kiểm soát)
140
- - 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:
141
- - Hard Bug có khả năng tái diễn.
142
- - Pattern làm việc lặp lại trong dự án.
143
- - Convention hoặc quy tắc kiến trúc mới.
144
- - Quyết định Architecture quan trọng.
145
- - Tech Debt Pattern hoặc Code Smell có tính hệ thống.
146
- - 👉 *Domain Harvest:* Quyết định Architecture quan trọng (vd: thay đổi runner CI, cấu hình rollback mới).
147
-
148
- - Candidate Memory chỉ là bản nháp quan sát, chưa phải tri thức chính thức.
149
- - Candidate Memory có thể lưu tạm tại: `.ai-local/candidates/`
150
- - AI không được tự động Promote Candidate Memory thành Project Knowledge.
151
-
152
- ---
153
-
154
- ### Post-flight Harvest (Đề xuất → Phê duyệt)
155
- Sau khi hoàn thành task:
156
- - AI đánh giá các Candidate Memory đã tạo.
157
- - Nếu phát hiện tri thức có giá trị tái sử dụng:
158
- - Đề xuất người dùng xem xét.
159
- - Gửi yêu cầu phê duyệt thông qua:
160
- - `/learn`
161
- - `qk-project-memory`
162
- - Chỉ sau khi được phê duyệt, Candidate Memory mới được chuyển thành Knowledge chính thức:
163
-
164
- ```
165
- .ai-local/candidates/ ──(Approve)──> .ai-local/knowledge/index.yaml
166
- ```
167
-
168
- - Project Knowledge phải được xem như tài sản kỹ thuật của dự án:
169
- - Có thể review, cập nhật, loại bỏ và có lịch sử thay đổi.
170
-
171
- ---
172
-
173
- ### Ignore (Không đưa vào Memory)
174
- Không lưu:
175
- - Trace log của một session đơn lẻ.
176
- - Temporary debugging data.
177
- - Output của một lần chạy test/scan.
178
- - Report health tạm thời của một đợt kiểm tra.
179
- - Lỗi nhỏ chỉ xảy ra một lần.
180
- - Thông tin không có khả năng tái sử dụng.
181
- - 👉 *Domain Ignore:* Log build tạm thời của CI/CD session.
182
-
183
- ---
184
-
185
- ### Golden Rule
186
- > **AI được phép học, nhưng không được tự quyết định tri thức chính thức.**
187
- > **AI quan sát → Đề xuất → Con người phê duyệt → Dự án tiến hóa.**
188
-
189
- ---
190
-
191
-
192
-
193
- ### Pre-flight Retrieve (Trước khi thực thi)
194
- - Trước các task có tính lặp lại, debug, refactor, kiến trúc hoặc rủi ro cao:
195
- bắt buộc tra cứu:
196
- - `.agents/knowledge/index.yaml` (Shared Project Knowledge)
197
- - `.ai-local/knowledge/index.yaml` (Private Local Knowledge)
198
-
199
- - Ưu tiên sử dụng các Knowledge đang có trạng thái `Active` thuộc:
200
- - Architecture
201
- - Hard Bug
202
- - Convention
203
- - Pattern
204
- - Tech Debt Pattern
205
- - 👉 *Domain Focus:* Architecture / Hard Bug (vd: quy trình CI/CD pipeline, rollback strategy, docker env).
206
-
207
- - Memory chỉ đóng vai trò **Navigator (bản đồ chỉ đường)**.
208
- Không được xem Memory là Source of Truth.
209
- 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.
210
-
211
- ---
212
-
213
- ### Learning Flow (AI tự học có kiểm soát)
214
- - 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:
215
- - Hard Bug có khả năng tái diễn.
216
- - Pattern làm việc lặp lại trong dự án.
217
- - Convention hoặc quy tắc kiến trúc mới.
218
- - Quyết định Architecture quan trọng.
219
- - Tech Debt Pattern hoặc Code Smell có tính hệ thống.
220
- - 👉 *Domain Harvest:* Quyết định Architecture quan trọng (vd: thay đổi runner CI, cấu hình rollback mới).
221
-
222
- - Candidate Memory chỉ là bản nháp quan sát, chưa phải tri thức chính thức.
223
- - Candidate Memory có thể lưu tạm tại: `.ai-local/candidates/`
224
- - AI không được tự động Promote Candidate Memory thành Project Knowledge.
225
-
226
- ---
227
-
228
- ### Post-flight Harvest (Đề xuất → Phê duyệt)
229
- Sau khi hoàn thành task:
230
- - AI đánh giá các Candidate Memory đã tạo.
231
- - Nếu phát hiện tri thức có giá trị tái sử dụng:
232
- - Đề xuất người dùng xem xét.
233
- - Gửi yêu cầu phê duyệt thông qua:
234
- - `/learn`
235
- - `qk-project-memory`
236
- - Chỉ sau khi được phê duyệt, Candidate Memory mới được chuyển thành Knowledge chính thức:
237
-
238
- ```
239
- .ai-local/candidates/ ──(Approve)──> .agents/knowledge/index.yaml
240
- ```
241
-
242
- - Project Knowledge phải được xem như tài sản kỹ thuật của dự án:
243
- - Có thể review, cập nhật, loại bỏ và có lịch sử thay đổi.
244
-
245
- ---
246
-
247
- ### Ignore (Không đưa vào Memory)
248
- Không lưu:
249
- - Trace log của một session đơn lẻ.
250
- - Temporary debugging data.
251
- - Output của một lần chạy test/scan.
252
- - Report health tạm thời của một đợt kiểm tra.
253
- - Lỗi nhỏ chỉ xảy ra một lần.
254
- - Thông tin không có khả năng tái sử dụng.
255
- - 👉 *Domain Ignore:* Log build tạm thời của CI/CD session.
256
-
257
- ---
258
-
259
- ### Golden Rule
260
- > **AI được phép học, nhưng không được tự quyết định tri thức chính thức.**
261
- > **AI quan sát → Đề xuất → Con người phê duyệt → Dự án tiến hóa.**
262
-
263
- ---
264
- ---
265
-
266
- ### Learning Flow (AI tự học có kiểm soát)
267
- - 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:
268
- - Hard Bug có khả năng tái diễn.
269
- - Pattern làm việc lặp lại trong dự án.
270
- - Convention hoặc quy tắc kiến trúc mới.
271
- - Quyết định Architecture quan trọng.
272
- - Tech Debt Pattern hoặc Code Smell có tính hệ thống.
273
- - 👉 *Domain Harvest:* Quyết định Architecture quan trọng (vd: thay đổi runner CI, cấu hình rollback mới).
274
-
275
- - Candidate Memory chỉ là bản nháp quan sát, chưa phải tri thức chính thức.
276
- - Candidate Memory có thể lưu tạm tại: `.ai-local/candidates/`
277
- - AI không được tự động Promote Candidate Memory thành Project Knowledge.
278
-
279
- ---
280
-
281
- ### Post-flight Harvest (Đề xuất → Phê duyệt)
282
- Sau khi hoàn thành task:
283
- - AI đánh giá các Candidate Memory đã tạo.
284
- - Nếu phát hiện tri thức có giá trị tái sử dụng:
285
- - Đề xuất người dùng xem xét.
286
- - Gửi yêu cầu phê duyệt thông qua:
287
- - `/learn`
288
- - `qk-project-memory`
289
- - Chỉ sau khi được phê duyệt, Candidate Memory mới được chuyển thành Knowledge chính thức:
290
-
291
- ```
292
- .ai-local/candidates/ ──(Approve)──> .agents/knowledge/index.yaml
293
- ```
294
-
295
- - Project Knowledge phải được xem như tài sản kỹ thuật của dự án:
296
- - Có thể review, cập nhật, loại bỏ và có lịch sử thay đổi.
297
-
298
- ---
299
-
300
- ### Ignore (Không đưa vào Memory)
301
- Không lưu:
302
- - Trace log của một session đơn lẻ.
303
- - Temporary debugging data.
304
- - Output của một lần chạy test/scan.
305
- - Report health tạm thời của một đợt kiểm tra.
306
- - Lỗi nhỏ chỉ xảy ra một lần.
307
- - Thông tin không có khả năng tái sử dụng.
308
- - 👉 *Domain Ignore:* Log build tạm thời của CI/CD session.
309
-
310
- ---
311
-
312
- ### Golden Rule
313
- > **AI được phép học, nhưng không được tự quyết định tri thức chính thức.**
314
- > **AI quan sát → Đề xuất → Con người phê duyệt → Dự án tiến hóa.**
315
-
316
- ---
317
- ---
318
-
319
- ### Learning Flow (AI tự học có kiểm soát)
320
- - 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:
321
- - Hard Bug có khả năng tái diễn.
322
- - Pattern làm việc lặp lại trong dự án.
323
- - Convention hoặc quy tắc kiến trúc mới.
324
- - Quyết định Architecture quan trọng.
325
- - Tech Debt Pattern hoặc Code Smell có tính hệ thống.
326
- - 👉 *Domain Harvest:* Quyết định Architecture quan trọng (vd: thay đổi runner CI, cấu hình rollback mới).
327
-
328
- - Candidate Memory chỉ là bản nháp quan sát, chưa phải tri thức chính thức.
329
- - Candidate Memory có thể lưu tạm tại: `.ai-local/candidates/`
330
- - AI không được tự động Promote Candidate Memory thành Project Knowledge.
331
-
332
- ---
333
-
334
- ### Post-flight Harvest (Đề xuất → Phê duyệt)
335
- Sau khi hoàn thành task:
336
- - AI đánh giá các Candidate Memory đã tạo.
337
- - Nếu phát hiện tri thức có giá trị tái sử dụng:
338
- - Đề xuất người dùng xem xét.
339
- - Gửi yêu cầu phê duyệt thông qua:
340
- - `/learn`
341
- - `qk-project-memory`
342
- - Chỉ sau khi được phê duyệt, Candidate Memory mới được chuyển thành Knowledge chính thức:
343
-
344
- ```
345
- .ai-local/candidates/ ──(Approve)──> .agents/knowledge/index.yaml
346
- ```
347
-
348
- - Project Knowledge phải được xem như tài sản kỹ thuật của dự án:
349
- - Có thể review, cập nhật, loại bỏ và có lịch sử thay đổi.
350
-
351
- ---
352
-
353
- ### Ignore (Không đưa vào Memory)
354
- Không lưu:
355
- - Trace log của một session đơn lẻ.
356
- - Temporary debugging data.
357
- - Output của một lần chạy test/scan.
358
- - Report health tạm thời của một đợt kiểm tra.
359
- - Lỗi nhỏ chỉ xảy ra một lần.
360
- - Thông tin không có khả năng tái sử dụng.
361
- - 👉 *Domain Ignore:* Log build tạm thời của CI/CD session.
362
-
363
- ---
364
-
365
- ### Golden Rule
366
- > **AI được phép học, nhưng không được tự quyết định tri thức chính thức.**
367
- > **AI quan sát → Đề xuất → Con người phê duyệt → Dự án tiến hóa.**
368
-
369
- ---
370
- ---
371
- ---
372
- ---
373
-
374
- ## Preconditions
375
- - [ ] Requirements cho môi trường triển khai đã có sẵn.
116
+ Chịu trách nhiệm thiết kế và cấu hình toàn diện hạ tầng CI/CD, Containerization (Docker), quản lý biến môi trường an toàn và kiến trúc triển khai với **chiến lược Rollback bắt buộc cho mọi thay đổi**.
376
117
 
377
- ## Scope
378
- - Thiết kế và thiết lập luồng CI/CD (GitHub Actions, GitLab CI, v.v.).
379
- - Xây dựng kiến trúc deployment, quản lý các container (Docker, Kubernetes).
380
- - Đưa ra chiến lược Rollback an toàn khi có sự cố.
381
- - Quản lý và phân tách các môi trường (Dev, Staging, Prod).
382
- - **Bắt buộc tuân thủ R-SEC-04: Mọi secrets/credentials trong CI/CD phải được inject qua biến môi trường an toàn (Github Secrets/Vault), KHÔNG BAO GIỜ hardcode.**
383
- - KHÔNG thay thế `qk-production-release` (đóng gói và release app), skill này quản lý *hạ tầng và quy trình* bên dưới việc release đó.
384
-
385
- ## Non-Goals
386
- - ❌ Provide implementation outside of DevOps & CI/CD scope
387
- - ❌ Override explicit user directives without explanation
388
- - ❌ Guess ambiguous requirements without asking
389
-
390
- ## Priority Order
391
-
392
- | Priority | Task | Skip Threshold |
393
- |----------|------|----------------|
394
- | P1 | Core DevOps & CI/CD analysis and decision making | Never |
395
- | P2 | Validation of existing patterns | Budget < 30% |
396
- | P3 | Detailed documentation generation | Budget < 50% |
397
- | P4 | Edge case exploration | Budget < 70% |
398
-
399
- ## Workflow
400
-
401
- ### Phase 1 — Context Loading
402
- **Steps:**
403
- 1. Read existing configuration and requirements related to DevOps & CI/CD.
404
- 2. Check for missing preconditions.
405
-
406
- **Decision:**
407
- ```
408
- IF context is clear
409
- → Confidence: HIGH → go to Phase 2
410
- ELSE
411
- → EXIT: BLOCKED — ask user
412
- ```
118
+ ---
413
119
 
414
- ### Phase 2 — Analysis & Strategy
415
- **Steps:**
416
- 1. Analyze the current state against DevOps & CI/CD best practices.
417
- 2. Formulate strategy or audit report based on findings.
120
+ ## Preconditions
418
121
 
419
- **Decision:**
420
- ```
421
- IF strategy/audit is complete
422
- Confidence: HIGH go to Phase 3
423
- ELSE IF minor gaps exist
424
- Confidence: MEDIUM proceed with assumptions noted
425
- ```
122
+ Trước khi thiết lập hoặc thay đổi cấu hình hạ tầng, AI BẮT BUỘC kiểm tra:
123
+
124
+ - [ ] Xác định nền tảng CI/CD (GitHub Actions, GitLab CI, Bitbucket Pipelines) và môi trường runtime (Docker, Kubernetes, AWS, Vercel).
125
+ - [ ] Xác định chiến lược secret management (GitHub Secrets, HashiCorp Vault, AWS SSM) — tuyệt đối không hardcode credentials.
126
+ - [ ] Xác định chiến lược Rollback (Revert commit, container tag rollback, Blue/Green traffic switch).
127
+ - [ ] Nếu không phương án rollback hoặc phát hiện secret bị lộ trong file cấu hình:
128
+ → **EXIT: BLOCKED**
129
+ → Từ chối tạo cấu hình và yêu cầu user thiết lập secret an toàn qua secret manager.
426
130
 
427
- ### Phase 3 — Finalization
428
- **Steps:**
429
- 1. Generate final report or configuration.
430
- 2. Prepare handoff data for subsequent skills.
131
+ ---
431
132
 
432
- ## Confidence Model
133
+ ## Scope
433
134
 
434
- | Level | Condition | Action |
435
- |-------|-----------|--------|
436
- | HIGH | All preconditions met, context fully understood | Proceed directly |
437
- | MEDIUM | Some context missing but safe defaults exist | Proceed and note assumptions |
438
- | LOW | Core requirements missing | EXIT: BLOCKED |
135
+ Skill này làm:
136
+ - Viết multi-stage `Dockerfile` tối ưu kích thước image, bảo mật non-root user và layer caching.
137
+ - Tạo workflow pipelines CI/CD: Linting, Unit Testing, Security scanning (Trivy/Snyk), Build & Deploy.
138
+ - Thiết lập quản cấu hình đa môi trường (Development, Staging, Production).
139
+ - Cấu hình Healthcheck probes (`livenessProbe`, `readinessProbe`) Graceful shutdown.
140
+ - Xây dựng Runbook khôi phục nhanh (Rollback Runbook) tự động hoặc 1-click.
439
141
 
440
- ## Severity (for findings)
142
+ Skill này KHÔNG làm:
143
+ - Thẩm định cổng release production cuối cùng (→ `qk-production-release`).
144
+ - Viết application code / API logic bên trong ứng dụng.
145
+ - Quản trị tài chính hoặc thanh toán chi phí Cloud.
441
146
 
442
- | Level | Definition |
443
- |-------|-----------|
444
- | CRITICAL | Severe violation of DevOps & CI/CD principles |
445
- | HIGH | Significant risk or technical debt |
446
- | MEDIUM | Suboptimal pattern but functional |
447
- | LOW | Minor style or documentation issue |
147
+ ---
448
148
 
449
- ## Evidence Format
149
+ ## Execution Steps
450
150
 
151
+ ### Step 1 — Infrastructure & Dependency Analysis
451
152
  ```
452
- [SEVERITY] Context/File
453
- Issue: [what was found]
454
- Confidence: HIGH
455
- Recommendation: [actionable advice]
153
+ Inputs: Yêu cầu từ user, Manifests (package.json, requirements.txt, etc.)
154
+ Actions:
155
+ - Xác định phiên bản runtime chuẩn (Node.js, Python, Go, Java).
156
+ - Phân tích các bước build: compile assets, install production-only dependencies.
157
+ Output: Deployment Architecture Blueprint
456
158
  ```
457
159
 
458
- ## Retry Policy
160
+ ### Step 2 — Containerization (Multi-stage Dockerfile)
459
161
  ```
460
- Task fails due to missing context
461
- └─ Ask user for clarification
462
- ├─ Provided Retry Phase 1
463
- └─ Not provided EXIT: BLOCKED
162
+ Inputs: Blueprint
163
+ Actions:
164
+ - Thiết kế Stage 1 (Builder): Cài đặt devDependencies, build artifacts.
165
+ - Thiết kế Stage 2 (Runner): Copy minimal artifacts, chạy dưới non-root user (USER node / appuser).
166
+ - Thêm `.dockerignore` để loại trừ node_modules, `.git`, `.env`.
167
+ Output: Dockerfile & .dockerignore
464
168
  ```
465
169
 
466
- ## Escalation Rules
467
-
170
+ ### Step 3 — CI/CD Pipeline Automation
468
171
  ```
469
- BLOCKED: Missing critical context for DevOps & CI/CD
470
- Missing:
471
- - [Specific requirement]
472
- Questions:
473
- 1. Bạn thể cung cấp thêm thông tin về yêu cầu này không?
474
- 2. Mục tiêu chính của bạn là gì?
475
- Recommended Assumptions: none
172
+ Inputs: CI platform (.github/workflows)
173
+ Actions:
174
+ - Thiết lập trigger hợp lý (push on main, PR to dev).
175
+ - Tích hợp caching cho package managers (npm/pnpm/pip cache).
176
+ - Gắn các bước kiểm tra chất lượng tự động: Lint -> Test -> Security Scan -> Build Image.
177
+ Output: Pipeline YAML configuration
476
178
  ```
477
179
 
478
- ## Handoff Contract
479
-
480
- ### Consumes
481
- ```json
482
- {
483
- "from": "user or qk-orchestrator",
484
- "required_fields": ["context"],
485
- "optional_fields": ["existing_config"]
486
- }
180
+ ### Step 4 — Verification & Rollback Strategy Verification
487
181
  ```
488
-
489
- ### Produces
490
- ```json
491
- {
492
- "to": "user or downstream skill",
493
- "output_fields": ["strategy_report", "exit_code"]
494
- }
182
+ Inputs: Pipeline & Dockerfile
183
+ Actions:
184
+ - Kiểm tra cú pháp YAML linter.
185
+ - Xác nhận lệnh hoặc cơ chế revert khi pipeline deploy thất bại.
186
+ Exit: SUCCESS
495
187
  ```
496
188
 
497
- ## Exit Codes
189
+ ---
498
190
 
499
- | Code | Meaning | When |
500
- |------|---------|------|
501
- | SUCCESS | DevOps & CI/CD task completed successfully | Strategy/audit generated |
502
- | PARTIAL | Task completed with assumptions | Medium confidence |
503
- | BLOCKED | Missing context | Cannot proceed |
504
- | FAILED | Critical conflict or error | Unresolvable constraint |
191
+ ## Prompt Template
192
+
193
+ ```
194
+ Hạ tầng mục tiêu: [Docker / GitHub Actions / Kubernetes / AWS / Vercel]
195
+ Môi trường: [Staging / Production / Preview environments]
196
+ Yêu cầu: [Tối ưu Dockerfile / Tạo pipeline CI test+build / Cấu hình auto-deploy]
197
+ Ràng buộc: [Không dùng root user, image size < 200MB, secrets qua Vault]
198
+ ```