<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>UI设计 on 鬼哥的空间</title><link>https://luoli523.github.io/tags/ui%E8%AE%BE%E8%AE%A1/</link><description>Recent content in UI设计 on 鬼哥的空间</description><generator>Hugo -- gohugo.io</generator><language>zh-cn</language><lastBuildDate>Sun, 12 Apr 2026 00:00:00 +0000</lastBuildDate><atom:link href="https://luoli523.github.io/tags/ui%E8%AE%BE%E8%AE%A1/index.xml" rel="self" type="application/rss+xml"/><item><title>DESIGN.md：让 AI 拥有"设计品味"的新标准</title><link>https://luoli523.github.io/p/design-md-intro/</link><pubDate>Sun, 12 Apr 2026 00:00:00 +0000</pubDate><guid>https://luoli523.github.io/p/design-md-intro/</guid><description>&lt;img src="https://luoli523.github.io/" alt="Featured image of post DESIGN.md：让 AI 拥有"设计品味"的新标准" /&gt;
 &lt;blockquote&gt;
 &lt;p&gt;一个 markdown 文件，&lt;strong&gt;51,000 颗 star&lt;/strong&gt;，&lt;strong&gt;6,300 个 fork&lt;/strong&gt;。&lt;/p&gt;
&lt;p&gt;这大概是 2026 年最被低估的 AI 工程概念。&lt;/p&gt;

 &lt;/blockquote&gt;
&lt;p&gt;你让 Claude Code 生成一个登录页，它给你一坨&amp;quot;能用但丑陋&amp;quot;的 Bootstrap 味 UI。你让 Cursor 给你做个 dashboard，它给你另一坨&amp;quot;能用但丑陋&amp;quot;的 Bootstrap 味 UI。&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;AI 会写代码，但 AI 没有品味。&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;除非——你给它一份 DESIGN.md。&lt;/p&gt;
&lt;hr&gt;
&lt;h2 id="一一切从-google-stitch-的一个小改动说起"&gt;一、一切从 Google Stitch 的一个小改动说起
&lt;/h2&gt;&lt;p&gt;2026 年初，Google 悄悄给它的 AI 设计工具 &lt;a class="link" href="https://stitch.withgoogle.com/" target="_blank" rel="noopener"
 &gt;Stitch&lt;/a&gt; 引入了一个新概念：&lt;strong&gt;DESIGN.md&lt;/strong&gt;。&lt;/p&gt;
&lt;p&gt;定位很简单：&lt;/p&gt;

 &lt;blockquote&gt;
 &lt;p&gt;&lt;strong&gt;AGENTS.md&lt;/strong&gt; 告诉 AI Coding Agent &lt;strong&gt;怎么建&lt;/strong&gt;项目；
&lt;strong&gt;DESIGN.md&lt;/strong&gt; 告诉 AI Design Agent 项目&lt;strong&gt;长什么样&lt;/strong&gt;。&lt;/p&gt;

 &lt;/blockquote&gt;
&lt;p&gt;两个 markdown 文件，分工明确——一个管工程，一个管审美。&lt;/p&gt;
&lt;p&gt;然后事情就有点失控了。一个叫 VoltAgent 的团队开了个 GitHub 仓库 &lt;a class="link" href="https://github.com/VoltAgent/awesome-design-md" target="_blank" rel="noopener"
 &gt;awesome-design-md&lt;/a&gt;，从真实网站里&amp;quot;提取&amp;quot;66 个主流品牌的 DESIGN.md，免费开源。两个月，冲到 51k stars。&lt;/p&gt;
