web-design-skill 实操手册(详细版)
适用工具: Claude Code / OpenCode 目标: 跟着本笔记,你将用 AI 生成一个高质量的太空探索博物馆网页,并录制为视频 预计耗时: 40-90 分钟(含录制)
在开始之前:理解我们要做什么
整体流程概览
|
|
为什么要先"裸跑"再用 Skill?
这是一个对比实验。就像视频里演示的那样:
- 如果你直接用 Skill,你不会感受到 Skill 的价值
- 先让 AI 自由发挥 → 你会看到典型的 AI 味网页(紫粉蓝渐变、大圆角卡片、Emoji 图标……)
- 然后用 Skill 再做一遍 → 你会亲眼看到同一个主题、同一个模型做出截然不同的效果
这个对比过程本身就可以录制成视频。
你需要的工具清单
| 工具 | 是什么 | 去哪里获取 |
|---|---|---|
| 终端 | 你和 AI 对话的地方 | Windows: PowerShell / Terminal;macOS: Terminal |
| Claude Code 或 OpenCode | AI 编码 Agent | 见下方安装说明 |
| Git | 从 GitHub 下载 Skill 文件 | winget install Git.Git(Win)/ brew install git(macOS) |
| 浏览器 | 预览网页效果 | Chrome / Edge / Firefox |
| 录屏软件(可选) | 录制操作过程 | OBS Studio(免费)/ 系统自带录屏 |
确认 Agent 已就绪
如果你用 Claude Code
是什么: Anthropic 官方的终端 AI 编码工具,你在终端里打字,它帮你读文件、写代码、执行命令。
确认已安装:
打开终端(Windows 用 PowerShell,macOS 用 Terminal),输入:
|
|
如果显示版本号(如 1.0.x),说明已安装。
如果没安装:
|
|
确认 API Key 已配置:
Claude Code 需要 Anthropic API Key 才能使用。在终端输入:
|
|
如果看到 apiKey 已设置,就 OK。如果没有,运行:
|
|
(把 sk-ant-xxxxx 换成你的真实 Key)
为什么要确认这个? 后续所有操作都依赖 Agent 能正常调用 AI 模型。如果 Key 没配好,后面所有步骤都会卡住。
如果你用 OpenCode
是什么: SST 团队开发的开源终端 AI 编码工具,和 Claude Code 类似,但支持多种模型(Claude、GPT 等),界面是 TUI(终端图形界面)。
确认已安装:
|
|
如果显示版本号,说明已安装。
如果没安装(二选一):
|
|
确认模型已配置:
OpenCode 启动后,在 TUI 界面中按快捷键查看设置,确认已选择 Claude 模型并配置好 API Key。
为什么要确认这个? OpenCode 支持多个模型供应商,你需要确保选择的是 Claude(而非 GPT),因为 web-design-skill 的提示词是针对 Claude 优化的。
创建项目目录
创建工作文件夹
打开终端,执行以下命令:
|
|
初始化 Git 仓库
|
|
为什么要 Git? 不是为了推送到 GitHub,而是为了对比两个版本的差异。后面做完两个版本后,你可以用
git diff精确看到 Skill 带来了哪些变化。
创建初始文件
用终端创建一个空的 HTML 文件:
Claude Code 方式:
|
|
进入 Claude Code 后输入:
|
|
Claude Code 会自动创建文件。输入 /exit 退出。
OpenCode 方式:
|
|
在 OpenCode 的 TUI 界面中输入同样的提示词。OpenCode 会创建文件。按 Ctrl+C 或 q 退出。
或者手动创建(不依赖 Agent):
|
|
|
|
启动本地预览服务器
在终端中(不要在 Agent 里,另开一个终端窗口)执行:
|
|
|
|
打开浏览器访问 http://localhost:3000(npx serve 默认端口)或 http://localhost:8080(Python 默认端口),你应该看到一个空白页面。
为什么要提前启动预览服务器? 因为后面 AI 生成代码后,你需要立刻在浏览器里看效果。提前启动好服务器,后面只需要刷新浏览器就行,不用每次都重新启动。
保持这个终端窗口开着,不要关掉它。后续你在另一个终端窗口里和 AI 对话。
下载 web-design-skill
克隆仓库
在哪里操作: 新开一个终端窗口(不要关掉上面的预览服务器窗口)
|
|
执行完后,你的项目目录结构会变成这样:
|
|
为什么要克隆整个仓库而不只是复制文件?
skill.md是核心,但reference.md也很重要(里面是代码模板参考)- 仓库里的 demo 文件可以作为学习参考
- 后续作者更新了你可以直接
git pull获取最新版本
查看 Skill 文件内容(可选但推荐)
|
|
裸跑体验 — 见识 AI 的"原生审美"
🎯 目的: 让 AI 用默认方式生成网页,观察它的"原生审美"。
启动 Agent(不加载 Skill)
Claude Code:
|
|
OpenCode:
|
|
关键: 这一步不要引用任何 Skill 文件。让 AI 用它自己的默认行为来工作。
输入设计需求
在 Agent 的对话框中,输入以下内容(直接复制粘贴):
|
|
为什么给这么详细的需求? 这是裸跑测试,我们要排除"需求不清"这个干扰因素。给足够详细的需求,这样最终效果不好就只能是 AI 的审美问题,而不是"你没说清楚"。
等待 AI 生成
AI 会开始工作。你会看到它:
- 先思考/规划
- 然后写入
index.html文件 - 可能会告诉你"已完成"
整个过程大约需要 1-3 分钟。
查看结果
切到浏览器,刷新 http://localhost:3000(或 http://localhost:8080)。
你应该能看到一个完整的网页。仔细观察并记录以下内容:
📝 观察清单(边看边打勾)
配色:
- 背景是否是深色?用了什么颜色?
- 是否有紫粉蓝的渐变?(这是 AI 最喜欢的"霓虹风")
- 文字颜色和背景的对比度够不够?
布局:
- Hero 区域是不是标准的"居中标题 + 副标题"?
- 展品卡片是不是等宽的网格排列?(这是 AI 最爱用的布局)
- 是否有大胆的留白?还是把每个角落都塞满了?
字体:
- 用了什么字体?是不是最常见的那几个?(如 Inter、Roboto)
- 标题和正文的字体有没有区分?
AI 味特征:
- 有没有用 Emoji 当图标?(🚀🌌✨ 等)
- 有没有大圆角卡片(border-radius: 20px 那种)?
- 有没有到处都是的发光效果(glow、box-shadow with color)?
- 有没有堆砌的假数据?
整体评分:______ / 100
保存裸跑版本
在 Agent 中输入:
|
|
或者退出 Agent 后在终端执行:
|
|
为什么要保存? 后面用 Skill 重做时,
index.html会被覆盖。保留一份裸跑版本才能做对比。
安装 Skill 到 Agent 中
🎯 目的: 把 web-design-skill 的规则注入到 Agent 的系统提示中,让 AI 后续所有的设计决策都遵循这些规则。
Claude Code — 两种安装方式
方式 A:写入 CLAUDE.md(推荐,永久生效)
什么是 CLAUDE.md?
- 这是 Claude Code 的"项目说明书"
- Claude Code 每次启动时都会自动读取这个文件
- 文件里的内容会成为 AI 的"行为准则"
- 就像给 AI 一份"员工手册",它会一直遵守
在哪里创建: 项目根目录下(即 ~/Desktop/space-museum-demo/CLAUDE.md)
操作步骤:
|
|
在 Claude Code 中操作:
|
|
进入后输入:
|
|
等待 Claude Code 完成。输入 /exit 退出。
验证:
|
|
你应该能看到 Skill 文件的内容已经写入了 CLAUDE.md。
CLAUDE.md 的作用原理:
1 2 3 4 5 6 7你启动 Claude Code ↓ Claude Code 自动读取 CLAUDE.md ↓ CLAUDE.md 的内容被注入到 AI 的系统提示中 ↓ AI 后续所有的决策都会参考这些规则这就像你给一个新员工发了一份设计规范手册,他后续做所有设计都会遵守这份手册。
方式 B:在对话中引用(临时生效)
如果你不想修改 CLAUDE.md,也可以每次在对话中引用 Skill 文件:
|
|
然后输入:
|
|
方式 A vs 方式 B 的区别:
方式 A(CLAUDE.md) 方式 B(对话引用) 持久性 永久生效,每次启动都加载 仅当前对话有效 适合场景 你要长期用这个 Skill 做设计 你只是想试一下 操作 一次设置,后续无感 每次都要手动引用
OpenCode — 安装方式
OpenCode 支持读取项目根目录的配置文件来注入自定义指令。
方式 A:写入 AGENTS.md(推荐)
什么是 AGENTS.md?
- 类似于 Claude Code 的 CLAUDE.md
- OpenCode 启动时会自动读取
- 内容会成为 AI 的行为准则
操作步骤:
|
|
或者用 OpenCode 自身操作:
|
|
进入后输入:
|
|
注意: 如果 OpenCode 也支持读取 CLAUDE.md(很多工具兼容这个格式),你也可以用 CLAUDE.md 作为文件名。具体取决于你使用的 OpenCode 版本。
方式 B:在对话中引用
|
|
在对话中直接告诉 AI:
|
|
验证 Skill 是否生效
无论用哪种工具,验证方法都一样:
启动 Agent,输入:
|
|
如果 Skill 生效了, AI 的回答应该包含:
- 提到 OKLCH 色彩空间
- 列出具体的字体推荐(不是泛泛的"使用 sans-serif")
- 提到"去除 AI 味"的具体规则(不使用渐变、不用 Emoji 当图标等)
- 提到工作流(先确认设计系统 → 快速 V0 → 迭代 → 验证)
如果 Skill 没生效, AI 的回答会很笼统:
- “我会使用现代的配色方案”
- “使用清晰的 sans-serif 字体”
- 没有提到 OKLCH 或具体的反面规则
如果没生效怎么办?
- Claude Code:检查
CLAUDE.md是否在项目根目录,文件名是否拼写正确- OpenCode:检查
AGENTS.md是否在项目根目录- 通用:尝试在对话中直接引用文件(方式 B)
Skill 加持 — 打磨高级感
🎯 目的: 用同样的需求,让 Skill 引导 AI 做出完全不同的网页。
启动新的对话
重要:必须新开一个对话!
Claude Code:
|
|
OpenCode:
|
|
为什么要新开对话? 上一个对话里 AI 已经"看过"裸跑版本的代码了,如果在同一个对话里重做,AI 可能会受到之前代码的影响。新开对话确保 AI 从零开始,唯一的变化就是多了 Skill 的规则。
输入设计需求
这次我们故意只给极简需求,测试 Skill 引导下的 AI 自主决策能力:
|
|
为什么这次需求这么简短?
阶段 A:AI 提问(如果信息不足)
你应该会看到: AI 先问你几个关键问题,比如:
|
|
你的操作: 根据你的想法回答。例如:
|
|
如果你的初始需求已经足够详细(比如第四步那种),AI 可能跳过提问直接进入下一步。这是正常的——Skill 的规则是"信息够就直接干"。
阶段 B:AI 说明设计系统
你应该会看到: AI 在写代码之前,先用自然语言描述它的设计系统:
|
|
你的操作: 仔细审核,提出修改意见。例如:
|
|
或者如果不对味:
|
|
为什么要先确认设计系统? 这是 Skill 的核心优化之一。如果 AI 直接写代码,等你看到成品时发现配色不对,就要推翻重来。在写代码之前确认设计系统,成本为零,方向错了随时改。
阶段 C:AI 输出 V0(粗糙初版)
你应该会看到: AI 快速生成一个带占位符的初版。可能:
- 部分文字是
[待补充] - 图片区域是纯色块
- 动画可能还没做
你的操作: 刷新浏览器查看效果,判断方向是否正确:
|
|
为什么要先出 V0 而不是一步到位? 想象你请人装修房子:
- 方式 A:先给你看一张效果图 → 你确认后再施工 ✅
- 方式 B:直接施工三个月 → 完工后你发现风格不对 → 全部拆掉重来 ❌
V0 就是那张"效果图"。粗糙但方向对了,后面就只是精雕细琢的事。
阶段 D:迭代打磨
你应该会看到: AI 根据你的反馈逐步完善代码。
你可以给的反馈方向:
|
|
每轮只提 1-2 个修改点,不要一次性说太多。 原因:
- AI 一次改太多容易顾此失彼
- 每轮改完你都要看一眼效果,确认改对了再继续
- 这样你能清楚知道每一步发生了什么(对录视频也有好处)
阶段 E:最终验证
当你觉得差不多了,触发验证:
|
|
为什么要"全新视角"? 这是 Skill 里的子 Agent 验证理念:如果让同一个上下文的 AI 检查自己的作品,它天然倾向于"觉得自己没问题"。但当你要求它以"全新视角"重新审视时,它更容易发现问题。
保存 Skill 版本
AI 完成后,保存最终版:
|
|
对比两个版本
文件结构
你的项目目录现在应该有这些文件:
|
|
代码差异对比
|
|
或者如果你用了 Git:
|
|
视觉对比
同时在浏览器中打开两个文件:
|
|
在两个浏览器标签页之间切换,对比:
| 维度 | 裸跑版本 | Skill 版本 | 差距 |
|---|---|---|---|
| 配色 | ? | ? | ? |
| 字体 | ? | ? | ? |
| 布局 | ? | ? | ? |
| AI 味 | ? | ? | ? |
| 动画 | ? | ? | ? |
| 总评 | /100 | /100 | ? |
录制成视频(可选)
录制工具
| 平台 | 工具 | 操作 |
|---|---|---|
| Windows | Xbox Game Bar | 按 Win + G 打开,点击录制按钮 |
| Windows | OBS Studio | 免费下载,功能最全 |
| macOS | QuickTime | Cmd + Shift + 5 打开截屏工具栏 |
| macOS | OBS Studio | 免费下载 |
建议录制的镜头
|
|
录制设置
- 分辨率:1920×1080
- 帧率:30fps
- 录浏览器时,把地址栏也录进去(增加真实感)
- 录终端时,把整个终端窗口都录进去
进阶练习
完成上面的流程后,你已经掌握了基本操作。以下是三个进阶练习:
练习 1:换一个主题
在同一个项目目录下,新建一个文件,用 Skill 做一个完全不同风格的网页:
|
|
|
|
|
|
练习 2:极简提示词挑战
只给 AI 一个词,看它如何在 Skill 引导下自主决策:
|
|
观察: AI 是先问你几个问题?还是直接开始创作?它做了什么假设?
练习 3:修改 Skill 文件
|
|
尝试修改以下内容,然后重新测试效果:
- 在字体推荐中增加一个你喜欢的字体
- 增加一条"去除 AI 味"的新规则(比如"不要使用全屏背景视频")
- 修改配色策略的优先级
附录 A:常用提示词速查
让 AI 先说设计系统
|
|
要求快速 V0
|
|
触发全面验证
|
|
去除特定 AI 味
|
|
附录 B:常见问题排查
Q:AI 生成的代码写入了错误的文件?
告诉 AI:
|
|
Q:浏览器刷新后没变化?
- 确认文件确实被修改了:
cat index.html | head -5(查看文件头几行) - 强制刷新:
Ctrl + Shift + R(Windows)/Cmd + Shift + R(macOS) - 确认预览服务器还开着
Q:Skill 安装后 AI 还是生成紫粉蓝渐变?
在对话中强调:
|
|
Q:AI 生成的网页没有动画效果?
明确要求:
|
|
Q:想在网页中使用中文但 AI 默认用了英文?
在需求中明确:
|
|
Q:Claude Code 和 OpenCode 的行为有差异?
两个工具的核心区别:
| Claude Code | OpenCode | |
|---|---|---|
| 配置文件 | CLAUDE.md |
AGENTS.md(或兼容 CLAUDE.md) |
| 模型 | 只用 Claude | 支持多模型(确保选 Claude) |
| 界面 | 纯文本终端 | TUI 图形终端 |
| 文件引用 | @文件名 |
具体语法看版本文档 |
如果 OpenCode 生成效果和 Claude Code 差异很大,检查是否用的是同一个模型。
附录 C:完整项目结构参考
完成所有步骤后,你的项目目录应该长这样:
|
|
最后总结
|
|
三句话记住 Skill 的精髓:
- 先说设计系统,再写代码 — 方向不对,代码白写
- 先出粗糙 V0,再精雕细琢 — 快速试错,成本最低
- 大胆留白,每个元素要证明自己 — 克制即高级