跳到主要内容

Vibe Coding:用感觉写代码

2025 年初,特斯拉前 AI 总监、OpenAI 创始成员 Andrej Karpathy 发了一条推文,大意是:

"我发现了一种新的编程方式,我称之为 Vibe Coding。你完全跟着感觉走,拥抱指数级的代码生成,接受所有建议,不去读 diff,也懒得理解底层原理。代码能跑就行。"

这条推文一下子火了。不是因为 Karpathy 多有名(虽然确实有名),而是因为他精准地描述了一种正在大规模发生的全新编程方式——一种让很多"非程序员"也能写代码的方式。

到底什么是 Vibe Coding

简单来说:你用自然语言告诉 AI 你想要什么,AI 帮你写代码。你看不懂代码?没关系。你不知道什么是 React 什么是 Tailwind?无所谓。你要做的事情就是:描述需求、看结果、再描述、再调整。

"Vibe"这个词很传神——就是凭感觉来。你不需要理解每一行代码在干什么,你只需要看最终效果是不是你想要的。就像你开一辆车,你不需要知道发动机的四冲程原理,你只需要知道踩油门车走、踩刹车车停。

传统的编程是这样的:想清楚逻辑 → 写代码 → 调试 → 测试 → 发布。

Vibe Coding 是这样的:说出你想要什么 → 看效果 → 说"不太对"→ 看新效果 → 说"好多了但这里改一下" → 搞定。

整个过程更像是在"调教"一个极其听话又极其能干的助手,而不是在"写"一个精确的指令集。

为什么这种方式能 work

你可能会觉得,这样"瞎搞"出来的代码,质量能好吗?

说实话,早期确实不太行。2023 年的 AI 编程助手,生成的代码经常有 bug,逻辑也不一定对。但到了 2025 年,情况完全不同了。

以 Claude 3.5 Sonnet 和 GPT-4o 为代表的大模型,代码生成能力有了质的飞跃。它们不只能写单个函数,而是能理解整个项目的上下文,一次性生成完整的前端页面、后端接口、甚至数据库设计。

Cursor 这类工具更是把"理解上下文"做到了极致。它会读取你项目里所有的文件,理解你的代码风格和架构,然后在这个基础上帮你写新代码。就像一个已经跟你合作了半年的搭档,知道你的习惯和偏好。

而且,AI 写代码有一个天然优势:它不会犯低级错误。什么拼写错误、括号没闭合、变量名写反——这些让初学者抓狂的问题,AI 基本不会犯。你只需要关注"这个东西的功能是不是我要的",而不用纠结"为什么这里报错了"。

一个真实的 Vibe Coding 工作流

让我给你描述一下实际操作是什么样的。

假设你想做一个个人作品集网站。

你打开 Cursor(或者 Claude Code、Windsurf),新建一个项目文件夹,然后在 AI 对话框里输入:

"帮我创建一个现代风格的个人作品集网站,要有首页、项目展示页、关于我页面。用 Next.js 和 Tailwind CSS,风格简洁大气,深色主题。"

AI 会刷刷刷生成一堆文件。你不需要读它们。直接在终端里运行 npm run dev,浏览器里就能看到一个像模像样的网站了。

然后你说:

"首页的 hero 部分改一下,把标题改成'你好,我是小林',副标题写'一个热爱创造的设计师',背景加一个渐变动画。"

AI 改好了。你刷新页面看看效果。

"项目展示那里,卡片之间的间距太小了,放大一点。然后鼠标悬停的时候加一个上浮的效果。"

就这样,一轮一轮对话下来,你的网站就做好了。全程你没有写一行代码,甚至可能都不知道 TypeScript 和 JavaScript 的区别。但你做出了一个好看、能用的网站。

这就是 Vibe Coding。

哪些工具支持 Vibe Coding

市面上已经有好几个工具可以让你进行 Vibe Coding,各有特色:

Cursor 是目前最火的 AI 编程编辑器。它基于 VS Code 打造,但深度集成了 AI 能力。你可以用 Cmd+K(Mac)在任何位置用自然语言描述你想做的事情,AI 直接帮你生成或修改代码。它还有 Composer 功能,能跨多个文件同时生成代码。对开发者和非开发者都很好用。

Claude Code 是 Anthropic 出的命令行工具。你在一个终端里用自然语言跟它对话,它能直接操作你的文件系统、运行命令、写代码。非常适合那种"我有一个项目文件夹,帮我搞定所有事"的场景。

Bolt.new(来自 StackBlitz)是纯浏览器端的。你甚至不需要装任何东西,打开网页就能开始对话式编程。它特别适合快速原型——你有个想法,想看看长什么样,五分钟就能看到结果。

Lovable(前身 GPT Engineer)也是一个在线平台,专注于通过对话生成完整的 Web 应用。它的强项是生成的东西开箱即用的好看,UI 审美在线。

Windsurf(之前叫 Codeium)也是一个 AI 编辑器,特点是它的 Cascade 功能,能深度理解你的项目结构,进行多步骤的复杂操作。

国内的话,Trae 是字节跳动出的 AI IDE,功能类似 Cursor,而且对中文支持很好。通义灵码是阿里的,主要作为 VS Code / JetBrains 插件使用。

选哪个?我的建议是:如果你完全不懂代码,从 Bolt.new 或 Lovable 开始,零门槛。如果你愿意多花一点时间学习,Cursor 是目前综合体验最好的。

Vibe Coding 不是银弹

说完好处,也得说说局限。

Vibe Coding 对于"从零到一做原型"这件事,简直是神器。但当项目变大、变复杂之后,纯靠 Vibe Coding 就有点吃力了。

为什么?因为 AI 生成的代码,虽然能用,但不一定是"最优"的。当项目只有几百行代码的时候,无所谓。但当代码量到了几千上万行,之前那些"差不多就行"的决定,可能会积累成技术债。

另外,当 AI 给你生成了有 bug 的代码,如果你完全不懂代码,调试起来会很痛苦。你只能把错误信息复制给 AI,祈祷它能修好。有时候能修好,有时候会越修越乱。

所以一个务实的态度是:用 Vibe Coding 做前期原型和 MVP(最小可行产品),等产品验证了方向是对的,再考虑招一个真正的工程师来优化和重构。

这对普通人意味着什么

Vibe Coding 的最大意义,不在于它让程序员效率提高了多少——虽然确实提高了很多。它的最大意义在于:它让"写代码"这个行为,从一种专业技能,变成了一种表达方式。

就像打字曾经是秘书的专业技能,现在人人都会。就像拍照曾经需要暗房技术,现在拿起手机就能拍。编程,正在经历同样的"民主化"过程。

你不需要成为一个"程序员"才能用代码解决问题。你只需要成为一个"会说话的人"。

而这,不就是我们本来就会的事吗?