Mindket

Vibe coding 是什么?描述、运行、检查

黑色横幅,标题“Vibe coding 入门”,下面写着“用描述做出你的应用”。

Vibe coding(中文常译作“氛围编程”)指的是用平常的话把想要的软件描述给 AI 工具,运行它做出来的东西,再提出修改,自己并不去读代码。这个说法出自 Andrej Karpathy 在 2025 年 2 月 2 日发在 X 上的一条帖子。它适合做原型和自用的小工具。凡是存放密码、付款信息或别人数据的应用,代码仍然需要有人审查。

本节内容

  • 把应用的想法写成三行简述:谁来用,用来做什么,做完是什么样子。
  • 每次改动都亲手点一遍,再提下一个要求。
  • 没人审查过的应用,不要放 API 密钥、密码和客户资料。
  • 第一个项目从浏览器里的应用生成器开始,想自己掌握文件时再换编辑器。
全部课程
本页目录
  1. 试一遍:描述、运行、检查
  2. 这个名字从哪里来
  3. 应用生成器、AI 编辑器和终端智能体
  4. 一年之后,Karpathy 和 Willison 怎样看 vibe coding
  5. Vibe coding 容易在哪里出问题
  6. 下一课:用 Lovable 做一个应用
  7. 自测一下
  8. 常见问题
  9. 资料来源

试一遍:描述、运行、检查

今天就能试 vibe coding,什么都不用装。在浏览器里打开 Lovable 这类应用生成器,注册一个免费账号,在提示框里写下你想要的东西。提示词就是你给 AI 的指令,用平常说话的方式写就行。

挑一个这周你自己就会用的小东西。下面这条提示词是我们自己写的示例,不是哪家厂商的模板。它说清了给谁用、做什么、先不要什么,第一次尝试时,工具需要从你这里知道的,大体就是这些。

然后开始绕圈。每绕一圈只要几分钟,你会绕上很多圈。

做一个帮我们分摊餐费的网页。
谁来用:我和三个朋友,在饭桌上用手机打开。
它做什么:我输入总金额和小费比例,勾选在场的人,
页面显示每人应付多少,精确到分。
先不要:登录、历史记录和付款功能。
  1. 只描述一件小事。说清谁来用、他们要做什么、应该看到什么。第一版先别加登录和数据库。Lovable 自己的快速入门,示例提示词最后一句就是“No login or database yet”,因为没有这两样,第一版出错的地方就少。
  2. 让它生成,然后打开预览。预览就是正在运行的应用,显示在聊天旁边。在 Lovable 里,它在聊天面板的右侧,里面的每个按钮都能点。
  3. 像陌生人那样去用。每个按钮都按一下。在该填数字的地方输入字母。切换到手机视图,因为多数人会用手机打开你的链接。
  4. 把看到的情况说出来,一条消息只提一个修改。“小费输入框能填负数,应该拒绝。”给了 AI 一个能修的事实。“改得好一点”只能让它去猜。
  5. 留一个能退回去的版本。Lovable 把每次改动都存进版本历史,Cursor 的智能体工作时会存检查点。要做大改动之前,先记下哪个版本是好的。

循环卡住,往往是因为反馈太含糊。一个 bug 过了两轮还在,就按步骤描述它:你点了什么,期望看到什么,实际发生了什么。AI 能照着这些步骤重现问题,一句“还是坏的”它可做不到。

这个名字从哪里来

Collins 词典称 Andrej Karpathy 为 AI 先驱,这个词就是他在那条帖子里造出来的。帖子的其余部分,Simon Willison 在博客里全文转载过,读起来像一份坦白的习惯清单。

Karpathy 用语音和编辑器对话,报错信息原样贴回去,什么也不解释,还写道:“I "Accept All" always, I don't read the diffs anymore.”diff 就是一次改动增加和删除了哪些行的清单。bug 修不好时,他就让 AI 随便改,改到问题消失为止。他自己的评价很平淡:“It's not too bad for throwaway weekend projects.”

六周之后,程序员兼博主 Willison 把这个词的意思钉牢了。在他看来,vibe coding 就是“用 LLM 构建软件,却不审查它写出的代码”。LLM 即大语言模型,这些工具背后用的都是这类 AI。如果你审查了代码、测试过,而且能把每一行讲给别人听,哪怕全部代码都是 AI 敲的,他也把这叫作软件开发。

