ai-developer-skill-os 7.5.1 → 8.1.4

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (300) hide show
  1. package/.agents/docs/ARCHITECTURE.md +156 -0
  2. package/.agents/docs/MIGRATION-CLEANUP-V8.1.3.md +36 -0
  3. package/.agents/docs/MIGRATION-STATUS.md +35 -0
  4. package/.agents/docs/MIGRATION-V8.md +10 -0
  5. package/.agents/docs/ROADMAP-V8.2.md +78 -0
  6. package/.agents/docs/V8-CERTIFICATION.md +27 -0
  7. package/.agents/docs/VERSIONING.md +95 -0
  8. package/.agents/docs/decisions/ADR-001-v8-migration.md +58 -0
  9. package/.agents/docs/decisions/ADR-002-workflow-separation.md +50 -0
  10. package/.agents/docs/decisions/ADR-003-registry-generated.md +54 -0
  11. package/.agents/docs/decisions/ADR-008-skill-boundary-review.md +27 -0
  12. package/.agents/docs/schemas/learning.schema.yml +69 -0
  13. package/.agents/docs/schemas/skill.schema.yml +188 -0
  14. package/.agents/docs/schemas/workflow.schema.yml +33 -0
  15. package/.agents/knowledge/design-intelligence/industries/ecommerce.md +3 -0
  16. package/.agents/knowledge/design-intelligence/industries/fintech.md +3 -0
  17. package/.agents/knowledge/design-intelligence/industries/healthcare.md +3 -0
  18. package/.agents/learnings/draft/README.md +37 -0
  19. package/.agents/registry/capability-graph.yml +500 -0
  20. package/.agents/registry/skills-index.yml +525 -0
  21. package/.agents/reports/RELEASE-CHECKLIST.md +29 -0
  22. package/.agents/reports/architecture-audit.md +13 -0
  23. package/.agents/reports/graph-health.md +20 -0
  24. package/.agents/reports/skill-audit.md +215 -0
  25. package/.agents/rules/coding.md +102 -0
  26. package/.agents/rules/command-safety.md +21 -0
  27. package/.agents/rules/global.md +135 -0
  28. package/.agents/rules/priorities.yml +24 -0
  29. package/.agents/rules/safety.md +84 -0
  30. package/.agents/rules/security.md +13 -0
  31. package/.agents/rules/skill-quality.md +14 -0
  32. package/.agents/skills/_template/SKILL.md +132 -0
  33. package/.agents/skills/qk-access-policy/SKILL.md +61 -5
  34. package/.agents/skills/qk-agent-observability/SKILL.md +73 -0
  35. package/.agents/skills/qk-ai-builder/SKILL.md +62 -5
  36. package/.agents/skills/qk-api-lifecycle/SKILL.md +59 -6
  37. package/.agents/skills/qk-bug-resolution/SKILL.md +64 -6
  38. package/.agents/skills/qk-context-loader/SKILL.md +63 -11
  39. package/.agents/skills/qk-data-lifecycle/SKILL.md +61 -5
  40. package/.agents/skills/qk-db-optimizer/SKILL.md +61 -5
  41. package/.agents/skills/qk-design-system-engineering/SKILL.md +112 -0
  42. package/.agents/skills/qk-devops-platform/SKILL.md +117 -0
  43. package/.agents/skills/qk-docs/SKILL.md +62 -6
  44. package/.agents/skills/qk-engineering-standard/SKILL.md +62 -12
  45. package/.agents/skills/qk-fe-api-integration/SKILL.md +60 -6
  46. package/.agents/skills/qk-feature-delivery/SKILL.md +65 -6
  47. package/.agents/skills/qk-frontend-architecture/SKILL.md +134 -0
  48. package/.agents/skills/qk-help/SKILL.md +245 -193
  49. package/.agents/skills/qk-orchestrator/SKILL.md +64 -11
  50. package/.agents/skills/qk-orchestrator/references/routing-table.md +1 -1
  51. package/.agents/skills/qk-product-specification/SKILL.md +130 -0
  52. package/.agents/skills/qk-production-release/SKILL.md +59 -6
  53. package/.agents/skills/qk-project-bootstrap/SKILL.md +66 -6
  54. package/.agents/skills/qk-project-health/SKILL.md +63 -6
  55. package/.agents/skills/qk-project-memory/SKILL.md +63 -6
  56. package/.agents/skills/qk-security-audit/SKILL.md +135 -0
  57. package/.agents/skills/qk-system-evolution/SKILL.md +63 -12
  58. package/.agents/skills/qk-test-engineering/SKILL.md +139 -0
  59. package/.agents/skills/qk-ui-audit/SKILL.md +60 -6
  60. package/.agents/skills/qk-ui-builder/SKILL.md +509 -446
  61. package/.agents/skills/qk-ui-system-builder/SKILL.md +61 -5
  62. package/.agents/skills/qk-validation-gate/SKILL.md +63 -11
  63. package/.agents/skills/qk-web-quality-gate/SKILL.md +114 -0
  64. package/.agents/workflows/_schema.yml +109 -0
  65. package/.agents/workflows/bug-resolution.yml +101 -0
  66. package/.agents/workflows/code-review.yml +77 -0
  67. package/.agents/workflows/documentation.yml +75 -0
  68. package/.agents/workflows/feature-delivery.yml +103 -0
  69. package/.agents/workflows/refactor.yml +81 -0
  70. package/.agents/workflows/research.yml +60 -0
  71. package/.agents/workflows/security-audit.yml +72 -0
  72. package/.agents/workflows/skill-evolution.yml +65 -0
  73. package/.agents/workflows/spec-driven-development.yml +57 -0
  74. package/CHANGELOG.md +91 -70
  75. package/README.md +44 -59
  76. package/bin/install.js +57 -309
  77. package/package.json +13 -2
  78. package/tooling/generate-evaluation-cases.cjs +44 -0
  79. package/tooling/generate-registry.js +157 -0
  80. package/tooling/run-aar.js +143 -0
  81. package/tooling/validate-graph.js +87 -0
  82. package/tooling/validate-skills.js +102 -0
  83. package/.agents/skills.json +0 -819
  84. package/.github/workflows/ci.yml +0 -56
  85. package/CLAUDE.md +0 -110
  86. package/_template/BEHAVIOR_SPEC.md +0 -96
  87. package/_template/examples/example-en.md +0 -49
  88. package/_template/examples/example-vi.md +0 -49
  89. package/add_lang.js +0 -21
  90. package/add_lang.py +0 -25
  91. package/add_sections.py +0 -53
  92. package/bin/lint.js +0 -123
  93. package/docs/CHI_TIET_SKILLS.md +0 -126
  94. package/docs/GOVERNANCE.md +0 -40
  95. package/docs/HUONG_DAN_SU_DUNG.md +0 -120
  96. package/docs/SPEC.md +0 -87
  97. package/docs/adr/0001-intent-based-architecture.md +0 -19
  98. package/docs/adr/0002-kernel-freeze.md +0 -21
  99. package/docs/adr/0003-risk-based-verification.md +0 -20
  100. package/docs/adr/0004-progressive-evidence.md +0 -19
  101. package/docs/skill-classification.md +0 -25
  102. package/fix_seeds.js +0 -22
  103. package/framework/KERNEL.md +0 -83
  104. package/framework/bias-library/cosmetic-refactor.md +0 -21
  105. package/framework/bias-library/enterprise-crud.md +0 -21
  106. package/framework/bias-library/fake-ui-slop.md +0 -20
  107. package/framework/bias-library/hallucinated-tools.md +0 -20
  108. package/framework/bias-library/missing-ui-states.md +0 -19
  109. package/framework/bias-library/over-indexing.md +0 -20
  110. package/framework/bias-library/swallow-errors.md +0 -19
  111. package/framework/bias-library/ui-only-security.md +0 -17
  112. package/framework/decision-primitives.md +0 -48
  113. package/framework/dial-library/complexity-budget.md +0 -13
  114. package/framework/dial-library/granularity.md +0 -13
  115. package/framework/dial-library/optimization-strategy.md +0 -13
  116. package/framework/dial-library/strictness.md +0 -13
  117. package/framework/rule-library/delegation-only.md +0 -9
  118. package/framework/rule-library/minimal-diff.md +0 -9
  119. package/framework/skill-schema.md +0 -310
  120. package/knowledge/backend/nodejs.md +0 -52
  121. package/knowledge/frontend/react.md +0 -81
  122. package/migrate-to-v6.js +0 -130
  123. package/migrate.js +0 -147
  124. package/migrate.py +0 -133
  125. package/migrate_all.cjs +0 -96
  126. package/patch.js +0 -15
  127. package/patch.py +0 -89
  128. package/patch2.py +0 -83
  129. package/rename.js +0 -64
  130. package/skills/_archive_old_skills/qk-accessibility-audit/SKILL.md +0 -121
  131. package/skills/_archive_old_skills/qk-agent-orchestrator/SKILL.md +0 -179
  132. package/skills/_archive_old_skills/qk-api-integration/SKILL.md +0 -389
  133. package/skills/_archive_old_skills/qk-auth-security/SKILL.md +0 -96
  134. package/skills/_archive_old_skills/qk-backend-architecture/SKILL.md +0 -125
  135. package/skills/_archive_old_skills/qk-bug-fix/SKILL.md +0 -213
  136. package/skills/_archive_old_skills/qk-component-generator/SKILL.md +0 -136
  137. package/skills/_archive_old_skills/qk-context-manager/SKILL.md +0 -175
  138. package/skills/_archive_old_skills/qk-database-engineer/SKILL.md +0 -104
  139. package/skills/_archive_old_skills/qk-deployment/SKILL.md +0 -96
  140. package/skills/_archive_old_skills/qk-design-system/SKILL.md +0 -137
  141. package/skills/_archive_old_skills/qk-form-builder/SKILL.md +0 -140
  142. package/skills/_archive_old_skills/qk-frontend-architecture/SKILL.md +0 -155
  143. package/skills/_archive_old_skills/qk-frontend-debug/SKILL.md +0 -133
  144. package/skills/_archive_old_skills/qk-frontend-performance/SKILL.md +0 -129
  145. package/skills/_archive_old_skills/qk-frontend-testing/SKILL.md +0 -146
  146. package/skills/_archive_old_skills/qk-git-engineer/SKILL.md +0 -304
  147. package/skills/_archive_old_skills/qk-help/SKILL.md +0 -68
  148. package/skills/_archive_old_skills/qk-migration/SKILL.md +0 -284
  149. package/skills/_archive_old_skills/qk-project-audit/SKILL.md +0 -280
  150. package/skills/_archive_old_skills/qk-refactor/SKILL.md +0 -222
  151. package/skills/_archive_old_skills/qk-state-management/SKILL.md +0 -140
  152. package/skills/_archive_old_skills/qk-table-crud-generator/SKILL.md +0 -127
  153. package/skills/_archive_old_skills/qk-ui-builder/SKILL.md +0 -152
  154. package/skills/_template/SKILL.md +0 -239
  155. package/skills/qk-access-policy/SKILL.md +0 -180
  156. package/skills/qk-ai-builder/SKILL.md +0 -216
  157. package/skills/qk-api-lifecycle/SKILL.md +0 -177
  158. package/skills/qk-bug-resolution/SKILL.md +0 -308
  159. package/skills/qk-context-loader/SKILL.md +0 -219
  160. package/skills/qk-data-lifecycle/SKILL.md +0 -193
  161. package/skills/qk-db-optimizer/SKILL.md +0 -197
  162. package/skills/qk-docs/SKILL.md +0 -199
  163. package/skills/qk-engineering-standard/SKILL.md +0 -352
  164. package/skills/qk-engineering-standard/rules/backend.md +0 -122
  165. package/skills/qk-engineering-standard/rules/database.md +0 -3
  166. package/skills/qk-engineering-standard/rules/frontend.md +0 -152
  167. package/skills/qk-engineering-standard/rules/security.md +0 -3
  168. package/skills/qk-engineering-standard/rules/testing.md +0 -3
  169. package/skills/qk-fe-api-integration/SKILL.md +0 -327
  170. package/skills/qk-feature-delivery/SKILL.md +0 -306
  171. package/skills/qk-help/SKILL.md +0 -194
  172. package/skills/qk-orchestrator/SKILL.md +0 -279
  173. package/skills/qk-orchestrator/references/routing-table.md +0 -78
  174. package/skills/qk-production-release/SKILL.md +0 -285
  175. package/skills/qk-project-bootstrap/SKILL.md +0 -236
  176. package/skills/qk-project-health/SKILL.md +0 -200
  177. package/skills/qk-project-memory/SKILL.md +0 -219
  178. package/skills/qk-system-evolution/SKILL.md +0 -282
  179. package/skills/qk-ui-audit/SKILL.md +0 -316
  180. package/skills/qk-ui-audit/references/anti-slop-checklist.md +0 -136
  181. package/skills/qk-ui-builder/SKILL.md +0 -447
  182. package/skills/qk-ui-builder/references/anti-patterns.md +0 -295
  183. package/skills/qk-ui-builder/references/color.md +0 -115
  184. package/skills/qk-ui-builder/references/component-cookbook.md +0 -1194
  185. package/skills/qk-ui-builder/references/copy.md +0 -250
  186. package/skills/qk-ui-builder/references/interaction-and-states.md +0 -115
  187. package/skills/qk-ui-builder/references/layout-and-space.md +0 -111
  188. package/skills/qk-ui-builder/references/macrostructures/01-bento-grid.md +0 -48
  189. package/skills/qk-ui-builder/references/macrostructures/02-long-document.md +0 -50
  190. package/skills/qk-ui-builder/references/macrostructures/03-marquee-hero.md +0 -51
  191. package/skills/qk-ui-builder/references/macrostructures/04-stat-led.md +0 -49
  192. package/skills/qk-ui-builder/references/macrostructures/05-workbench.md +0 -44
  193. package/skills/qk-ui-builder/references/macrostructures/06-conversational-faq.md +0 -50
  194. package/skills/qk-ui-builder/references/macrostructures/07-manifesto.md +0 -51
  195. package/skills/qk-ui-builder/references/macrostructures/08-photographic.md +0 -50
  196. package/skills/qk-ui-builder/references/macrostructures/09-quote-led.md +0 -50
  197. package/skills/qk-ui-builder/references/macrostructures/11-catalogue.md +0 -49
  198. package/skills/qk-ui-builder/references/macrostructures/12-letter.md +0 -49
  199. package/skills/qk-ui-builder/references/macrostructures/13-index-first.md +0 -49
  200. package/skills/qk-ui-builder/references/macrostructures/14-narrative-workflow.md +0 -48
  201. package/skills/qk-ui-builder/references/macrostructures/15-split-studio.md +0 -48
  202. package/skills/qk-ui-builder/references/macrostructures/16-feature-stack.md +0 -51
  203. package/skills/qk-ui-builder/references/macrostructures/17-type-specimen.md +0 -48
  204. package/skills/qk-ui-builder/references/macrostructures/18-portfolio-grid.md +0 -48
  205. package/skills/qk-ui-builder/references/macrostructures/19-map-diagram.md +0 -50
  206. package/skills/qk-ui-builder/references/macrostructures/20-ecosystem-index.md +0 -48
  207. package/skills/qk-ui-builder/references/macrostructures/21-component-playground.md +0 -45
  208. package/skills/qk-ui-builder/references/macrostructures.md +0 -38
  209. package/skills/qk-ui-builder/references/motion.md +0 -95
  210. package/skills/qk-ui-builder/references/responsive.md +0 -115
  211. package/skills/qk-ui-builder/references/slop-test.md +0 -135
  212. package/skills/qk-ui-builder/references/structure.md +0 -280
  213. package/skills/qk-ui-builder/references/themes/atmospheric.md +0 -53
  214. package/skills/qk-ui-builder/references/themes/carnival.md +0 -52
  215. package/skills/qk-ui-builder/references/themes/cobalt.md +0 -52
  216. package/skills/qk-ui-builder/references/themes/editorial.md +0 -52
  217. package/skills/qk-ui-builder/references/themes/garden.md +0 -52
  218. package/skills/qk-ui-builder/references/themes/hum.md +0 -52
  219. package/skills/qk-ui-builder/references/themes/lumen.md +0 -52
  220. package/skills/qk-ui-builder/references/themes/midnight.md +0 -52
  221. package/skills/qk-ui-builder/references/themes/modern-minimal.md +0 -52
  222. package/skills/qk-ui-builder/references/themes/playful.md +0 -52
  223. package/skills/qk-ui-builder/references/themes/specimen.md +0 -52
  224. package/skills/qk-ui-builder/references/themes/terminal.md +0 -52
  225. package/skills/qk-ui-builder/references/typography.md +0 -129
  226. package/skills/qk-ui-system-builder/SKILL.md +0 -222
  227. package/skills/qk-validation-gate/SKILL.md +0 -360
  228. package/skills.json +0 -820
  229. package/specs/contracts/behavior-contract.yaml +0 -40
  230. package/specs/expectations/qk-bug-resolution.yaml +0 -35
  231. package/specs/fixtures/user-payload.json +0 -12
  232. package/specs/regressions/api-integration-null-fields.yaml +0 -19
  233. package/specs/scenarios/fix-login-nullref.yaml +0 -3
  234. package/taste-skill/.claude-plugin/marketplace.json +0 -20
  235. package/taste-skill/.claude-plugin/plugin.json +0 -19
  236. package/taste-skill/.github/FUNDING.yml +0 -1
  237. package/taste-skill/.github/copilot-instructions.md +0 -11
  238. package/taste-skill/CHANGELOG.md +0 -111
  239. package/taste-skill/LICENSE +0 -21
  240. package/taste-skill/README.md +0 -212
  241. package/taste-skill/assets/.gitkeep +0 -0
  242. package/taste-skill/assets/readme-banner.webp +0 -0
  243. package/taste-skill/assets/readme-buttons/btn-agent-skills.webp +0 -0
  244. package/taste-skill/assets/readme-buttons/btn-changelog.webp +0 -0
  245. package/taste-skill/assets/readme-buttons/btn-mit.webp +0 -0
  246. package/taste-skill/assets/readme-buttons/btn-site.webp +0 -0
  247. package/taste-skill/assets/readme-buttons/btn-tools.webp +0 -0
  248. package/taste-skill/assets/readme-cta-tasteskill.svg +0 -5
  249. package/taste-skill/assets/sponsors/animations-dev.webp +0 -0
  250. package/taste-skill/assets/sponsors/emil-animations-dev.webp +0 -0
  251. package/taste-skill/assets/taste-skill-logo.png +0 -0
  252. package/taste-skill/assets/taste-skill-logo.webp +0 -0
  253. package/taste-skill/assets/vercel-oss-program-badge.svg +0 -44
  254. package/taste-skill/examples/floria-bottom.webp +0 -0
  255. package/taste-skill/examples/floria-full.webp +0 -0
  256. package/taste-skill/examples/floria-top.webp +0 -0
  257. package/taste-skill/research/README.md +0 -8
  258. package/taste-skill/research/laziness/README.md +0 -25
  259. package/taste-skill/research/laziness/findings/empirical-results.md +0 -58
  260. package/taste-skill/research/laziness/findings/references.md +0 -20
  261. package/taste-skill/research/laziness/remediation/architectural-patterns.md +0 -55
  262. package/taste-skill/research/laziness/remediation/parameter-tuning.md +0 -44
  263. package/taste-skill/research/laziness/remediation/prompt-engineering.md +0 -52
  264. package/taste-skill/research/laziness/remediation/reference-prompts.md +0 -79
  265. package/taste-skill/research/laziness/root-causes/cognitive-shortcuts.md +0 -23
  266. package/taste-skill/research/laziness/root-causes/output-limits.md +0 -39
  267. package/taste-skill/research/laziness/root-causes/rlhf-and-compute.md +0 -27
  268. package/taste-skill/research/laziness/root-causes/training-data-bias.md +0 -28
  269. package/taste-skill/scripts/build-emil-sponsor-row.mjs +0 -41
  270. package/taste-skill/scripts/convert-readme-assets-webp.mjs +0 -142
  271. package/taste-skill/scripts/process-readme-buttons.mjs +0 -108
  272. package/taste-skill/scripts/process-sponsor-badge.mjs +0 -83
  273. package/taste-skill/skill.sh +0 -25
  274. package/taste-skill/skills/brandkit/SKILL.md +0 -798
  275. package/taste-skill/skills/brutalist-skill/SKILL.md +0 -92
  276. package/taste-skill/skills/gpt-tasteskill/SKILL.md +0 -74
  277. package/taste-skill/skills/image-to-code-skill/SKILL.md +0 -1228
  278. package/taste-skill/skills/imagegen-frontend-mobile/SKILL.md +0 -1465
  279. package/taste-skill/skills/imagegen-frontend-web/SKILL.md +0 -987
  280. package/taste-skill/skills/llms.txt +0 -13
  281. package/taste-skill/skills/minimalist-skill/SKILL.md +0 -85
  282. package/taste-skill/skills/output-skill/SKILL.md +0 -49
  283. package/taste-skill/skills/redesign-skill/SKILL.md +0 -178
  284. package/taste-skill/skills/soft-skill/SKILL.md +0 -98
  285. package/taste-skill/skills/stitch-skill/DESIGN.md +0 -121
  286. package/taste-skill/skills/stitch-skill/SKILL.md +0 -184
  287. package/taste-skill/skills/taste-skill/SKILL.md +0 -1206
  288. package/taste-skill/skills/taste-skill-v1/SKILL.md +0 -226
  289. package/temp_fix.js +0 -61
  290. package/templates/DESIGN.md +0 -38
  291. package/templates/bug-report.md +0 -21
  292. package/templates/design-report.md +0 -21
  293. package/templates/feature-report.md +0 -20
  294. package/templates/review-report.md +0 -21
  295. package/templates/skill-template.md +0 -38
  296. package/tests/behavior-conformance.test.js +0 -154
  297. package/tests/install-script.test.js +0 -38
  298. package/tests/registry.test.js +0 -111
  299. package/update_template.js +0 -28
  300. package/vitest.config.js +0 -11
