ai-developer-skill-os 8.3.0 → 8.3.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.agents/registry/capability-graph.yml +67 -25
- package/.agents/registry/graph.json +138 -255
- package/.agents/registry/index.yaml +70 -96
- package/.agents/registry/skills-index.yml +70 -47
- package/.agents/rules/anti-patterns.md +45 -0
- package/.agents/skills/_template/SKILL.md +1 -1
- package/.agents/skills/_template/capability.yaml +34 -20
- package/.agents/skills/qk-access-policy/SKILL.md +1 -1
- package/.agents/skills/qk-access-policy/capability.yaml +23 -0
- package/.agents/skills/qk-access-policy/evals/scorecard.yaml +36 -0
- package/.agents/skills/qk-agent-observability/SKILL.md +3 -3
- package/.agents/skills/qk-agent-observability/capability.yaml +29 -0
- package/.agents/skills/qk-agent-observability/evals/scorecard.yaml +29 -0
- package/.agents/skills/qk-ai-builder/SKILL.md +1 -1
- package/.agents/skills/qk-ai-builder/capability.yaml +23 -0
- package/.agents/skills/qk-ai-builder/evals/scorecard.yaml +30 -0
- package/.agents/skills/qk-api-lifecycle/SKILL.md +1 -1
- package/.agents/skills/qk-api-lifecycle/capability.yaml +23 -0
- package/.agents/skills/qk-api-lifecycle/evals/scorecard.yaml +29 -0
- package/.agents/skills/qk-bug-resolution/SKILL.md +1 -1
- package/.agents/skills/qk-bug-resolution/capability.yaml +25 -0
- package/.agents/skills/qk-bug-resolution/evals/scorecard.yaml +30 -0
- package/.agents/skills/qk-code-review/SKILL.md +1 -1
- package/.agents/skills/qk-code-review/capability.yaml +23 -0
- package/.agents/skills/qk-code-review/evals/scorecard.yaml +29 -0
- package/.agents/skills/qk-context-loader/SKILL.md +1 -1
- package/.agents/skills/qk-context-loader/capability.yaml +23 -0
- package/.agents/skills/qk-context-loader/evals/scorecard.yaml +28 -0
- package/.agents/skills/qk-data-lifecycle/SKILL.md +1 -1
- package/.agents/skills/qk-data-lifecycle/capability.yaml +23 -0
- package/.agents/skills/qk-data-lifecycle/evals/scorecard.yaml +29 -0
- package/.agents/skills/qk-db-optimizer/SKILL.md +1 -1
- package/.agents/skills/qk-db-optimizer/capability.yaml +22 -0
- package/.agents/skills/qk-db-optimizer/evals/scorecard.yaml +28 -0
- package/.agents/skills/qk-design-system-engineering/SKILL.md +1 -1
- package/.agents/skills/qk-design-system-engineering/capability.yaml +25 -0
- package/.agents/skills/qk-design-system-engineering/evals/scorecard.yaml +27 -0
- package/.agents/skills/qk-devops-platform/SKILL.md +1 -1
- package/.agents/skills/qk-devops-platform/capability.yaml +29 -0
- package/.agents/skills/qk-devops-platform/evals/scorecard.yaml +28 -0
- package/.agents/skills/qk-docs/SKILL.md +1 -1
- package/.agents/skills/qk-docs/capability.yaml +23 -0
- package/.agents/skills/qk-docs/evals/scorecard.yaml +27 -0
- package/.agents/skills/qk-engineering-standard/SKILL.md +1 -1
- package/.agents/skills/qk-engineering-standard/capability.yaml +23 -0
- package/.agents/skills/qk-engineering-standard/evals/scorecard.yaml +28 -0
- package/.agents/skills/qk-fe-api-integration/SKILL.md +1 -1
- package/.agents/skills/qk-fe-api-integration/capability.yaml +21 -0
- package/.agents/skills/qk-fe-api-integration/evals/scorecard.yaml +29 -0
- package/.agents/skills/qk-feature-delivery/SKILL.md +1 -1
- package/.agents/skills/qk-feature-delivery/capability.yaml +24 -0
- package/.agents/skills/qk-feature-delivery/evals/scorecard.yaml +28 -0
- package/.agents/skills/qk-frontend-architecture/SKILL.md +1 -1
- package/.agents/skills/qk-frontend-architecture/capability.yaml +28 -0
- package/.agents/skills/qk-frontend-architecture/evals/scorecard.yaml +28 -0
- package/.agents/skills/qk-help/SKILL.md +2 -2
- package/.agents/skills/qk-help/capability.yaml +20 -0
- package/.agents/skills/qk-help/evals/scorecard.yaml +13 -0
- package/.agents/skills/qk-orchestrator/SKILL.md +1 -1
- package/.agents/skills/qk-orchestrator/capability.yaml +22 -0
- package/.agents/skills/qk-orchestrator/evals/scorecard.yaml +27 -0
- package/.agents/skills/qk-product-specification/SKILL.md +1 -1
- package/.agents/skills/qk-product-specification/capability.yaml +27 -0
- package/.agents/skills/qk-product-specification/evals/scorecard.yaml +27 -0
- package/.agents/skills/qk-production-release/SKILL.md +2 -2
- package/.agents/skills/qk-production-release/capability.yaml +27 -0
- package/.agents/skills/qk-production-release/evals/scorecard.yaml +28 -0
- package/.agents/skills/qk-project-bootstrap/SKILL.md +1 -1
- package/.agents/skills/qk-project-bootstrap/capability.yaml +23 -0
- package/.agents/skills/qk-project-bootstrap/evals/scorecard.yaml +28 -0
- package/.agents/skills/qk-project-health/SKILL.md +1 -1
- package/.agents/skills/qk-project-health/capability.yaml +23 -0
- package/.agents/skills/qk-project-health/evals/scorecard.yaml +27 -0
- package/.agents/skills/qk-project-memory/SKILL.md +1 -1
- package/.agents/skills/qk-project-memory/capability.yaml +23 -0
- package/.agents/skills/qk-project-memory/evals/scorecard.yaml +27 -0
- package/.agents/skills/qk-refactor/SKILL.md +117 -0
- package/.agents/skills/qk-refactor/capability.yaml +26 -0
- package/.agents/skills/qk-refactor/evals/scorecard.yaml +27 -0
- package/.agents/skills/qk-security-audit/SKILL.md +1 -1
- package/.agents/skills/qk-security-audit/capability.yaml +30 -0
- package/.agents/skills/qk-security-audit/evals/scorecard.yaml +27 -0
- package/.agents/skills/qk-system-evolution/SKILL.md +1 -1
- package/.agents/skills/qk-system-evolution/capability.yaml +24 -0
- package/.agents/skills/qk-system-evolution/evals/scorecard.yaml +26 -0
- package/.agents/skills/qk-test-engineering/SKILL.md +1 -1
- package/.agents/skills/qk-test-engineering/capability.yaml +28 -0
- package/.agents/skills/qk-test-engineering/evals/scorecard.yaml +26 -0
- package/.agents/skills/qk-ui-audit/SKILL.md +1 -1
- package/.agents/skills/qk-ui-audit/capability.yaml +23 -0
- package/.agents/skills/qk-ui-audit/evals/scorecard.yaml +26 -0
- package/.agents/skills/qk-ui-builder/capability.yaml +29 -0
- package/.agents/skills/qk-ui-system-builder/SKILL.md +1 -1
- package/.agents/skills/qk-ui-system-builder/capability.yaml +25 -0
- package/.agents/skills/qk-ui-system-builder/evals/scorecard.yaml +26 -0
- package/.agents/skills/qk-validation-gate/SKILL.md +1 -1
- package/.agents/skills/qk-validation-gate/capability.yaml +23 -0
- package/.agents/skills/qk-validation-gate/evals/scorecard.yaml +26 -0
- package/.agents/skills/qk-web-quality-gate/SKILL.md +1 -1
- package/.agents/skills/qk-web-quality-gate/capability.yaml +24 -0
- package/.agents/skills/qk-web-quality-gate/evals/scorecard.yaml +26 -0
- package/.agents/workflows/production-release.yml +173 -0
- package/CHANGELOG.md +27 -0
- package/bin/install.js +1 -1
- package/package.json +3 -1
- package/tooling/build-registry.js +186 -186
- package/tooling/fix-refactor.js +8 -0
- package/tooling/sync-versions.js +49 -0
- package/tooling/validate-graph.js +87 -87
- package/tooling/generate-registry.js +0 -157
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
name: qk-production-release-eval
|
|
2
|
+
description: Đánh giá quá trình kiểm duyệt phát hành (Release Gate)
|
|
3
|
+
version: 8.3.1
|
|
4
|
+
threshold: 100 # Phải đạt 100 điểm vì lỗi ở Gate này có thể gây sập Production
|
|
5
|
+
|
|
6
|
+
metrics:
|
|
7
|
+
- id: strict_gate_enforcement
|
|
8
|
+
name: Kỷ luật thi hành Checklist 8-Gate
|
|
9
|
+
description: Agent có nghiêm túc chặn việc release nếu phát hiện lỗi Hard-block không?
|
|
10
|
+
weight: 40
|
|
11
|
+
criteria:
|
|
12
|
+
- BẮT BUỘC chặn đứng (EXIT: FAILED) nếu các cổng P1–P5 hoặc P7 (CRITICAL security) thất bại (40đ)
|
|
13
|
+
|
|
14
|
+
- id: pre_flight_checks
|
|
15
|
+
name: Kiểm tra rác mã và Cấu hình (Pre-flight)
|
|
16
|
+
description: Agent có phát hiện được log rác và nhầm lẫn file môi trường không?
|
|
17
|
+
weight: 30
|
|
18
|
+
criteria:
|
|
19
|
+
- Rà soát thành công các tàn dư debug (console.log, debugger) trong mã nguồn (15đ)
|
|
20
|
+
- Xác minh chắc chắn biến môi trường đang trỏ về Production (.env.production) (15đ)
|
|
21
|
+
|
|
22
|
+
- id: build_and_security
|
|
23
|
+
name: Kiểm thử Build và Bảo mật
|
|
24
|
+
description: Phân tích Build Bundle và Dependency Audit có được chạy không?
|
|
25
|
+
weight: 30
|
|
26
|
+
criteria:
|
|
27
|
+
- Chạy lệnh build để đảm bảo source code không bị gãy (15đ)
|
|
28
|
+
- Chạy npm audit/yarn audit để chặn mã độc/vulnerabilities lên server (15đ)
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
# ── Identity ───────────────────────────────────────────────
|
|
3
3
|
name: qk-project-bootstrap
|
|
4
|
-
version: 8.
|
|
4
|
+
version: 8.3.1
|
|
5
5
|
status: stable
|
|
6
6
|
description: "Khởi tạo dự án mới theo chuẩn V8.2 Blueprint Plugin Generator (project.yaml, 4-folder AI RAG hoặc Coding) với cấu trúc kiên cường."
|
|
7
7
|
platforms: [antigravity, claude-code, cursor, windsurf, kilo-code]
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
# Auto-generated from SKILL.md frontmatter
|
|
2
|
+
schema_version: 1
|
|
3
|
+
id: "qk-project-bootstrap"
|
|
4
|
+
version: "8.3.1"
|
|
5
|
+
description: "Khởi tạo dự án mới theo chuẩn V8.2 Blueprint Plugin Generator (project.yaml, 4-folder AI RAG hoặc Coding) với cấu trúc kiên cường."
|
|
6
|
+
tools:
|
|
7
|
+
- "filesystem"
|
|
8
|
+
- "terminal"
|
|
9
|
+
knowledge:
|
|
10
|
+
owns:
|
|
11
|
+
- "project-structure"
|
|
12
|
+
- "initial-setup"
|
|
13
|
+
references:
|
|
14
|
+
- "architecture"
|
|
15
|
+
- "security"
|
|
16
|
+
- "anti-patterns"
|
|
17
|
+
eval:
|
|
18
|
+
scorecard: "evals/scorecard.yaml"
|
|
19
|
+
decision_boundary:
|
|
20
|
+
owns:
|
|
21
|
+
- "qk-project-bootstrap"
|
|
22
|
+
does_not_own: []
|
|
23
|
+
conflicts_with: []
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
name: qk-project-bootstrap-eval
|
|
2
|
+
description: Đánh giá chất lượng khởi tạo dự án V8.2 Blueprint
|
|
3
|
+
version: 8.3.1
|
|
4
|
+
threshold: 85 # Đảm bảo cấu trúc kiến trúc được thiết lập chuẩn xác ngay từ đầu
|
|
5
|
+
|
|
6
|
+
metrics:
|
|
7
|
+
- id: blueprint_selection
|
|
8
|
+
name: Lựa chọn Blueprint phù hợp
|
|
9
|
+
description: Chọn đúng Blueprint và Manifest project.yaml tương ứng chưa?
|
|
10
|
+
weight: 35
|
|
11
|
+
criteria:
|
|
12
|
+
- Nhận diện đúng loại hình dự án (Coding, RAG/AI, Workflow) và áp dụng Blueprint cấu trúc thư mục phù hợp (15đ)
|
|
13
|
+
- Tạo ra file project.yaml chứa manifest của workspace (20đ)
|
|
14
|
+
|
|
15
|
+
- id: mandatory_files_scaffolding
|
|
16
|
+
name: Cấu trúc thư mục và File bắt buộc
|
|
17
|
+
description: Cây thư mục có thiếu các file quản lý chất lượng lõi không?
|
|
18
|
+
weight: 40
|
|
19
|
+
criteria:
|
|
20
|
+
- Sinh đúng kiến trúc (Ví dụ: 4-folder architecture cho AI RAG) (20đ)
|
|
21
|
+
- Đảm bảo đầy đủ các files chống thoái hóa: DESIGN.md, security.md, anti-patterns.md, scorecard.yaml (20đ)
|
|
22
|
+
|
|
23
|
+
- id: tooling_configuration
|
|
24
|
+
name: Cấu hình Công cụ (Tooling)
|
|
25
|
+
description: Môi trường có được thiết lập strict type và linter chưa?
|
|
26
|
+
weight: 25
|
|
27
|
+
criteria:
|
|
28
|
+
- Các cấu hình (tsconfig, eslint, prettier) được thiết lập chặt chẽ, không dễ dãi (25đ)
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
# ── Identity ───────────────────────────────────────────────
|
|
3
3
|
name: qk-project-health
|
|
4
|
-
version: 8.
|
|
4
|
+
version: 8.3.1
|
|
5
5
|
status: stable
|
|
6
6
|
description: "Kiểm toán toàn diện Code Smells, Tech Debt, Architecture — health score 0–100 với actionable roadmap."
|
|
7
7
|
platforms: [antigravity, claude-code, cursor, windsurf, kilo-code]
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
# Auto-generated from SKILL.md frontmatter
|
|
2
|
+
schema_version: 1
|
|
3
|
+
id: "qk-project-health"
|
|
4
|
+
version: "8.3.1"
|
|
5
|
+
description: "Kiểm toán toàn diện Code Smells, Tech Debt, Architecture — health score 0–100 với actionable roadmap."
|
|
6
|
+
tools:
|
|
7
|
+
- "filesystem"
|
|
8
|
+
- "terminal"
|
|
9
|
+
knowledge:
|
|
10
|
+
owns:
|
|
11
|
+
- "tech-debt"
|
|
12
|
+
- "codebase-health"
|
|
13
|
+
references:
|
|
14
|
+
- "architecture"
|
|
15
|
+
- "security"
|
|
16
|
+
- "anti-patterns"
|
|
17
|
+
eval:
|
|
18
|
+
scorecard: "evals/scorecard.yaml"
|
|
19
|
+
decision_boundary:
|
|
20
|
+
owns:
|
|
21
|
+
- "qk-project-health"
|
|
22
|
+
does_not_own: []
|
|
23
|
+
conflicts_with: []
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
name: qk-project-health-eval
|
|
2
|
+
description: Đánh giá năng lực Kiểm toán toàn diện sức khỏe Codebase
|
|
3
|
+
version: 8.3.1
|
|
4
|
+
threshold: 85 # Đảm bảo chấm điểm công tâm và vạch ra Roadmap cải thiện rõ ràng
|
|
5
|
+
|
|
6
|
+
metrics:
|
|
7
|
+
- id: five_dimensions_scoring
|
|
8
|
+
name: Chấm điểm 5 Phương diện (5 Dimensions)
|
|
9
|
+
description: Đánh giá toàn diện 5 yếu tố cốt lõi của codebase chưa?
|
|
10
|
+
weight: 40
|
|
11
|
+
criteria:
|
|
12
|
+
- Quét và tính điểm đầy đủ 5 phương diện: Security, Code Quality, Architecture, Dependencies, Documentation (20đ)
|
|
13
|
+
- Có bằng chứng (Evidence) cho các vi phạm bị trừ điểm (20đ)
|
|
14
|
+
|
|
15
|
+
- id: security_and_antipatterns
|
|
16
|
+
name: Quét Bảo mật (R-SEC-04) và Anti-patterns (R-C-09)
|
|
17
|
+
description: Agent có tìm ra các lỗ hổng bảo mật hoặc rác mã nghiêm trọng không?
|
|
18
|
+
weight: 30
|
|
19
|
+
criteria:
|
|
20
|
+
- Tìm thấy hardcoded secrets, eval(), hoặc vi phạm kiến trúc (God files, circular deps) nếu có (30đ)
|
|
21
|
+
|
|
22
|
+
- id: actionable_roadmap
|
|
23
|
+
name: Roadmap Tái cấu trúc thực tiễn
|
|
24
|
+
description: Báo cáo có vạch ra con đường sửa chữa rõ ràng không?
|
|
25
|
+
weight: 30
|
|
26
|
+
criteria:
|
|
27
|
+
- Output không chỉ chê bai mà còn sắp xếp các vấn đề theo độ ưu tiên (CRITICAL sửa trước) để team fix (30đ)
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
# ── Identity ───────────────────────────────────────────────
|
|
3
3
|
name: qk-project-memory
|
|
4
|
-
version: 8.
|
|
4
|
+
version: 8.3.1
|
|
5
5
|
status: stable
|
|
6
6
|
description: "Lưu trữ và truy xuất ngữ cảnh dự án dài hạn — chỉ lưu fact đã xác minh, không lưu giả thuyết."
|
|
7
7
|
platforms: [antigravity, claude-code, cursor, windsurf, kilo-code]
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
# Auto-generated from SKILL.md frontmatter
|
|
2
|
+
schema_version: 1
|
|
3
|
+
id: "qk-project-memory"
|
|
4
|
+
version: "8.3.1"
|
|
5
|
+
description: "Lưu trữ và truy xuất ngữ cảnh dự án dài hạn — chỉ lưu fact đã xác minh, không lưu giả thuyết."
|
|
6
|
+
tools:
|
|
7
|
+
- "filesystem"
|
|
8
|
+
- "terminal"
|
|
9
|
+
knowledge:
|
|
10
|
+
owns:
|
|
11
|
+
- "project-facts"
|
|
12
|
+
- "verified-context"
|
|
13
|
+
references:
|
|
14
|
+
- "architecture"
|
|
15
|
+
- "security"
|
|
16
|
+
- "anti-patterns"
|
|
17
|
+
eval:
|
|
18
|
+
scorecard: "evals/scorecard.yaml"
|
|
19
|
+
decision_boundary:
|
|
20
|
+
owns:
|
|
21
|
+
- "qk-project-memory"
|
|
22
|
+
does_not_own: []
|
|
23
|
+
conflicts_with: []
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
name: qk-project-memory-eval
|
|
2
|
+
description: Đánh giá quá trình lưu trữ và truy xuất ngữ cảnh dài hạn (Project Memory)
|
|
3
|
+
version: 8.3.1
|
|
4
|
+
threshold: 85 # Yêu cầu độ chính xác cao khi ghi đè hoặc lưu trữ để tránh ảo giác
|
|
5
|
+
|
|
6
|
+
metrics:
|
|
7
|
+
- id: fact_verification
|
|
8
|
+
name: Chỉ lưu trữ Sự thật (Fact), không lưu Giả thuyết
|
|
9
|
+
description: Agent có kiểm chứng thông tin qua source code trước khi lưu vào Memory không?
|
|
10
|
+
weight: 40
|
|
11
|
+
criteria:
|
|
12
|
+
- Tuyệt đối không lưu các giả định (assumptions) hoặc fact có Confidence LOW (20đ)
|
|
13
|
+
- Có bằng chứng (file:line) đính kèm khi ghi dữ liệu (20đ)
|
|
14
|
+
|
|
15
|
+
- id: zero_trust_memory
|
|
16
|
+
name: An toàn dữ liệu trong Memory (Zero Trust)
|
|
17
|
+
description: Agent có vô tình lưu thông tin nhạy cảm vào Memory không?
|
|
18
|
+
weight: 35
|
|
19
|
+
criteria:
|
|
20
|
+
- KHÔNG lưu trữ PII, API Keys, raw JWTs hay credentials dưới dạng clear text (35đ)
|
|
21
|
+
|
|
22
|
+
- id: ui_diversification
|
|
23
|
+
name: Áp dụng UI Diversification
|
|
24
|
+
description: Có lưu và kiểm tra lịch sử thiết kế để tránh UI lặp lại nhàm chán không?
|
|
25
|
+
weight: 25
|
|
26
|
+
criteria:
|
|
27
|
+
- Đọc và ghi đúng vào file `ui-diversification.json` để ngăn chặn trùng lặp theme/macrostructure (25đ)
|
|
@@ -0,0 +1,117 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: qk-refactor
|
|
3
|
+
version: 8.3.1
|
|
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
|
+
## Preconditions
|
|
87
|
+
- [ ] Target file(s) or module(s) are specified
|
|
88
|
+
- [ ] Tests exist for the target code (or can be created)
|
|
89
|
+
|
|
90
|
+
On missing precondition:
|
|
91
|
+
EXIT: BLOCKED
|
|
92
|
+
Message: "Missing: target files or test coverage"
|
|
93
|
+
|
|
94
|
+
## Scope
|
|
95
|
+
- Improve internal code quality without changing external behavior
|
|
96
|
+
- Reduce complexity, improve naming, extract functions
|
|
97
|
+
- Remove dead code and duplication
|
|
98
|
+
|
|
99
|
+
## Non-Goals
|
|
100
|
+
- Add new functionality
|
|
101
|
+
- Change public API signatures
|
|
102
|
+
- Modify behavior or business logic
|
|
103
|
+
|
|
104
|
+
## Workflow
|
|
105
|
+
1. Establish baseline (current behavior + tests)
|
|
106
|
+
2. Plan refactor steps
|
|
107
|
+
3. Execute step by step
|
|
108
|
+
4. Verify behavior unchanged
|
|
109
|
+
5. Run validation gate
|
|
110
|
+
|
|
111
|
+
## Exit Codes
|
|
112
|
+
| Code | Meaning |
|
|
113
|
+
|------|---------|
|
|
114
|
+
| SUCCESS | Refactor complete, behavior preserved, tests pass |
|
|
115
|
+
| PARTIAL | Refactor done, some tests need attention |
|
|
116
|
+
| BLOCKED | Missing preconditions |
|
|
117
|
+
| FAILED | Behavior changed or tests broken |
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
schema_version: 1
|
|
2
|
+
id: "qk-refactor"
|
|
3
|
+
version: "8.3.1"
|
|
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: 8.3.1
|
|
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,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
# ── Identity ───────────────────────────────────────────────
|
|
3
3
|
name: qk-security-audit
|
|
4
|
-
version: 8.1
|
|
4
|
+
version: 8.3.1
|
|
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]
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
# Auto-generated from SKILL.md frontmatter
|
|
2
|
+
schema_version: 1
|
|
3
|
+
id: "qk-security-audit"
|
|
4
|
+
version: "8.3.1"
|
|
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: 8.3.1
|
|
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,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
# ── Identity ───────────────────────────────────────────────
|
|
3
3
|
name: qk-system-evolution
|
|
4
|
-
version: 8.
|
|
4
|
+
version: 8.3.1
|
|
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]
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
# Auto-generated from SKILL.md frontmatter
|
|
2
|
+
schema_version: 1
|
|
3
|
+
id: "qk-system-evolution"
|
|
4
|
+
version: "8.3.1"
|
|
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: []
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
name: qk-system-evolution-eval
|
|
2
|
+
description: Đánh giá độ an toàn của quy trình nâng cấp System & Framework
|
|
3
|
+
version: 8.3.1
|
|
4
|
+
threshold: 90 # Việc nâng cấp framework mang rủi ro sập hệ thống rất cao
|
|
5
|
+
|
|
6
|
+
metrics:
|
|
7
|
+
- id: rollback_safety
|
|
8
|
+
name: Cơ chế Rollback bắt buộc
|
|
9
|
+
description: Agent có thiết lập và ghi chép lại lệnh rollback trước khi nâng cấp không?
|
|
10
|
+
weight: 40
|
|
11
|
+
criteria:
|
|
12
|
+
- Phải yêu cầu/lưu lại Rollback command (git tag / version trước đó) trước khi sửa code (40đ)
|
|
13
|
+
|
|
14
|
+
- id: changelog_awareness
|
|
15
|
+
name: Phân tích Breaking Changes
|
|
16
|
+
description: Agent có đọc Changelog thay vì nhắm mắt upgrade không?
|
|
17
|
+
weight: 35
|
|
18
|
+
criteria:
|
|
19
|
+
- Quét và liệt kê các Breaking Changes từ Changelog/Migration Guide trước khi chạy (35đ)
|
|
20
|
+
|
|
21
|
+
- id: incremental_upgrade
|
|
22
|
+
name: Nâng cấp gia tăng (Incremental)
|
|
23
|
+
description: Có nâng cấp từng phần và chạy test xác minh thay vì Big-bang không?
|
|
24
|
+
weight: 25
|
|
25
|
+
criteria:
|
|
26
|
+
- Chạy test ngay sau khi nâng cấp 1 package thay vì update hàng loạt (25đ)
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
# ── Identity ───────────────────────────────────────────────
|
|
3
3
|
name: qk-test-engineering
|
|
4
|
-
version: 8.1
|
|
4
|
+
version: 8.3.1
|
|
5
5
|
status: experimental
|
|
6
6
|
description: "Công cụ quyết định chiến lược kiểm thử (Unit, Integration, E2E, Coverage, Regression, Mock)."
|
|
7
7
|
platforms: [antigravity, claude-code, cursor, windsurf, kilo-code]
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
# Auto-generated from SKILL.md frontmatter
|
|
2
|
+
schema_version: 1
|
|
3
|
+
id: "qk-test-engineering"
|
|
4
|
+
version: "8.3.1"
|
|
5
|
+
description: "Công cụ quyết định chiến lược kiểm thử (Unit, Integration, E2E, Coverage, Regression, Mock)."
|
|
6
|
+
tools:
|
|
7
|
+
- "filesystem"
|
|
8
|
+
- "terminal"
|
|
9
|
+
knowledge:
|
|
10
|
+
owns:
|
|
11
|
+
- "qk-test-engineering"
|
|
12
|
+
references:
|
|
13
|
+
- "architecture"
|
|
14
|
+
- "anti-patterns"
|
|
15
|
+
- "playwright"
|
|
16
|
+
- "vitest"
|
|
17
|
+
- "storybook-testing"
|
|
18
|
+
eval:
|
|
19
|
+
scorecard: "evals/scorecard.yaml"
|
|
20
|
+
decision_boundary:
|
|
21
|
+
owns:
|
|
22
|
+
- "test pyramid"
|
|
23
|
+
- "coverage strategy"
|
|
24
|
+
- "regression planning"
|
|
25
|
+
does_not_own:
|
|
26
|
+
- "business logic implementation"
|
|
27
|
+
- "writing tests"
|
|
28
|
+
conflicts_with: []
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
name: qk-test-engineering-eval
|
|
2
|
+
description: Đánh giá tư duy Chiến lược Kiểm thử (Test Strategy)
|
|
3
|
+
version: 8.3.1
|
|
4
|
+
threshold: 85 # Đảm bảo tư vấn chiến lược rõ ràng và bao quát rủi ro
|
|
5
|
+
|
|
6
|
+
metrics:
|
|
7
|
+
- id: pyramid_strategy
|
|
8
|
+
name: Chiến lược Test Pyramid
|
|
9
|
+
description: Chiến lược có phân bổ hợp lý giữa Unit, Integration và E2E không?
|
|
10
|
+
weight: 35
|
|
11
|
+
criteria:
|
|
12
|
+
- Phân tách rõ ràng loại test nào dùng cho logic nào thay vì bắt viết E2E cho mọi thứ (35đ)
|
|
13
|
+
|
|
14
|
+
- id: boundary_testing_r_sec_04
|
|
15
|
+
name: Negative & Boundary Testing (R-SEC-04)
|
|
16
|
+
description: Có bao phủ các test cases ranh giới để ngăn chặn tấn công/lỗi dữ liệu không?
|
|
17
|
+
weight: 35
|
|
18
|
+
criteria:
|
|
19
|
+
- Bắt buộc đưa ra các test case biên (Boundary) và trường hợp lỗi (Negative tests) (35đ)
|
|
20
|
+
|
|
21
|
+
- id: mocking_strategy
|
|
22
|
+
name: Chiến lược Mock/Stub
|
|
23
|
+
description: Có tư vấn rõ ràng khi nào nên Mock và khi nào dùng Database thật không?
|
|
24
|
+
weight: 30
|
|
25
|
+
criteria:
|
|
26
|
+
- Phân biệt rõ việc Mock API bên thứ ba vs Integration DB nội bộ (30đ)
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
# ── Identity ───────────────────────────────────────────────
|
|
3
3
|
name: qk-ui-audit
|
|
4
|
-
version: 8.
|
|
4
|
+
version: 8.3.1
|
|
5
5
|
status: stable
|
|
6
6
|
description: "Kiểm toán giao diện (UI) với 57-check Anti-Slop checklist — fail nếu score < 76/85 base."
|
|
7
7
|
platforms: [antigravity, claude-code, cursor, windsurf, kilo-code]
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
# Auto-generated from SKILL.md frontmatter
|
|
2
|
+
schema_version: 1
|
|
3
|
+
id: "qk-ui-audit"
|
|
4
|
+
version: "8.3.1"
|
|
5
|
+
description: "Kiểm toán giao diện (UI) với 57-check Anti-Slop checklist — fail nếu score < 76/85 base."
|
|
6
|
+
tools:
|
|
7
|
+
- "filesystem"
|
|
8
|
+
- "terminal"
|
|
9
|
+
knowledge:
|
|
10
|
+
owns:
|
|
11
|
+
- "ui-standards"
|
|
12
|
+
- "anti-slop"
|
|
13
|
+
references:
|
|
14
|
+
- "design-system"
|
|
15
|
+
- "security"
|
|
16
|
+
- "anti-patterns"
|
|
17
|
+
eval:
|
|
18
|
+
scorecard: "evals/scorecard.yaml"
|
|
19
|
+
decision_boundary:
|
|
20
|
+
owns:
|
|
21
|
+
- "qk-ui-audit"
|
|
22
|
+
does_not_own: []
|
|
23
|
+
conflicts_with: []
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
name: qk-ui-audit-eval
|
|
2
|
+
description: Đánh giá khả năng rà soát UI Anti-Slop
|
|
3
|
+
version: 8.3.1
|
|
4
|
+
threshold: 90 # Đóng vai trò chốt chặn UI chất lượng cao, không khoan nhượng với Slop
|
|
5
|
+
|
|
6
|
+
metrics:
|
|
7
|
+
- id: design_contract_compliance
|
|
8
|
+
name: Tuân thủ Hợp đồng Thiết kế (DESIGN.md)
|
|
9
|
+
description: Có bắt lỗi chính xác các giá trị hardcode không nằm trong Design Tokens không?
|
|
10
|
+
weight: 40
|
|
11
|
+
criteria:
|
|
12
|
+
- Tìm và đánh dấu các mã màu hex, px hardcode vi phạm token của DESIGN.md (40đ)
|
|
13
|
+
|
|
14
|
+
- id: anti_slop_detection
|
|
15
|
+
name: Nhận diện AI-Slop (Generic aesthetics)
|
|
16
|
+
description: Có phát hiện được các thiết kế chung chung, xám xịt, viền nhạt nhòa không?
|
|
17
|
+
weight: 30
|
|
18
|
+
criteria:
|
|
19
|
+
- Trừ điểm nặng các thẻ card thiếu chiều sâu, text quá nhỏ, hoặc thiếu hover state (30đ)
|
|
20
|
+
|
|
21
|
+
- id: accessibility_check
|
|
22
|
+
name: Kiểm tra Trải nghiệm Tiếp cận (A11y)
|
|
23
|
+
description: Có rà soát các thẻ ARIA, độ tương phản và Semantic HTML không?
|
|
24
|
+
weight: 30
|
|
25
|
+
criteria:
|
|
26
|
+
- Cảnh báo các element tương tác (button, link) thiếu roles, alt text hoặc độ tương phản < 4.5:1 (30đ)
|