每日一个开源项目(第125篇):taste-skill - 给 AI 装上审美,让前端不再千篇一律

作者:冬奇Lab日期:2026/6/9

引言

"AI 生成的前端,为什么看起来都一个样?"

这是"每日一个开源项目"系列的第125篇文章。今天的主角是 taste-skill——一套给 AI Agent 配上「审美」的前端设计技能包。

让 AI 写前端代码已经很普遍了,但结果往往大同小异:居中排版、蓝色主色调、卡片式布局、圆角阴影,整齐但无聊。问题不在于 AI 不会写代码,而在于它没有任何关于「这个设计应该有什么气质」的约束。

taste-skill 的答案很直接:用一套经过研究积累的设计规则文件,告诉 AI 什么是品位,什么是 slop。不是模板,是约束原则——让 AI 自己推断出适合当前项目的设计语言。

你将学到什么

  • AI 生成前端为何容易陷入「slop 陷阱」,以及 taste-skill 的破局思路
  • SKILL.md 机制:如何用一个文件改变 AI 的设计决策
  • 13 种技能风格的定位与选择(极简 / 粗野主义 / 柔和 / 图片转代码等)
  • 三个可调旋钮:DESIGN_VARIANCE、MOTION_INTENSITY、VISUAL_DENSITY
  • 如何在 Claude Code、Cursor、Codex 等主流工具中快速集成

前置知识

  • 基础前端开发经验(HTML/CSS/JS)
  • 使用过 Claude Code、Cursor 或类似 AI 编程工具
  • 对设计风格有基本感知(不需要专业设计背景)

项目背景

项目简介

taste-skill 的核心理念用一句话概括:给你的 AI 装上好品位,阻止它生成乏味的通用设计废料(slop)

它本质上是一套「设计约束规则集」,以 SKILL.md 文件的形式存在。当 AI Agent 在项目中发现这个文件,就会在生成 UI 代码之前先读取这些规则,推断出当前项目适合什么设计语言,然后按照规则约束输出——而不是照抄训练数据里最常见的模式。

不是帮你选颜色,是教 AI 什么叫「有品位地选颜色」。

作者/团队介绍

项目数据

  • ⭐ GitHub Stars: 36,800+
  • 🍴 Forks: 2,700+
  • 📦 技能数量: 13 个(持续增加)
  • 📄 License: MIT
  • 💬 语言: Shell 100%(安装脚本 + SKILL.md 规则文件)

主要功能

核心作用

taste-skill 是 AI Agent 的「设计品位外挂」——在 AI 生成前端代码之前,注入一套经过研究积累的设计原则,让输出从「通用模板」变成「有明确风格主张」的界面。

它不做的事:

  • 不提供 UI 组件库
  • 不替代 Figma 或设计稿
  • 不帮你写业务逻辑

它做的事:

  • 告诉 AI 如何推断项目的设计语言(行业 / 受众 / 情绪基调)
  • 约束 AI 的布局、间距、字体、动画、对比度决策
  • 防止 AI 输出大家都在用的「平庸设计模式」

使用场景

  1. 用 Claude Code / Cursor 从零搭建新项目
    • 安装 taste-skill 后,AI 在写第一行样式代码之前就已经知道这个项目的设计气质
  2. 改造已有项目的视觉风格
    • redesign-skill 会先审计现有 UI,找出风格不一致的地方,再给出完整改造方案
  3. 产品设计稿 → 代码实现
    • image-to-code-skill 支持图片优先工作流:上传截图/设计稿 → AI 分析风格 → 生成对应代码
  4. 品牌视觉体系搭建
    • brandkit 技能一次性生成 logo、配色方案、字体组合、品牌规范文档
  5. 特定风格的快速实现
    • 需要 Notion 风格极简界面?用 minimalist-skill。需要 Figma/Vercel 风格粗野主义?用 brutalist-skill

快速开始

1# 安装主技能(推荐新项目使用)
2npx skills add https://github.com/Leonxlnx/taste-skill
3
4# 安装单个技能
5npx skills add https://github.com/Leonxlnx/taste-skill --skill "design-taste-frontend"
6
7# 安装极简风格技能
8npx skills add https://github.com/Leonxlnx/taste-skill --skill "minimalist-ui"
9

安装完成后,项目根目录会多出一个 .claude/skills/design-taste-frontend/SKILL.md 文件(或类似路径)。之后在 Claude Code 或 Cursor 中正常开发,AI 会自动读取这个文件并遵循其中的设计规则。

完整技能列表

代码实现类(10个)

