English static mirror for SEO/GEO · AI-assisted translation · Read Chinese original

taste-skill Deep Dive: Giving AI Coding Agents Design Taste Through a Disciplined Prompt File

Forum topic · 二一 · 2026-08-23

Summary

taste-skill (github.com/Leonxlnx/taste-skill) is an "Anti-Slop Frontend Framework for AI Agents" — an 87KB markdown rulebook for Claude Code, Cursor, Codex, Gemini CLI, v0, and Lovable that suppresses the generic look of AI-generated frontends. This deep-dive analysis explains its pathology model (why AI pages look alike: font, gradient, 3-card grid, stock copy, fadeInUp), its flagship mechanics — three tunable knobs (DESIGN_VARIANCE 8, MOTION_INTENSITY 6, VISUAL_DENSITY 4) that gate every rule, binary zero-tolerance bans like the em-dash prohibition, and a 62-item mechanical pre-flight checklist — plus a family of 13 SKILL.md files. It also distills seven transferable prompt-engineering techniques, compares the ecosystem (79,595 stars as of 2026-08-24, second to ui-ux-pro-max-skill's 120K), and raises six critiques: decorative academic citations, ~21.8K token resident cost, framework coupling, possible fake-star activity, lack of deterministic enforcement, and inaccurate secondary coverage. Practical guidance: install a distilled 10-12KB core for landing pages, patch Chinese typography rules, and pair it with a self-built regex linter in CI as a second line of defense.

This post is a deep-dive research report on taste-skill, an "Anti-Slop Frontend Framework for AI Agents". Data snapshot: 2026-08-24 (79,595 stars, 5,448 forks, MIT license, created 2026-02-19 by Leon Lin, Munich; site: tasteskill.dev).

What it is

taste-skill is not a design system, component library, or model fine-tune. It is a pure-text prompt file (flagship skills/taste-skill/SKILL.md: 1,206 lines / 87,253 bytes / ~21,813 tokens) fed to coding agents like Claude Code, Cursor, Codex, Gemini CLI, v0, and Lovable. The repo contains 13 SKILL.md files: one flagship core, an image pipeline trio (imagegen-frontend-mobile, imagegen-frontend-web, image-to-code-skill, ~113KB combined), style skins (soft-skill, brutalist-skill, minimalist-skill), and workflow skills (redesign-skill, stitch-skill, output-skill, gpt-tasteskill).

The pathology: why AI frontends look the same

AI-generated landing pages share enumerable fingerprints:

| # | Dimension | Fingerprint | |---|---|---| | 01 | Typography | Inter as display font at 72/90/120px, line-height 1.0 | | 02 | Color | Indigo-to-blue 135° diagonal gradient | | 03 | Layout | Three equal cards after the hero, icons top-left | | 04 | Copy | "Beautiful experiences" / "Build something amazing" | | 05 | Motion | Uniform fadeInUp 0.3s ease-out, no stagger |

Root causes: L1 training-data bias (SaaS templates dominate, the mode becomes the default), L2 RLHF rewarding safety, L3 cognitive shortcut (models always pick the first option, causing collapse), L4 output limits. The diagnosis: LLMs have taste but sample the distribution's mode — so the fix is to remove the mode from the candidate pool before generation. That is exactly where taste-skill operates.

Key mechanics of the flagship file

  • Three knobs: DESIGN_VARIANCE: 8, MOTION_INTENSITY: 6, VISUAL_DENSITY: 4 (1–10 scales). Crucially, rules are genuinely gated by the knobs: DESIGN_VARIANCE > 4 bans centered heroes; VISUAL_DENSITY > 7 bans generic card containers; MOTION_INTENSITY > 3 mandates prefers-reduced-motion support ("non-negotiable"). A bidirectional rule — "Motion claimed, motion shown" — means claiming 7 but shipping a static page is judged broken; alternatively dial down to 3 and ship a clean static page.
  • Binary zero-tolerance bans: The em-dash ban (§9.G) explicitly explains why wording must be binary — "use sparingly" gets diluted in long contexts, "zero em-dashes" can be verified character-by-character. Similar locks: Page Theme Lock, Shape Consistency Lock, Marquee Max-One, No Fake Preview, Scroll Listener Ban.
  • §14 Final Pre-Flight: 62 mechanical checks that convert the undecidable question "does this page have taste" into 62 decidable checkboxes. The file's structure — how to make a system that doesn't understand aesthetics enforce aesthetic discipline — is worth more than its content, and is portable to any domain.

Seven transferable prompt-engineering techniques

1. Binary over graded: rewrite "use X less" as "count of X = zero". 2. Named bans down to hex codes and characters — no vague "avoid clichés". 3. Parameterized knobs gating rules (must be truly wired, not decorative). 4. Mechanical pre-flight checklists converting subjective criteria into verifiable items — directly applicable to code review and QA. 5. Pseudo-randomness to break first-option collapse: gpt-tasteskill simulates a Python random.choice seeded from the prompt's character count before coding. 6. Cross-modal detour: image-to-code generates a reference image first, then writes code from it, bypassing the text-to-code pathway polluted by training data. 7. Explicit scope boundaries: §13 declares six out-of-scope brief types and instructs the agent to say so and point to the right tool.

Ecosystem and context

Growth was steep (~25K stars in May 2026 → 79,595 in August), but the fork/star ratio of ~6.8% suggests many stars are "saved for later". It is second in its category: nextlevelbuilder/ui-ux-pro-max-skill leads with 120,138 stars; Nutlope/hallmark has 26,710. Only Laith0003/ux-skill (63 stars) offers CI-blocking regex linting. Monetization is sponsor-based (interfaces.dev, React Bits, animations.dev, IMG.LY, Kimi, etc.); the README explicitly states there is no official token/crypto project.

Six critiques

1. Academic veneer: the research/laziness references are miscited or unverifiable (e.g., the "+45% tip" claim actually comes from a thebes X experiment; "deep breath 34%→80%" is from OPRO, arXiv:2309.03409). Rules' validity comes from production testing, not the papers. 2. Token cost: ~21.8K tokens resident for the flagship; ~75.5K for the whole family. Issue #67 proposes progressive disclosure (~12KB core + references). 3. Framework coupling: §3 binds React/Next/Motion/GSAP while README claims framework-agnostic (Issue #86). 4. Star-farming controversy: Issue #48 sampled 297 accounts, 11 judged likely fake (3.7%); repo classified clean — insufficient evidence, but star count is not a quality signal. 5. No enforcement: rules live in the model's judgment, not deterministic gates. Best quote: "Taste lives in the model. Slop lives in the output. A prompt fights taste. A linter fights slop." 6. Secondary coverage is unreliable: a popular dev.to article fabricated skill names and wrong knob ranges; some Chinese coverage wrongly calls it the category leader.

Practical adoption advice

| Scenario | Recommendation | |---|---| | Landing pages, portfolios, marketing sites | Install (best ROI) | | Existing project redesign | Install redesign-skill | | No-placeholder, complete output | Install output-skill (2.6KB, best value) | | Dashboards, data tables, code editors | Don't install (§13 exclusion) | | Enterprise with strict design system | Don't install; borrow the techniques only | | Version-locked consistency needs | Wait for v2.0.0 stable |

Three integration modes, with the second recommended: ① full install (~21.8K tokens resident); ② distilled install (~10–12KB core: keep §0 brief inference, §9 negative list, §14 pre-flight; cut §2 design-system map, GSAP skeletons, block-library schema) keeping ~90% of effect at <30% cost; ③ techniques only, ~30 lines into your own CLAUDE.md.

Chinese-content patch: replace the em-dash ban with Chinese-specific binary bans (unified full-width quotes, no English ellipsis/tilde); add CJK line-breaking rules and 0.15em spacing between CJK and Latin; supply a Chinese font stack (Songti SC / Source Han Serif SC for display — rare in training data, so a strong de-AI signal; PingFang SC for body); raise body line-height to 1.8+ and reduce display sizes ~10%.

Two-layer defense: generate with the distilled core, then audit with 20–40 regex linter rules in CI (block on em-dashes, large Inter, indigo gradients, triple grid-cols-3 cards, uniform fadeInUp; warn on the rest). The 62 pre-flight items are a ready-made linter requirements document.

Conclusion

taste-skill encodes design taste into agent-executable rules: real problem, genuinely creative mechanics (knobs, binary bans, pre-flight), but wrapped in inflated hype and structurally missing deterministic verification. Treat it as an "aesthetic discipline booster for frontend agents" — worth a distilled trial for prototypes and marketing pages, hold for enterprise/dashboard use until v2 stable, and always layer a self-built linter as the second line of defense.

--- *Reference: github.com/Leonxlnx/taste-skill | tasteskill.dev | MIT | Data snapshot 2026-08-24*

Tags

#taste-skill#ai-agents#frontend-design#prompt-engineering#claude-code#cursor#anti-slop#code-quality

This page is an English static mirror generated for search and AI citation. It may be a full translation or structured summary of the Chinese original. Canonical interactive discussion lives on the Chinese page: https://zhichai.net/topic/178633907