package/rename.js DELETED
@@ -1,64 +0,0 @@
1
- import fs from 'fs';
2
- import path from 'path';
3
- import { execSync } from 'child_process';
4
-
5
- const skillsDir = 'skills';
6
- const categories = fs.readdirSync(skillsDir).filter(f => fs.statSync(path.join(skillsDir, f)).isDirectory());
7
-
8
- categories.forEach(category => {
9
- const catPath = path.join(skillsDir, category);
10
- const skills = fs.readdirSync(catPath).filter(f => fs.statSync(path.join(catPath, f)).isDirectory());
11
- skills.forEach(skill => {
12
- if (!skill.startsWith('qk-')) {
13
- const oldPath = path.join(catPath, skill).replace(/\\/g, '/');
14
- const newPath = path.join(catPath, 'qk-' + skill).replace(/\\/g, '/');
15
- try {
16
- console.log(`Đang đổi tên: ${oldPath} -> ${newPath}`);
17
- execSync(`git mv "${oldPath}" "${newPath}"`);
18
- } catch(e) {
19
- console.error('LỖI (Hãy chắc chắn bạn đã tắt hoàn toàn IDE/Cursor đang mở folder này):', e.message);
20
- }
21
- }
22
- });
23
- });
24
-
25
- // Update skills.json
26
- const skillsJsonPath = 'skills.json';
27
- let skillsData = JSON.parse(fs.readFileSync(skillsJsonPath, 'utf8'));
28
-
29
- // Fix entries and modify their paths
30
- if(skillsData.skills) {
31
- skillsData.skills = skillsData.skills.map(s => {
32
- if(!s.name.startsWith('qk-')) {
33
- s.name = 'qk-' + s.name;
34
- const parts = s.path.split('/');
35
- const skillFolder = parts[2];
36
- if(!skillFolder.startsWith('qk-')) {
37
- parts[2] = 'qk-' + skillFolder;
38
- }
39
- s.path = parts.join('/');
40
- }
41
- return s;
42
- });
43
- }
44
- fs.writeFileSync(skillsJsonPath, JSON.stringify(skillsData, null, 2));
45
-
46
- // Update SKILL.md names
47
- categories.forEach(category => {
48
- const catPath = path.join(skillsDir, category);
49
- const skills = fs.readdirSync(catPath).filter(f => fs.statSync(path.join(catPath, f)).isDirectory());
50
- skills.forEach(skill => {
51
- if (skill.startsWith('qk-')) {
52
- const skillMdPath = path.join(catPath, skill, 'SKILL.md');
53
- if (fs.existsSync(skillMdPath)) {
54
- let content = fs.readFileSync(skillMdPath, 'utf8');
55
- content = content.replace(/^name:\s*([a-zA-Z0-9-]+)\s*$/m, (match, p1) => {
56
- if (!p1.startsWith('qk-')) return 'name: qk-' + p1;
57
- return match;
58
- });
59
- fs.writeFileSync(skillMdPath, content);
60
- }
61
- }
62
- });
63
- });
64
- console.log('✅ Đã đổi tên thành công toàn bộ sang hệ qk-* !');
@@ -1,121 +0,0 @@
1
- ---
2
- name: qk-accessibility-audit
3
- description: >-
4
- Kiểm tra và sửa lỗi khả năng tiếp cận (a11y/WCAG). Đảm bảo hỗ trợ phím, screen reader và semantic HTML.
5
- version: 1.0.0
6
- category: frontend
7
- tags: [accessibility, a11y, aria, wcag, screen-reader, keyboard]
8
- platforms: [antigravity, claude-code, kilo-code, cursor, windsurf]
9
- ---
10
-
11
- # Accessibility (A11y) Audit
12
-
13
- > **Language rule:**
14
- > Use English for: code, identifiers, file names, architecture terms, technical decisions.
15
- > Use the user's language for: explanations, questions, summaries, and feedback.
16
- > The user may write in any language — detect and match it automatically.
17
-
18
- ---
19
-
20
- ## Trigger
21
-
22
- Activate this skill when:
23
- - User asks to "make this accessible", "fix a11y", or "audit accessibility"
24
- - Building complex interactive components (modals, dropdowns, tabs, sliders)
25
- - Preparing an app for production or public release
26
- - Project audit flags missing semantic HTML or ARIA issues
27
-
28
- ---
29
-
30
- ## Scope
31
-
32
- - ✅ **Keyboard Navigation:** Ensure all interactive elements are reachable via `Tab`, and operable via `Enter`/`Space`/Arrows. Focus management (trapping focus in modals).
33
- - ✅ **Screen Reader Support:** Add proper `aria-` attributes, `alt` text, and visually hidden text (`sr-only`).
34
- - ✅ **Semantic HTML:** Replace `div` soups with `<nav>`, `<main>`, `<article>`, `<button>`, etc.
35
- - ✅ **Color Contrast:** Verify text vs. background contrast meets WCAG AA (4.5:1 for normal text).
36
- - ✅ **Form Labels:** Ensure all inputs have associated `<label>`s or `aria-label`s.
37
-
38
- ---
39
-
40
- ## Non-goals
41
-
42
- - ❌ Do NOT completely redesign the UI visually (unless fixing a severe contrast issue, and even then, ask first).
43
- - ❌ Do NOT overuse ARIA. The first rule of ARIA is: "No ARIA is better than bad ARIA." Use semantic HTML first.
44
-
45
- ---
46
-
47
- ## Workflow
48
-
49
- ### Phase 1 — Semantic HTML Check
50
-
51
- Scan the component for basic HTML semantics:
52
- - Are buttons actually `<button>` elements (not `<div onClick>`)?
53
- - Are links actually `<a>` elements with `href`s?
54
- - Do images have meaningful `alt` text (or `alt=""` if decorative)?
55
- - Are headings (`h1`-`h6`) in a logical, unbroken hierarchy?
56
-
57
- ### Phase 2 — Keyboard & Focus Management
58
-
59
- - Can the user tab through the component logically?
60
- - Does every interactive element have a visible focus state (`:focus-visible`)?
61
- - For Modals/Dialogs: Is focus trapped inside when open? Is focus restored when closed?
62
- - For custom widgets (Tabs/Dropdowns): Implement correct arrow key navigation per WAI-ARIA authoring practices.
63
-
64
- ### Phase 3 — Screen Reader (ARIA) Check
65
-
66
- - Do custom interactive elements have correct `role`s (e.g., `role="tablist"`)?
67
- - Is dynamic state communicated? (`aria-expanded`, `aria-selected`, `aria-invalid`, `aria-busy`).
68
- - Are icon-only buttons properly labeled? (`aria-label` or `<span className="sr-only">Label</span>`).
69
- - Are dynamic live regions used for important announcements (`aria-live="polite"` or `assertive`)?
70
-
71
- ### Phase 4 — Contrast & Visuals
72
-
73
- - Check text colors against backgrounds.
74
- - Ensure form fields have visible borders or indicators.
75
- - Ensure information is not conveyed *only* by color (e.g., a red border for an error must also have error text).
76
-
77
- ---
78
-
79
- ## Decision Tree
80
-
81
- ```
82
- Is the component a native HTML element (e.g., standard `<button>`)?
83
- ├── Yes → Ensure it has accessible text/labels. No ARIA roles needed.
84
- └── No → (e.g., a custom `div` acting as a checkbox)
85
- ├── Can it be refactored to use native HTML?
86
- │ ├── Yes → Refactor to native HTML `<input type="checkbox">`
87
- │ └── No → Apply `role="checkbox"`, `tabIndex={0}`, `aria-checked`, and keyboard event handlers.
88
- ```
89
-
90
- ---
91
-
92
- ## Output Format
93
-
94
- ```
95
- ♿ Accessibility Audit Report
96
- ─────────────────────────────────────────────────
97
- Component: [ComponentName]
98
-
99
- Issues Found & Fixed:
100
- ✅ Semantic HTML: Replaced `<div onClick>` with `<button>`
101
- ✅ Screen Readers: Added `aria-label` to icon-only close button
102
- ✅ Keyboard: Added focus trap inside the Modal
103
- ✅ Forms: Associated `<label htmlFor="email">` with Input
104
-
105
- ⚠️ Remaining Warnings (Manual Check Required):
106
- - Please verify color contrast of primary button in light mode (needs 4.5:1 ratio).
107
-
108
- 🔗 Next Steps:
109
- Code updated. Recommend testing with a screen reader (VoiceOver/NVDA).
110
- ```
111
-
112
- ---
113
-
114
- ## Validation Checklist
115
-
116
- - [ ] Semantic HTML preferred over ARIA
117
- - [ ] Keyboard navigation (Tab + Enter/Space) works correctly
118
- - [ ] Focus is visible on all interactive elements
119
- - [ ] Forms have proper labels
120
- - [ ] Icon-only buttons have accessible names
121
-
@@ -1,179 +0,0 @@
1
- ---
2
- name: qk-agent-orchestrator
3
- description: >-
4
- Phân tích yêu cầu, lên kế hoạch thực thi chi tiết và điều phối các tác vụ cho đúng skill. Không tự viết code.
5
- version: 1.0.0
6
- category: engineering
7
- tags: [orchestration, planning, workflow, task-decomposition]
8
- platforms: [antigravity, claude-code, kilo-code, cursor, windsurf]
9
- ---
10
-
11
- # Agent Orchestrator
12
-
13
- > **Language rule:**
14
- > Use English for: code, identifiers, file names, architecture terms, technical decisions.
15
- > Use the user's language for: explanations, questions, summaries, and feedback.
16
- > The user may write in any language — detect and match it automatically.
17
-
18
- > ⚠️ **CRITICAL CONSTRAINT: This skill MUST NOT write any code.**
19
- > Its only job is to analyze, plan, and delegate.
20
- > If the orchestrator starts writing implementation code — it is violating its role.
21
- > Immediately stop and delegate to the appropriate skill instead.
22
-
23
- ---
24
-
25
- ## Trigger
26
-
27
- Activate this skill when:
28
- - User describes a task without knowing where to start
29
- - User request spans multiple concerns (UI + API + state + tests)
30
- - Request is ambiguous and needs decomposition before action
31
- - User says: "help me plan", "what should I do first", "how do I approach this"
32
-
33
- ---
34
-
35
- ## Scope
36
-
37
- - ✅ Analyze the user's request
38
- - ✅ Identify which skills are needed
39
- - ✅ Define the correct execution order
40
- - ✅ Create a step-by-step plan
41
- - ✅ Delegate each step to the correct skill
42
- - ✅ Track overall progress
43
-
44
- ---
45
-
46
- ## Non-goals
47
-
48
- - ❌ Do NOT write implementation code
49
- - ❌ Do NOT modify files
50
- - ❌ Do NOT fix bugs directly (delegate to `bug-fix`)
51
- - ❌ Do NOT build UI directly (delegate to `ui-builder`)
52
- - ❌ Do NOT make architectural decisions unilaterally (delegate to `frontend-architecture`)
53
-
54
- ---
55
-
56
- ## Workflow
57
-
58
- ### Phase 1 — Request Analysis
59
-
60
- Parse the user's request:
61
-
62
- 1. **What** is being asked? (feature, fix, refactor, review, deploy?)
63
- 2. **Where** does it belong? (frontend, backend, shared, infrastructure?)
64
- 3. **What is the scope?** (single component, full feature, entire codebase?)
65
- 4. **What is unknown?** List any ambiguities that need clarification.
66
-
67
- If critical information is missing → ask before planning.
68
-
69
- ---
70
-
71
- ### Phase 2 — Skill Selection
72
-
73
- Map the request to skills from the registry:
74
-
75
- | Request type | Recommended skill(s) |
76
- |---|---|
77
- | "I don't know what's wrong" | `project-audit` → `bug-fix` |
78
- | "Build a new page" | `frontend-architecture` → `design-system` → `ui-builder` |
79
- | "Add API call" | `context-manager` → `api-integration` |
80
- | "App is slow" | `project-audit` → `frontend-performance` |
81
- | "Upgrade dependencies" | `migration` |
82
- | "Write tests" | `frontend-testing` |
83
-
84
- Always check dependencies from `skills.json` — load dependent skills first.
85
-
86
- ---
87
-
88
- ### Phase 3 — Execution Plan
89
-
90
- Produce a numbered, ordered plan. Each step maps to one skill.
91
-
92
- Format:
93
- ```
94
- Step 1: [skill-name] — [what it will do]
95
- Step 2: [skill-name] — [what it will do]
96
- Step 3: [skill-name] — [what it will do]
97
- ```
98
-
99
- Mark dependencies explicitly:
100
- ```
101
- Step 2 requires Step 1 to complete first.
102
- ```
103
-
104
- ---
105
-
106
- ### Phase 4 — Delegation
107
-
108
- For each step in the plan:
109
- 1. Announce which skill is being activated
110
- 2. Pass relevant context to that skill
111
- 3. Wait for skill output
112
- 4. Confirm completion before moving to next step
113
-
114
- ---
115
-
116
- ### Phase 5 — Progress Tracking
117
-
118
- After each skill completes:
119
- - Mark step as ✅ done
120
- - Note any output or blockers
121
- - Adjust remaining plan if needed
122
- - Report overall progress to user
123
-
124
- ---
125
-
126
- ## Decision Tree
127
-
128
- ```
129
- Is the request clear enough to plan?
130
- ├── No → Ask 1-3 clarifying questions, then plan
131
- └── Yes → Does it span multiple concerns?
132
- ├── Yes → Create multi-step plan with skill sequence
133
- └── No → Route directly to single skill
134
- ```
135
-
136
- ```
137
- Does a skill dependency exist?
138
- ├── Yes → Run dependency skill first
139
- └── No → Run skill directly
140
- ```
141
-
142
- ---
143
-
144
- ## Output Format
145
-
146
- ```
147
- 📋 Plan: [Brief description of what we're doing]
148
-
149
- Step 1: `[skill-name]` — [Purpose]
150
- Step 2: `[skill-name]` — [Purpose] ← requires Step 1
151
- Step 3: `[skill-name]` — [Purpose]
152
-
153
- ⏳ Starting with Step 1...
154
- ```
155
-
156
- After each step:
157
- ```
158
- ✅ Step 1 complete: [Brief outcome]
159
- ▶️ Moving to Step 2: `[skill-name]`
160
- ```
161
-
162
- ---
163
-
164
- ## Validation Checklist
165
-
166
- Before finishing orchestration:
167
-
168
- - [ ] All planned steps completed
169
- - [ ] Each step was handled by the correct skill
170
- - [ ] No code was written by the orchestrator itself
171
- - [ ] User has been informed of final outcome
172
- - [ ] Next recommended actions provided if relevant
173
-
174
- ---
175
-
176
- ## Examples
177
-
178
- See `examples/` folder.
179
-