技能名安装 ID定位
taste-skill v2design-taste-frontend主力技能,推断设计语言,调节三旋钮
taste-skill v1design-taste-frontend-v1保留的旧版本,行为更可预测
gpt-tasteskillgpt-tasteGPT/Codex 严格变体,强化 GSAP 动效
image-to-codeimage-to-code图片 → 分析 → 代码三步流程
redesign-skillredesign-existing-projects审计并改造现有项目 UI
soft-skillhigh-end-visual-design高端优雅,柔和对比度
output-skillfull-output-enforcement防止 AI 输出截断,确保完整代码
minimalist-skillminimalist-uiNotion / Linear 风格极简
brutalist-skillindustrial-brutalist-ui瑞士字体 + 强对比粗野主义
stitch-skillstitch-design-tasteGoogle Stitch 兼容设计规则

图像生成类(3个)

技能名安装 ID定位
imagegen-frontend-webimagegen-frontend-web生成网站设计参考图
imagegen-frontend-mobileimagegen-frontend-mobile生成移动端界面流程图
brandkitbrandkitlogo + 配色 + 字体品牌套件

三个可调旋钮(v2核心)

taste-skill v2 暴露了三个可以明确设置的参数,直接影响 AI 的设计决策:

1DESIGN_VARIANCE   (1-10)
2      居中对称、整洁规矩
3      不对称现代、打破网格
4
5MOTION_INTENSITY  (1-10)
6      仅悬停效果、微交互
7      滚动触发动画、磁性吸附、视差效果
8
9VISUAL_DENSITY    (1-10)
10      大量留白、呼吸感强
11      仪表盘密度、信息层级丰富
12

比如,给 SaaS 产品的营销落地页,可以设置:

1DESIGN_VARIANCE = 6   # 有个性但不奇怪
2MOTION_INTENSITY = 5  # 有动感但不分散注意力
3VISUAL_DENSITY = 3    # 留白为主,突出核心信息
4

项目优势对比

对比维度taste-skill直接让 AI 写 UIUI 组件库设计稿
风格独特性✅ 规则约束有主张❌ 千篇一律⚠️ 依赖定制✅ 完全可控
实施成本✅ 一条命令✅ 零成本⚠️ 学习曲线❌ 需设计师
与 AI 协作✅ 原生为 AI 设计⚠️ 无约束⚠️ 需要桥接⚠️ 需描述转译
迭代速度✅ 快✅ 快❌ 慢

项目详细剖析

SKILL.md 机制:一个文件如何改变 AI 决策

taste-skill 的核心技术不是 JavaScript 框架,而是一种约定:SKILL.md 文件

当 Claude Code 或 Cursor 在项目中发现 SKILL.md,会在执行设计相关任务时自动将其内容注入上下文。这个文件不是运行时代码,而是「对 AI 的设计指令」——类似项目的设计规范文档,但专门为 AI 的阅读和遵守而优化。

taste-skill v2 的 SKILL.md 有几个关键章节:

§0 项目推断

在动手之前先读取环境:

1推断项目背景:
2- 行业垂类(金融?创意?技术?医疗?)
3- 目标受众(开发者?消费者?企业用户?)
4- 情绪基调(可信?有趣?紧迫?优雅?)
5- 布局风格(落地页?应用?仪表盘?)
6
7根据推断结果调整后续所有设计决策。
8

§2 设计系统选择

根据项目类型选择匹配的设计系统:

1- 企业/SaaS  shadcn/ui  Material 衍生
2- 技术工具  Tailwind 系统 + 单色主调
3- 创意/品牌  自定义排版主导
4- 消费品  情绪驱动,大图优先
5

§8 双主题默认支持

1所有界面必须支持深/浅色双主题:
2- 深色不等于黑色(可以是深石板、深灰蓝)
3- 浅色不等于白色(暖白、冷灰均可)
4- 对比度层级必须在两个主题中保持一致
5

§14 输出前预检清单

1在提交代码之前必须确认:
2 颜色非随机——每种颜色有明确用途
3 间距遵循 4pt/8pt 网格
4 字体层级最多3个尺寸
5 动画不超过 300ms(除非有明确理由)
6 移动端优先,已测试 320px 断点
7

风格技能对比:选哪个?

极简风(minimalist-ui)

灵感来源:Notion、Linear、Vercel

  • 大量留白,内容即设计
  • 单色或双色调,避免"彩虹配色"
  • 字体主导层级,非颜色或形状
  • 适合:工具类产品、开发者工具、内容平台

粗野主义(industrial-brutalist-ui)

灵感来源:瑞士国际主义排版、Figma 网站、早期互联网

  • 粗边框、强对比、有意打破"美观"规则
  • 等宽字体 + 无衬线混用
  • 黑/白/单个强调色
  • 适合:创意机构、个人品牌、艺术项目

柔和高端风(high-end-visual-design)

