设计师别再让 Agent 猜审美:把判断写进 DESIGN.md

管住 Agent,靠的不是再补一句「做得高级一点」,而是把设计判断写成文件,把可重复的版式交给 CSS,把返工变成下一轮规则。

设计师用 AI 做页面,最容易卡在一个很别扭的环节:Agent 能把东西生成出来,但每次都像「差一点」。字号要调,表格要拉宽,卡片太散,层级不稳,最后还是回到人工修图。

Vercel 最近写了一篇文章,讲他们怎么解决这个问题:用一份公开的 design.md,配合 CSS 样式表和评测闭环,让 Agent 生成的报告页更接近真实上线的 Vercel 页面。

原文:

How our agents build on-brand pages with design.md

把判断交给 DESIGN.md,把版式约束交给 CSS。

1、问题不在「提示词不够好」

Vercel 一开始也试过把内部的 product-design skill 压缩成公开 prompt。方向听起来很合理:既然仓库里有设计经验,那就把经验写给模型。

但结果并不稳定。视觉语言写得再全,不同模型读完之后,还是会生成完全不同的页面。「保持干净」「更有层级」「像 Vercel 一点」这些话,对人有感觉,对 Agent 却没有明确边界。

更大的问题是上下文差异。内部仓库有真实组件、真实页面、真实历史案例;公开 prompt 只剩文字。Agent 不是在复用设计系统,而是在凭想象还原设计系统。

所以他们没有继续堆提示词,而是换了一个方向:从零写一份 design.md,再用固定任务去验证它到底有没有用。

2、真正起作用的是「任务判断」

他们拿续约提案做对照:同一个任务、同一份数据、同一个模型,只开关 design.md。

没有设计文件时,模型生成的是很常见的 SaaS 仪表盘:一堆卡片、一组指标、一个看起来正确但不太会说话的页面。

有 design.md 之后,页面会先给续约建议,再把商业证据收进结构化网格,把可比指标放在同一尺度里。变化不只是配色,而是信息顺序变了。

同一任务下,变化的是信息层级和页面结构,不只是视觉外壳。

这点对设计师很重要。我们想管住 Agent,不能只告诉它「长什么样」,还要告诉它「这个页面先解决什么问题」。

3、把工作拆成三层:判断、机械、闭环

Vercel 最后把方案拆成三层:

  1. design.md 写判断:读者是谁、先看什么、证据怎么组织、哪些生成式套路要拒绝。
  2. CSS 写机械:字号、间距、表格、统计条、布局原语这些重复动作,不让模型每次重发明。
  3. 评测写闭环:把「这次哪里不行」变成下一轮能复用、能检查的规则。

判断在 DESIGN.md,机械在 CSS,闭环把返工变成规则。

这套拆法很现实。设计师不该一直在生成结果上抠像素,而是要把高频修改沉淀下来。一次修一页,是手工劳动;把同类问题写进规则,下一次才可能少返工。

CSS 的价值也在这里:它不占模型上下文,渲染时再加载。Agent 只需要知道该用哪个类,而不是每次把所有间距和字号重新写一遍。

4、不要说「别丑」,要写可观察规则

design.md 里最值得学的一点,是它会明确写「不要什么」。

比如不要居中 hero 加卡片网格,不要装饰性渐变,不要随手塞图标瓷砖,不要把表格挤在正文窄栏里。这些不是审美偏好,而是可识别、可复查的失败模式。

「别丑」没有用,改成「表格全宽」这类规则才有约束力。

早期测试里,续约提案的证据表被挤得太窄。团队没有只说「表格再舒服一点」,而是同时补规则和检查:证据表要吃满可用宽度。后续同类页面才会稳定。

对比:同一张商业条款表,规则落地前后的可读性差异。

设计师写给 Agent 的规则,也应该尽量从感觉翻译成动作:不要写「高级」,写「减少装饰、扩大留白、主指标在首屏左上」;不要写「更清楚」,写「同类指标使用同一尺度」。

5、从一类产物开始,不要一上来管全站

公开测试里,三个桌面场景、GPT-5.5 首轮、有文件 vs 无文件,已知机械故障从 91 次降到 39 次,约少 57%。

这个数字不能理解成「AI 已经能无人值守发版」。作者也说了边界:检查只能抓已登记的问题;样本只有六页;每页仍然有至少一处会挡住上线的问题。

它真正证明的是:当问题被点名、被编码,同类故障就更不容易反复出现。

具体的开工是:

  1. 选一种会反复做的产物,比如报告页、商品详情页、活动页。
  2. 存一份没有设计上下文的基线结果。
  3. 把最近十条手工修改,改写成可观察规则。
  4. 把字号、间距、表格、按钮这些机械部分推进 CSS。
  5. 再做一次盲比,看返工是不是少了。

6、一句话总结

这套方法最适合已经开始让 Agent 做页面、但总在同一批版式问题上返工的团队。

它不是让设计师退出评审,而是把设计师最常说、最常改、最常拦截的问题,提前写进工作流里。

把反复提的修改点,写成明确规则。

把字号、间距、表格这些机械动作,交给 CSS。

把每次返工,变成下一次少返工的约束。