将丑但功能完整的 HTML(来自 PM)转换为标准设计规范,让任何 LLM 都能生成风格一致的新页面。
Input HTML (丑但功能完整)
↓
┌───────────────────────────────────────┐
│ html-design-system-generator Skill │
│ │
│ Layer 1: tokens.md (设计变量说明) │
│ Layer 2: components.yaml (组件API) │
│ Layer 3: layouts.yaml (页面布局规则) │
│ Layer 4: prompt-template.md (生成提示)│
└───────────────────────────────────────┘
↓
Output: 设计规范包
↓
Any LLM → 生成风格一致的新页面
从 HTML CSS 变量中提取的设计变量:
- 颜色系统
- 间距系统
- 字体系统
- 圆角/阴影系统
格式无关的组件规范:
- Button / Input / Select / Checkbox
- Card / Modal / Drawer
- Table / Badge / Avatar
- ...
标准页面布局模式:
- ListPage: 列表页面
- DetailPage: 详情页面
- FormPage: 表单页面
- DashboardPage: 仪表盘
LLM 友好的生成提示词模板
# 克隆项目
cd html-design-system-generator
# 生成所有规范文件
python3 scripts/generate_all.py examples/input/index.html examples/output/
# 查看生成的文件
ls examples/output/- 将
html-design-system-generator/放入 Claude Code 的 skills 目录 - 在 Claude Code 中触发 skill:
/html-design-system-generator - 提供 HTML 文件路径
- 获得设计规范包
html-design-system-generator/
├── SKILL.md # Skill 入口
├── README.md # 本文件
├── references/
│ ├── architecture.md # 4-layer 架构规范
│ └── components-schema.md # components.yaml 格式规范
├── scripts/
│ ├── generate_tokens.py # 生成 tokens.md
│ ├── generate_components.py # 生成 components.yaml
│ ├── generate_layouts.py # 生成 layouts.yaml
│ ├── generate_prompts.py # 生成 prompt-template.md
│ └── generate_all.py # 一键生成全部
├── templates/ # Jinja2 模板
└── examples/
└── input/index.html # 测试用例
# ❌ 错误:写死实现
Button:
html: <button class="btn">Click</button>
react: <button className="btn">Click</button>
# ✅ 正确:只写规范
Button:
name: 按钮
variants: [primary, secondary, ghost, danger]为什么?
- 不同 LLM(Claude/GPT/Gemini)有不同的实现风格
- 给规范不给代码 = 每个 LLM 都能用自己的方式实现
- 只要结果符合规范 = 风格一致
PM 给你一个丑但功能完整的 HTML 原型:
python3 scripts/generate_all.py pm-prototype.html design-system/获得:
tokens.md- 颜色、字体、间距components.yaml- 组件 APIlayouts.yaml- 页面布局prompt-template.md- LLM 提示词
将 prompt-template.md 复制到新对话,输入需求:
请生成一个用户列表页面,包含:
- 用户头像和名称
- 角色标签
- 操作按钮(编辑/删除)
LLM 会生成符合设计规范的页面。
Apache 2.0