ai-developer-skill-os 3.1.5 → 5.0.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/README.md +15 -19
- package/_template/SKILL.md +37 -133
- package/framework/KERNEL.md +58 -0
- package/framework/bias-library/cosmetic-refactor.md +21 -0
- package/framework/bias-library/enterprise-crud.md +21 -0
- package/framework/bias-library/fake-ui-slop.md +20 -0
- package/framework/bias-library/hallucinated-tools.md +20 -0
- package/framework/bias-library/missing-ui-states.md +19 -0
- package/framework/bias-library/over-indexing.md +20 -0
- package/framework/bias-library/swallow-errors.md +19 -0
- package/framework/bias-library/ui-only-security.md +17 -0
- package/framework/dial-library/complexity-budget.md +13 -0
- package/framework/dial-library/granularity.md +13 -0
- package/framework/dial-library/optimization-strategy.md +13 -0
- package/framework/dial-library/strictness.md +13 -0
- package/framework/rule-library/delegation-only.md +9 -0
- package/framework/rule-library/minimal-diff.md +9 -0
- package/package.json +1 -1
- package/skills/qk-access-policy/SKILL.md +40 -30
- package/skills/qk-ai-builder/SKILL.md +39 -30
- package/skills/qk-api-lifecycle/SKILL.md +39 -54
- package/skills/qk-bug-resolution/SKILL.md +39 -58
- package/skills/qk-context-loader/SKILL.md +36 -35
- package/skills/qk-data-lifecycle/SKILL.md +37 -49
- package/skills/qk-db-optimizer/SKILL.md +37 -44
- package/skills/qk-design-to-code/SKILL.md +40 -35
- package/skills/qk-docs/SKILL.md +37 -43
- package/skills/qk-engineering-standard/SKILL.md +39 -51
- package/skills/qk-feature-delivery/SKILL.md +39 -56
- package/skills/qk-help/SKILL.md +36 -28
- package/skills/qk-orchestrator/SKILL.md +40 -43
- package/skills/qk-policy-engine/SKILL.md +36 -41
- package/skills/qk-production-release/SKILL.md +40 -36
- package/skills/qk-project-bootstrap/SKILL.md +39 -32
- package/skills/qk-project-health/SKILL.md +36 -44
- package/skills/qk-project-memory/SKILL.md +38 -24
- package/skills/qk-system-evolution/SKILL.md +36 -51
- package/skills/qk-ui-audit/SKILL.md +37 -46
- package/skills/qk-ui-system-builder/SKILL.md +38 -29
- package/skills/qk-validation-gate/SKILL.md +34 -47
- package/taste-skill/.claude-plugin/marketplace.json +20 -0
- package/taste-skill/.claude-plugin/plugin.json +19 -0
- package/taste-skill/.github/FUNDING.yml +1 -0
- package/taste-skill/.github/copilot-instructions.md +11 -0
- package/taste-skill/CHANGELOG.md +111 -0
- package/taste-skill/LICENSE +21 -0
- package/taste-skill/README.md +212 -0
- package/taste-skill/assets/.gitkeep +0 -0
- package/taste-skill/assets/readme-banner.webp +0 -0
- package/taste-skill/assets/readme-buttons/btn-agent-skills.webp +0 -0
- package/taste-skill/assets/readme-buttons/btn-changelog.webp +0 -0
- package/taste-skill/assets/readme-buttons/btn-mit.webp +0 -0
- package/taste-skill/assets/readme-buttons/btn-site.webp +0 -0
- package/taste-skill/assets/readme-buttons/btn-tools.webp +0 -0
- package/taste-skill/assets/readme-cta-tasteskill.svg +5 -0
- package/taste-skill/assets/sponsors/animations-dev.webp +0 -0
- package/taste-skill/assets/sponsors/emil-animations-dev.webp +0 -0
- package/taste-skill/assets/taste-skill-logo.png +0 -0
- package/taste-skill/assets/taste-skill-logo.webp +0 -0
- package/taste-skill/assets/vercel-oss-program-badge.svg +44 -0
- package/taste-skill/examples/floria-bottom.webp +0 -0
- package/taste-skill/examples/floria-full.webp +0 -0
- package/taste-skill/examples/floria-top.webp +0 -0
- package/taste-skill/research/README.md +8 -0
- package/taste-skill/research/laziness/README.md +25 -0
- package/taste-skill/research/laziness/findings/empirical-results.md +58 -0
- package/taste-skill/research/laziness/findings/references.md +20 -0
- package/taste-skill/research/laziness/remediation/architectural-patterns.md +55 -0
- package/taste-skill/research/laziness/remediation/parameter-tuning.md +44 -0
- package/taste-skill/research/laziness/remediation/prompt-engineering.md +52 -0
- package/taste-skill/research/laziness/remediation/reference-prompts.md +79 -0
- package/taste-skill/research/laziness/root-causes/cognitive-shortcuts.md +23 -0
- package/taste-skill/research/laziness/root-causes/output-limits.md +39 -0
- package/taste-skill/research/laziness/root-causes/rlhf-and-compute.md +27 -0
- package/taste-skill/research/laziness/root-causes/training-data-bias.md +28 -0
- package/taste-skill/scripts/build-emil-sponsor-row.mjs +41 -0
- package/taste-skill/scripts/convert-readme-assets-webp.mjs +142 -0
- package/taste-skill/scripts/process-readme-buttons.mjs +108 -0
- package/taste-skill/scripts/process-sponsor-badge.mjs +83 -0
- package/taste-skill/skill.sh +25 -0
- package/taste-skill/skills/brandkit/SKILL.md +798 -0
- package/taste-skill/skills/brutalist-skill/SKILL.md +92 -0
- package/taste-skill/skills/gpt-tasteskill/SKILL.md +74 -0
- package/taste-skill/skills/image-to-code-skill/SKILL.md +1228 -0
- package/taste-skill/skills/imagegen-frontend-mobile/SKILL.md +1465 -0
- package/taste-skill/skills/imagegen-frontend-web/SKILL.md +987 -0
- package/taste-skill/skills/llms.txt +13 -0
- package/taste-skill/skills/minimalist-skill/SKILL.md +85 -0
- package/taste-skill/skills/output-skill/SKILL.md +49 -0
- package/taste-skill/skills/redesign-skill/SKILL.md +178 -0
- package/taste-skill/skills/soft-skill/SKILL.md +98 -0
- package/taste-skill/skills/stitch-skill/DESIGN.md +121 -0
- package/taste-skill/skills/stitch-skill/SKILL.md +184 -0
- package/taste-skill/skills/taste-skill/SKILL.md +1206 -0
- package/taste-skill/skills/taste-skill-v1/SKILL.md +226 -0
|
@@ -1,66 +1,57 @@
|
|
|
1
1
|
---
|
|
2
2
|
name: qk-ui-audit
|
|
3
|
-
version:
|
|
4
|
-
updated: 2026-07-
|
|
3
|
+
version: 5.0.0
|
|
4
|
+
updated: 2026-07-03
|
|
5
5
|
description: Kiểm toán giao diện (UI) để đảm bảo tính nhất quán, khả năng truy cập (A11y), độ phản hồi (Responsive) và hiệu suất.
|
|
6
6
|
category: validation
|
|
7
|
-
behavior: static-analysis
|
|
8
|
-
intent: review-code
|
|
9
|
-
priority: medium
|
|
10
7
|
tags: [ui, audit, frontend, a11y, responsive]
|
|
11
8
|
platforms: [claude-code, cursor, windsurf, gemini-cli]
|
|
12
|
-
trigger: User asks to check the UI, review styling, or run an audit on a component.
|
|
13
|
-
inputs: [Target UI component, File path]
|
|
14
|
-
outputs: [UI Audit Score, Fix recommendations]
|
|
15
|
-
allowed_tools: [grep_search, read_file]
|
|
16
|
-
pipeline: [analyze, review, validate, complete]
|
|
17
9
|
---
|
|
18
10
|
|
|
19
|
-
# 🛠️ qk-ui-audit
|
|
11
|
+
# 🛠️ qk-ui-audit
|
|
20
12
|
|
|
21
|
-
> **
|
|
13
|
+
> **Inheritance:** Kỹ năng này tuân thủ Kiến trúc v5.0 của `framework/KERNEL.md`.
|
|
14
|
+
> Output bắt buộc là Decision Summary.
|
|
22
15
|
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
1. **Analyze (Scan UI):**
|
|
26
|
-
- Read the UI component's source code.
|
|
27
|
-
- Look for inline styles (`style={{...}}`) and hardcoded magic numbers (e.g., `px`, `%` instead of standard tokens).
|
|
28
|
-
2. **Review (Consistency & Responsive):**
|
|
29
|
-
- Check if standard Design System tokens (e.g., Tailwind classes like `p-4`, `text-lg`) are used.
|
|
30
|
-
- Check for mobile-first implementation (e.g., base classes for mobile, `md:` for desktop).
|
|
31
|
-
3. **Validate (Accessibility - A11y):**
|
|
32
|
-
- Verify `<img>` tags have `alt` attributes.
|
|
33
|
-
- Verify `<button>` tags without text have `aria-label`.
|
|
34
|
-
- Verify interactive `<div>` elements have `role="button"` and `tabIndex`.
|
|
35
|
-
4. **Complete (Report):**
|
|
36
|
-
- Calculate a rough score (0-100) based on violations.
|
|
16
|
+
---
|
|
37
17
|
|
|
38
|
-
##
|
|
18
|
+
## 🎯 Mission (Scope)
|
|
19
|
+
- ✅ Audit UI/UX, rà soát Design Tokens, A11y, và Responsive.
|
|
20
|
+
- ❌ Do NOT tự tiện sửa code trừ khi user ra lệnh.
|
|
39
21
|
|
|
40
|
-
|
|
41
|
-
- **Evidence Based:** Point out the exact line number where the violation occurs.
|
|
22
|
+
---
|
|
42
23
|
|
|
43
|
-
##
|
|
24
|
+
## ⚙️ Capabilities (Cognitive Pipeline)
|
|
25
|
+
```yaml
|
|
26
|
+
Pipeline:
|
|
27
|
+
- inference
|
|
28
|
+
- planning
|
|
29
|
+
- execution
|
|
30
|
+
- bias-review
|
|
31
|
+
- ship-check
|
|
32
|
+
```
|
|
44
33
|
|
|
45
|
-
|
|
46
|
-
Does the component contain hardcoded `#hex` colors or `px` values?
|
|
47
|
-
├── YES → Deduct Consistency score. Recommend using Design Tokens.
|
|
48
|
-
└── NO → Pass.
|
|
34
|
+
---
|
|
49
35
|
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
36
|
+
## 🎛️ Dials (Hành vi)
|
|
37
|
+
```yaml
|
|
38
|
+
Dials:
|
|
39
|
+
- id: aesthetic-vibe
|
|
40
|
+
- id: strictness
|
|
53
41
|
```
|
|
54
42
|
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
1. `complete`: Generate the UI Audit Report.
|
|
43
|
+
---
|
|
58
44
|
|
|
59
|
-
##
|
|
45
|
+
## 🛡️ Biases (Sửa lỗi mặc định)
|
|
46
|
+
```yaml
|
|
47
|
+
Biases:
|
|
48
|
+
- id: cosmetic-refactor # (Audit format code thay vì audit UX/Tokens)
|
|
49
|
+
```
|
|
60
50
|
|
|
61
|
-
|
|
51
|
+
---
|
|
62
52
|
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
-
|
|
53
|
+
## 🛫 Ship Criteria
|
|
54
|
+
```yaml
|
|
55
|
+
Rules:
|
|
56
|
+
- id: delegation-only # (Chỉ đọc và Report)
|
|
57
|
+
```
|
|
@@ -1,47 +1,56 @@
|
|
|
1
1
|
---
|
|
2
2
|
name: qk-ui-system-builder
|
|
3
|
-
version:
|
|
4
|
-
updated: 2026-07-
|
|
3
|
+
version: 5.0.0
|
|
4
|
+
updated: 2026-07-03
|
|
5
5
|
description: Xây dựng và duy trì Design Systems, Token extraction, và các thư viện UI dùng chung.
|
|
6
6
|
category: frontend
|
|
7
|
-
behavior: development
|
|
8
|
-
intent: implement-feature
|
|
9
|
-
priority: medium
|
|
10
7
|
tags: [design-system, tokens, shared-components, storybook]
|
|
11
8
|
platforms: [claude-code, cursor, windsurf, gemini-cli]
|
|
12
|
-
trigger: User asks to create a shared component (Button, Input) or extract a color palette.
|
|
13
|
-
inputs: [UI Requirements]
|
|
14
|
-
outputs: [Shared Components, Design Tokens]
|
|
15
|
-
allowed_tools: [write_to_file, read_file]
|
|
16
|
-
pipeline: [analyze, implement, engineering-standard, validate, complete]
|
|
17
9
|
---
|
|
18
10
|
|
|
19
|
-
# 🛠️ qk-ui-system-builder
|
|
11
|
+
# 🛠️ qk-ui-system-builder
|
|
20
12
|
|
|
21
|
-
> **
|
|
13
|
+
> **Inheritance:** Kỹ năng này tuân thủ Kiến trúc v5.0 của `framework/KERNEL.md`.
|
|
14
|
+
> Output bắt buộc là Decision Summary.
|
|
22
15
|
|
|
23
|
-
|
|
16
|
+
---
|
|
17
|
+
|
|
18
|
+
## 🎯 Mission (Scope)
|
|
19
|
+
- ✅ Xây dựng Shared Components (Dumb components).
|
|
20
|
+
- ❌ Do NOT nhét logic API hoặc Fetch data vào core component.
|
|
24
21
|
|
|
25
|
-
|
|
26
|
-
- Extract raw colors and typography into CSS Variables or Tailwind config.
|
|
27
|
-
2. **Implement (Component Factory):**
|
|
28
|
-
- Build foundational components (`<Button>`, `<TextInput>`) using generic polymorphic props if possible (e.g., `as="a"` or `as="button"`).
|
|
29
|
-
3. **Validate (Story/Documentation):**
|
|
30
|
-
- Ensure every variation (primary, secondary, disabled) is accounted for.
|
|
22
|
+
---
|
|
31
23
|
|
|
32
|
-
##
|
|
24
|
+
## ⚙️ Capabilities (Cognitive Pipeline)
|
|
25
|
+
```yaml
|
|
26
|
+
Pipeline:
|
|
27
|
+
- inference
|
|
28
|
+
- planning
|
|
29
|
+
- execution
|
|
30
|
+
- bias-review
|
|
31
|
+
- ship-check
|
|
32
|
+
```
|
|
33
33
|
|
|
34
|
-
|
|
35
|
-
- **Extendable:** Always allow users to pass `className` and `...props` to the base element.
|
|
34
|
+
---
|
|
36
35
|
|
|
37
|
-
##
|
|
36
|
+
## 🎛️ Dials (Hành vi)
|
|
37
|
+
```yaml
|
|
38
|
+
Dials:
|
|
39
|
+
- id: strictness
|
|
40
|
+
```
|
|
38
41
|
|
|
39
|
-
|
|
40
|
-
2. `complete`: Output the Design System Report.
|
|
42
|
+
---
|
|
41
43
|
|
|
42
|
-
##
|
|
44
|
+
## 🛡️ Biases (Sửa lỗi mặc định)
|
|
45
|
+
```yaml
|
|
46
|
+
Biases:
|
|
47
|
+
- id: missing-ui-states
|
|
48
|
+
```
|
|
43
49
|
|
|
44
|
-
|
|
50
|
+
---
|
|
45
51
|
|
|
46
|
-
|
|
47
|
-
|
|
52
|
+
## 🛫 Ship Criteria
|
|
53
|
+
```yaml
|
|
54
|
+
Rules:
|
|
55
|
+
- id: end-to-end-validation
|
|
56
|
+
```
|
|
@@ -1,67 +1,54 @@
|
|
|
1
1
|
---
|
|
2
2
|
name: qk-validation-gate
|
|
3
|
-
version:
|
|
4
|
-
updated: 2026-07-
|
|
3
|
+
version: 5.0.0
|
|
4
|
+
updated: 2026-07-03
|
|
5
5
|
description: Cổng kiểm tra chất lượng bắt buộc (Test, Lint, Security).
|
|
6
6
|
category: validation
|
|
7
|
-
behavior: validation
|
|
8
|
-
intent: validate
|
|
9
|
-
priority: critical
|
|
10
7
|
tags: [ci, testing, linting, security, gatekeeper]
|
|
11
8
|
platforms: [claude-code, cursor, windsurf, gemini-cli]
|
|
12
|
-
trigger: Triggered automatically as the final step in a pipeline, or manually when the user asks to "check the code".
|
|
13
|
-
inputs: [Modified files]
|
|
14
|
-
outputs: [Validation Report (Pass/Fail)]
|
|
15
|
-
allowed_tools: [run_command, grep_search]
|
|
16
|
-
pipeline: [analyze, validate, complete]
|
|
17
9
|
---
|
|
18
10
|
|
|
19
|
-
# 🛠️ qk-validation-gate
|
|
11
|
+
# 🛠️ qk-validation-gate
|
|
20
12
|
|
|
21
|
-
> **
|
|
13
|
+
> **Inheritance:** Kỹ năng này tuân thủ Kiến trúc v5.0 của `framework/KERNEL.md`.
|
|
14
|
+
> Output bắt buộc là Decision Summary.
|
|
22
15
|
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
1. **Analyze (Static Sweep):**
|
|
26
|
-
- Use `grep_search` to scan modified files for garbage code: `console.log(`, `debugger;`, `// TODO`, `@ts-ignore`.
|
|
27
|
-
- Scan for hardcoded secrets: `API_KEY=`, `Bearer ey...`.
|
|
28
|
-
2. **Validate (Automated Checks):**
|
|
29
|
-
- Run the Linter: `npm run lint` or `eslint .`.
|
|
30
|
-
- Run the Type Checker: `tsc --noEmit`.
|
|
31
|
-
- Run the Tests: `npm run test` (if applicable).
|
|
32
|
-
3. **Complete (Report & Auto-fix):**
|
|
33
|
-
- If minor lint errors exist, attempt an auto-fix (`npm run lint --fix`).
|
|
34
|
-
- If tests fail, report the exact failure to the user. Do NOT pretend it passed.
|
|
16
|
+
---
|
|
35
17
|
|
|
36
|
-
##
|
|
18
|
+
## 🎯 Mission (Scope)
|
|
19
|
+
- ✅ Chạy các lệnh kiểm định (Test, Lint) thực tế.
|
|
20
|
+
- ❌ Do NOT giả vờ là test đã pass mà không gọi tool CLI.
|
|
37
21
|
|
|
38
|
-
|
|
39
|
-
- **No Force:** Never use `--force` or `--no-verify` flags.
|
|
40
|
-
- **Real Execution:** You MUST run the actual CLI commands using `run_command` and wait for the output.
|
|
22
|
+
---
|
|
41
23
|
|
|
42
|
-
##
|
|
24
|
+
## ⚙️ Capabilities (Cognitive Pipeline)
|
|
25
|
+
```yaml
|
|
26
|
+
Pipeline:
|
|
27
|
+
- inference
|
|
28
|
+
- execution
|
|
29
|
+
- ship-check
|
|
30
|
+
```
|
|
43
31
|
|
|
44
|
-
|
|
45
|
-
Did `npm run lint` return errors?
|
|
46
|
-
├── YES → Are they auto-fixable?
|
|
47
|
-
│ ├── YES → Run `npm run lint --fix`.
|
|
48
|
-
│ └── NO → Manually fix the file and re-run.
|
|
49
|
-
└── NO → Proceed to Type Checking.
|
|
32
|
+
---
|
|
50
33
|
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
34
|
+
## 🎛️ Dials (Hành vi)
|
|
35
|
+
```yaml
|
|
36
|
+
Dials:
|
|
37
|
+
- id: strictness
|
|
54
38
|
```
|
|
55
39
|
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
1. `complete`: Once all checks pass, output the Validation Report.
|
|
40
|
+
---
|
|
59
41
|
|
|
60
|
-
##
|
|
42
|
+
## 🛡️ Biases (Sửa lỗi mặc định)
|
|
43
|
+
```yaml
|
|
44
|
+
Biases:
|
|
45
|
+
- id: hallucinated-tools
|
|
46
|
+
```
|
|
61
47
|
|
|
62
|
-
|
|
48
|
+
---
|
|
63
49
|
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
-
|
|
50
|
+
## 🛫 Ship Criteria
|
|
51
|
+
```yaml
|
|
52
|
+
Rules:
|
|
53
|
+
- id: end-to-end-validation
|
|
54
|
+
```
|
|
@@ -0,0 +1,20 @@
|
|
|
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
|
+
}
|
|
@@ -0,0 +1,19 @@
|
|
|
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
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
github: Leonxlnx
|
|
@@ -0,0 +1,11 @@
|
|
|
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.
|
|
@@ -0,0 +1,111 @@
|
|
|
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`.
|
|
@@ -0,0 +1,21 @@
|
|
|
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.
|