Figma社区论坛上有一篇帖子提到,在Figma Make中选择了组件和变量库后,得到的是“几乎没有对比度的颜色,以及毫无道理的字号”。同一位用户还说,完全不选库时,结果大约好了90%。衡量任何工具都应以这种失败为标准:它要么用你团队现有的组件来构建,要么另起一套平行UI,留给你以后去对齐。
最佳的设计转代码AI工具并不在同一条赛道上竞争,因为它们的输入各不相同。截图、Figma文件、文字提示词和现有代码库所携带的结构信息量差别很大。
按你手上有什么来选。Figma文件交给转换器,例如Figma内置的代码生成、Anima或Builder.io Visual Copilot。截图交给screenshot-to-code。提示词交给v0、Lovable或Bolt。现有代码库则交给通过Model Context Protocol(MCP)读取你设计系统的编码智能体。
TL;DR(太长不看版)
- 如果你付费使用Figma,就用Figma内置的代码生成;只有在没有设计文件时才用screenshot-to-code;根据部署目标、计费方式和模型密钥需求,在v0、Lovable和bolt.diy之间选择;如果你有代码库和设计系统,就用配合Code Connect映射的Figma MCP。
- 采用任何工具之前,先生成一个你已有组件可用的界面,检查输出中是否有硬编码的十六进制颜色和像素值,以及本该从你的组件库导入的地方是否新声明了组件。
- bolt.diy、screenshot-to-code和Penpot都可以在你自己掌控的服务器上运行,但各有注意事项:bolt.diy的提交从2026年2月到10月一度停滞,最后一个打标签的版本还是2025年5月发布的;screenshot-to-code需要模型API密钥;自托管的Penpot会落后于云端版本。
- 当工具具备显式映射时,组件复用效果最好,例如配合Code Connect的Figma MCP,或Builder.io的设计系统索引。但生成的输出仍需审查,所以无论走哪条路线,都要预留清理时间。
按你的起点选择工具
截图只有像素,别无其他。Figma文件多了组件名称、变量和布局规则,而代码库里就是组件本身。所以输入决定了哪类工具有东西可用。
| 起始输入 | 工具类别 | 可以试试的工具 | 你会得到什么 | 短板在哪里 |
|---|---|---|---|---|
| 完成的Figma文件 | Figma转换器 | Figma画布内代码生成、Figma Make、Anima、Builder.io Visual Copilot、Locofy | 基于所选画框生成的框架代码或原型 | 除非组件已映射到代码,否则样式只是近似 |
| 截图或设计稿 | 图像转代码 | screenshot-to-code | 尽力而为的还原 | 没有组件身份、状态或断点 |
| 只有提示词 | 提示词转UI | v0、Lovable、Bolt.new或bolt.diy、Google Stitch | 生成的应用或一组界面 | 没有可对照的对象 |
| 现有代码库和设计系统 | 通过MCP工作的编码智能体 | Figma MCP或Penpot MCP,配合Claude Code或OpenCode等智能体 | 直接修改你的仓库 | 配置成本高;复用会改善,但无法保证 |
检验组件和设计令牌复用的单界面测试

