很多 AI Coding 工具现在已经能够把网页功能做出来,但真正容易拉开差距的地方,往往不是功能,而是交互细节、动画节奏、移动端体验和组件选择。
emilkowalski/skills 就是针对这个问题设计的一套 Agent Skills。项目作者将它定位为面向 Designers 和 Engineers 的设计工程技能集合,目前仓库已经有约 3.8 万 Stars,并持续更新。
如果你经常让 AI 帮忙开发网站、后台或者 SaaS,可以把这套 Skills 放进自己的开发环境。对于需要长期运行多个项目的情况,也可以把 Agent 开发环境放到莱卡云服务器上,统一维护 Skill、代码仓库和开发工具。
一、这个项目主要解决什么?
普通 AI 写 UI,经常会出现这种情况:

功能实现了
↓
页面能用了
↓
但是......
↓
动画生硬
间距不协调
交互缺少反馈
移动端体验一般
组件选择随意
emilkowalski/skills 的思路是:
AI Agent
↓
设计工程 Skills
↓
设计原则
↓
交互判断
↓
动画参数
↓
UI Review
项目 README 中目前包含:
emil-design-enganimateanimate-exporeview-animationsimprove-animationsfind-animation-opportunitiesanimation-vocabularyapple-designwrite-swiftpick-ui-libraryprototypemobile-nativeask-sonner
等 Skill。
二、最核心的是 emil-design-eng
这个 Skill 可以理解成整个项目的设计工程基础。
它关注的不只是:
"这个页面好不好看?"
而是:
交互
+
组件
+
动画
+
细节
+
设计决策
例如一个按钮:
普通 AI:
点击
↓
颜色变化
而设计工程思路可能会考虑:
Hover
↓
Press
↓
Scale
↓
Transition
↓
Release
并且动画不能只是为了"炫"。
项目的设计原则强调:动画应该服务于用户理解和交互反馈,而不是到处增加装饰效果。
三、Animation Skill 很适合 AI Coding
例如你让 AI:
给这个后台页面增加动画。
普通 Agent 可能会:
每个元素
↓
fade-in
↓
slide-up
↓
delay
↓
继续加动画
最终很容易变成:
页面什么都在动。
find-animation-opportunities 的规则反而非常克制。
它要求先判断:
出现频率
↓
交互目的
↓
动画速度
↓
是否真的有帮助
而且整个应用最多提出约 5~7 个高价值动画建议,而不是把所有地方都加动画。
四、它甚至会告诉 AI "这里不要动画"
这是这套 Skill 比较有意思的地方。
例如:
每天点击几十次的按钮
不一定需要明显动画。
项目规定:
100+ 次/天
→ Reject
几十次/天
→ Reject
或使用极轻微反馈
只有:
首次使用
成功
完成
空状态
特殊交互
等低频场景,才适合使用更明显的动画。
所以它更像:
动画设计规则 + AI Code Review
而不是动画代码库。
五、animate Skill
这个 Skill 用于:
从零设计一个动画。
它会考虑:
Duration
Easing
Properties
Transform
Interaction
例如:
按钮按下
不是简单:
transition: all .3s;
而是根据交互类型选择合适的:
duration
easing
transform
opacity
项目的整体设计规则强调 UI 动画应保持快速,避免为了视觉效果使用拖沓的过渡。
六、review-animations
这个比较适合你已经有一个网站的情况。
例如:
已有网站
↓
AI Review
↓
检查动画
重点不是重新设计,而是找:
动画是否太慢
动画是否太多
easing 是否合理
进入/退出方向是否合理
是否影响交互
这对于已经上线的网站特别实用。
七、improve-animations
如果你的项目已经存在很多动画:
旧网站
↓
improve-animations
↓
扫描整个代码库
↓
整理问题
↓
生成优先级计划
这个 Skill 的定位是审计现有动画并生成可执行的优化计划,而不是直接随意修改所有代码。
这点和 find-animation-opportunities 有区别:
find-animation-opportunities
→ 找哪里值得加动画
review-animations
→ 检查现有动画
improve-animations
→ 制定动画优化方案
八、mobile-native 很实用
这个 Skill 是项目近期加入的。
GitHub 提交记录显示,mobile-native 在 2026 年 9 月 15 日加入。
它主要针对:
Web
↓
手机
↓
体验更像原生 App
例如:
100vh
Tap Highlight
Hover
Safe Area
Input Zoom
Sticky
Touch
这些都是 AI 写移动端页面时特别容易忽略的小问题。
九、如果你做客户中心,这个很有用
例如一个云服务器客户中心:
首页
产品
订单
账单
工单
个人中心
PC 上可能没问题:
┌─────────────────────────────┐
│ Logo 产品 订单 工单 │
│ │
│ Dashboard │
└─────────────────────────────┘
到了手机:
┌──────────────┐
│ Logo ☰ │
│ │
│ Dashboard │
│ │
│ Product │
│ │
└──────────────┘
这时候需要考虑:
点击反馈
底部安全区
输入框缩放
滚动
Sticky Header
触摸区域
mobile-native 就可以作为这一层的设计检查规则。
十、pick-ui-library 也很值得使用
这个 Skill 不是让 AI 随便找一个 npm 包。
它维护了一套经过筛选的 UI 库选择。
例如官方当前列出的:
| 需求 | 推荐库 |
|---|---|
| Dialog / Popover / Menu | base-ui |
| Command Menu | cmdk |
| Toast | Sonner |
| OTP 输入 | input-otp |
| 动画 | motion |
| Number Animation | NumberFlow |
| GUI / 控制面板 | Leva |
例如你告诉 Agent:
我要做一个验证码输入框。
它不会让 AI 从几十个库里面随机选择,而是根据 Skill 中的规则选择对应组件。
十一、这个机制对大型项目特别有价值
假设你的项目已经用了:
Sonner
那么 Agent 再开发新的通知功能时,可以直接沿用现有依赖。
项目 pick-ui-library 的规则也明确要求:
先检查项目现有的 package.json。
如果已经存在合适的库,不应该为了 Skill 推荐而随意替换依赖。
这对于维护大型前端项目很重要。
十二、prototype Skill
这个 Skill 适合:
我不知道这个 UI 应该怎么设计。
例如:
一个价格卡片
让 Agent:
方向 A
方向 B
方向 C
然后放在一个视觉切换器里比较。
项目明确要求不同方案应该是真正不同的设计方向,而不是:
蓝色
浅蓝
深蓝
这种只有颜色变化的伪差异。
十三、这个特别适合你做官网
比如一个云服务器官网首页:
Hero
↓
产品卡片
↓
优势
↓
价格
↓
机房
↓
FAQ
可以让 Agent:
prototype
先做:
Editorial
Dashboard
Minimal
三种真正不同的视觉方向。
然后再决定采用哪一个。
这样比直接让 AI:
"帮我做一个高级一点的首页。"
效果通常更容易控制。
十四、Apple Design Skill
项目目前还提供:
apple-design
主要将 Apple 的一些界面设计原则和 WWDC 中涉及的流畅交互理念整理成 Agent 可以参考的 Skill。
如果你喜欢:
简洁
留白
层次
微妙动画
自然过渡
这种设计方向,可以作为参考。
不过它并不是要求所有网站都照搬 Apple,而是把相关设计原则转化成 Agent 可以理解的规则。
十五、安装其实非常简单
官方推荐:
npx skills@latest add emilkowalski/skills
也就是:
GitHub
↓
skills CLI
↓
安装
↓
Agent Skill
这是官方 README 当前给出的安装方式。
官方仓库本身采用 MIT License。
十六、为什么可以放到莱卡云服务器?
这里建议把"服务器"和"AI Agent"分开理解。
不是:
莱卡云
↓
运行网页
而是:
莱卡云服务器
│
├── Git
├── Node.js
├── Bun
├── Docker
├── Agent CLI
└── ~/.agents/skills
│
└── emilkowalski/skills
然后:
你的电脑
↓
SSH
↓
莱卡云
↓
AI Agent
↓
项目代码
这样服务器相当于一个长期在线的 AI Coding 工作站。
十七、为什么这种方式比较方便?
例如你有:
项目 A
项目 B
项目 C
本地电脑可能:
A
↓
node_modules
↓
B
↓
各种环境
服务器可以统一:
/workspace/
├── project-a
├── project-b
└── project-c
再统一使用:
~/.agents/skills/
里面的设计 Skill。
这样所有项目都可以使用同一套:
设计规则
动画规则
移动端规则
UI 库选择规则
十八、推荐的云服务器环境
如果主要运行:
Git
Node.js
Bun
AI Agent
前端项目
可以:
2~4 vCPU
4~8GB RAM
60~80GB SSD
Debian 12
如果同时运行:
多个项目
Docker
数据库
构建任务
建议:
4~8 vCPU
8~16GB RAM
100GB+
这里不需要因为这套 Skills 而专门购买 GPU。
它本身是规则和 Markdown Skill,不是大模型推理框架。
十九、一个比较完整的开发环境
可以这样:
莱卡云服务器
│
├── Debian 12
│
├── Git
├── Node.js
├── Bun
├── Docker
│
├── ~/.agents/
│ └── skills/
│ └── emilkowalski/
│
└── /workspace/
├── website
├── admin
└── client
然后:
Claude Code / Codex
↓
emilkowalski/skills
↓
项目代码
↓
UI Review
↓
修改方案
二十、可以用于你现有的网站优化
如果你已经有一个前端项目,可以直接让 Agent 按不同 Skill 分阶段检查。
第一步:UI
emil-design-eng
检查:
间距
层级
组件
交互
视觉细节
第二步:动画
review-animations
检查:
easing
duration
过度动画
缺少反馈
第三步:寻找动画机会
find-animation-opportunities
只找真正值得增加动画的位置。
第四步:移动端
mobile-native
检查:
Touch
Safe Area
Viewport
Input
Scrolling
第五步:组件
pick-ui-library
检查:
当前依赖
组件选择
重复造轮子
二十一、实际工作流
例如:
现有网站
↓
emil-design-eng
↓
UI问题
↓
review-animations
↓
动画问题
↓
mobile-native
↓
移动端问题
↓
pick-ui-library
↓
组件问题
↓
Agent执行修改
这样比:
"帮我把网站优化得高级一点"
更加可控。
二十二、特别适合前端开发团队
如果团队成员都使用:
Claude Code
Codex
Cursor
可以统一安装这套 Skill。
然后规定:
UI 开发
→ emil-design-eng
动画
→ animate
动画 Review
→ review-animations
移动端
→ mobile-native
组件选择
→ pick-ui-library
最终 AI 输出的界面风格会更容易保持一致。
二十三、需要注意它不是组件库
这个项目并不是:
npm install emilkowalski-ui
它不是传统意义上的:
React UI Library
而是:
AI Agent Skills
也就是说:
它告诉 AI:
怎么判断
怎么设计
怎么选择
怎么检查
而不是直接提供:
Button
Modal
Card
Table
组件本身。
二十四、也不是自动替你把网站改好
部分 Skill 是:
Review
或者:
Analysis
例如 find-animation-opportunities 明确规定:
只分析,不修改源代码。
prototype 也要求把探索放在隔离的 Prototype 页面,不应该直接污染生产代码。
这其实是一个比较好的开发习惯:
分析
↓
方案
↓
确认
↓
实施
而不是 AI 直接大面积修改生产代码。
二十五、如果你要部署,我建议这样
本地电脑
│
SSH
↓
莱卡云服务器
│
┌─────────┴─────────┐
↓ ↓
AI Agent Git
│ │
↓ ↓
emilkowalski/skills 项目代码
│
┌────────┼─────────┐
↓ ↓ ↓
UI Motion Mobile
↓ ↓ ↓
Review Improve Native
│
↓
修改代码
服务器主要负责开发环境和 Agent 工作流,浏览器最终访问的网站则可以根据项目实际情况部署到独立的 Web 服务环境。