&lt;p&gt;&lt;img alt="awesome-design-md 仓库 star 数截图" class="gallery-image" data-flex-basis="254px" data-flex-grow="105" height="1110" loading="lazy" sizes="(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px" src="https://luoli523.github.io/p/design-md-intro/repo-screenshot.webp" srcset="https://luoli523.github.io/p/design-md-intro/repo-screenshot_hu_9c7e8851da56c6e.webp 800w, https://luoli523.github.io/p/design-md-intro/repo-screenshot.webp 1176w" width="1176"&gt;&lt;/p&gt;
&lt;p&gt;你可以在里面找到：&lt;strong&gt;Claude&lt;/strong&gt;、&lt;strong&gt;Vercel&lt;/strong&gt;、&lt;strong&gt;Linear&lt;/strong&gt;、&lt;strong&gt;Notion&lt;/strong&gt;、&lt;strong&gt;Stripe&lt;/strong&gt;、&lt;strong&gt;Apple&lt;/strong&gt;、&lt;strong&gt;Airbnb&lt;/strong&gt;、&lt;strong&gt;Figma&lt;/strong&gt;、&lt;strong&gt;Supabase&lt;/strong&gt;、&lt;strong&gt;Raycast&lt;/strong&gt;、&lt;strong&gt;Cursor&lt;/strong&gt;、&lt;strong&gt;Warp&lt;/strong&gt;、&lt;strong&gt;OpenAI&lt;/strong&gt;、&lt;strong&gt;xAI&lt;/strong&gt;……几乎你叫得上名字的现代科技品牌都在里面。&lt;/p&gt;
&lt;hr&gt;
&lt;h2 id="二designmd-到底是什么"&gt;二、DESIGN.md 到底是什么？
&lt;/h2&gt;&lt;p&gt;&lt;strong&gt;它就是一个 markdown 文件。&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;没有 Figma 插件，没有 JSON schema，没有 Tailwind 配置，没有 design tokens，没有任何工具链。就是一个 &lt;code&gt;DESIGN.md&lt;/code&gt;，丢在你的项目根目录，和 &lt;code&gt;README.md&lt;/code&gt; 并排放着。&lt;/p&gt;
&lt;p&gt;一份典型的 DESIGN.md 里有这些内容：&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;视觉主题与氛围&lt;/strong&gt;（比如 Claude 是 &amp;ldquo;warm terracotta accent, clean editorial layout&amp;rdquo;）&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;色板&lt;/strong&gt; + 每个颜色的语义角色&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;字体层级&lt;/strong&gt;（字号、字重、行高）&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;组件样式&lt;/strong&gt;（按钮、卡片、输入框、导航）&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;间距与布局原则&lt;/strong&gt;&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;阴影与层级系统&lt;/strong&gt;&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;设计边界&lt;/strong&gt;（该做什么 / 不该做什么）&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;响应式断点&lt;/strong&gt;&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;给 AI Agent 的 prompt 指引&lt;/strong&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;看起来和传统的设计规范文档差不多？&lt;strong&gt;关键不在内容，关键在格式。&lt;/strong&gt;&lt;/p&gt;
&lt;hr&gt;
&lt;h2 id="三为什么是-markdown"&gt;三、为什么是 Markdown？
&lt;/h2&gt;&lt;p&gt;这是整个概念最&amp;quot;反直觉&amp;quot;的地方。&lt;/p&gt;
&lt;h3 id="对比一下主流方案"&gt;对比一下主流方案
&lt;/h3&gt;&lt;table&gt;
 &lt;thead&gt;
 &lt;tr&gt;
 &lt;th&gt;方案&lt;/th&gt;
 &lt;th&gt;机器可读性&lt;/th&gt;
 &lt;th&gt;AI 理解度&lt;/th&gt;
 &lt;th&gt;人可读性&lt;/th&gt;
 &lt;th&gt;落地成本&lt;/th&gt;
 &lt;/tr&gt;
 &lt;/thead&gt;
 &lt;tbody&gt;
 &lt;tr&gt;
 &lt;td&gt;&lt;strong&gt;Figma 导出&lt;/strong&gt;&lt;/td&gt;
 &lt;td&gt;高&lt;/td&gt;
 &lt;td&gt;低（需要插件）&lt;/td&gt;
 &lt;td&gt;中（要开软件）&lt;/td&gt;
 &lt;td&gt;高&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;&lt;strong&gt;Design Tokens JSON&lt;/strong&gt;&lt;/td&gt;
 &lt;td&gt;高&lt;/td&gt;
 &lt;td&gt;中&lt;/td&gt;
 &lt;td&gt;低&lt;/td&gt;
 &lt;td&gt;中&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;&lt;strong&gt;Tailwind Config&lt;/strong&gt;&lt;/td&gt;
 &lt;td&gt;高&lt;/td&gt;
 &lt;td&gt;中&lt;/td&gt;
 &lt;td&gt;中&lt;/td&gt;
 &lt;td&gt;中&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;&lt;strong&gt;DESIGN.md&lt;/strong&gt;&lt;/td&gt;
 &lt;td&gt;中&lt;/td&gt;
 &lt;td&gt;&lt;strong&gt;极高&lt;/strong&gt;&lt;/td&gt;
 &lt;td&gt;&lt;strong&gt;极高&lt;/strong&gt;&lt;/td&gt;
 &lt;td&gt;&lt;strong&gt;几乎为零&lt;/strong&gt;&lt;/td&gt;
 &lt;/tr&gt;
 &lt;/tbody&gt;
