ai-developer-skill-os 9.3.1 → 10.2.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 +73 -40
- package/.agents/DEV_PROFILE.md +36 -2
- package/.agents/LICENSE +21 -21
- package/.agents/docs/ARCHITECTURE.md +56 -120
- package/.agents/docs/GOVERNANCE.md +3 -3
- package/.agents/docs/SPEC.md +137 -60
- package/.agents/docs/VERSIONING.md +25 -57
- package/.agents/docs/adr/0005-v10-platform-consolidation.md +50 -0
- package/.agents/docs/schemas/learning.schema.yml +22 -57
- package/.agents/docs/schemas/skill.schema.yml +116 -161
- package/.agents/docs/schemas/workflow.schema.yml +51 -26
- package/.agents/docs/skill-classification.md +1 -1
- package/.agents/registry/graph.json +193 -346
- package/.agents/registry/index.yaml +90 -233
- package/.agents/rules/coding.md +30 -12
- package/.agents/rules/command-safety.md +20 -9
- package/.agents/rules/global.md +234 -28
- package/.agents/rules/prompt-compiler.md +170 -0
- package/.agents/rules/safety.md +1 -1
- package/.agents/rules/security.md +1 -1
- package/.agents/rules/skill-quality.md +18 -3
- package/.agents/skills/_template/SKILL.md +238 -88
- package/.agents/skills/qk-api-data-discovery/SKILL.md +456 -0
- package/.agents/skills/qk-api-data-discovery/references/bronze-record-format.md +47 -0
- package/.agents/skills/qk-api-data-discovery/references/data-contract-yaml.md +72 -0
- package/.agents/skills/qk-api-data-discovery/references/discovery-report-template.md +110 -0
- package/.agents/skills/qk-backend-data/SKILL.md +339 -0
- package/.agents/skills/qk-bug-resolution/SKILL.md +328 -248
- package/.agents/skills/qk-bug-resolution/evals/scorecard.yaml +1 -1
- package/.agents/skills/qk-code-cleaner/SKILL.md +399 -0
- package/.agents/skills/qk-code-review/SKILL.md +320 -247
- package/.agents/skills/qk-code-review/evals/scorecard.yaml +1 -1
- package/.agents/skills/qk-code-review/references/ai/{v8-schema-validation.md → schema-validation.md} +2 -2
- package/.agents/skills/qk-code-review/references/cross-cutting/async-concurrency-patterns.md +515 -515
- package/.agents/skills/qk-code-review/references/cross-cutting/error-handling-principles.md +492 -492
- package/.agents/skills/qk-code-review/references/cross-cutting/n-plus-one-queries.md +309 -309
- package/.agents/skills/qk-code-review/references/cross-cutting/sql-injection-prevention.md +307 -307
- package/.agents/skills/qk-code-review/references/cross-cutting/xss-prevention.md +263 -263
- package/.agents/skills/qk-code-review/references/languages/angular.md +768 -768
- package/.agents/skills/qk-code-review/references/languages/c.md +890 -890
- package/.agents/skills/qk-code-review/references/languages/cpp.md +893 -893
- package/.agents/skills/qk-code-review/references/languages/css-less-sass.md +661 -661
- package/.agents/skills/qk-code-review/references/languages/django.md +985 -985
- package/.agents/skills/qk-code-review/references/languages/fastapi.md +580 -580
- package/.agents/skills/qk-code-review/references/languages/go.md +993 -993
- package/.agents/skills/qk-code-review/references/languages/java.md +409 -409
- package/.agents/skills/qk-code-review/references/languages/java8.md +586 -586
- package/.agents/skills/qk-code-review/references/languages/kotlin.md +1018 -1018
- package/.agents/skills/qk-code-review/references/languages/nestjs.md +593 -593
- package/.agents/skills/qk-code-review/references/languages/php.md +684 -684
- package/.agents/skills/qk-code-review/references/languages/python.md +1073 -1073
- package/.agents/skills/qk-code-review/references/languages/qt.md +757 -757
- package/.agents/skills/qk-code-review/references/languages/react.md +871 -871
- package/.agents/skills/qk-code-review/references/languages/ruby.md +964 -964
- package/.agents/skills/qk-code-review/references/languages/rust.md +846 -846
- package/.agents/skills/qk-code-review/references/languages/svelte.md +1064 -1064
- package/.agents/skills/qk-code-review/references/languages/swift.md +936 -936
- package/.agents/skills/qk-code-review/references/languages/typescript.md +1016 -1016
- package/.agents/skills/qk-code-review/references/languages/vue.md +924 -924
- package/.agents/skills/qk-code-review/references/languages/zig.md +440 -440
- package/.agents/skills/qk-devops-release/SKILL.md +294 -0
- package/.agents/skills/qk-feature-delivery/SKILL.md +331 -247
- package/.agents/skills/qk-feature-delivery/evals/scorecard.yaml +1 -1
- package/.agents/skills/qk-orchestrator/SKILL.md +286 -152
- package/.agents/skills/qk-orchestrator/evals/scorecard.yaml +1 -1
- package/.agents/skills/qk-orchestrator/references/routing-table.md +1 -1
- package/.agents/skills/qk-product-spec/SKILL.md +262 -0
- package/.agents/skills/qk-prompt-compiler/SKILL.md +444 -0
- package/.agents/skills/qk-ui-engineer/SKILL.md +286 -0
- package/.agents/workflows/_schema.yml +146 -146
- package/.agents/workflows/bug-resolution.yml +155 -121
- package/.agents/workflows/code-review.yml +127 -93
- package/.agents/workflows/context-discovery.yml +128 -94
- package/.agents/workflows/documentation.yml +124 -90
- package/.agents/workflows/feature-delivery.yml +158 -124
- package/.agents/workflows/production-release.yml +207 -173
- package/.agents/workflows/prompt-compilation.yml +126 -0
- package/.agents/workflows/refactor.yml +136 -102
- package/.agents/workflows/security-audit.yml +149 -115
- package/.agents/workflows/shared/quality-gate.yml +3 -1
- package/.agents/workflows/skin-governance.yml +149 -115
- package/.agents/workflows/spec-driven-development.yml +116 -87
- package/CHANGELOG.md +77 -0
- package/README.md +125 -205
- package/bin/install.js +324 -329
- package/package.json +68 -74
- package/tooling/build-registry.js +226 -208
- package/tooling/run-aar.js +55 -126
- package/tooling/sync-versions.js +2 -2
- package/tooling/validate-graph.js +100 -87
- package/tooling/validate-skills.js +32 -14
- package/.agents/README.md +0 -90
- package/.agents/docs/CHI_TIET_SKILLS.md +0 -126
- package/.agents/docs/HUONG_DAN_SU_DUNG.md +0 -120
- package/.agents/docs/MIGRATION-CLEANUP-V8.1.3.md +0 -36
- package/.agents/docs/MIGRATION-STATUS.md +0 -35
- package/.agents/docs/MIGRATION-V8.md +0 -10
- package/.agents/docs/ROADMAP-V8.2.md +0 -78
- package/.agents/docs/V8-CERTIFICATION.md +0 -27
- package/.agents/docs/decisions/ADR-001-v8-migration.md +0 -58
- package/.agents/docs/decisions/ADR-002-workflow-separation.md +0 -50
- package/.agents/docs/decisions/ADR-003-registry-generated.md +0 -54
- package/.agents/docs/decisions/ADR-008-skill-boundary-review.md +0 -27
- package/.agents/registry/capability-graph.yml +0 -390
- package/.agents/registry/skills-index.yml +0 -305
- package/.agents/skills/_template/capability.yaml +0 -34
- package/.agents/skills/_template/evals/scorecard.yaml +0 -19
- package/.agents/skills/qk-access-policy/SKILL.md +0 -206
- package/.agents/skills/qk-access-policy/capability.yaml +0 -23
- package/.agents/skills/qk-access-policy/evals/scorecard.yaml +0 -36
- package/.agents/skills/qk-agent-observability/SKILL.md +0 -108
- package/.agents/skills/qk-agent-observability/capability.yaml +0 -29
- package/.agents/skills/qk-agent-observability/evals/scorecard.yaml +0 -29
- package/.agents/skills/qk-agent-observability/references/scorecard.yaml +0 -80
- package/.agents/skills/qk-ai-builder/SKILL.md +0 -254
- package/.agents/skills/qk-ai-builder/capability.yaml +0 -23
- package/.agents/skills/qk-ai-builder/evals/scorecard.yaml +0 -30
- package/.agents/skills/qk-api-consumer/SKILL.md +0 -256
- package/.agents/skills/qk-api-consumer/capability.yaml +0 -21
- package/.agents/skills/qk-api-consumer/evals/scorecard.yaml +0 -29
- package/.agents/skills/qk-api-lifecycle/SKILL.md +0 -251
- package/.agents/skills/qk-api-lifecycle/capability.yaml +0 -23
- package/.agents/skills/qk-api-lifecycle/evals/scorecard.yaml +0 -29
- package/.agents/skills/qk-bug-resolution/capability.yaml +0 -25
- package/.agents/skills/qk-code-review/capability.yaml +0 -23
- package/.agents/skills/qk-context-loader/SKILL.md +0 -198
- package/.agents/skills/qk-context-loader/capability.yaml +0 -23
- package/.agents/skills/qk-context-loader/evals/scorecard.yaml +0 -28
- package/.agents/skills/qk-data-engineer/SKILL.md +0 -253
- package/.agents/skills/qk-data-lifecycle/SKILL.md +0 -197
- package/.agents/skills/qk-data-lifecycle/capability.yaml +0 -23
- package/.agents/skills/qk-data-lifecycle/evals/scorecard.yaml +0 -29
- package/.agents/skills/qk-db-optimizer/SKILL.md +0 -210
- package/.agents/skills/qk-db-optimizer/capability.yaml +0 -22
- package/.agents/skills/qk-db-optimizer/evals/scorecard.yaml +0 -28
- package/.agents/skills/qk-design-system-engineering/SKILL.md +0 -193
- package/.agents/skills/qk-design-system-engineering/capability.yaml +0 -25
- package/.agents/skills/qk-design-system-engineering/evals/scorecard.yaml +0 -27
- package/.agents/skills/qk-devops-platform/SKILL.md +0 -198
- package/.agents/skills/qk-devops-platform/capability.yaml +0 -29
- package/.agents/skills/qk-devops-platform/evals/scorecard.yaml +0 -28
- package/.agents/skills/qk-docs/SKILL.md +0 -193
- package/.agents/skills/qk-docs/capability.yaml +0 -23
- package/.agents/skills/qk-docs/evals/scorecard.yaml +0 -27
- package/.agents/skills/qk-engineering-standard/SKILL.md +0 -89
- package/.agents/skills/qk-engineering-standard/capability.yaml +0 -23
- package/.agents/skills/qk-engineering-standard/evals/scorecard.yaml +0 -28
- package/.agents/skills/qk-engineering-standard/references/anti-patterns.md +0 -121
- package/.agents/skills/qk-engineering-standard/rules/backend.md +0 -122
- package/.agents/skills/qk-engineering-standard/rules/database.md +0 -3
- package/.agents/skills/qk-engineering-standard/rules/frontend.md +0 -152
- package/.agents/skills/qk-engineering-standard/rules/security.md +0 -3
- package/.agents/skills/qk-engineering-standard/rules/testing.md +0 -3
- package/.agents/skills/qk-fe-api-integration/SKILL.md +0 -704
- package/.agents/skills/qk-fe-api-integration/capability.yaml +0 -21
- package/.agents/skills/qk-fe-api-integration/evals/scorecard.yaml +0 -29
- package/.agents/skills/qk-feature-delivery/capability.yaml +0 -24
- package/.agents/skills/qk-frontend-architecture/SKILL.md +0 -127
- package/.agents/skills/qk-frontend-architecture/capability.yaml +0 -28
- package/.agents/skills/qk-frontend-architecture/evals/scorecard.yaml +0 -28
- package/.agents/skills/qk-help/SKILL.md +0 -107
- package/.agents/skills/qk-help/capability.yaml +0 -20
- package/.agents/skills/qk-help/evals/scorecard.yaml +0 -13
- package/.agents/skills/qk-orchestrator/capability.yaml +0 -22
- package/.agents/skills/qk-product-specification/SKILL.md +0 -187
- package/.agents/skills/qk-product-specification/capability.yaml +0 -27
- package/.agents/skills/qk-product-specification/evals/scorecard.yaml +0 -27
- package/.agents/skills/qk-production-release/SKILL.md +0 -188
- package/.agents/skills/qk-production-release/capability.yaml +0 -27
- package/.agents/skills/qk-production-release/evals/scorecard.yaml +0 -28
- package/.agents/skills/qk-project-audit/SKILL.md +0 -174
- package/.agents/skills/qk-project-bootstrap/SKILL.md +0 -372
- package/.agents/skills/qk-project-bootstrap/capability.yaml +0 -23
- package/.agents/skills/qk-project-bootstrap/evals/scorecard.yaml +0 -28
- package/.agents/skills/qk-project-health/SKILL.md +0 -202
- package/.agents/skills/qk-project-health/capability.yaml +0 -23
- package/.agents/skills/qk-project-health/evals/scorecard.yaml +0 -27
- package/.agents/skills/qk-project-memory/SKILL.md +0 -303
- package/.agents/skills/qk-project-memory/capability.yaml +0 -23
- package/.agents/skills/qk-project-memory/evals/scorecard.yaml +0 -27
- package/.agents/skills/qk-refactor/SKILL.md +0 -243
- package/.agents/skills/qk-refactor/capability.yaml +0 -26
- package/.agents/skills/qk-refactor/evals/scorecard.yaml +0 -27
- package/.agents/skills/qk-security-audit/SKILL.md +0 -280
- package/.agents/skills/qk-security-audit/capability.yaml +0 -29
- package/.agents/skills/qk-security-audit/evals/scorecard.yaml +0 -27
- package/.agents/skills/qk-system-evolution/SKILL.md +0 -625
- package/.agents/skills/qk-system-evolution/capability.yaml +0 -24
- package/.agents/skills/qk-system-evolution/evals/scorecard.yaml +0 -26
- package/.agents/skills/qk-test-engineering/SKILL.md +0 -215
- package/.agents/skills/qk-test-engineering/capability.yaml +0 -28
- package/.agents/skills/qk-test-engineering/evals/scorecard.yaml +0 -26
- package/.agents/skills/qk-ui-audit/SKILL.md +0 -175
- package/.agents/skills/qk-ui-audit/capability.yaml +0 -23
- package/.agents/skills/qk-ui-audit/evals/scorecard.yaml +0 -26
- package/.agents/skills/qk-ui-audit/references/anti-slop-checklist.md +0 -136
- package/.agents/skills/qk-ui-builder/SKILL.md +0 -521
- package/.agents/skills/qk-ui-builder/capability.yaml +0 -29
- package/.agents/skills/qk-ui-builder/evals/scorecard.yaml +0 -26
- package/.agents/skills/qk-ui-builder/references/anti-patterns.md +0 -295
- package/.agents/skills/qk-ui-builder/references/color.md +0 -115
- package/.agents/skills/qk-ui-builder/references/component-cookbook.md +0 -458
- package/.agents/skills/qk-ui-builder/references/copy.md +0 -250
- package/.agents/skills/qk-ui-builder/references/interaction-and-states.md +0 -115
- package/.agents/skills/qk-ui-builder/references/layout-and-space.md +0 -111
- package/.agents/skills/qk-ui-builder/references/macrostructures/01-bento-grid.md +0 -48
- package/.agents/skills/qk-ui-builder/references/macrostructures/02-long-document.md +0 -50
- package/.agents/skills/qk-ui-builder/references/macrostructures/03-marquee-hero.md +0 -51
- package/.agents/skills/qk-ui-builder/references/macrostructures/04-stat-led.md +0 -49
- package/.agents/skills/qk-ui-builder/references/macrostructures/05-workbench.md +0 -44
- package/.agents/skills/qk-ui-builder/references/macrostructures/06-conversational-faq.md +0 -50
- package/.agents/skills/qk-ui-builder/references/macrostructures/07-manifesto.md +0 -51
- package/.agents/skills/qk-ui-builder/references/macrostructures/08-photographic.md +0 -50
- package/.agents/skills/qk-ui-builder/references/macrostructures/09-quote-led.md +0 -50
- package/.agents/skills/qk-ui-builder/references/macrostructures/11-catalogue.md +0 -49
- package/.agents/skills/qk-ui-builder/references/macrostructures/12-letter.md +0 -49
- package/.agents/skills/qk-ui-builder/references/macrostructures/13-index-first.md +0 -49
- package/.agents/skills/qk-ui-builder/references/macrostructures/14-narrative-workflow.md +0 -48
- package/.agents/skills/qk-ui-builder/references/macrostructures/15-split-studio.md +0 -48
- package/.agents/skills/qk-ui-builder/references/macrostructures/16-feature-stack.md +0 -51
- package/.agents/skills/qk-ui-builder/references/macrostructures/17-type-specimen.md +0 -48
- package/.agents/skills/qk-ui-builder/references/macrostructures/18-portfolio-grid.md +0 -48
- package/.agents/skills/qk-ui-builder/references/macrostructures/19-map-diagram.md +0 -50
- package/.agents/skills/qk-ui-builder/references/macrostructures/20-ecosystem-index.md +0 -48
- package/.agents/skills/qk-ui-builder/references/macrostructures/21-component-playground.md +0 -45
- package/.agents/skills/qk-ui-builder/references/macrostructures.md +0 -38
- package/.agents/skills/qk-ui-builder/references/motion.md +0 -95
- package/.agents/skills/qk-ui-builder/references/responsive.md +0 -115
- package/.agents/skills/qk-ui-builder/references/slop-test.md +0 -135
- package/.agents/skills/qk-ui-builder/references/structure.md +0 -280
- package/.agents/skills/qk-ui-builder/references/themes/atmospheric.md +0 -53
- package/.agents/skills/qk-ui-builder/references/themes/carnival.md +0 -52
- package/.agents/skills/qk-ui-builder/references/themes/cobalt.md +0 -52
- package/.agents/skills/qk-ui-builder/references/themes/editorial.md +0 -52
- package/.agents/skills/qk-ui-builder/references/themes/garden.md +0 -52
- package/.agents/skills/qk-ui-builder/references/themes/hum.md +0 -52
- package/.agents/skills/qk-ui-builder/references/themes/lumen.md +0 -52
- package/.agents/skills/qk-ui-builder/references/themes/midnight.md +0 -52
- package/.agents/skills/qk-ui-builder/references/themes/modern-minimal.md +0 -52
- package/.agents/skills/qk-ui-builder/references/themes/playful.md +0 -52
- package/.agents/skills/qk-ui-builder/references/themes/specimen.md +0 -52
- package/.agents/skills/qk-ui-builder/references/themes/terminal.md +0 -52
- package/.agents/skills/qk-ui-builder/references/typography.md +0 -129
- package/.agents/skills/qk-ui-system-builder/SKILL.md +0 -183
- package/.agents/skills/qk-ui-system-builder/capability.yaml +0 -25
- package/.agents/skills/qk-ui-system-builder/evals/scorecard.yaml +0 -26
- package/.agents/skills/qk-upgrade/SKILL.md +0 -301
- package/.agents/skills/qk-upgrade/capability.yaml +0 -24
- package/.agents/skills/qk-upgrade/evals/scorecard.yaml +0 -26
- package/.agents/skills/qk-validation-gate/SKILL.md +0 -88
- package/.agents/skills/qk-validation-gate/capability.yaml +0 -23
- package/.agents/skills/qk-validation-gate/evals/scorecard.yaml +0 -26
- package/.agents/skills/qk-web-quality-gate/SKILL.md +0 -197
- package/.agents/skills/qk-web-quality-gate/capability.yaml +0 -24
- package/.agents/skills/qk-web-quality-gate/evals/scorecard.yaml +0 -26
- package/.agents/workflows/research.yml +0 -75
- package/.agents/workflows/skill-evolution.yml +0 -97
- package/tooling/fix-refactor.js +0 -8
|
@@ -0,0 +1,262 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: qk-product-spec
|
|
3
|
+
version: 10.2.0
|
|
4
|
+
status: stable
|
|
5
|
+
subtitle: "Viết Spec & PRD"
|
|
6
|
+
description: "Chuyển hóa ý tưởng sơ khai thành đặc tả kỹ thuật chuẩn mực: PRD, Acceptance Criteria (BDD Given/When/Then), Gap Analysis và Đánh giá tính khả thi. Dùng khi: viết spec, viết PRD, phân tích yêu cầu, acceptance criteria, user story, bdd, gherkin, gap analysis, feasibility, đánh giá rủi ro, clarify requirements — TUYỆT ĐỐI KHÔNG dùng để trực tiếp viết code tính năng (dùng qk-feature-delivery)."
|
|
7
|
+
platforms: [antigravity, claude, opencode]
|
|
8
|
+
runtime_version: 1
|
|
9
|
+
tools:
|
|
10
|
+
- filesystem
|
|
11
|
+
rules:
|
|
12
|
+
- global
|
|
13
|
+
- coding-standards
|
|
14
|
+
workflow: spec-driven-development
|
|
15
|
+
triggers:
|
|
16
|
+
- "viết spec"
|
|
17
|
+
- "viết prd"
|
|
18
|
+
- "đặc tả kỹ thuật"
|
|
19
|
+
- "acceptance criteria"
|
|
20
|
+
- "user story"
|
|
21
|
+
- "bdd"
|
|
22
|
+
- "gherkin"
|
|
23
|
+
- "gap analysis"
|
|
24
|
+
- "feasibility"
|
|
25
|
+
- "clarify requirements"
|
|
26
|
+
---
|
|
27
|
+
|
|
28
|
+
# qk-product-spec — Viết Spec & PRD (Product Spec & Feasibility Engine)
|
|
29
|
+
|
|
30
|
+
> **Language rule:** Code, identifiers, file names → English. Explanations, summaries → Vietnamese.
|
|
31
|
+
|
|
32
|
+
---
|
|
33
|
+
|
|
34
|
+
## Memory Workflow
|
|
35
|
+
|
|
36
|
+
### 0. Self-Init Protocol (Khởi Tạo Bộ Nhớ Local & Gitignore)
|
|
37
|
+
- 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:
|
|
38
|
+
- **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.
|
|
39
|
+
- **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.
|
|
40
|
+
|
|
41
|
+
---
|
|
42
|
+
|
|
43
|
+
### Pre-flight Retrieve (Trước khi thực thi)
|
|
44
|
+
- Trước các task có tính lặp lại, debug, refactor, kiến trúc hoặc rủi ro cao:
|
|
45
|
+
bắt buộc tra cứu:
|
|
46
|
+
- `.ai-local/knowledge/index.yaml` (Private Local Knowledge)
|
|
47
|
+
|
|
48
|
+
- Ưu tiên sử dụng các Knowledge đang có trạng thái `Active` thuộc:
|
|
49
|
+
- Architecture
|
|
50
|
+
- Hard Bug
|
|
51
|
+
- Convention
|
|
52
|
+
- Pattern
|
|
53
|
+
- Tech Debt Pattern
|
|
54
|
+
|
|
55
|
+
- Memory chỉ đóng vai trò **Navigator (bản đồ chỉ đường)**.
|
|
56
|
+
Không được xem Memory là Source of Truth.
|
|
57
|
+
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.
|
|
58
|
+
|
|
59
|
+
---
|
|
60
|
+
|
|
61
|
+
### Learning Flow (AI tự học có kiểm soát)
|
|
62
|
+
- 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:
|
|
63
|
+
- Hard Bug có khả năng tái diễn.
|
|
64
|
+
- Pattern làm việc lặp lại trong dự án.
|
|
65
|
+
- Convention hoặc quy tắc kiến trúc mới.
|
|
66
|
+
- Quyết định Architecture quan trọng.
|
|
67
|
+
- Tech Debt Pattern hoặc Code Smell có tính hệ thống.
|
|
68
|
+
|
|
69
|
+
- Candidate Memory chỉ là bản nháp quan sát, chưa phải tri thức chính thức.
|
|
70
|
+
- Candidate Memory có thể lưu tạm tại: `.ai-local/candidates/`
|
|
71
|
+
- AI không được tự động Promote Candidate Memory thành Project Knowledge.
|
|
72
|
+
|
|
73
|
+
---
|
|
74
|
+
|
|
75
|
+
### Post-flight Harvest (Đề xuất → Phê duyệt)
|
|
76
|
+
Sau khi hoàn thành task:
|
|
77
|
+
- AI đánh giá các Candidate Memory đã tạo.
|
|
78
|
+
- Nếu phát hiện tri thức có giá trị tái sử dụng:
|
|
79
|
+
- Đề xuất người dùng xem xét.
|
|
80
|
+
- Gửi yêu cầu phê duyệt thông qua:
|
|
81
|
+
- `/learn`
|
|
82
|
+
- `qk-project-memory`
|
|
83
|
+
- Chỉ sau khi được phê duyệt, Candidate Memory mới được chuyển thành Knowledge chính thức:
|
|
84
|
+
|
|
85
|
+
```
|
|
86
|
+
.ai-local/candidates/ ──(Approve)──> .ai-local/knowledge/index.yaml
|
|
87
|
+
```
|
|
88
|
+
|
|
89
|
+
- Project Knowledge phải được xem như tài sản kỹ thuật của dự án:
|
|
90
|
+
- Có thể review, cập nhật, loại bỏ và có lịch sử thay đổi.
|
|
91
|
+
|
|
92
|
+
---
|
|
93
|
+
|
|
94
|
+
### Ignore (Không đưa vào Memory)
|
|
95
|
+
Không lưu:
|
|
96
|
+
- Trace log của một session đơn lẻ.
|
|
97
|
+
- Temporary debugging data.
|
|
98
|
+
- Output của một lần chạy test/scan.
|
|
99
|
+
- Report health tạm thời của một đợt kiểm tra.
|
|
100
|
+
- Lỗi nhỏ chỉ xảy ra một lần.
|
|
101
|
+
- Thông tin không có khả năng tái sử dụng.
|
|
102
|
+
|
|
103
|
+
---
|
|
104
|
+
|
|
105
|
+
### Golden Rule
|
|
106
|
+
> **AI được phép học, nhưng không được tự quyết định tri thức chính thức.**
|
|
107
|
+
> **AI quan sát → Đề xuất → Con người phê duyệt → Dự án tiến hóa.**
|
|
108
|
+
|
|
109
|
+
---
|
|
110
|
+
|
|
111
|
+
## 1. Nguyên Tắc Cốt Lõi & Luật Chống Over-Engineering
|
|
112
|
+
|
|
113
|
+
> **Core Principle:** Right-size the specification. Do not write a 20-page enterprise PRD for a 10-line UI tweak. Scale the spec depth proportionally to the project risk and complexity.
|
|
114
|
+
> **Verification Principle:** PASS is a verified conclusion, never an assumption. Feasibility must be proven.
|
|
115
|
+
|
|
116
|
+
### 🛡️ Anti-Overengineering Rule (QUY MÔ HÓA TÀI LIỆU)
|
|
117
|
+
- **Tương xứng quy mô (Proportional Spec):**
|
|
118
|
+
- *Task nhỏ (Thêm nút, sửa filter):* Chỉ cần 1-2 kịch bản BDD và mô tả delta API. Tuyệt đối không vẽ ra tài liệu dài dòng.
|
|
119
|
+
- *Tính năng lớn (Module mới, luồng thanh toán):* Viết PRD hoàn chỉnh kèm Gap Analysis và User Journey.
|
|
120
|
+
- **Dựa trên thực tế codebase:** Không thiết kế spec dựa trên các công nghệ giả định. Mọi đề xuất về models, API contracts phải đối chiếu với codebase hiện có.
|
|
121
|
+
|
|
122
|
+
### 🔒 Laser Focus & Anti-Scope Creep (R-G-13)
|
|
123
|
+
- Chỉ tập trung vào đúng bài toán nghiệp vụ hiện tại.
|
|
124
|
+
- **CẤM** tự vẽ ra 10 tính năng tương lai "để dành" nếu MVP chưa cần (Tuân thủ nghiêm ngặt YAGNI).
|
|
125
|
+
|
|
126
|
+
### ⚖️ Verify Before Claim Rule (XÁC MINH TRƯỚC KHI BÁO CÁO - R-G-14.7)
|
|
127
|
+
- **Không giả định tính khả thi:** Nếu đề xuất dùng một thư viện ngoài hoặc service mới, phải kiểm tra khả năng tích hợp và giấy phép trước khi kết luận "Khả thi 100%".
|
|
128
|
+
- Nếu chưa đối chiếu được với API thực tế: ghi rõ `Status: NOT VERIFIED / Cần PoC`.
|
|
129
|
+
|
|
130
|
+
---
|
|
131
|
+
|
|
132
|
+
## 2. Ranh Giới & Phạm Vi Kỹ Thuật (Hard Boundaries)
|
|
133
|
+
|
|
134
|
+
### ✅ Việc skill này BẮT BUỘC làm:
|
|
135
|
+
- Làm rõ các quyết định còn mơ hồ thông qua phỏng vấn chủ động (gợi ý dùng slash command `/grill-me`).
|
|
136
|
+
- Soạn thảo Acceptance Criteria chuẩn Gherkin (`Given / When / Then`) bao phủ Happy Path và Edge Cases.
|
|
137
|
+
- Khảo sát khoảng cách kỹ thuật (Gap Analysis): Chỉ rõ phần nào tái sử dụng được, phần nào cần viết mới.
|
|
138
|
+
- Khởi tạo artifact `implementation_plan.md` với `RequestFeedback: true` cho Antigravity khi hoàn tất đặc tả cho tính năng lớn. Ngoại lệ: task nhỏ dưới 1 file thì xuất spec ngắn gọn trong chat mà không cần chặn modal.
|
|
139
|
+
|
|
140
|
+
### ❌ Việc skill này TUYỆT ĐỐI KHÔNG làm (Chuyển giao quyền):
|
|
141
|
+
- Trực tiếp viết code triển khai tính năng vào codebase → Chuyển sang `qk-feature-delivery` sau khi spec được duyệt.
|
|
142
|
+
|
|
143
|
+
---
|
|
144
|
+
|
|
145
|
+
## 3. Quy Trình Đặc Tả Tuần Tự (Sequential Procedure)
|
|
146
|
+
|
|
147
|
+
```
|
|
148
|
+
[Bước 1: Triage & Clarify] ── Xác định quy mô (Nhỏ/Vừa/Lớn), kích hoạt /grill-me nếu thiếu thông tin
|
|
149
|
+
│
|
|
150
|
+
▼
|
|
151
|
+
[Bước 2: Codebase Gap Scan] ── Đối chiếu models & APIs hiện có trong repo để đánh giá khả thi
|
|
152
|
+
│
|
|
153
|
+
▼
|
|
154
|
+
[Bước 3: BDD Spec Writing] ── Viết tiêu chí Given/When/Then rõ ràng không mơ hồ
|
|
155
|
+
│
|
|
156
|
+
▼
|
|
157
|
+
[Bước 4: Implementation Plan] ── Tạo implementation_plan.md, kích hoạt modal [Proceed] chờ duyệt
|
|
158
|
+
```
|
|
159
|
+
|
|
160
|
+
---
|
|
161
|
+
|
|
162
|
+
## 4. Thích Ứng Theo Role Kỹ Thuật (Role Adaptation)
|
|
163
|
+
|
|
164
|
+
| Role | Trọng tâm khi viết Spec & PRD | Đầu ra mong đợi |
|
|
165
|
+
|---|---|---|
|
|
166
|
+
| `pm` | Giá trị người dùng, scope MVP vs V2, user flow, metric thành công | PRD tổng thể, User Stories, Edge cases nghiệp vụ |
|
|
167
|
+
| `ba` | Quy tắc nghiệp vụ (Business Rules), mô hình dữ liệu quan hệ | Bảng ma trận nghiệp vụ, Data dictionary |
|
|
168
|
+
| `fullstack` | API schema (Request/Response), Shared types, component hierarchy | Contract-first API spec, Zod/Pydantic schemas |
|
|
169
|
+
| `qa` | Kịch bản kiểm thử biên, tiêu chí nghiệm thu tự động hóa | Bộ kịch bản BDD hoàn chỉnh, Boundary matrix |
|
|
170
|
+
|
|
171
|
+
---
|
|
172
|
+
|
|
173
|
+
## 5. Báo Cáo Nghiệm Thu Chuẩn Xác (Truth-First Report)
|
|
174
|
+
|
|
175
|
+
```markdown
|
|
176
|
+
📋 Product Specification Summary [Role: <role> | Feature: <Tên tính năng>]
|
|
177
|
+
─────────────────────────────────────────────────────────────────────
|
|
178
|
+
Quy mô đặc tả: [Nhỏ / Vừa / Lớn — Đã tối ưu độ dài theo YAGNI]
|
|
179
|
+
Đánh giá khả thi: [Khả thi 100% trên codebase hiện tại / Cần thêm dependency]
|
|
180
|
+
|
|
181
|
+
Khoảng cách kỹ thuật (Gap Analysis):
|
|
182
|
+
• Tái sử dụng: [Các services/components hiện có thể dùng lại]
|
|
183
|
+
• Cần viết mới: [N endpoints, N tables/columns, N components]
|
|
184
|
+
|
|
185
|
+
Tiêu chí nghiệm thu cốt lõi (BDD Gherkin):
|
|
186
|
+
• [Scenario 1]: Given ... When ... Then ...
|
|
187
|
+
• [Scenario 2]: Given ... When ... Then ...
|
|
188
|
+
|
|
189
|
+
📄 Kế hoạch triển khai:
|
|
190
|
+
Đã khởi tạo artifact: [implementation_plan.md](file:///C:/Users/qkhanh/.gemini/antigravity-ide/brain/f7ef21b2-6e3e-4177-a422-5ddcad5a5843/implementation_plan.md)
|
|
191
|
+
👉 Hãy xem lại kế hoạch và bấm [Proceed] để bắt đầu viết code.
|
|
192
|
+
```
|
|
193
|
+
|
|
194
|
+
---
|
|
195
|
+
|
|
196
|
+
## 6. Mô Hình Độ Tin Cậy (Confidence Model)
|
|
197
|
+
|
|
198
|
+
| Level | Condition | Action |
|
|
199
|
+
|-------|-----------|--------|
|
|
200
|
+
| HIGH | Direct evidence available | Proceed |
|
|
201
|
+
| MEDIUM | Some assumptions needed | Note assumptions |
|
|
202
|
+
| LOW | Insufficient evidence | EXIT: BLOCKED |
|
|
203
|
+
|
|
204
|
+
---
|
|
205
|
+
|
|
206
|
+
## 7. Thoái Ra Mã (Exit Codes)
|
|
207
|
+
|
|
208
|
+
| Code | Meaning | When |
|
|
209
|
+
|------|---------|------|
|
|
210
|
+
| SUCCESS | Task completed and verified | All acceptance criteria met |
|
|
211
|
+
| PARTIAL | Task done with minor gaps | Some checks skipped |
|
|
212
|
+
| BLOCKED | Missing precondition or info | Ask user |
|
|
213
|
+
| FAILED | Task failed after max retries | Report error |
|
|
214
|
+
|
|
215
|
+
---
|
|
216
|
+
|
|
217
|
+
## 8. Bằng Chứng Định Dạng (Evidence Format)
|
|
218
|
+
|
|
219
|
+
```
|
|
220
|
+
[SEVERITY] path/to/file.ts:LINE
|
|
221
|
+
Reason: [why this matters]
|
|
222
|
+
Confidence: [HIGH|MEDIUM|LOW]
|
|
223
|
+
Fix: [suggestion]
|
|
224
|
+
```
|
|
225
|
+
|
|
226
|
+
---
|
|
227
|
+
|
|
228
|
+
## Platform-Specific Instructions
|
|
229
|
+
|
|
230
|
+
### Antigravity (Google Gemini)
|
|
231
|
+
- Uses `.agents/AGENTS.md` as entry point
|
|
232
|
+
- Supports Cockpit integration
|
|
233
|
+
- Rewrite absolute paths for global mode
|
|
234
|
+
- `GEMINI.md` copied for global installs
|
|
235
|
+
|
|
236
|
+
### Claude Code (Anthropic)
|
|
237
|
+
- Reads `.claude/CLAUDE.md` automatically
|
|
238
|
+
- Large context window (~200K tokens)
|
|
239
|
+
- Can handle full skill files without trimming
|
|
240
|
+
- Uses native tool format (Read, Write, Edit, Bash)
|
|
241
|
+
|
|
242
|
+
### OpenCode (Open Source)
|
|
243
|
+
- Reads `.opencode/config.yaml`
|
|
244
|
+
- Context window ~128K tokens
|
|
245
|
+
- Keep skill files lean when possible
|
|
246
|
+
- Supports custom tool format
|
|
247
|
+
|
|
248
|
+
---
|
|
249
|
+
|
|
250
|
+
## Compliance
|
|
251
|
+
|
|
252
|
+
| Check | Status |
|
|
253
|
+
|-------|--------|
|
|
254
|
+
| Runtime Standard | 11/11 |
|
|
255
|
+
| Frontmatter Complete | ✅ |
|
|
256
|
+
| Platforms Field | ✅ |
|
|
257
|
+
| References Valid | ✅ |
|
|
258
|
+
| Decision Trees | PASS |
|
|
259
|
+
| Thresholds Defined | PASS |
|
|
260
|
+
| schema_version | 10.2.0 |
|
|
261
|
+
| runtime_version | 1 |
|
|
262
|
+
| platforms | [antigravity, claude, opencode] |
|