那位不选库反而效果更好的Make用户,并没有用上一周才发现问题。问题在最初生成的几个页面里就出现了,所以测试任何候选工具,一个界面就够了:
- 挑一个你团队用现有组件搭建的界面,比如设置表单或价格卡片。
- 用你正在考虑的工具生成这个界面,输入类型与你做新工作时用的相同。
- 在输出中搜索硬编码的值:像
#3B82F6这样的原始十六进制颜色,像font-size: 14px这样的像素字号,以及固定间距。再对比它使用你的令牌名称、CSS变量或主题类的频率。 - 检查导入。如果输出新声明了一个
Button或Card,而不是从组件库导入你们自己的,那它就是在搭一套平行UI。 - 确认框架和样式方案与仓库一致。带内联样式的纯HTML,无论预览看起来如何,都等于重写。
在2025年Stack Overflow开发者调查中,66%的开发者把“几乎正确但又不完全正确的AI解决方案”列为最让他们头疼的AI问题。这是关于AI编程工具整体的发现,并非针对设计转代码的研究;但一个看起来正确、却把每个颜色都硬编码的界面,恰恰就是这种意义上的“几乎正确”。
注意:在团队全面推广某个工具之前先做这项检查。生成一个界面只需几分钟;而一个月里合并进来的带硬编码值的输出,要花一个冲刺周期来清理。
这项检查看的是代码。渲染出来的界面是否仍与设计一致是另一个问题,可以交给BackstopJS这类可自托管的工具,它负责运行视觉回归检查。
如果你有完成的Figma文件
这一组Figma转代码AI工具都从同一个文件出发,它们的实际区别在于代码最终落在哪里:在画布上、在托管的原型里,还是在第三方导出中。
Figma内置的代码生成
在Figma Design中选择一个画框、组件或分区,打开智能体,让它生成HTML和CSS、React组件或指定框架的代码。Figma表示,你可以让智能体指向你的设计系统,这样输出就会引用你的令牌、变量和组件结构,而不是通用占位符。同一页面还说明它在所有Figma付费套餐中可用。截至2026年10月,该功能仍处于公开测试阶段,因此积分消耗和使用限制可能会发生变化。
输出以线程形式保留在文件中,开发者可以打开查看。这里没有托管或部署步骤:如果你想要一个能运行的原型,这是限制;如果你想要可以粘贴进仓库的代码,这反倒是优点。
Figma Make
Figma Make是一个独立的、由提示词驱动的工作界面。据Figma介绍,Make输出HTML、CSS和JavaScript,用于前端原型,并内置了用于修改的编辑器。你可以在免费的Starter套餐中试用,它还支持Supabase集成,用来模拟实时数据。
Figma自家的几个界面分工不同。Make根据提示词加画框生成可运行的原型。画布内生成器利用文件的组件库,把所选画框转换成代码。Figma MCP则让你仓库里的编码智能体直接读取组件和变量。
Anima、Builder.io Visual Copilot和Locofy
Builder.io的Visual Copilot列出了React、Qwik和Angular输出,以及面向移动端的Kotlin和Flutter,样式可用Tailwind CSS或CSS Modules。在复用方面,同一页面提到了Custom Component Mapping,它把Figma组件与你代码库中的组件关联起来。Builder的文档现已将手动组件映射标为弃用,改为推荐组件索引,并将其列为Enterprise套餐功能,所以请先查看最新文档和你的套餐。
Anima的免费套餐允许在Figma插件中生成5次代码,另外每天可在AI Playground中发送5条聊天消息,并进行5次Figma导入。截至2026年10月,Enterprise价格每月$500起,按年付费。
Anima还提供MCP服务器,通过它生成的代码同样计入代码生成额度。Locofy是这一类别中的另一款Figma文件转换器。
先从哪款Figma转换器开始
如果你的团队付费使用Figma,就从Figma内置的代码生成开始:它无需导出步骤就能读取文件的组件库,而在付费套餐上做单界面测试也不用新增订阅。如果你希望输出导入代码库中的组件(映射或组件索引如何适用于你的套餐,请查看其文档),或者想要它明确列出的Kotlin或Flutter移动端输出,就换用Builder.io Visual Copilot。
要做给别人看的可点击原型,就用Figma Make。打算合并的代码应该交给Figma的画布内代码生成或Builder.io Visual Copilot。
如果你只有截图
screenshot-to-code是这里默认的开源选择:采用MIT许可证,GitHub星标约80,000,2026年仍有新提交。给它一张图,它会返回使用Tailwind或CSS的HTML、React或Vue等技术栈的代码。如果你不想自己运行任何东西,screenshottocode.com上有托管版本。
screenshot-to-code这类AI只能处理图片里显示的内容,所以局限在于输入。截图不带组件身份、变量、悬停或聚焦状态,也没有响应式断点。返回的结果只是某一宽度下一个静态画框的还原,每个令牌都得从像素颜色去猜。
当没有设计文件时,screenshot-to-code是合适的工具,比如对照参考布局,或者重建一个没人有Figma文件的旧页面。如果确实有Figma文件,就从文件开始,因为文件里保存着截图丢掉的信息。
如果你只有提示词
没有设计系统需要对齐时,取舍转移到另外三个方面:工具如何收费、你能编辑多少代码,以及生成的应用能扩展到什么程度。
v0
v0的免费套餐有每日7条消息的上限,另有Vercel部署、GitHub同步和可视化的Design Mode。付费用量按token计费,v0模型的token费率在从v0 Mini到v0 Max Fast的四个模型档位之间各不相同。一次会话的成本取决于你选哪个档位以及对话持续多久。
Lovable
Lovable按积分计费。在Default Mode下,成本随任务复杂度变化,而Plan Mode每条消息消耗1积分。免费套餐包含每日5个构建积分,每月上限30个。
在一个比较Bolt和Lovable的Reddit帖子里,一位评论者写道,Bolt让他对代码有“几乎完全的控制”,而Lovable似乎只显示代码差异,“没有编辑权限”。这只是一位用户的说法,所以在认定情况依旧之前,先看看当前的编辑器。
Bolt.new和bolt.diy
Bolt.new是托管产品。bolt.diy是它的开源版本,可以从21家以上的提供商中为每条提示词选择LLM,包括通过Ollama运行的本地模型。它不强制要求数据库,Supabase只是可选集成。在它之上构建之前,先检查它的提交历史和许可条款。
Google Stitch
据Winbuzzer关于这次改版的报道,Google在2026年3月重新推出了Stitch,带来无限画布、语音交互和设计智能体。同一篇报道称,设计可以导出为Figma格式或React等代码框架,并且有MCP服务器把Stitch连接到Claude Code、Gemini CLI、Cursor和Antigravity。这让Stitch处在提示词路线和代码库路线之间:它从提示词开始,但可以把设计交给在你仓库里工作的智能体。
先从哪款提示词工具开始
在Hacker News上一场关于Lovable和Bolt的讨论中,一位评论者认为,既然后端外包给了Supabase,用这两者构建有用软件的上限“低得惊人”。这位评论者披露自己正在开发一款竞品,所以应把它看作一个有利益关系的内行意见,而不是测量结果。
手上有Figma文件,也不等于自动排除这条路线。在同一个关于Bolt和Lovable的Reddit帖子里,另一位评论者说他从没导入过Figma,因为对于他想要的设计,那似乎“比直接写提示词更难、更烦”。
如果你的团队在Vercel上部署,并且第一天就想要GitHub同步,就选v0。如果你想在花费构建积分之前,先用固定成本的Plan Mode消息规划构建,就选Lovable;如果你打算手动改代码,先看看它的编辑器。
如果你需要使用自己的模型密钥或运行本地模型,就选bolt.diy,但在它重新恢复的活跃度得到验证之前,把它当作原型工具。如果你想用提示词生成设计,之后再通过MCP服务器交给你仓库里的编码智能体,就试试Stitch。
如果你已经有代码库和设计系统