灵感来源:奢侈品牌、高端 SaaS(如 Linear 的旧版)

  • 低对比度、柔和过渡
  • 优雅字体(衬线 + 细无衬线)
  • 精细的微动画
  • 适合:高端消费品、创意服务、设计工作室

image-to-code:图片优先工作流

这是 taste-skill 中最独特的工作流之一:

11. 截图 / 上传参考设计图
2       
32. AI 分析图片的视觉语言
4   - 提取主色调、字体风格、间距模式、布局逻辑
5       
63. 生成忠实于参考图的前端代码
7   - 不是逐像素复制,而是理解设计语言后重现
8
1# 安装 image-to-code 技能
2npx skills add https://github.com/Leonxlnx/taste-skill --skill "image-to-code"
3

在 Claude Code 中使用:

1/task 参考这张截图,用 React + Tailwind 实现一个相同风格的产品卡片组件
2[附上截图]
3

支持的 AI 工具生态

taste-skill 不绑定特定工具,支持所有主流 AI 编程环境:

工具支持方式
Claude Code自动读取 SKILL.md
Cursor自动读取 SKILL.md
Codex CLI自动读取 SKILL.md
Gemini CLI自动读取 SKILL.md
v0 / Lovable手动粘贴规则内容
OpenCode自动读取 SKILL.md
ChatGPT Images图像生成技能适配

项目地址与资源

官方资源


总结

taste-skill 解决的问题很具体:AI 写 UI 总是"正确但无聊"。它的解法也很直接——不是换工具,而是给现有 AI 工具加上一套设计哲学约束。SKILL.md 机制本身是一种优雅的设计:一个文件,零运行时开销,框架无关,工具无关。

36.8k Stars 说明这个问题是真实的,且开发者们在用具体行动表态——他们不满足于"能跑的 UI",他们想要"有品位的 UI"。

如果你正在用 AI 工具做前端开发,taste-skill 值得花5分钟安装试一下。对比安装前后的输出差异,就是最好的演示。


欢迎了解 PrimeSkills —— 精选 AI Agent 与技能的市场,助你构建强大的 AI 工作流。

我是冬奇,正在探索 AI Agent 的无限可能。欢迎关注我的个人主页:冬奇实验室


每日一个开源项目(第125篇):taste-skill - 给 AI 装上审美,让前端不再千篇一律》 是转载文章,点击查看原文


相关推荐


09-不要只让 AI 进入 Plan 模式,要先给 AI 一套工程制度
颜进强2026/6/1

上篇:不要只让 AI 进入 Plan 模式,要先给 AI 一套工程制度 这两篇文章的核心目的只有一个:通过业务决策和技术决策,让我们向 AI 提需求时,AI 在 Plan/决策阶段就能更精准。 AI 写代码并不难,难的是让 AI 在一开始做方案时,就知道项目的业务边界、技术边界和执行流程。 这篇是上篇,主要讲为什么要把业务决策和技术决策沉淀下来,以及它们如何帮助 AI 更准确地做方案。 下篇会继续讲:技术决策、rules 和 skills 到底怎么分工,避免文档越写越多,AI 反而越容易混乱。


我为我的龙虾斩分身:OpenClaw 多智能体实操
飞哥数智谈2026/5/12

飞哥数智谈,全栈工程师,在济南这个二线城市做 AI 社群,AI·Spring 社群发起人,同时,担任 TRAE Friends 社区济南 Fellow,致力于 AI 提效与 AI 编程普及与落地。 很久没有写关于 OpenClaw 的文章了,但并不意味着我不再喜欢小龙虾,相反,我依然觉得 OpenClaw 是个具有深远意义的产品。 或者,准确地说,龙虾类产品意义重大,但此处的龙虾并不特指 OpenClaw,可以是 Hermes,可以是 QClaw,也可以是 XClaw。 它们实现了 AI 智能


OpenClaw 多模型配置与切换详解
七夜zippoe2026/5/2

目录 热门文章推荐摘要一、引言:为什么需要多模型支持1.1 AI 模型生态的多元化现状1.2 多模型支持的核心价值 二、支持的模型提供商2.1 OpenAI2.2 Anthropic(Claude)2.3 Qwen(通义千问)2.4 Ollama(本地模型) 三、模型配置详解3.1 基本配置结构3.2 模型选择配置3.3 自定义提供商配置3.4 模型参数配置 四、模型切换机制4.1 Default 默认模型4.2 Reasoning 推理模型4.3 Per-Session 会


树莓派4b + USRP B210 搭建反无人机(反无)系统( HTML + CDN )
MC数据局2026/4/23

