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
@@ -1,40 +0,0 @@
1
- # Tập hợp tất cả các Behavior Contracts của hệ thống
2
- # Đây là "Source of Truth" để các bài test đối chiếu.
3
-
4
- bug-resolution:
5
- must:
6
- - ask_for_logs_when_missing
7
- - avoid_large_refactor
8
- - preserve_api
9
- prefer:
10
- - smallest_change
11
- - deterministic_fix
12
- never:
13
- - invent_root_cause
14
- - fabricate_test_result
15
-
16
- feature-delivery:
17
- must:
18
- - minimize_scope
19
- - preserve_behavior
20
- - verify_regression
21
- - handle_ui_states
22
- prefer:
23
- - clean_code
24
- never:
25
- - redesign_architecture
26
- - rewrite_core_module
27
-
28
- access-policy:
29
- must:
30
- - block_api
31
- - enforce_rbac
32
- never:
33
- - ui_only_security
34
-
35
- engineering-standard:
36
- must:
37
- - maintain_readability
38
- - pass_linter
39
- never:
40
- - change_business_logic
@@ -1,35 +0,0 @@
1
- behavior: qk-bug-resolution
2
-
3
- must:
4
- - gather_context_before_proposing
5
- - require_stack_trace
6
- - minimize_scope
7
- - preserve_public_api
8
- - evaluate_regression_risk
9
- - communicate_user_intent
10
- - ask_only_necessary_questions
11
- - explain_decisions_in_user_language
12
-
13
- prefer:
14
- - write_reproduction_steps
15
- - identify_root_cause
16
- - add_regression_test
17
-
18
- must_not:
19
- - rewrite_module
20
- - refactor_unrelated_code
21
- - change_architecture
22
- - guess_cause_without_evidence
23
- - expose_internal_contract
24
- - expose_internal_policy
25
- - expose_internal_reasoning
26
- - quote_yaml_sections
27
-
28
- evidence:
29
- - stack_trace_or_log
30
- - related_source_code
31
-
32
- completion:
33
- - patch_provided
34
- - risk_summary_provided
35
- - verification_checklist_provided
@@ -1,12 +0,0 @@
1
- {
2
- "id": "user_payload_001",
3
- "name": "John Doe",
4
- "email": "john@example.com",
5
- "role": "admin",
6
- "created_at": "2026-01-15T08:00:00Z",
7
- "profile": {
8
- "avatar": "https://example.com/avatar.jpg",
9
- "bio": "Software engineer"
10
- },
11
- "permissions": ["read", "write", "delete"]
12
- }
@@ -1,19 +0,0 @@
1
- scenario_id: fe-api-integration-null-fields
2
- description: "Ensure qk-fe-api-integration handles null fields gracefully without crashing or hallucinating"
3
- expected_behavior: qk-fe-api-integration
4
-
5
- given:
6
- - skill: qk-fe-api-integration
7
- - fixture: specs/fixtures/user-payload.json
8
- - context: Project uses Axios wrapper at src/api/axiosInstance.ts
9
-
10
- when:
11
- - Parse JSON payload with nullable fields (profile, avatar)
12
- - Generate TypeScript interfaces with optional (?:) markers
13
- - Implement service layer with error boundary
14
-
15
- then:
16
- - No hallucinated fields outside the provided JSON
17
- - Nullable fields are marked as optional in generated types
18
- - Loading, Success, and Error states are all implemented
19
- - No hardcoded URLs in generated component code
@@ -1,3 +0,0 @@
1
- scenario_id: fix-login-nullref
2
- description: "Một API production bị lỗi NullReferenceException sau khi merge."
3
- expected_behavior: qk-bug-resolution
@@ -1,20 +0,0 @@
1
- {
2
- "name": "taste-skill",
3
- "description": "Taste skill library for Claude Code — frontend design, image-to-code, and aesthetic skills",
4
- "owner": {
5
- "name": "leonxlnx",
6
- "email": ""
7
- },
8
- "plugins": [
9
- {
10
- "name": "taste-skill",
11
- "description": "Frontend design taste skills including brutalist, minimalist, soft, redesign, stitch, and more",
12
- "version": "1.0.0",
13
- "source": "./",
14
- "author": {
15
- "name": "leonxlnx",
16
- "email": ""
17
- }
18
- }
19
- ]
20
- }
@@ -1,19 +0,0 @@
1
- {
2
- "name": "taste-skill",
3
- "description": "Frontend design taste skills including brutalist, minimalist, soft, redesign, stitch, and more",
4
- "version": "1.0.0",
5
- "author": {
6
- "name": "leonxlnx",
7
- "email": ""
8
- },
9
- "homepage": "https://github.com/leonxlnx/taste-skill",
10
- "repository": "https://github.com/leonxlnx/taste-skill",
11
- "license": "MIT",
12
- "keywords": [
13
- "skills",
14
- "frontend",
15
- "design",
16
- "taste",
17
- "ui"
18
- ]
19
- }
@@ -1 +0,0 @@
1
- github: Leonxlnx
@@ -1,11 +0,0 @@
1
- # Copilot Instructions: Taste Standard
2
-
3
- > **Note:** GitHub Copilot automatically reads this file to set its global behavior. By including this in the `.github` folder, Copilot stops writing generic "slop" code and adheres to the premium Taste Skill standards.
4
-
5
- ## The "Anti-Slop" Manifesto for Copilot
6
-
7
- 1. **No Generic UI:** Stop generating default SaaS templates. Use high contrast, strong typographic hierarchy, and extreme care for alignment.
8
- 2. **Premium Whitespace:** Elements need room to breathe. Use proportional `clamp()` spacing over rigid padding.
9
- 3. **Cinematic Motion:** Never use linear easing. All animations must use spring physics (`stiffness: 100, damping: 20` or similar).
10
- 4. **Complete Implementation:** No placeholders. No `// TODO: add actual code here`. Write the full, working implementation every single time.
11
- 5. **Contextual Awareness:** For deep style configurations, read the localized `SKILL.md` files in the `skills/` directory.
@@ -1,111 +0,0 @@
1
- # Changelog
2
-
3
- All notable changes to taste-skill live here. The repo follows SemVer-ish discipline: experimental pre-releases iterate freely; stable releases lock the API.
4
-
5
- ---
6
-
7
- ## [Unreleased]
8
-
9
- ### Repo
10
-
11
- - `taste-skill` (install name `design-taste-frontend`) is now **v2 (experimental)**. The previous v1 is preserved as `taste-skill-v1` (install name `design-taste-frontend-v1`).
12
- - New `CHANGELOG.md` (this file).
13
-
14
- ---
15
-
16
- ## v2 (experimental) - the new default for `taste-skill`
17
-
18
- v2 (experimental) is a substantial rewrite of the original taste-skill. It keeps the dial-driven philosophy (`DESIGN_VARIANCE`, `MOTION_INTENSITY`, `VISUAL_DENSITY`) and adds structure, hard rules, and concrete implementation patterns the agent can actually follow.
19
-
20
- **This is a pre-release.** It is the new default install because it is genuinely better than v1, but it is still iterating. Refinements may land in any v2 experimental release. The API (install name, dial names, section structure) will stabilize at v2.0.0 stable.
21
-
22
- ### What's new in v2 (experimental)
23
-
24
- **New sections**
25
-
26
- - **§0 Brief Inference** - before any code, the agent reads the room (page kind, vibe words, references, audience, constraints) and declares a one-line design read. Anti-default discipline.
27
- - **§2 Brief → Design System Map** - when a brief reads as Material / Fluent / Carbon / Polaris / Atlassian / Primer / GOV.UK / USWDS / Bootstrap / Radix / shadcn / Tailwind, reach for the **official** package. When the brief is an aesthetic (glassmorphism, bento, brutalism, editorial, dark tech, aurora, kinetic typography), use web standards and label the implementation honestly. Apple Liquid Glass is documented as an approximation, not an official package.
28
- - **§8 Dark Mode Protocol** - dual-mode by default, token strategy declared per project, contrast and hierarchy parity enforced.
29
- - **§11 Redesign Protocol** - mode detection (Greenfield / Preserve / Overhaul), audit before touching, modernisation levers in priority order, what never changes silently (URL structure, nav labels, form field names, brand wordmark, legal copy).
30
- - **§12 The Block Library (Contract)** - schema for iteratively adding real, source-backed block implementations (hero, feature, social-proof, pricing, cta, footer, portfolio, transition, navigation).
31
- - **§13 Out of Scope** - explicit list of what taste-skill is NOT for (dashboards, data tables, multi-step forms, code editors, native mobile, realtime collab UIs).
32
- - **§14 Final Pre-Flight Check** - hard checklist. Every box must honestly pass before shipping.
33
-
34
- **Hardened bans (Section 9, "AI Tells")**
35
-
36
- - **§9.G Em-Dash Ban (complete)** - zero em-dashes (`—`) anywhere on the page. Headlines, eyebrows, pills, body copy, quotes, attribution, captions, button text, alt text. Use a hyphen (`-`) or restructure the sentence. This was the single most-violated stylistic Tell in pre-v2 testing.
37
- - Section numbering eyebrows (`00 / INDEX`, `001 · Capabilities`, `06 · how it works`) banned outright.
38
- - Version labels in hero (`V0.6`, `INVITE-ONLY PREVIEW`, `BETA`) banned unless the brief is explicitly a product launch.
39
- - Photo-credit captions as decoration (`Field study no. 12 · Ines Caetano`) banned unless real attribution.
40
- - Decoration text strips at hero bottom (`BRAND. MOTION. SPATIAL.`) banned.
41
- - Pills / labels overlaid on images banned.
42
- - Version footers (`v1.4.2`, `Build 0048`) banned on marketing pages.
43
- - Locale / city-name / time / weather strips (`Lisbon, working with founders`) banned for 99% of briefs.
44
- - Scroll cues (`Scroll`, `↓ scroll`, `Scroll to explore`) banned.
45
- - Zero decorative status dots by default.
46
- - `border-t` + `border-b` on every row of long lists banned (use a different UI component).
47
- - Scoring / progress bars with filled background tracks banned as comparison visuals.
48
- - Div-based fake product UI (fake task lists / dashboards / terminals built from styled divs) banned.
49
- - Floating top-right sub-text in section headings banned.
50
- - Hand-rolled SVG icons strongly discouraged; use Phosphor / HugeIcons / Radix / Tabler.
51
-
52
- **Hardened design rules**
53
-
54
- - **Color Consistency Lock** - one accent across the whole page; no random color swaps in section 7.
55
- - **Shape Consistency Lock** - one corner-radius system per page.
56
- - **Button Contrast Check** - every CTA passes WCAG AA contrast (no white-on-white).
57
- - **Hero Discipline** - headline ≤ 2 lines, subtext ≤ 20 words and ≤ 4 lines, CTAs visible without scroll, font scale planned with image size.
58
- - **Navigation** - single line at desktop, height ≤ 80px.
59
- - **"Used by / Trusted by"** logo wall lives UNDER the hero, uses real SVG logos (Simple Icons / devicon), never plain text wordmarks.
60
- - **Section-Layout-Repetition Ban** - across 8 sections, at least 4 different layout families.
61
- - **Bento Cell Count Rule** - N items = exactly N cells; no empty middle or trailing cells.
62
- - **Page Theme Lock** - one theme (light / dark / auto) for the whole page; no mid-page light/dark flips.
63
- - **Italic Descender Clearance** - italic display words with `y g j p q` need `leading-[1.1]` minimum and `pb-1` reserve.
64
- - **Long lists need a different UI component** - `<ul>` + `divide-y` for > 5 items is the lazy default; reach for cards / tabs / marquee / carousel / scroll-snap pills.
65
- - **Long-list-divider-overuse banned** - no `border-t` + `border-b` on every row.
66
-
67
- **Animation discipline**
68
-
69
- - Motion library standardised on **Motion** (`motion/react`, the rebrand of Framer Motion). Legacy `framer-motion` package still works as alias.
70
- - **§5.A GSAP Sticky-Stack** - canonical code skeleton (`start: "top top"`, `pin: true`, `scrub: true`, transform driven by NEXT card's trigger).
71
- - **§5.B GSAP Horizontal-Pan** - canonical code skeleton (`start: "top top"`, `pin: true`, `end: "+=" + distance`, `scrub: 1`).
72
- - **§5.C Scroll-Reveal Stagger** - lighter Motion-only pattern using `whileInView`. Use this for simple reveals; save GSAP for actual pinning/scrubbing.
73
- - **§5.D Forbidden Animation Patterns** - `window.addEventListener('scroll')`, custom scroll calculations in React state, `requestAnimationFrame` loops touching React state. Banned outright.
74
- - **Reduced motion mandatory** for anything `MOTION_INTENSITY > 3` - wrap in `useReducedMotion()` or `@media (prefers-reduced-motion: reduce)`.
75
- - **"Motion claimed, motion shown"** - pages claiming `MOTION_INTENSITY > 4` must actually animate; otherwise drop the dial to 3 and ship clean static.
76
-
77
- **Stack updates**
78
-
79
- - Tailwind v4 default; v3 only when the existing project demands it.
80
- - Motion replaces Framer Motion as the recommended import path.
81
- - Icons: Phosphor / HugeIcons / Radix / Tabler (in priority order). Lucide discouraged. Hand-rolled SVG icons banned.
82
-
83
- ### What's the same
84
-
85
- - Three dials (`DESIGN_VARIANCE`, `MOTION_INTENSITY`, `VISUAL_DENSITY`) - same spirit, expanded with preset matrix and inference rules.
86
- - Anti-slop philosophy - same direction, harder enforcement.
87
- - Performance guardrails - `transform`/`opacity` only, no `top/left/width/height` animation, hardware acceleration.
88
-
89
- ### Why we made v2 (experimental) the new default
90
-
91
- Pre-v2, the original taste-skill set the right direction but was easy for agents to skim past. Production testing showed the same Tells emerging across builds (em-dash everywhere, section-number eyebrows, "Quietly in use at", decorative dots, fake screenshots out of styled divs, broken GSAP scroll triggers).
92
-
93
- v2 closes those gaps with hard rules, canonical code skeletons, and a pre-flight checklist the agent must run. It is the version we now recommend.
94
-
95
- ### How to pin to v1 if you need it
96
-
97
- ```bash
98
- npx skills add https://github.com/Leonxlnx/taste-skill --skill "design-taste-frontend-v1"
99
- ```
100
-
101
- This installs the original SKILL.md unchanged.
102
-
103
- ### Stability note
104
-
105
- v2 (experimental) is the new default AND it is actively iterating. Refinements may land in any pre-release while we converge on v2.0.0 stable. Breaking changes (rename of install name, removal of sections) will be batched and called out clearly when v2.0.0 stable cuts.
106
-
107
- ---
108
-
109
- ## v1 - the original taste-skill
110
-
111
- The original release. Dial-driven philosophy, anti-slop rules, reference vocabulary of pattern names. Preserved at `skills/taste-skill-v1/` and installable as `design-taste-frontend-v1`.
@@ -1,21 +0,0 @@
1
- MIT License
2
-
3
- Copyright (c) 2026 Leonxlnx
4
-
5
- Permission is hereby granted, free of charge, to any person obtaining a copy
6
- of this software and associated documentation files (the "Software"), to deal
7
- in the Software without restriction, including without limitation the rights
8
- to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9
- copies of the Software, and to permit persons to whom the Software is
10
- furnished to do so, subject to the following conditions:
11
-
12
- The above copyright notice and this permission notice shall be included in all
13
- copies or substantial portions of the Software.
14
-
15
- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16
- IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17
- FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18
- AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19
- LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20
- OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21
- SOFTWARE.
@@ -1,212 +0,0 @@
1
- <p align="center">
2
- <img src="assets/readme-banner.webp" alt="Taste Skill - Anti-slop Agent Skills for premium frontends" width="100%" />
3
- </p>
4
-
5
- # Taste Skill
6
-
7
- <p align="center">
8
- <em>The Anti-Slop Frontend Framework for AI Agents</em>
9
- </p>
10
-
11
- <p align="center" style="margin-bottom: 8px;">
12
- <a href="https://tasteskill.dev" title="Visit tasteskill.dev"><img src="assets/readme-buttons/btn-site.webp" alt="Visit tasteskill.dev" height="56" /></a>
13
- </p>
14
-
15
- <h3 align="center">Sponsors</h3>
16
-
17
- <p align="center"><a href="https://animations.dev"><img src="assets/sponsors/animations-dev.webp" alt="animations.dev" width="62" height="62" valign="middle" /></a><sub><a href="https://github.com/emilkowalski"><strong>Emil Kowalski</strong></a> · <a href="https://animations.dev">animations.dev</a></sub></p>
18
-
19
- <p align="center"><a href="https://vercel.com/open-source-program"><img alt="Vercel OSS Program" src="assets/vercel-oss-program-badge.svg" height="24" /></a></p>
20
-
21
- <p align="center"><sub><a href="https://github.com/sponsors/Leonxlnx">Become a sponsor</a></sub></p>
22
-
23
- Portable **Agent Skills** that upgrade AI-built interfaces: stronger layout, typography, motion, and spacing instead of boilerplate-looking UIs. This repo also includes **image-generation skills** for reference boards (web, mobile, brand kits). Pair them with **ChatGPT Images** or similar generators, then hand the frames to Codex, Cursor, or Claude Code for implementation.
24
-
25
- <p align="center">
26
- <a href="LICENSE"><img src="assets/readme-buttons/btn-mit.webp" alt="MIT License" height="45" valign="middle" /></a>
27
- &nbsp;
28
- <a href="https://github.com/vercel-labs/agent-skills"><img src="assets/readme-buttons/btn-agent-skills.webp" alt="Agent Skills compatible" height="45" valign="middle" /></a>
29
- &nbsp;
30
- <a href="#installing"><img src="assets/readme-buttons/btn-tools.webp" alt="Codex, Cursor, Claude" height="45" valign="middle" /></a>
31
- &nbsp;
32
- <a href="https://www.tasteskill.dev/changelog"><img src="assets/readme-buttons/btn-changelog.webp" alt="Changelog" height="45" valign="middle" /></a>
33
- </p>
34
-
35
- ## Disclaimer
36
-
37
- Taste Skill has no official token, coin, or crypto project. Any token using my name, image, or project is unaffiliated and not endorsed by me.
38
-
39
- <p align="center"><sub><a href="#disclaimer">Disclaimer</a> · <a href="#installing">Install</a> · <a href="#skills">Skills</a> · <a href="#settings-taste-skill-only">Settings</a> · <a href="#examples">Examples</a> · <a href="#sponsors">Sponsors</a> · <a href="#research">Research</a> · <a href="#common-questions">FAQ</a> · <a href="#license">License</a></sub></p>
40
-
41
- ## Feedback & Contributions
42
-
43
- We would love your feedback. Suggestions and bug reports:
44
-
45
- - Open a Pull Request or Issue on GitHub
46
- - DM [@lexnlin](https://x.com/lexnlin) or [@blueemi99](https://x.com/blueemi99)
47
- - Email us at [hello@tasteskill.dev](mailto:hello@tasteskill.dev)
48
-
49
- ## Installing
50
-
51
- The [`npx skills add`](https://github.com/vercel-labs/agent-skills) CLI scans the `skills/` folder in this repo, so **all skills below (code and image-generation) install the same way.**
52
-
53
- ```bash
54
- npx skills add https://github.com/Leonxlnx/taste-skill
55
- ```
56
-
57
- Install a single skill by its **install name** (the `name:` field inside the SKILL frontmatter, not the folder name):
58
-
59
- ```bash
60
- npx skills add https://github.com/Leonxlnx/taste-skill --skill "design-taste-frontend"
61
- ```
62
-
63
- You can also copy any `SKILL.md` into your project or paste it into ChatGPT / Codex conversations.
64
-
65
- ### Updating from the previous version
66
-
67
- The default `taste-skill` (install name `design-taste-frontend`) is now **v2 (experimental)**, a substantial rewrite of the original v1. If you already have v1 installed, just re-run the install command and you will be upgraded:
68
-
69
- ```bash
70
- npx skills add https://github.com/Leonxlnx/taste-skill --skill "design-taste-frontend"
71
- ```
72
-
73
- The install name did not change, so no script updates are needed. The newer SKILL.md replaces the older one in place.
74
-
75
- If you depend on the exact behavior of v1 and want to pin to it explicitly:
76
-
77
- ```bash
78
- npx skills add https://github.com/Leonxlnx/taste-skill --skill "design-taste-frontend-v1"
79
- ```
80
-
81
- See [CHANGELOG.md](CHANGELOG.md) for the full v1 to v2 diff and the rationale.
82
-
83
- ## Skills
84
-
85
- Each skill does one job; you do not need all of them at once. **Implementation skills** output code. **Image-generation skills** output reference images only.
86
-
87
- The `Install name` column is the exact value you pass to `--skill`.
88
-
89
- | Skill (folder) | Install name | Description |
90
- | --- | --- | --- |
91
- | **taste-skill** | `design-taste-frontend` | 🆕 **v2 (experimental)** - substantial rewrite of the default skill. Reads the brief, infers the design language, tunes three dials (VARIANCE / MOTION / DENSITY). Brief inference, design-system map, hard em-dash ban, canonical GSAP code skeletons, redesign-audit protocol, strict pre-flight check. Actively iterating toward v2.0.0 stable. |
92
- | **taste-skill-v1** | `design-taste-frontend-v1` | The original v1 of taste-skill, preserved for projects depending on its exact behavior. Use only if the v2 default breaks something specific in your workflow. |
93
- | **gpt-tasteskill** | `gpt-taste` | Stricter variant for GPT/Codex: higher layout variance, stronger GSAP direction, aggressive anti-slop. |
94
- | **image-to-code-skill** | `image-to-code` | Image-first pipeline: generate site references, analyze them, then implement the frontend to match. |
95
- | **redesign-skill** | `redesign-existing-projects` | Existing projects: audit the UI first, then fix layout, spacing, hierarchy, styling. |
96
- | **soft-skill** | `high-end-visual-design` | Polished, calm, expensive UI with softer contrast, whitespace, premium fonts, spring motion. |
97
- | **output-skill** | `full-output-enforcement` | When the model ships half-finished work: full output, no placeholder comments. |
98
- | **minimalist-skill** | `minimalist-ui` | Editorial product UI (Notion/Linear vibes), restrained palette, crisp structure. |
99
- | **brutalist-skill** | `industrial-brutalist-ui` | Hard mechanical language: Swiss type, sharp contrast, experimental layout. |
100
- | **stitch-skill** | `stitch-design-taste` | Google Stitch-compatible rules, including optional `DESIGN.md` export format. |
101
-
102
- ### Image generation skills
103
-
104
- These produce design images only (no code). Use with ChatGPT Images, Codex image mode, or any agent that generates images.
105
-
106
- | Skill (folder) | Install name | Description |
107
- | --- | --- | --- |
108
- | **imagegen-frontend-web** | `imagegen-frontend-web` | Website comps: hero, landing, multi-section with strong typography, spacing, anti-slop art direction. |
109
- | **imagegen-frontend-mobile** | `imagegen-frontend-mobile` | Mobile screens and flows: iOS/Android/cross-platform, mockups, readable type, coherent sets. |
110
- | **brandkit** | `brandkit` | Brand-kit boards: logo directions, palettes, type, identity applications across categories. |
111
-
112
- ### Which one should I use?
113
-
114
- - Start with **taste-skill** for the safest general default. (Now v2 experimental - see what changed in the [CHANGELOG](CHANGELOG.md).)
115
- - If you depend on the exact behavior of the original taste-skill, install **taste-skill-v1** instead.
116
- - Use **gpt-taste** when you want the stricter GPT/Codex-oriented rules and motion/layout enforcement.
117
- - Use **image-to-code-skill** for image → analyze → code website workflows.
118
- - Use **redesign-skill** to improve an existing codebase instead of greenfield styling.
119
- - Add **soft-skill**, **minimalist-skill**, or **brutalist-skill** when the visual direction is already chosen.
120
- - Add **output-skill** if the agent keeps truncating output.
121
- - Use **imagegen-frontend-web**, **imagegen-frontend-mobile**, or **brandkit** when the deliverable is **images** (comps, flows, identity boards), then pass results to your coding agent.
122
-
123
- ### Image-first tip
124
-
125
- For **image-to-code-skill**, state the pipeline in the prompt, e.g.: `follow the skill: generate images, then analyze, then code`.
126
-
127
- ### ChatGPT Images and Codex
128
-
129
- Attach or paste **`imagegen-frontend-web`**, **`imagegen-frontend-mobile`**, or **`brandkit`** and ask for the frames you need, then feed the renders to Codex, Cursor, or Claude Code. Use **image-to-code-skill** when you want one workflow that both generates references and implements the site in code.
130
-
131
- ## Settings (taste-skill only)
132
-
133
- Numbers at the top of the file are 1-10 dials:
134
-
135
- - **DESIGN_VARIANCE**: Layout experimentation (lower: centered/clean · higher: asymmetric/modern).
136
- - **MOTION_INTENSITY**: Animation depth (lower: hover · higher: scroll/magnetic).
137
- - **VISUAL_DENSITY**: Information per viewport (lower: spacious · higher: dense dashboards).
138
-
139
- ## Examples
140
-
141
- Created with taste-skill:
142
-
143
- <p>
144
- <img src="examples/floria-top.webp" width="400" />
145
- <img src="examples/floria-bottom.webp" width="400" />
146
- </p>
147
-
148
- ## Support the project
149
-
150
- If Taste Skill helps you, consider sponsoring:
151
-
152
- [Sponsor on GitHub](https://github.com/sponsors/Leonxlnx)
153
-
154
- ### Current Sponsors
155
-
156
- <a href="https://animations.dev" title="Emil Kowalski · animations.dev"><img src="assets/sponsors/animations-dev.webp" width="62" height="62" alt="Emil Kowalski" title="Emil Kowalski · animations.dev" /></a>
157
- <a href="https://github.com/dnakov"><img src="https://github.com/dnakov.png" width="40" height="40" style="border-radius:50%" alt="dnakov" title="dnakov" /></a>
158
- <a href="https://github.com/AkramReshad"><img src="https://github.com/AkramReshad.png" width="40" height="40" style="border-radius:50%" alt="AkramReshad" title="AkramReshad" /></a>
159
- <a href="https://github.com/ajmalaksar25"><img src="https://github.com/ajmalaksar25.png" width="40" height="40" style="border-radius:50%" alt="ajmalaksar25" title="ajmalaksar25" /></a>
160
- <a href="https://github.com/krikkkk"><img src="https://github.com/krikkkk.png" width="40" height="40" style="border-radius:50%" alt="krikkkk" title="krikkkk" /></a>
161
- <a href="https://github.com/navanchauhan"><img src="https://github.com/navanchauhan.png" width="40" height="40" style="border-radius:50%" alt="navanchauhan" title="navanchauhan" /></a>
162
- <a href="https://github.com/robinebers"><img src="https://github.com/robinebers.png" width="40" height="40" style="border-radius:50%" alt="robinebers" title="robinebers" /></a>
163
- <a href="https://github.com/JKc66"><img src="https://github.com/JKc66.png" width="40" height="40" style="border-radius:50%" alt="JKc66" title="JKc66" /></a>
164
- <a href="https://github.com/u2393696078-rgb"><img src="https://github.com/u2393696078-rgb.png" width="40" height="40" style="border-radius:50%" alt="u2393696078-rgb" title="u2393696078-rgb" /></a>
165
- <a href="https://github.com/a-human-created-this"><img src="https://github.com/a-human-created-this.png" width="40" height="40" style="border-radius:50%" alt="a-human-created-this" title="a-human-created-this" /></a>
166
- <a href="https://github.com/AtharvaJaiswal005"><img src="https://github.com/AtharvaJaiswal005.png" width="40" height="40" style="border-radius:50%" alt="AtharvaJaiswal005" title="AtharvaJaiswal005" /></a>
167
- <a href="https://github.com/ghughes7"><img src="https://github.com/ghughes7.png" width="40" height="40" style="border-radius:50%" alt="ghughes7" title="ghughes7" /></a>
168
- <a href="https://github.com/mccun934"><img src="https://github.com/mccun934.png" width="40" height="40" style="border-radius:50%" alt="mccun934" title="mccun934" /></a>
169
- <a href="https://github.com/techmedic5"><img src="https://github.com/techmedic5.png" width="40" height="40" style="border-radius:50%" alt="techmedic5" title="techmedic5" /></a>
170
- <a href="https://github.com/bytewerk-dev"><img src="https://github.com/bytewerk-dev.png" width="40" height="40" style="border-radius:50%" alt="bytewerk-dev" title="bytewerk-dev" /></a>
171
-
172
- <p align="center">
173
- <a href="https://www.star-history.com/leonxlnx/taste-skill">
174
- <picture>
175
- <source media="(prefers-color-scheme: dark)" srcset="https://api.star-history.com/badge?repo=Leonxlnx/taste-skill&theme=dark" />
176
- <source media="(prefers-color-scheme: light)" srcset="https://api.star-history.com/badge?repo=Leonxlnx/taste-skill" />
177
- <img alt="Star History Rank" src="https://api.star-history.com/badge?repo=Leonxlnx/taste-skill" />
178
- </picture>
179
- </a>
180
- </p>
181
-
182
- ## Research
183
-
184
- Background writing that shaped these skills lives in [`research/`](research/).
185
-
186
- ## Star History
187
-
188
- <a href="https://www.star-history.com/?repos=Leonxlnx%2Ftaste-skill&type=date&legend=top-left">
189
- <picture>
190
- <source media="(prefers-color-scheme: dark)" srcset="https://api.star-history.com/chart?repos=Leonxlnx/taste-skill&type=date&theme=dark&legend=top-left" />
191
- <source media="(prefers-color-scheme: light)" srcset="https://api.star-history.com/chart?repos=Leonxlnx/taste-skill&type=date&legend=top-left" />
192
- <img alt="Star History Chart" src="https://api.star-history.com/chart?repos=Leonxlnx/taste-skill&type=date&legend=top-left" />
193
- </picture>
194
- </a>
195
-
196
- ## Common Questions
197
-
198
- **How is this different from other AI design skills?**
199
- Multiple specialized variants, adjustable dials in key skills, anti-repetition rules informed by dedicated research. All are framework agnostic across major coding agents.
200
-
201
- **Does it work with React, Vue, Svelte?**
202
- Yes. Rules target design intent, not a single framework API.
203
-
204
- **What is SKILL.md?**
205
- A portable instruction file agents can load automatically; install via `npx skills add` or by copying into a repo or conversation.
206
-
207
- **Do image-generation skills install with `npx skills add`?**
208
- Yes. They live under `skills/` alongside the code skills so the same CLI discovers them.
209
-
210
- ## License
211
-
212
- [MIT License](LICENSE) · Copyright (c) 2026 Leonxlnx
File without changes
@@ -1,5 +0,0 @@
1
- <svg xmlns="http://www.w3.org/2000/svg" width="248" height="44" viewBox="0 0 248 44" role="img" aria-label="Visit tasteskill.dev">
2
- <rect width="248" height="44" rx="8" fill="#0a0a0a" stroke="#ffffff" stroke-width="1.25"/>
3
- <image href="data:image/webp;base64,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" x="12" y="8" width="28" height="28" preserveAspectRatio="xMidYMid meet"/>
4
- <text x="52" y="28" fill="#ffffff" font-family="ui-sans-serif, system-ui, sans-serif" font-size="14" font-weight="600">tasteskill.dev</text>
5
- </svg>