这条路线在你的仓库内部工作,智能体读取的是组件本身。代价是配置工作,而且即便配置好了,文档中描述的机制也只是提高复用的几率;没有哪一个被写明能保证复用。
Figma MCP
根据Figma帮助中心的说明,Figma MCP服务器在读取组件、变量、布局数据、FigJam内容和Make资源后,可以根据所选画框生成代码。它借助Code Connect让代码与你的组件保持一致,远程服务器还能写回画布。
它有两个版本:Figma向大多数用户推荐的远程服务器,以及面向特定组织和企业场景的桌面服务器。
从机制上讲,MCP为你的编码智能体提供结构化的设计数据。当智能体检查一个画框时,服务器会发送该画框的组件、样式和变量。Figma的博客解释说,当这些元素通过Code Connect映射到代码时,智能体就能从你的代码资源中调用它们。没有映射时,它仍能拿到样式上下文,但会从零开始写组件。
智能体由你选择。Figma的配置指南是针对Claude Code写的,而OpenCode的MCP文档涵盖了本地和远程服务器。选择Claude Code还是OpenCode,取决于你更看重托管的便利还是对提供商的控制,这个选择与设计工作本身无关。
Penpot MCP
Penpot是对应的开源方案,它的文档描述了三个关键部分:MCP服务器、在Penpot内运行并连接你打开的文件的MCP插件,以及你编写提示词的MCP客户端。你可以在Penpot账户的Integrations页面,用个人MCP密钥完成配置。通过它,智能体可以读取和修改组件、样式、令牌和图层。
这个项目的结构最近有变动。独立的penpot-mcp仓库上有一则通知,说明它已于2026年2月归档,内容已并入Penpot主仓库。基于旧仓库编写的指南,描述的配置方式可能不同。
Claude Design
Anthropic于2026年4月推出Claude Design,作为Anthropic Labs的研究预览版,面向Pro、Max、Team和Enterprise订阅用户。在引导流程中,Claude会为你的团队构建设计系统:它读取你的代码库和设计文件,在之后的项目中应用这套系统,并把完成的设计打包成交给Claude Code的交接包。
自己也销售设计工具的UXPin在发布当周写道:
“本周测试Claude Design的设计师反馈,在最初几次使用中就遇到了字体错误、按钮颜色不对和间距不一致的问题。”
先从哪种代码库方案开始
如果你的设计系统放在Figma里,并且愿意做Code Connect映射,就用Figma MCP配合编码智能体,因为正是这层映射区分了导入的组件和重新套样式的副本。
如果你想要一个智能体能读取和编辑的开源设计工具,就用Penpot MCP。Penpot本身支持自托管,但它的MCP文档描述的是通过Penpot账户进行配置,所以在依赖它之前,先在你自己的实例上确认流程。
如果你的团队付费使用Claude并希望配置最少,就用Claude Design;在信任它生成的那版设计系统之前,先做一次单界面测试。
在自己的服务器上运行开源方案