对你来说,这条界线才是有用的部分。要问的从来不是代码是不是 AI 写的,而是有没有人检查过,出错的代价有多大。聚会安排小工具出了 bug,顶多让你尴尬一晚。网店泄露了银行卡号,代价就大得多。

这个词传播得很快。Collins 把 vibe coding 选为 2025 年度词汇,并把它描述为“用自然语言提示人工智能来编写计算机代码”。

有一种新的编程方式,我叫它“vibe coding”:你完全顺着感觉走,拥抱指数级的进步,忘掉代码的存在。

Andrej Karpathy · X (2026年11月5日 查阅)
这个词是怎样传开的
  1. Karpathy 在 X 上发帖

    他给 vibe coding 起了名字,并说用来做周末随手丢的小项目还不错。

    来源:Andrej Karpathy 的 X 帖子 (2026年11月5日 查阅)

  2. Willison 划出界线

    没审查的代码是 vibe coding,审查过、测试过、看得懂的代码是软件开发。

    来源:Simon Willison 的博客 (2026年11月5日 查阅)

  3. 年度词汇

    Collins 把 vibe coding 选为 2025 年度词汇。

    来源:Collins 词典博客 (2026年11月5日 查阅)

  4. Karpathy 一年后回顾

    他把经过审查的专业做法叫作“agentic engineering”(智能体工程)。

    来源:Andrej Karpathy 的 X 帖子 (2026年11月5日 查阅)

Andrej Karpathy(@karpathy)2025 年 2 月 2 日在 X 上发帖:有一种新的编程方式,我叫它“vibe coding”,你完全顺着感觉走,拥抱指数级的进步,忘掉代码的存在
Andrej Karpathy 在 X 上,2025 年 2 月 2 日

这是 Karpathy 的第一条帖子,截自 2026 年 11 月 5 号 X 官方嵌入卡片显示的样子,时间按 UTC 显示,其余内容折叠在“Show more”后面。点开图片就能到 X 上看原帖。

应用生成器、AI 编辑器和终端智能体

所有 vibe coding 工具跑的都是同一个循环。区别在于代码放在哪里、你能看到多少。正是这一点,决定了第一个项目该用哪一种。

应用生成器在浏览器里运行,做出来的东西也由它托管。Lovable 就是一种。你写要求,它来生成,点一下 Publish 按钮,应用就上线到一个可以分享的网址。你一个文件都不用打开,不过想看代码时,代码就在那里。

AI 编辑器是装在你电脑上的程序,它修改你打开的文件夹里的文件。Cursor 是一种,装了 GitHub Copilot 的 VS Code 也是。你拿到的是文件和每次改动的记录,同时也要自己负责运行应用、把它放到网上。本课程后面给 Cursor 和 Copilot 的智能体各安排了一课。

终端智能体在终端里工作,终端就是输入命令的那个文字窗口。Claude Code 就是一种,它另有一门课。它读写的文件和编辑器一样,所以适合本来就习惯敲命令的人。

几类工具之间可以互相搬。Lovable 能把项目同步到 GitHub,那是一个存放代码和改动历史的网站,任何编辑器都能从那里打开这份副本。

第一个项目,我们会选应用生成器。你先看到一个能用的应用,再去了解一文件夹代码长什么样,以后照样可以把代码搬进编辑器。

应用生成器AI 编辑器终端智能体
本课程里的例子LovableCursor,装了 Copilot 的 VS CodeClaude Code,另有一门课
要安装什么不用装,在浏览器里运行一个桌面应用一个命令行程序
应用在哪里运行Lovable 托管,给它一个网址在你的电脑上,直到你把它放到网上在你的电脑上,直到你把它放到网上
什么时候能看到代码打开 Code 标签页才看得到一直都在编辑器里一直都在你的文件夹里

一年之后,Karpathy 和 Willison 怎样看 vibe coding

2026 年 2 月 4 日,也就是第一条帖子发出一年后,Karpathy 在 X 上做了一次回顾。他写道,2025 年初的 AI 模型能力还弱,vibe coding 多半只用来做好玩的一次性项目和演示。一年过去,专业开发者越来越多地通过 AI 智能体写软件,只是监督和审查都多了。这种更严谨的做法,他最喜欢的叫法是“agentic engineering”(智能体工程):代码由智能体来写,你负责指挥它们、检查它们做的事。