brainstorming: 硬件能力分析 1. USRP B210 的能力边界 参数规格对反无系统的意义频率范围70 MHz – 6 GHz✅ 覆盖无人机主流频段(2.4G / 5.8G / 915M / 433M)瞬时带宽最大 56 MHz(USB 3.0)✅ 可一次看完整个 2.4G ISM 频段(83.5 MHz)虽勉强但可用通道数2×2 MIMO✅ 可做双天线测向(干涉/相位差)ADC12-bit灵敏度够用接口USB 3.0⚠️ 树莓派的瓶颈在这里 2. 树莓派的瓶颈(⚠️ 关


Flink技术实践-FlinkSQL Join技术全解
大大大大晴天️2026/4/15

一、背景介绍 在离线批处理场景中,编写一个 Join SQL 是再平常不过的操作——两张有限的数据集,在某个键上关联,输出结果。但当你把这套 SQL 语义移植到实时流处理场景时,一切都变了。 特性批处理 Join流处理 Join数据特征有限、静态、全量数据集无限、动态、无界数据流执行模式一次性全量匹配,结果固定持续计算,结果随新数据实时更新状态管理无需长期状态,计算完成即释放必须维护历史状态以匹配未来数据时间维度无时间概念,基于完整数据集强依赖事件时间 / 处理时间处理乱序与延迟计算成本可预


当代码不再为人而写:Claude Code 零注释背后的 Harness 逻辑
mCell2026/4/7

前几天 Claude Code 因为 sourcemap 没关,导致源码被公开。这件事在技术圈引起的讨论密度很高,因为这种真正跑在生产环境里的闭源通用 Agent 产品,它的内部实现本身就是一份高价值的学习材料。 我看了一些解析文章。有讲它设计模式的,有分析它安全边界的,也有拆解 Prompt 架构的。 但有一个细节我反复确认了一下: Claude Code 内部要求,不要写任何注释。 第一反应是反直觉。 注释难道不是为了理解代码吗?我从写代码以来接受的教育就是:复杂逻辑要写注释,接口参数要写注


C# 基于OpenCv的视觉工作流-章43-轮廓匹配
sali-tec2026/3/29

C# 基于OpenCv的视觉工作流-章43-轮廓匹配 本章目标: 一、匹配原理; 二、模板创建; 三、模板匹配; 本章与章41模板匹配基本相似,在章42基础上,先对图像进行边缘检测,提取轮廓,以轮廓制作模板,匹配时也先对原图进行边缘检测,提取轮廓,最后再进行匹配。整体不同处在于先对图像进行预处理,好处在于匹配适应性更高,对光线明暗不同的图像也能进行更好的匹配。 一、匹配原理 章41已介绍,不再详述; 二、模板创建 边缘检测、轮廓提取在前文章节已介绍,不再详述; 三、模板匹配 参考章42;


OpenCodeUI 让你随时随地 AI Coding
三金得鑫2026/3/21

Hi,大家好,我是三金~ 自从用了 OpenCode + OMO 之后,写起代码来如沐春风,特别得劲!(除了比较烧 token) 但是 TUI 用久了之后吧,又有了一点别的想法: 能不能远程链接?让我随时随地都能 AI Coding。 Web 界面要“看着顺眼、点起来顺手” 所以当我在 L 站看到有佬友开源 OpenCodeUI 的时候,第一反应就是:许愿许成功了? OpenCodeUI 是 OpenCode 的第三方 Web 前端界面。它和 OpenCode 的客户端有点像,整体风格偏简约


电商企微机器人:从自动欢迎语到订单转化,打造私域闭环
2501_941982052026/3/13

能力介绍 电商私域机器人不仅是客服工具,更是 24 小时在线的虚拟导购。通过 API 联动电商平台的商品库与促销引擎,机器人可以根据用户的咨询轨迹自动发送商品卡片、优惠券及限时秒杀信息。它支持精准的关键词触发与定时任务,帮助企业在不增加人工成本的前提下,提升私域社群的活跃度与复购率。 10分钟接入 Demo 首句自动响应:配置好友申请回调,用户通过后秒级发送包含“新人礼包”的欢迎语。 关键词转单:设置机器人监控特定关键词(如“怎么买”、“多少钱”),自动回复带参数的商品小程序路径。


redis stream用作消息队列极速入门
ChesterZhang2026/3/5

背景 最近做了几个需求都用了redis stream用作消息队列,感觉redis stream相当大轻量化,易于上手,且功能强大,为此特意实现了了一个极简但实用的 redis stream 的示例 redis stream 的三个概念 stream, consumer group , consumer 要想学会如何使用 redis stream, 最重要的就是理解 stream, consumer group , consumer 三者的关系。 简单来说: stream 为消息流, 类似于传

首页编辑器站点地图

本站内容在 CC BY-SA 4.0 协议下发布

Copyright © 2026 聚合阅读