&lt;/table&gt;
&lt;p&gt;你发现了吗？&lt;strong&gt;对 LLM 最友好的格式，不是最&amp;quot;结构化&amp;quot;的格式，而是它训练时见得最多的格式——自然语言 + markdown。&lt;/strong&gt;&lt;/p&gt;
&lt;h3 id="用-prose-描述设计比用-json-更准确"&gt;用 prose 描述设计，比用 JSON 更准确
&lt;/h3&gt;&lt;p&gt;对比两种写法，说&amp;quot;按钮的 hover 状态要有一点点活力，但不能太跳跃&amp;quot;：&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;JSON 写法&lt;/strong&gt;：&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;div class="chroma"&gt;
&lt;table class="lntable"&gt;&lt;tr&gt;&lt;td class="lntd"&gt;
&lt;pre tabindex="0" class="chroma"&gt;&lt;code&gt;&lt;span class="lnt"&gt;1
&lt;/span&gt;&lt;span class="lnt"&gt;2
&lt;/span&gt;&lt;span class="lnt"&gt;3
&lt;/span&gt;&lt;span class="lnt"&gt;4
&lt;/span&gt;&lt;span class="lnt"&gt;5
&lt;/span&gt;&lt;span class="lnt"&gt;6
&lt;/span&gt;&lt;span class="lnt"&gt;7
&lt;/span&gt;&lt;span class="lnt"&gt;8
&lt;/span&gt;&lt;span class="lnt"&gt;9
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class="lntd"&gt;
&lt;pre tabindex="0" class="chroma"&gt;&lt;code class="language-json" data-lang="json"&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="p"&gt;{&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt; &lt;span class="nt"&gt;&amp;#34;button&amp;#34;&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt; &lt;span class="nt"&gt;&amp;#34;hover&amp;#34;&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt; &lt;span class="nt"&gt;&amp;#34;transform&amp;#34;&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="s2"&gt;&amp;#34;translateY(-1px)&amp;#34;&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt; &lt;span class="nt"&gt;&amp;#34;transition&amp;#34;&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="s2"&gt;&amp;#34;all 150ms ease&amp;#34;&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt; &lt;span class="nt"&gt;&amp;#34;boxShadow&amp;#34;&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="s2"&gt;&amp;#34;0 4px 12px rgba(0,0,0,0.08)&amp;#34;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt; &lt;span class="p"&gt;}&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt; &lt;span class="p"&gt;}&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="p"&gt;}&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;&lt;p&gt;&lt;strong&gt;DESIGN.md 写法&lt;/strong&gt;：&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;div class="chroma"&gt;
&lt;table class="lntable"&gt;&lt;tr&gt;&lt;td class="lntd"&gt;
&lt;pre tabindex="0" class="chroma"&gt;&lt;code&gt;&lt;span class="lnt"&gt;1
&lt;/span&gt;&lt;span class="lnt"&gt;2
&lt;/span&gt;&lt;span class="lnt"&gt;3
&lt;/span&gt;&lt;span class="lnt"&gt;4
&lt;/span&gt;&lt;span class="lnt"&gt;5
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class="lntd"&gt;
&lt;pre tabindex="0" class="chroma"&gt;&lt;code class="language-markdown" data-lang="markdown"&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="gu"&gt;## Buttons
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;Hover state should feel &lt;span class="gs"&gt;**alive but restrained**&lt;/span&gt;—a subtle lift of 1px
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;with a soft shadow. Never bouncy or playful. The goal is &amp;#34;confident
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;acknowledgement,&amp;#34; not &amp;#34;look at me.&amp;#34;
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;&lt;p&gt;哪一种更能让 AI 理解&amp;quot;克制的活力&amp;quot;？&lt;/p&gt;
&lt;p&gt;JSON 写法告诉你&lt;strong&gt;怎么做&lt;/strong&gt;，但没告诉你&lt;strong&gt;为什么&lt;/strong&gt;——AI 只能机械复刻，不能举一反三。markdown 写法把&lt;strong&gt;意图&lt;/strong&gt;交给了 AI，换一个组件、换一个场景，它能自己推导出一致的风格。&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;这就是 DESIGN.md 的核心洞察：LLM 需要的是&amp;quot;设计语义&amp;quot;，不是&amp;quot;设计数值&amp;quot;。&lt;/strong&gt;&lt;/p&gt;
&lt;hr&gt;
&lt;h2 id="四一份真实的-designmd-长什么样"&gt;四、一份真实的 DESIGN.md 长什么样
&lt;/h2&gt;&lt;p&gt;我们看一下 Claude 品牌的 DESIGN.md 片段（节选自 &lt;code&gt;getdesign.md/claude/design-md&lt;/code&gt;）：&lt;/p&gt;
&lt;p&gt;&lt;img alt="Claude DESIGN.md 片段" class="gallery-image" data-flex-basis="49px" data-flex-grow="20" height="14310" loading="lazy" sizes="(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px" src="https://luoli523.github.io/p/design-md-intro/claude-design-md-sample.webp" srcset="https://luoli523.github.io/p/design-md-intro/claude-design-md-sample_hu_4da7083b70fbcef8.webp 800w, https://luoli523.github.io/p/design-md-intro/claude-design-md-sample_hu_ded45c66dabffe71.webp 1600w, https://luoli523.github.io/p/design-md-intro/claude-design-md-sample_hu_71079e1b63526b14.webp 2400w, https://luoli523.github.io/p/design-md-intro/claude-design-md-sample.webp 2940w" width="2940"&gt;&lt;/p&gt;
&lt;p&gt;关键 section 的写法：&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;div class="chroma"&gt;
&lt;table class="lntable"&gt;&lt;tr&gt;&lt;td class="lntd"&gt;
&lt;pre tabindex="0" class="chroma"&gt;&lt;code&gt;&lt;span class="lnt"&gt; 1
&lt;/span&gt;&lt;span class="lnt"&gt; 2
&lt;/span&gt;&lt;span class="lnt"&gt; 3
&lt;/span&gt;&lt;span class="lnt"&gt; 4
&lt;/span&gt;&lt;span class="lnt"&gt; 5
&lt;/span&gt;&lt;span class="lnt"&gt; 6
&lt;/span&gt;&lt;span class="lnt"&gt; 7
&lt;/span&gt;&lt;span class="lnt"&gt; 8
&lt;/span&gt;&lt;span class="lnt"&gt; 9
&lt;/span&gt;&lt;span class="lnt"&gt;10
&lt;/span&gt;&lt;span class="lnt"&gt;11
&lt;/span&gt;&lt;span class="lnt"&gt;12
&lt;/span&gt;&lt;span class="lnt"&gt;13
&lt;/span&gt;&lt;span class="lnt"&gt;14
&lt;/span&gt;&lt;span class="lnt"&gt;15
&lt;/span&gt;&lt;span class="lnt"&gt;16
&lt;/span&gt;&lt;span class="lnt"&gt;17
&lt;/span&gt;&lt;span class="lnt"&gt;18
&lt;/span&gt;&lt;span class="lnt"&gt;19
&lt;/span&gt;&lt;span class="lnt"&gt;20
&lt;/span&gt;&lt;span class="lnt"&gt;21
&lt;/span&gt;&lt;span class="lnt"&gt;22
&lt;/span&gt;&lt;span class="lnt"&gt;23
&lt;/span&gt;&lt;span class="lnt"&gt;24
&lt;/span&gt;&lt;span class="lnt"&gt;25
&lt;/span&gt;&lt;span class="lnt"&gt;26
&lt;/span&gt;&lt;span class="lnt"&gt;27
&lt;/span&gt;&lt;span class="lnt"&gt;28
&lt;/span&gt;&lt;span class="lnt"&gt;29
&lt;/span&gt;&lt;span class="lnt"&gt;30
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class="lntd"&gt;
&lt;pre tabindex="0" class="chroma"&gt;&lt;code class="language-markdown" data-lang="markdown"&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="gh"&gt;# Claude Design System
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="gu"&gt;## Visual Atmosphere
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;Editorial warmth meets AI precision. The palette feels like a vintage
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;book in a modern library—warm cream paper, sepia ink, a single terracotta
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;accent that signals &amp;#34;this is where intelligence lives.&amp;#34;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="gu"&gt;## Color Palette
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="k"&gt;-&lt;/span&gt; **Background**: Cream white (&lt;span class="ni"&gt;#faf9f5&lt;/span&gt;) — never pure white
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="k"&gt;-&lt;/span&gt; **Text primary**: Deep charcoal (&lt;span class="ni"&gt;#1f1e1c&lt;/span&gt;) — never pure black
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="k"&gt;-&lt;/span&gt; **Accent**: Terracotta (&lt;span class="ni"&gt;#d97757&lt;/span&gt;) — used sparingly, for CTAs and highlights
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="k"&gt;-&lt;/span&gt; **Muted**: Sepia gray (&lt;span class="ni"&gt;#8a7f72&lt;/span&gt;) — for secondary text and borders
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="gs"&gt;**Rule**&lt;/span&gt;: If you&amp;#39;re reaching for pure &lt;span class="ni"&gt;#000&lt;/span&gt; or &lt;span class="ni"&gt;#fff&lt;/span&gt;, stop. This design
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;system lives in the warm middle.
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="gu"&gt;## Typography
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;Use Tiempos Text for body (serif, generous line-height).
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;Use Styrene for UI and headings (sans-serif, tight tracking).
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;Never mix more than two font families. Never use bold on serif body.
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="gu"&gt;## Component: Chat Bubble
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;User messages: terracotta background, cream text, 14px radius.
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;Claude responses: cream background, charcoal text, no bubble border.
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;The asymmetry is intentional—it keeps the AI&amp;#39;s responses &amp;#34;in the
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;paper,&amp;#34; not &amp;#34;on top of the paper.&amp;#34;
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;&lt;p&gt;注意几个细节：&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;&lt;strong&gt;每个色值都带&amp;quot;为什么&amp;quot;&lt;/strong&gt;：不只是 &lt;code&gt;#faf9f5&lt;/code&gt;，而是 &amp;ldquo;cream white, never pure white&amp;rdquo;。AI 读到这句，就知道选色时要偏暖偏柔，永远别往纯白靠&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;规则是用散文写的&lt;/strong&gt;：&amp;ldquo;If you&amp;rsquo;re reaching for pure #000 or #fff, stop.&amp;quot;——这种表达方式 JSON 写不出来&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;语义 &amp;gt; 数值&lt;/strong&gt;：&amp;ldquo;The asymmetry is intentional&amp;rdquo;——这句话决定了 AI 遇到新组件时的判断标准&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;&lt;strong&gt;这就是为什么 AI 读了 DESIGN.md 之后，生成的 UI 真的会&amp;quot;有品味&amp;rdquo;。&lt;/strong&gt;&lt;/p&gt;
&lt;hr&gt;
&lt;h2 id="五实战在-claude-code-里用-designmd"&gt;五、实战：在 Claude Code 里用 DESIGN.md
&lt;/h2&gt;&lt;p&gt;理论讲完了，看怎么用。以 Claude Code 为例，30 秒上手。&lt;/p&gt;
&lt;h3 id="step-1挑一个你喜欢的品牌"&gt;Step 1：挑一个你喜欢的品牌
&lt;/h3&gt;&lt;p&gt;去 &lt;a class="link" href="https://github.com/VoltAgent/awesome-design-md" target="_blank" rel="noopener"
 &gt;awesome-design-md&lt;/a&gt; 的 README 里浏览 66 个品牌。选一个风格接近你目标项目的——比如我要做一个极简的 SaaS 落地页，选 Linear 或 Vercel。&lt;/p&gt;
&lt;h3 id="step-2下载-designmd-到项目根目录"&gt;Step 2：下载 DESIGN.md 到项目根目录
&lt;/h3&gt;&lt;p&gt;访问对应品牌的 URL（比如 &lt;code&gt;https://getdesign.md/linear.app/design-md&lt;/code&gt;），复制 markdown 内容保存为 &lt;code&gt;DESIGN.md&lt;/code&gt;，放在项目根目录：&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;div class="chroma"&gt;
&lt;table class="lntable"&gt;&lt;tr&gt;&lt;td class="lntd"&gt;
&lt;pre tabindex="0" class="chroma"&gt;&lt;code&gt;&lt;span class="lnt"&gt;1
&lt;/span&gt;&lt;span class="lnt"&gt;2
&lt;/span&gt;&lt;span class="lnt"&gt;3
&lt;/span&gt;&lt;span class="lnt"&gt;4
&lt;/span&gt;&lt;span class="lnt"&gt;5
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class="lntd"&gt;
&lt;pre tabindex="0" class="chroma"&gt;&lt;code class="language-fallback" data-lang="fallback"&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;my-project/
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;├── CLAUDE.md
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;├── DESIGN.md ← 新增
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;├── package.json
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;└── src/
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;&lt;h3 id="step-3在-claudemd-里引用它"&gt;Step 3：在 CLAUDE.md 里引用它
&lt;/h3&gt;&lt;p&gt;编辑你项目的 &lt;code&gt;CLAUDE.md&lt;/code&gt;，加一行：&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;div class="chroma"&gt;
&lt;table class="lntable"&gt;&lt;tr&gt;&lt;td class="lntd"&gt;
&lt;pre tabindex="0" class="chroma"&gt;&lt;code&gt;&lt;span class="lnt"&gt;1
&lt;/span&gt;&lt;span class="lnt"&gt;2
&lt;/span&gt;&lt;span class="lnt"&gt;3
&lt;/span&gt;&lt;span class="lnt"&gt;4
&lt;/span&gt;&lt;span class="lnt"&gt;5
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class="lntd"&gt;
&lt;pre tabindex="0" class="chroma"&gt;&lt;code class="language-markdown" data-lang="markdown"&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="gu"&gt;## Design System
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;All UI work must follow &lt;span class="sb"&gt;`DESIGN.md`&lt;/span&gt; at the project root.
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;When generating components, read DESIGN.md first and match its
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;color palette, typography, component rules, and atmosphere exactly.
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;&lt;h3 id="step-4让-claude-code-生成-ui"&gt;Step 4：让 Claude Code 生成 UI
&lt;/h3&gt;&lt;div class="highlight"&gt;&lt;div class="chroma"&gt;
&lt;table class="lntable"&gt;&lt;tr&gt;&lt;td class="lntd"&gt;
&lt;pre tabindex="0" class="chroma"&gt;&lt;code&gt;&lt;span class="lnt"&gt;1
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class="lntd"&gt;
&lt;pre tabindex="0" class="chroma"&gt;&lt;code class="language-fallback" data-lang="fallback"&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;你：帮我做一个 pricing page，三档套餐，带年付/月付切换
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;&lt;p&gt;Claude Code 会先读 &lt;code&gt;DESIGN.md&lt;/code&gt;，然后生成的代码会：&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;颜色自动用 Linear 的 &lt;code&gt;#5e6ad2&lt;/code&gt; 紫色做 accent&lt;/li&gt;
&lt;li&gt;字体层级严格匹配 Linear 的 Inter + tight tracking&lt;/li&gt;
&lt;li&gt;按钮的 hover 状态带 Linear 标志性的 &amp;ldquo;subtle glow&amp;rdquo;&lt;/li&gt;
&lt;li&gt;整体氛围是 Linear 那种 &amp;ldquo;ultra-minimal, precise&amp;rdquo;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;img alt="Claude Code 生成效果对比" class="gallery-image" data-flex-basis="430px" data-flex-grow="179" height="1536" loading="lazy" sizes="(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px" src="https://luoli523.github.io/p/design-md-intro/generated-ui-compare.webp" srcset="https://luoli523.github.io/p/design-md-intro/generated-ui-compare_hu_856c0aec890efc4d.webp 800w, https://luoli523.github.io/p/design-md-intro/generated-ui-compare_hu_4d3ff5a55f260d31.webp 1600w, https://luoli523.github.io/p/design-md-intro/generated-ui-compare_hu_1e7ebbf8e9087d62.webp 2400w, https://luoli523.github.io/p/design-md-intro/generated-ui-compare.webp 2752w" width="2752"&gt;&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;最关键的是——如果你让它继续做一个 dashboard 页面，它会自动保持一致的风格。&lt;/strong&gt; 因为 DESIGN.md 给了它&amp;quot;世界观&amp;quot;，不是零散的 tokens。&lt;/p&gt;
&lt;hr&gt;
&lt;h2 id="六它的局限与边界"&gt;六、它的局限与边界
&lt;/h2&gt;&lt;p&gt;我不想把这篇写成纯 hype 贴。DESIGN.md 不是银弹，有几个场景它就是不适合：&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;1. 精准交互动效&lt;/strong&gt;：如果你想要&amp;quot;按下按钮后 300ms 内显示 ripple，持续 200ms 后消散&amp;quot;，这种精确到毫秒的规格，markdown 不如 JSON token&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;2. 不能代替 Design Review&lt;/strong&gt;：AI 生成的 UI 看起来对了，不等于好用。信息层级、可用性、无障碍——这些还得人来把关&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;3. 同质化风险&lt;/strong&gt;：如果大家都抄 Linear 或 Vercel 的 DESIGN.md，互联网上的 AI 生成页面会越来越像&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;4. 对&amp;quot;极致精细&amp;quot;场景不够&lt;/strong&gt;：Apple、Stripe 那种对每个像素都有要求的品牌，光靠 DESIGN.md 不够——你需要人类设计师 + DESIGN.md 双保险&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;5. 跨 Agent 的兼容性还不稳&lt;/strong&gt;：不同 AI（Claude、Cursor、Lovable、Stitch）对 DESIGN.md 的理解深度不一样，效果会有差异&lt;/p&gt;
&lt;p&gt;但这些局限不妨碍一个事实：&lt;strong&gt;DESIGN.md 把&amp;quot;让 AI 做出有品味的 UI&amp;quot;这件事，从一项玄学变成了一项工程。&lt;/strong&gt;&lt;/p&gt;
&lt;hr&gt;
&lt;h2 id="七为什么我觉得这是个大事"&gt;七、为什么我觉得这是个大事
&lt;/h2&gt;&lt;p&gt;如果你退一步看，DESIGN.md 背后是一种更根本的转变：&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;过去&lt;/strong&gt;：设计系统是给&lt;strong&gt;设计师和前端工程师&lt;/strong&gt;读的。内容是 Figma、Storybook、Design Tokens。&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;现在&lt;/strong&gt;：设计系统的&lt;strong&gt;第一读者变成了 AI Agent&lt;/strong&gt;。内容必须是 LLM 能原生理解的格式——也就是 markdown + prose。&lt;/p&gt;
&lt;p&gt;这个转变和 &lt;code&gt;CLAUDE.md&lt;/code&gt; / &lt;code&gt;AGENTS.md&lt;/code&gt; 的兴起是同一条逻辑：&lt;strong&gt;当 AI 成为团队里最&amp;quot;勤快&amp;quot;的那个成员，你得用它听得懂的语言，写给它看的文档&lt;/strong&gt;。&lt;/p&gt;
&lt;p&gt;未来你可能会看到每个项目根目录都有这么一套：&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;div class="chroma"&gt;
&lt;table class="lntable"&gt;&lt;tr&gt;&lt;td class="lntd"&gt;
&lt;pre tabindex="0" class="chroma"&gt;&lt;code&gt;&lt;span class="lnt"&gt;1
&lt;/span&gt;&lt;span class="lnt"&gt;2
&lt;/span&gt;&lt;span class="lnt"&gt;3
&lt;/span&gt;&lt;span class="lnt"&gt;4
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class="lntd"&gt;
&lt;pre tabindex="0" class="chroma"&gt;&lt;code class="language-fallback" data-lang="fallback"&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;├── README.md ← 给人类看
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;├── CLAUDE.md ← 给 Claude Code 看（项目规则）
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;├── AGENTS.md ← 给所有 coding agent 看（构建指南）
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;├── DESIGN.md ← 给 design agent 看（视觉系统）
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;&lt;p&gt;&lt;strong&gt;文档即接口，markdown 即 API。&lt;/strong&gt; 这是 AI-first 工程时代的新常态。&lt;/p&gt;
&lt;hr&gt;
&lt;h2 id="八立刻动手本周做一件事"&gt;八、立刻动手：本周做一件事
&lt;/h2&gt;&lt;p&gt;回顾一下 DESIGN.md 为什么值得你关注：&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;&lt;strong&gt;一个 markdown 文件&lt;/strong&gt; = 一个完整的设计系统&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;LLM 原生理解&lt;/strong&gt; prose + markdown，比 JSON / Figma 效果更好&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;66 个主流品牌模板开源&lt;/strong&gt;，免费可用&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;30 秒集成&lt;/strong&gt; 进任何 AI Coding 工作流&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;从&amp;quot;没品味的 AI&amp;quot;到&amp;quot;有品味的 AI&amp;quot;&lt;/strong&gt; 之间，就隔了这一个文件&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;&lt;strong&gt;如果你也在用 Claude Code / Cursor / Lovable 做前端，这周就做一件事&lt;/strong&gt;：&lt;/p&gt;

 &lt;blockquote&gt;
 &lt;ol&gt;
&lt;li&gt;打开 &lt;a class="link" href="https://github.com/VoltAgent/awesome-design-md" target="_blank" rel="noopener"
 &gt;awesome-design-md&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;挑一个你喜欢的品牌（我个人推荐 Linear、Vercel、或 Claude）&lt;/li&gt;
&lt;li&gt;下载它的 DESIGN.md，放到你正在做的项目根目录&lt;/li&gt;
&lt;li&gt;下次让 AI 生成 UI 组件时，对比有/没有 DESIGN.md 的效果&lt;/li&gt;
&lt;/ol&gt;

 &lt;/blockquote&gt;
&lt;p&gt;你会发现——&lt;strong&gt;AI 突然&amp;quot;有品味&amp;quot;了&lt;/strong&gt;。&lt;/p&gt;
&lt;hr&gt;
&lt;h2 id="参考资料"&gt;参考资料
&lt;/h2&gt;&lt;ul&gt;
&lt;li&gt;&lt;a class="link" href="https://github.com/VoltAgent/awesome-design-md" target="_blank" rel="noopener"
 &gt;awesome-design-md（GitHub 仓库）&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a class="link" href="https://getdesign.md/" target="_blank" rel="noopener"
 &gt;getdesign.md（完整在线模板库）&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a class="link" href="https://stitch.withgoogle.com/docs/design-md/overview/" target="_blank" rel="noopener"
 &gt;Google Stitch 官方 DESIGN.md 文档&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a class="link" href="https://claude-code.luoli523.com" target="_blank" rel="noopener"
 &gt;跟鬼哥一起玩 Claude Code&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;</description></item></channel></rss>