2026 年 5 月 6 日,Simon Willison 在博客上整理一期播客访谈时,把界线划得更清楚。给别人用的软件,他说用 vibe coding 做是“极不负责任”的,因为里面是别人的信息。只给自己用的小工具,出了 bug 只伤到你自己,那就放手去做。他也承认,在他自己的项目里,这两种做法正越来越分不清。

动手之前,可以拿他们的分法检验一下你的项目。bug 只会让你自己吃亏,上面那个描述、运行、检查的循环就够了。别人会把自己的数据填进这个应用,那就从第一天起安排人检查代码,下一节讲的正是这件事。下面这段 2025 年 6 月的视频里,Karpathy 在一场主题演讲中亲口讲了 vibe coding。

如今(一年之后),通过 LLM 智能体编程正越来越成为专业开发者的默认工作方式,只是多了监督和审查。

Andrej Karpathy, vibe coding 一词的提出者,引文为译文 · X (2026年11月5日 查阅)
Andrej Karpathy(@karpathy)2026 年 2 月 4 日在 X 上引用自己第一条 vibe coding 帖子:很多人把这条转发成 vibe coding 一周年,来做点回顾
Andrej Karpathy 在 X 上,2026 年 2 月 4 日
Y Combinator 在 YouTube 上的视频:2025 年 6 月 17 日,Karpathy 在旧金山 AI Startup School 的主题演讲。“Vibe Coding: Everyone is now a programmer”这一章从 29:06 开始。

X 官方嵌入卡片的截图,拍摄于 2026 年 11 月 5 日,时间为协调世界时(UTC)。X 用“Show more”截断了帖子后面的内容。点击截图可到 X 上打开原帖。

Vibe coding 容易在哪里出问题

这个循环只检查你看得到的东西。坏掉的按钮会在预览里露出来。任何访客都能读出每一行数据的数据库,却不会,严重的问题就藏在这个空档里。

第一个陷阱是密钥。API 密钥是一个程序访问另一项服务时用的密码,比如支付或邮件服务。在访客浏览器里运行的代码藏不住它,所以你把密钥贴进聊天时,Lovable 会发现它,引导你存进单独的 Secrets 存储,改由服务器端代码去调用那项服务。

第二个是数据访问。行级安全(row-level security)是数据库里的一组规则,决定哪个用户能看到、能修改哪些行。Lovable 的安全页面说,规则配错是“数据泄露的常见原因”,每次发布时都会快速扫描一遍。同一个页面也说得很直白:这些扫描“不能代替彻底的安全审查”。

第三个是没人读的代码。Karpathy 在帖子里自己承认,代码长到了“超出我平常理解范围”的地步,而卖这类工具的 Cursor,在讲 vibe coding 的帮助页里也得出同样的结论。

要降低这个风险,不必逐行读代码。每次改动保留之前,请 AI 用平常的话解释它改了什么,再请它列出应用存放数据的每一个地方。哪个回答让你意外,那就是该停下来、找一位懂代码的人的时候。

我们不建议把你自己都不理解的软件发布到生产环境。

Cursor, 讲 vibe coding 的帮助页 · Cursor 帮助:What is vibe coding? (2026年11月5日 查阅)
  • 一条提示词就要整个产品。先做一个页面,检查好,再加下一个。
  • 把 API 密钥贴进聊天或页面代码。放到工具存放密钥的地方,再问清应用会怎样使用它。
  • 还没人看过数据的访问规则,就让陌生人注册、往里存数据。
  • 每次改动都直接接受,看都不看。至少读一下改了哪些文件,这样没要求的改动也能被发现。
  • 接入按用量计费的服务,却不设花费上限。Willison 特别点出,碰到按用量计费的服务,vibe coding 要格外小心。

下一课:用 Lovable 做一个应用

进入下一课之前,先给你想要的应用写一份简述:谁来用,用来做什么,怎样算做成了。在下面再列一张单子,写明这个应用绝不能存放的东西,比如密码或客户资料。单子是空的,这个想法就很适合当第一个 vibe coding 项目。单子不空,就先做一个不含这些部分的版本。

Lovable 这一课会带着这份简述去生成应用,指着屏幕修改它,再把它发布到一个网址上。你只需要一个免费的 Lovable 账号。