其中三款工具可以在你掌控的服务器上运行,这相当于用自己的运维换掉厂商托管;对bolt.diy和screenshot-to-code来说,还意味着用自己的模型密钥换掉积分计费。截至2026年10月,每一款都有各自的取舍。
bolt.diy。根据该仓库的提交历史,这个项目从2026年2月7日到10月4日没有任何提交,最后一个打标签的版本v1.0.0发布于2025年5月。项目采用MIT许可证,但它所依赖的WebContainers API(在浏览器内执行生成代码的运行时)在商业、营利性场景中用于生产环境需要获得授权。
原型和概念验证不需要这项授权。实际上,用你自己的密钥拿bolt.diy做原型是合理的;在基于它构建产品之前,再确认一下它的活跃度。
screenshot-to-code。自己运行它至少需要一个模型提供商的密钥,来自OpenAI、Anthropic或Gemini,另外还需要一台你自己维护的服务器。运行成本是每次生成的模型用量,由你配置的密钥所属提供商计费。
Penpot。Penpot可通过Docker Compose自托管,也可以用官方Helm chart部署在Kubernetes、OpenShift或Rancher上。它的文档提到,自托管的Docker镜像会在SaaS更新后不久发布,所以云端的新功能要晚一些才会到达你的实例。
在哪里运行取决于谁在用。一个人试用bolt.diy或screenshot-to-code,笔记本电脑就够了。一旦团队要共享一个Penpot实例,或者这些工具需要在你合上笔记本时仍可访问,就适合放到服务器上。
bolt.diy没有官方的最低配置,所以对于这类单个Node应用,可以把约4 GB内存、2 vCPU加NVMe存储作为起点。Penpot帮助中心表示,4个CPU和16 GB内存就足够支撑数千名用户,而且分配资源时可以保守一些;如果是小团队的实例,再加上同一台服务器上的编码智能体,从接近8到12 GB内存起步比较合理。如果智能体还要在这台机器上的浏览器IDE里运行,为Code Server配合Claude Code确定配置需要另行计算。
自托管意味着服务器由你运行、更新由你来打、模型密钥由你来保管。如果你想跳过安装步骤,我们提供一键部署:用bolt.diy搭建原型开发环境,用Penpot搭建共享设计工作区,运行在带root权限的Linux VPS上。Claude Code和OpenCode等编码智能体也以同样的方式部署,作为独立的应用。维护仍然归你,但配置不用你来做。
常见问题
Figma Make和v0哪个更好?
取决于你的起点。Figma Make在Figma内部工作,接收一个画框加一段提示词,输出用于前端原型的HTML、CSS和JavaScript。v0只从提示词开始,部署到Vercel,并与GitHub同步。设计已经在Figma里时选Make,从一段描述开始时选v0。
AI能把截图转换成可运行的代码吗?
可以。开源的screenshot-to-code项目借助OpenAI、Anthropic或Gemini的API密钥,把截图转换成HTML、React或Vue代码。不过结果只是一个静态画框的还原,没有组件身份、交互状态或响应式断点,所以如果有Figma文件,它是更好的输入。
有没有v0、Bolt或Lovable的开源替代品?
有。bolt.diy是Bolt.new的开源版本,也是本文介绍的提示词转应用工具中可以自托管的那一款。它采用MIT许可证,可配合你的模型密钥使用,包括通过Ollama运行的本地模型。它的提交在2026年2月到10月间曾经停滞,而它依赖的WebContainers在营利性生产使用中需要商业授权,所以在基于它构建产品之前,请同时检查它的活跃度和许可。
为什么AI生成的代码会无视我的设计系统?
许多工具把你的设计看成像素或扁平化的画框,并据此近似推算颜色、字体和间距。直接读取变量和组件结构的工具(例如Figma MCP),在组件通过Code Connect映射到代码后,可以导入你真正的组件。没有这层映射,智能体只会把你的样式当作上下文,然后编写新组件。
讨论
评论
登录后参与讨论。