ai-developer-skill-os 8.2.1 → 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/LICENSE +21 -21
- package/.agents/README.md +90 -90
- package/.agents/docs/CHI_TIET_SKILLS.md +125 -125
- package/.agents/docs/MIGRATION-CLEANUP-V8.1.3.md +36 -36
- package/.agents/docs/MIGRATION-STATUS.md +35 -35
- package/.agents/docs/MIGRATION-V8.md +10 -10
- package/.agents/docs/V8-CERTIFICATION.md +27 -27
- package/.agents/docs/decisions/ADR-001-v8-migration.md +58 -58
- package/.agents/docs/decisions/ADR-002-workflow-separation.md +50 -50
- package/.agents/docs/decisions/ADR-003-registry-generated.md +54 -54
- package/.agents/docs/decisions/ADR-008-skill-boundary-review.md +27 -27
- package/.agents/registry/capability-graph.yml +67 -25
- package/.agents/registry/graph.json +135 -256
- package/.agents/registry/index.yaml +68 -95
- package/.agents/registry/skills-index.yml +548 -525
- package/.agents/rules/anti-patterns.md +45 -0
- package/.agents/rules/coding.md +10 -0
- package/.agents/rules/command-safety.md +37 -14
- package/.agents/rules/priorities.yml +13 -2
- package/.agents/rules/security.md +47 -7
- package/.agents/rules/skill-quality.md +32 -8
- package/.agents/skills/_template/SKILL.md +133 -132
- package/.agents/skills/_template/capability.yaml +22 -8
- package/.agents/skills/_template/evals/scorecard.yaml +19 -19
- package/.agents/skills/qk-access-policy/SKILL.md +5 -2
- 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 +112 -1
- 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-agent-observability/references/scorecard.yaml +80 -0
- package/.agents/skills/qk-ai-builder/SKILL.md +75 -6
- 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 +5 -3
- 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 +4 -22
- 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 +188 -186
- 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 +4 -12
- 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 +7 -2
- 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 +4 -3
- 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 +235 -112
- 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 +241 -117
- 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 +4 -2
- 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 +5 -76
- 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-engineering-standard/references/anti-patterns.md +121 -0
- package/.agents/skills/qk-engineering-standard/rules/frontend.md +1 -1
- package/.agents/skills/qk-fe-api-integration/SKILL.md +14 -33
- 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 +54 -222
- 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 +258 -134
- 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 +23 -161
- 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 +3 -35
- package/.agents/skills/qk-orchestrator/capability.yaml +22 -0
- package/.agents/skills/qk-orchestrator/evals/scorecard.yaml +27 -0
- package/.agents/skills/qk-orchestrator/references/routing-table.md +15 -3
- package/.agents/skills/qk-product-specification/SKILL.md +253 -130
- 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 +33 -68
- 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 +59 -8
- 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 +5 -3
- 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 +4 -2
- 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 +259 -135
- 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 +18 -68
- 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 +262 -139
- 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 +17 -90
- 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-audit/references/anti-slop-checklist.md +2 -2
- package/.agents/skills/qk-ui-builder/SKILL.md +482 -509
- package/.agents/skills/qk-ui-builder/capability.yaml +29 -0
- package/.agents/skills/qk-ui-builder/references/component-cookbook.md +455 -1191
- package/.agents/skills/qk-ui-system-builder/SKILL.md +2 -6
- 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 -75
- 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 +232 -114
- 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/_schema.yml +146 -109
- package/.agents/workflows/bug-resolution.yml +121 -101
- package/.agents/workflows/code-review.yml +93 -77
- package/.agents/workflows/documentation.yml +90 -75
- package/.agents/workflows/feature-delivery.yml +120 -103
- package/.agents/workflows/production-release.yml +173 -0
- package/.agents/workflows/refactor.yml +99 -81
- package/.agents/workflows/research.yml +75 -60
- package/.agents/workflows/security-audit.yml +115 -72
- package/.agents/workflows/skill-evolution.yml +97 -65
- package/.agents/workflows/spec-driven-development.yml +87 -57
- package/CHANGELOG.md +27 -0
- package/README.md +90 -90
- package/bin/install.js +329 -179
- package/package.json +4 -2
- 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/.agents/CHANGELOG.md +0 -131
- package/.agents/learnings/draft/README.md +0 -37
- package/.agents/reports/RELEASE-CHECKLIST.md +0 -29
- package/.agents/reports/architecture-audit.md +0 -13
- package/.agents/reports/graph-health.md +0 -20
- package/.agents/reports/skill-audit.md +0 -215
- package/tooling/generate-registry.js +0 -157
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
# Auto-generated from SKILL.md frontmatter
|
|
2
|
+
schema_version: 1
|
|
3
|
+
id: "qk-context-loader"
|
|
4
|
+
version: "8.3.1"
|
|
5
|
+
description: "Tải context và vẽ dependency graph chính xác trước khi code — ngăn hallucination kiến trúc."
|
|
6
|
+
tools:
|
|
7
|
+
- "filesystem"
|
|
8
|
+
- "terminal"
|
|
9
|
+
knowledge:
|
|
10
|
+
owns:
|
|
11
|
+
- "project-context"
|
|
12
|
+
- "architecture-discovery"
|
|
13
|
+
references:
|
|
14
|
+
- "coding"
|
|
15
|
+
- "repository-structure"
|
|
16
|
+
- "anti-patterns"
|
|
17
|
+
eval:
|
|
18
|
+
scorecard: "evals/scorecard.yaml"
|
|
19
|
+
decision_boundary:
|
|
20
|
+
owns:
|
|
21
|
+
- "qk-context-loader"
|
|
22
|
+
does_not_own: []
|
|
23
|
+
conflicts_with: []
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
name: qk-context-loader-eval
|
|
2
|
+
description: Đánh giá khả năng phân tích kiến trúc và tải context
|
|
3
|
+
version: 8.3.1
|
|
4
|
+
threshold: 85 # Tính chính xác của context là cốt lõi để tránh hallucination
|
|
5
|
+
|
|
6
|
+
metrics:
|
|
7
|
+
- id: accurate_graph_traversal
|
|
8
|
+
name: Phân tích Graph chính xác và giới hạn
|
|
9
|
+
description: Agent có tuân thủ giới hạn chiều sâu và không quét thừa file không?
|
|
10
|
+
weight: 35
|
|
11
|
+
criteria:
|
|
12
|
+
- Quét đúng dependency graph từ entry point (15đ)
|
|
13
|
+
- Tuân thủ giới hạn max depth 3 và max_files_read, không bị tràn (infinite loop) (20đ)
|
|
14
|
+
|
|
15
|
+
- id: risk_assessment
|
|
16
|
+
name: Đánh giá mức độ rủi ro (Risk Assessment)
|
|
17
|
+
description: Agent có nhận diện đúng các module dùng chung (shared) hoặc vi phạm ranh giới không?
|
|
18
|
+
weight: 35
|
|
19
|
+
criteria:
|
|
20
|
+
- Đánh dấu chính xác các file được import nhiều lần là HIGH/CRITICAL risk (20đ)
|
|
21
|
+
- Phát hiện được các file vi phạm cấu trúc (vd: trộn lẫn Server Logic và Client UI) (15đ)
|
|
22
|
+
|
|
23
|
+
- id: strict_json_output
|
|
24
|
+
name: Định dạng Output JSON chuẩn mực
|
|
25
|
+
description: Agent có xuất ra được JSON Schema như yêu cầu để các agent khác đọc không?
|
|
26
|
+
weight: 30
|
|
27
|
+
criteria:
|
|
28
|
+
- Định dạng JSON trả về chứa đầy đủ nodes, imports, exports và risks theo đúng schema (30đ)
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
# ── Identity ───────────────────────────────────────────────
|
|
3
3
|
name: qk-data-lifecycle
|
|
4
|
-
version: 8.
|
|
4
|
+
version: 8.3.1
|
|
5
5
|
status: stable
|
|
6
6
|
description: "Quản lý Schema, Migrations an toàn — schema freeze → backward-compat migration → cleanup."
|
|
7
7
|
platforms: [antigravity, claude-code, cursor, windsurf, kilo-code]
|
|
@@ -47,6 +47,8 @@ knowledge_scope:
|
|
|
47
47
|
- migrations
|
|
48
48
|
references:
|
|
49
49
|
- architecture
|
|
50
|
+
- security
|
|
51
|
+
- anti-patterns
|
|
50
52
|
|
|
51
53
|
# ── V8: Verification ───────────────────────────────────────
|
|
52
54
|
verification:
|
|
@@ -80,7 +82,7 @@ exit_codes: [SUCCESS, BLOCKED, FAILED, PARTIAL]
|
|
|
80
82
|
|
|
81
83
|
# qk-data-lifecycle — Database Schema & Repository Manager
|
|
82
84
|
|
|
83
|
-
> **Language rule:** Code, identifiers, file names
|
|
85
|
+
> **Language rule:** Code, identifiers, file names → English. Explanations, summaries → Vietnamese.
|
|
84
86
|
|
|
85
87
|
---
|
|
86
88
|
|
|
@@ -134,6 +136,9 @@ drop_column:
|
|
|
134
136
|
|
|
135
137
|
rename_table:
|
|
136
138
|
strategy: create new table → migrate → drop old (never ALTER TABLE RENAME in prod)
|
|
139
|
+
|
|
140
|
+
pii_data:
|
|
141
|
+
strategy: Khi add column chứa PII (Personal Identifiable Information), BẮT BUỘC áp dụng cơ chế hashing/encryption tương ứng (tuân thủ R-SEC-04).
|
|
137
142
|
```
|
|
138
143
|
|
|
139
144
|
---
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
# Auto-generated from SKILL.md frontmatter
|
|
2
|
+
schema_version: 1
|
|
3
|
+
id: "qk-data-lifecycle"
|
|
4
|
+
version: "8.3.1"
|
|
5
|
+
description: "Quản lý Schema, Migrations an toàn — schema freeze → backward-compat migration → cleanup."
|
|
6
|
+
tools:
|
|
7
|
+
- "filesystem"
|
|
8
|
+
- "terminal"
|
|
9
|
+
knowledge:
|
|
10
|
+
owns:
|
|
11
|
+
- "schema"
|
|
12
|
+
- "migrations"
|
|
13
|
+
references:
|
|
14
|
+
- "architecture"
|
|
15
|
+
- "security"
|
|
16
|
+
- "anti-patterns"
|
|
17
|
+
eval:
|
|
18
|
+
scorecard: "evals/scorecard.yaml"
|
|
19
|
+
decision_boundary:
|
|
20
|
+
owns:
|
|
21
|
+
- "qk-data-lifecycle"
|
|
22
|
+
does_not_own: []
|
|
23
|
+
conflicts_with: []
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
name: qk-data-lifecycle-eval
|
|
2
|
+
description: Đánh giá chất lượng quản lý Schema và an toàn Migration
|
|
3
|
+
version: 8.3.1
|
|
4
|
+
threshold: 90 # Tiêu chuẩn rất cao vì rủi ro mất mát dữ liệu (Data loss) là CRITICAL
|
|
5
|
+
|
|
6
|
+
metrics:
|
|
7
|
+
- id: backward_compatible_migration
|
|
8
|
+
name: Migration tương thích ngược và an toàn
|
|
9
|
+
description: Agent có tạo migration an toàn, tránh phá vỡ dữ liệu đang chạy không?
|
|
10
|
+
weight: 40
|
|
11
|
+
criteria:
|
|
12
|
+
- Không sử dụng các lệnh destructive (DROP COLUMN, RENAME TABLE) một cách trực tiếp mà không qua chiến lược 3-phase (20đ)
|
|
13
|
+
- Các cột mới (add column) phải nullable hoặc có default value (10đ)
|
|
14
|
+
- Luôn định nghĩa hàm rollback `down()` (10đ)
|
|
15
|
+
|
|
16
|
+
- id: pii_and_security
|
|
17
|
+
name: Bảo mật dữ liệu PII (R-SEC-04)
|
|
18
|
+
description: Dữ liệu nhạy cảm có được mã hóa theo yêu cầu không?
|
|
19
|
+
weight: 30
|
|
20
|
+
criteria:
|
|
21
|
+
- Tự động nhận diện và áp dụng cơ chế hashing/encryption cho các cột chứa dữ liệu PII (Personal Identifiable Information) (30đ)
|
|
22
|
+
|
|
23
|
+
- id: layer_separation
|
|
24
|
+
name: Tách biệt Logic và Schema
|
|
25
|
+
description: Schema và truy vấn có được tách biệt khỏi Business Logic không?
|
|
26
|
+
weight: 30
|
|
27
|
+
criteria:
|
|
28
|
+
- Khai báo Schema (Model/Entity) rõ ràng trước khi viết truy vấn (15đ)
|
|
29
|
+
- Repository chỉ chứa truy vấn Database, không chứa Business Logic phức tạp (15đ)
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
# ── Identity ───────────────────────────────────────────────
|
|
3
3
|
name: qk-db-optimizer
|
|
4
|
-
version: 8.
|
|
4
|
+
version: 8.3.1
|
|
5
5
|
status: stable
|
|
6
6
|
description: "Tối ưu Database dựa trên bằng chứng: EXPLAIN → phân tích → index/join — không đoán mò."
|
|
7
7
|
platforms: [antigravity, claude-code, cursor, windsurf, kilo-code]
|
|
@@ -47,6 +47,7 @@ knowledge_scope:
|
|
|
47
47
|
- query-optimization
|
|
48
48
|
references:
|
|
49
49
|
- architecture
|
|
50
|
+
- anti-patterns
|
|
50
51
|
|
|
51
52
|
# ── V8: Verification ───────────────────────────────────────
|
|
52
53
|
verification:
|
|
@@ -80,7 +81,7 @@ exit_codes: [SUCCESS, BLOCKED, FAILED, PARTIAL]
|
|
|
80
81
|
|
|
81
82
|
# qk-db-optimizer — Database Performance Tuner
|
|
82
83
|
|
|
83
|
-
> **Language rule:** Code, identifiers, file names
|
|
84
|
+
> **Language rule:** Code, identifiers, file names → English. Explanations, summaries → Vietnamese.
|
|
84
85
|
|
|
85
86
|
---
|
|
86
87
|
|
|
@@ -112,7 +113,7 @@ On missing precondition:
|
|
|
112
113
|
| P | Issue Type | Action | Skip Threshold |
|
|
113
114
|
|---|-----------|--------|----------------|
|
|
114
115
|
| P1 | Sequential scan on large table (> 10k rows) | Add composite index | Never |
|
|
115
|
-
| P2 | N+1 query pattern | Eager load / DataLoader | Budget < 30% |
|
|
116
|
+
| P2 | N+1 query pattern | Eager load / DataLoader (Ưu tiên theo chuẩn dự án, không tự chế query lồng) | Budget < 30% |
|
|
116
117
|
| P3 | Missing JOIN (multiple queries for related data) | Rewrite with JOIN | Budget < 50% |
|
|
117
118
|
| P4 | SELECT * (over-fetching) | Select specific columns | Budget < 60% |
|
|
118
119
|
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
# Auto-generated from SKILL.md frontmatter
|
|
2
|
+
schema_version: 1
|
|
3
|
+
id: "qk-db-optimizer"
|
|
4
|
+
version: "8.3.1"
|
|
5
|
+
description: "Tối ưu Database dựa trên bằng chứng: EXPLAIN → phân tích → index/join — không đoán mò."
|
|
6
|
+
tools:
|
|
7
|
+
- "filesystem"
|
|
8
|
+
- "terminal"
|
|
9
|
+
knowledge:
|
|
10
|
+
owns:
|
|
11
|
+
- "database-performance"
|
|
12
|
+
- "query-optimization"
|
|
13
|
+
references:
|
|
14
|
+
- "architecture"
|
|
15
|
+
- "anti-patterns"
|
|
16
|
+
eval:
|
|
17
|
+
scorecard: "evals/scorecard.yaml"
|
|
18
|
+
decision_boundary:
|
|
19
|
+
owns:
|
|
20
|
+
- "qk-db-optimizer"
|
|
21
|
+
does_not_own: []
|
|
22
|
+
conflicts_with: []
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
name: qk-db-optimizer-eval
|
|
2
|
+
description: Đánh giá chất lượng tối ưu hóa Database
|
|
3
|
+
version: 8.3.1
|
|
4
|
+
threshold: 85 # Yêu cầu dựa trên bằng chứng, không đoán mò
|
|
5
|
+
|
|
6
|
+
metrics:
|
|
7
|
+
- id: evidence_based_analysis
|
|
8
|
+
name: Phân tích dựa trên bằng chứng (EXPLAIN)
|
|
9
|
+
description: Agent có chạy EXPLAIN/Analyze trước khi thêm Index/Sửa query không?
|
|
10
|
+
weight: 40
|
|
11
|
+
criteria:
|
|
12
|
+
- Bắt buộc phải có thông tin Slow query log hoặc chạy EXPLAIN trước khi hành động (20đ)
|
|
13
|
+
- Phân tích đúng nguyên nhân từ Plan (vd: Seq Scan, Nested Loop, N+1) (20đ)
|
|
14
|
+
|
|
15
|
+
- id: optimal_solution
|
|
16
|
+
name: Đưa ra giải pháp tối ưu
|
|
17
|
+
description: Giải pháp đưa ra có giải quyết triệt để và an toàn không?
|
|
18
|
+
weight: 35
|
|
19
|
+
criteria:
|
|
20
|
+
- Không tạo các index dư thừa (overlapping) (15đ)
|
|
21
|
+
- Xử lý triệt để bài toán N+1 bằng JOIN hoặc DataLoader theo đúng chuẩn dự án (20đ)
|
|
22
|
+
|
|
23
|
+
- id: verification
|
|
24
|
+
name: Kiểm chứng cải thiện (Verification)
|
|
25
|
+
description: Agent có cố gắng đo lường lại sau khi sửa không?
|
|
26
|
+
weight: 25
|
|
27
|
+
criteria:
|
|
28
|
+
- Đối chiếu/ước lượng mức độ cải thiện sau khi áp dụng giải pháp (25đ)
|
|
@@ -1,112 +1,235 @@
|
|
|
1
|
-
---
|
|
2
|
-
# ── Identity ───────────────────────────────────────────────
|
|
3
|
-
name: qk-design-system-engineering
|
|
4
|
-
version: 8.1
|
|
5
|
-
status: experimental
|
|
6
|
-
description: "Quản trị hệ thống thiết kế (Định nghĩa quy tắc hệ thống, tokens, các biến thể component)."
|
|
7
|
-
platforms: [antigravity, claude-code, cursor, windsurf, kilo-code]
|
|
8
|
-
|
|
9
|
-
# ── V8: Classification ─────────────────────────────────────
|
|
10
|
-
type: capability
|
|
11
|
-
|
|
12
|
-
intent:
|
|
13
|
-
- design-system
|
|
14
|
-
- tokens
|
|
15
|
-
- component-library
|
|
16
|
-
- accessibility
|
|
17
|
-
|
|
18
|
-
complexity:
|
|
19
|
-
level: medium
|
|
20
|
-
criteria:
|
|
21
|
-
files_affected: "1-5"
|
|
22
|
-
has_behavior_change: true
|
|
23
|
-
has_external_dependency: false
|
|
24
|
-
has_breaking_change: false
|
|
25
|
-
|
|
26
|
-
triggers:
|
|
27
|
-
- "định nghĩa design system"
|
|
28
|
-
- "cấu trúc token"
|
|
29
|
-
- "quy chuẩn ui"
|
|
30
|
-
- "variants"
|
|
31
|
-
|
|
32
|
-
# ── V8: References ─────────────────────────────────────────
|
|
33
|
-
workflow: feature-delivery
|
|
34
|
-
|
|
35
|
-
rules:
|
|
36
|
-
- global
|
|
37
|
-
- coding
|
|
38
|
-
|
|
39
|
-
tools:
|
|
40
|
-
- filesystem
|
|
41
|
-
|
|
42
|
-
related_skills:
|
|
43
|
-
- qk-frontend-architecture
|
|
44
|
-
|
|
45
|
-
knowledge_scope:
|
|
46
|
-
domain:
|
|
47
|
-
- design-system
|
|
48
|
-
- tokens
|
|
49
|
-
concepts:
|
|
50
|
-
- visual-consistency
|
|
51
|
-
- components-rules
|
|
52
|
-
references:
|
|
53
|
-
- architecture
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
-
|
|
59
|
-
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
-
|
|
69
|
-
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
-
|
|
111
|
-
-
|
|
112
|
-
-
|
|
1
|
+
---
|
|
2
|
+
# ── Identity ───────────────────────────────────────────────
|
|
3
|
+
name: qk-design-system-engineering
|
|
4
|
+
version: 8.3.1
|
|
5
|
+
status: experimental
|
|
6
|
+
description: "Quản trị hệ thống thiết kế (Định nghĩa quy tắc hệ thống, tokens, các biến thể component)."
|
|
7
|
+
platforms: [antigravity, claude-code, cursor, windsurf, kilo-code]
|
|
8
|
+
|
|
9
|
+
# ── V8: Classification ─────────────────────────────────────
|
|
10
|
+
type: capability
|
|
11
|
+
|
|
12
|
+
intent:
|
|
13
|
+
- design-system
|
|
14
|
+
- tokens
|
|
15
|
+
- component-library
|
|
16
|
+
- accessibility
|
|
17
|
+
|
|
18
|
+
complexity:
|
|
19
|
+
level: medium
|
|
20
|
+
criteria:
|
|
21
|
+
files_affected: "1-5"
|
|
22
|
+
has_behavior_change: true
|
|
23
|
+
has_external_dependency: false
|
|
24
|
+
has_breaking_change: false
|
|
25
|
+
|
|
26
|
+
triggers:
|
|
27
|
+
- "định nghĩa design system"
|
|
28
|
+
- "cấu trúc token"
|
|
29
|
+
- "quy chuẩn ui"
|
|
30
|
+
- "variants"
|
|
31
|
+
|
|
32
|
+
# ── V8: References ─────────────────────────────────────────
|
|
33
|
+
workflow: feature-delivery
|
|
34
|
+
|
|
35
|
+
rules:
|
|
36
|
+
- global
|
|
37
|
+
- coding
|
|
38
|
+
|
|
39
|
+
tools:
|
|
40
|
+
- filesystem
|
|
41
|
+
|
|
42
|
+
related_skills:
|
|
43
|
+
- qk-frontend-architecture
|
|
44
|
+
|
|
45
|
+
knowledge_scope:
|
|
46
|
+
domain:
|
|
47
|
+
- design-system
|
|
48
|
+
- tokens
|
|
49
|
+
concepts:
|
|
50
|
+
- visual-consistency
|
|
51
|
+
- components-rules
|
|
52
|
+
references:
|
|
53
|
+
- architecture
|
|
54
|
+
- anti-patterns
|
|
55
|
+
|
|
56
|
+
decision_boundary:
|
|
57
|
+
owns:
|
|
58
|
+
- tokens
|
|
59
|
+
- components rules
|
|
60
|
+
- design governance
|
|
61
|
+
does_not_own:
|
|
62
|
+
- page implementation
|
|
63
|
+
- business logic
|
|
64
|
+
conflicts_with:
|
|
65
|
+
- qk-ui-system-builder
|
|
66
|
+
|
|
67
|
+
knowledge_dependencies:
|
|
68
|
+
- design-intelligence
|
|
69
|
+
- accessibility-guidelines
|
|
70
|
+
- component-patterns
|
|
71
|
+
|
|
72
|
+
# ── V8: Verification ───────────────────────────────────────
|
|
73
|
+
verification:
|
|
74
|
+
required: true
|
|
75
|
+
strategy: feature
|
|
76
|
+
|
|
77
|
+
selection:
|
|
78
|
+
priority: medium
|
|
79
|
+
confidence_threshold: 0.80
|
|
80
|
+
|
|
81
|
+
examples: []
|
|
82
|
+
learnings: []
|
|
83
|
+
|
|
84
|
+
# ── V7 Runtime ─────────────────────────────────────────────
|
|
85
|
+
execution_mode: deterministic
|
|
86
|
+
cost: medium
|
|
87
|
+
latency: medium
|
|
88
|
+
risk: low
|
|
89
|
+
side_effects: read_only
|
|
90
|
+
produces: [report, tokens_definition]
|
|
91
|
+
consumes: [user-description]
|
|
92
|
+
|
|
93
|
+
token_budget:
|
|
94
|
+
max_files_read: 5
|
|
95
|
+
max_lines_per_read: 150
|
|
96
|
+
max_shell_commands: 0
|
|
97
|
+
stop_early: true
|
|
98
|
+
|
|
99
|
+
exit_codes: [SUCCESS, BLOCKED, FAILED, PARTIAL]
|
|
100
|
+
---
|
|
101
|
+
|
|
102
|
+
# qk-design-system-engineering — Design System Governance
|
|
103
|
+
|
|
104
|
+
> **Language rule:** Code, identifiers, file names → English. Explanations, summaries → Vietnamese.
|
|
105
|
+
|
|
106
|
+
## Preconditions
|
|
107
|
+
- [ ] Brand guidelines hoặc UX heuristics cơ bản đã có.
|
|
108
|
+
|
|
109
|
+
## Scope
|
|
110
|
+
- Định nghĩa các quy tắc hệ thống cho tokens, khoảng cách (spacing), màu sắc, phông chữ (typography).
|
|
111
|
+
- Xác định quy chuẩn xây dựng component (composition, variants).
|
|
112
|
+
- Thiết lập quy tắc A11y (Accessibility) ở cấp độ token.
|
|
113
|
+
- **Ngăn chặn triệt để UI Slop từ cấp độ Token (Không cung cấp màu tương phản quá thấp, kích thước quá bé).**
|
|
114
|
+
- KHÔNG thay thế việc viết UI code (`qk-ui-system-builder`). Skill này là "governance", không phải "implementation".
|
|
115
|
+
|
|
116
|
+
## Non-Goals
|
|
117
|
+
- ❌ Provide implementation outside of Design System Governance scope
|
|
118
|
+
- ❌ Override explicit user directives without explanation
|
|
119
|
+
- ❌ Guess ambiguous requirements without asking
|
|
120
|
+
|
|
121
|
+
## Priority Order
|
|
122
|
+
|
|
123
|
+
| Priority | Task | Skip Threshold |
|
|
124
|
+
|----------|------|----------------|
|
|
125
|
+
| P1 | Core Design System Governance analysis and decision making | Never |
|
|
126
|
+
| P2 | Validation of existing patterns | Budget < 30% |
|
|
127
|
+
| P3 | Detailed documentation generation | Budget < 50% |
|
|
128
|
+
| P4 | Edge case exploration | Budget < 70% |
|
|
129
|
+
|
|
130
|
+
## Workflow
|
|
131
|
+
|
|
132
|
+
### Phase 1 — Context Loading
|
|
133
|
+
**Steps:**
|
|
134
|
+
1. Read existing configuration and requirements related to Design System Governance.
|
|
135
|
+
2. Check for missing preconditions.
|
|
136
|
+
|
|
137
|
+
**Decision:**
|
|
138
|
+
```
|
|
139
|
+
IF context is clear
|
|
140
|
+
→ Confidence: HIGH → go to Phase 2
|
|
141
|
+
ELSE
|
|
142
|
+
→ EXIT: BLOCKED — ask user
|
|
143
|
+
```
|
|
144
|
+
|
|
145
|
+
### Phase 2 — Analysis & Strategy
|
|
146
|
+
**Steps:**
|
|
147
|
+
1. Analyze the current state against Design System Governance best practices.
|
|
148
|
+
2. Formulate strategy or audit report based on findings.
|
|
149
|
+
|
|
150
|
+
**Decision:**
|
|
151
|
+
```
|
|
152
|
+
IF strategy/audit is complete
|
|
153
|
+
→ Confidence: HIGH → go to Phase 3
|
|
154
|
+
ELSE IF minor gaps exist
|
|
155
|
+
→ Confidence: MEDIUM → proceed with assumptions noted
|
|
156
|
+
```
|
|
157
|
+
|
|
158
|
+
### Phase 3 — Finalization
|
|
159
|
+
**Steps:**
|
|
160
|
+
1. Generate final report or configuration.
|
|
161
|
+
2. Prepare handoff data for subsequent skills.
|
|
162
|
+
|
|
163
|
+
## Confidence Model
|
|
164
|
+
|
|
165
|
+
| Level | Condition | Action |
|
|
166
|
+
|-------|-----------|--------|
|
|
167
|
+
| HIGH | All preconditions met, context fully understood | Proceed directly |
|
|
168
|
+
| MEDIUM | Some context missing but safe defaults exist | Proceed and note assumptions |
|
|
169
|
+
| LOW | Core requirements missing | EXIT: BLOCKED |
|
|
170
|
+
|
|
171
|
+
## Severity (for findings)
|
|
172
|
+
|
|
173
|
+
| Level | Definition |
|
|
174
|
+
|-------|-----------|
|
|
175
|
+
| CRITICAL | Severe violation of Design System Governance principles |
|
|
176
|
+
| HIGH | Significant risk or technical debt |
|
|
177
|
+
| MEDIUM | Suboptimal pattern but functional |
|
|
178
|
+
| LOW | Minor style or documentation issue |
|
|
179
|
+
|
|
180
|
+
## Evidence Format
|
|
181
|
+
|
|
182
|
+
```
|
|
183
|
+
[SEVERITY] Context/File
|
|
184
|
+
Issue: [what was found]
|
|
185
|
+
Confidence: HIGH
|
|
186
|
+
Recommendation: [actionable advice]
|
|
187
|
+
```
|
|
188
|
+
|
|
189
|
+
## Retry Policy
|
|
190
|
+
```
|
|
191
|
+
Task fails due to missing context
|
|
192
|
+
└─ Ask user for clarification
|
|
193
|
+
├─ Provided → Retry Phase 1
|
|
194
|
+
└─ Not provided → EXIT: BLOCKED
|
|
195
|
+
```
|
|
196
|
+
|
|
197
|
+
## Escalation Rules
|
|
198
|
+
|
|
199
|
+
```
|
|
200
|
+
BLOCKED: Missing critical context for Design System Governance
|
|
201
|
+
Missing:
|
|
202
|
+
- [Specific requirement]
|
|
203
|
+
Questions:
|
|
204
|
+
1. Bạn có thể cung cấp thêm thông tin về yêu cầu này không?
|
|
205
|
+
2. Mục tiêu chính của bạn là gì?
|
|
206
|
+
Recommended Assumptions: none
|
|
207
|
+
```
|
|
208
|
+
|
|
209
|
+
## Handoff Contract
|
|
210
|
+
|
|
211
|
+
### Consumes
|
|
212
|
+
```json
|
|
213
|
+
{
|
|
214
|
+
"from": "user or qk-orchestrator",
|
|
215
|
+
"required_fields": ["context"],
|
|
216
|
+
"optional_fields": ["existing_config"]
|
|
217
|
+
}
|
|
218
|
+
```
|
|
219
|
+
|
|
220
|
+
### Produces
|
|
221
|
+
```json
|
|
222
|
+
{
|
|
223
|
+
"to": "user or downstream skill",
|
|
224
|
+
"output_fields": ["strategy_report", "exit_code"]
|
|
225
|
+
}
|
|
226
|
+
```
|
|
227
|
+
|
|
228
|
+
## Exit Codes
|
|
229
|
+
|
|
230
|
+
| Code | Meaning | When |
|
|
231
|
+
|------|---------|------|
|
|
232
|
+
| SUCCESS | Design System Governance task completed successfully | Strategy/audit generated |
|
|
233
|
+
| PARTIAL | Task completed with assumptions | Medium confidence |
|
|
234
|
+
| BLOCKED | Missing context | Cannot proceed |
|
|
235
|
+
| FAILED | Critical conflict or error | Unresolvable constraint |
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
# Auto-generated from SKILL.md frontmatter
|
|
2
|
+
schema_version: 1
|
|
3
|
+
id: "qk-design-system-engineering"
|
|
4
|
+
version: "8.3.1"
|
|
5
|
+
description: "Quản trị hệ thống thiết kế (Định nghĩa quy tắc hệ thống, tokens, các biến thể component)."
|
|
6
|
+
tools:
|
|
7
|
+
- "filesystem"
|
|
8
|
+
knowledge:
|
|
9
|
+
owns:
|
|
10
|
+
- "qk-design-system-engineering"
|
|
11
|
+
references:
|
|
12
|
+
- "architecture"
|
|
13
|
+
- "anti-patterns"
|
|
14
|
+
eval:
|
|
15
|
+
scorecard: "evals/scorecard.yaml"
|
|
16
|
+
decision_boundary:
|
|
17
|
+
owns:
|
|
18
|
+
- "tokens"
|
|
19
|
+
- "components rules"
|
|
20
|
+
- "design governance"
|
|
21
|
+
does_not_own:
|
|
22
|
+
- "page implementation"
|
|
23
|
+
- "business logic"
|
|
24
|
+
conflicts_with:
|
|
25
|
+
- "qk-ui-system-builder"
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
name: qk-design-system-engineering-eval
|
|
2
|
+
description: Đánh giá chất lượng quản trị hệ thống thiết kế (Design System)
|
|
3
|
+
version: 8.3.1
|
|
4
|
+
threshold: 85 # Đảm bảo sự nhất quán và ngăn chặn UI Slop từ gốc
|
|
5
|
+
|
|
6
|
+
metrics:
|
|
7
|
+
- id: token_and_rules_definition
|
|
8
|
+
name: Định nghĩa Token và Quy tắc
|
|
9
|
+
description: Agent có thiết lập hệ thống token rõ ràng và nhất quán không?
|
|
10
|
+
weight: 40
|
|
11
|
+
criteria:
|
|
12
|
+
- Định nghĩa đầy đủ các quy tắc cho spacing, colors, typography (20đ)
|
|
13
|
+
- Ngăn chặn triệt để UI Slop bằng cách không cung cấp các token sai chuẩn (vd: độ tương phản quá thấp, font quá bé) (20đ)
|
|
14
|
+
|
|
15
|
+
- id: a11y_compliance
|
|
16
|
+
name: Tuân thủ Accessibility (A11y)
|
|
17
|
+
description: Các quy chuẩn có tính đến khả năng truy cập không?
|
|
18
|
+
weight: 30
|
|
19
|
+
criteria:
|
|
20
|
+
- Thiết lập quy tắc A11y ngay từ cấp độ Token (30đ)
|
|
21
|
+
|
|
22
|
+
- id: boundary_respect
|
|
23
|
+
name: Tôn trọng ranh giới (Decision Boundary)
|
|
24
|
+
description: Agent có giữ đúng vai trò Governance mà không lấn sân sang Implementation không?
|
|
25
|
+
weight: 30
|
|
26
|
+
criteria:
|
|
27
|
+
- Chỉ tập trung định nghĩa (Governance), KHÔNG thay thế việc viết UI code trực tiếp (nhường lại cho qk-ui-system-builder) (30đ)
|