自测一下

  1. 按 Simon Willison 的定义,什么情况下用 AI 写代码就成了 vibe coding?

    查看答案

    B. 没有人审查 AI 写出的代码 Willison 把 vibe coding 定义为用 LLM 构建软件,却不审查它写出的代码。

  2. 给新应用写的第一条提示词,应该先不要什么?

    查看答案

    C. 登录和数据库 Lovable 的第一条示例提示词要求先不加登录和数据库,因为没有它们,第一版出错的地方就少。

  3. 在 Lovable 应用里,邮件服务的 API 密钥应该放在哪里?

    查看答案

    A. 放进 Secrets 存储,由服务器端代码使用 在访客浏览器里运行的代码藏不住密钥,所以 Lovable 把密钥放进 Secrets,再从服务器端调用服务。

  4. 你想要能留在自己电脑上、以后交给开发者的文件,该用哪一类工具?

    查看答案

    D. Cursor 这样的 AI 编辑器 AI 编辑器修改的是你电脑上某个文件夹里的文件,所以从第一次改动起,代码就归你所有。

常见问题

完全没有编程经验,也能 vibe coding 吗?

做小应用可以。Cursor 的帮助页举的例子,是设计师做出能用的原型、产品经理搭起内部工具。你仍然需要的,是每次改动都亲手测一遍的习惯,以及把 bug 描述准确的耐心。

Vibe coding 做商业应用安全吗?

单靠它不行。客户用上之前,请一位懂代码的人检查应用怎样存数据、怎样登录、怎样保管密钥。Lovable 自己也建议,处理敏感数据的应用再做一次专业的安全审查。

Vibe coding 工具要花钱吗?

起步不用。Lovable 的免费套餐每天有五个生成额度,每月最多 30 个。Cursor 有一个用量有限的 Free 套餐,在 VS Code 里没有套餐就登录 Copilot,符合条件的账号会加入 Copilot Free。项目一大,很快就会超出这些额度。

新手该从哪个 vibe coding 工具开始?

看你这周结束时想拿到什么。想要一个能分享的链接,就用应用生成器,它替你发布。想要能留在手里、以后交给开发者的文件,就用 AI 编辑器,应用由你自己运行。

资料来源

  1. Andrej Karpathy on X, February 2, 2025 (2026年11月5日 查阅)https://x.com/karpathy/status/1886192184808149383
  2. Andrej Karpathy on X, February 4, 2026 (2026年11月5日 查阅)https://x.com/karpathy/status/2019137879310836075
  3. Simon Willison: Not all AI-assisted programming is vibe coding (2026年11月5日 查阅)https://simonwillison.net/2025/Mar/19/vibe-coding/
  4. Simon Willison: Vibe coding and agentic engineering are getting closer than I'd like (2026年11月5日 查阅)https://simonwillison.net/2026/May/6/vibe-coding-and-agentic-engineering/
  5. Y Combinator on YouTube: Andrej Karpathy: Software Is Changing (Again) (2026年11月5日 查阅)https://www.youtube.com/watch?v=LCEmiRjPEtQ
  6. Collins Dictionary blog: Word of the Year 2025 (2026年11月5日 查阅)https://blog.collinsdictionary.com/language-lovers/collins-word-of-the-year-2025-ai-meets-authenticity-as-society-shifts/
  7. Cursor Help: What is vibe coding? (2026年11月5日 查阅)https://cursor.com/help/ai-features/vibe-coding
  8. Cursor Help: Pricing and plans (2026年11月5日 查阅)https://cursor.com/help/account-and-billing/pricing
  9. Lovable docs: Quick start (2026年11月5日 查阅)https://docs.lovable.dev/introduction/getting-started
  10. Lovable docs: Security overview (2026年11月5日 查阅)https://docs.lovable.dev/features/security
  11. Lovable docs: Sync your project with GitHub (2026年11月5日 查阅)https://docs.lovable.dev/integrations/github
  12. VS Code docs: Set up GitHub Copilot (2026年11月5日 查阅)https://code.visualstudio.com/docs/setup/copilot

分享本节课

让你的智能体少走弯路

换到编辑器或终端智能体之后,技能能把你反复输入的指令存起来。Mindket 列出的技能,安装之前就能先读。

浏览技能

本节课的 Markdown 版本 · Vibe coding 入门:面向新手的免费课程 · 全部课程