Vibe Coding:AI 时代的「意图驱动编程」全景解析
一、Vibe Coding 是什么?从一句玩笑话到主流方法论
Vibe Coding(氛围编程 / 感觉编程) 这个术语由 OpenAI 联合创始人、特斯拉前 AI 负责人 Andrej Karpathy 于 2025 年 2 月 在 X(Twitter)上提出。他的原话是:
"There's a new kind of coding I call 'vibe coding', where you fully give in to the vibes, embrace exponentials, and forget that the code even exists. This is not really coding — I just see stuff, say stuff, run stuff, copy-paste stuff, and it mostly works."
这句话看似随口一说,却精准命中了一个正在发生的范式转移:当 LLM 的代码生成能力越过某个阈值后,开发者(甚至非开发者)可以从「写语法」切换到「描述意图」,让 AI 把意图翻译成实际代码。
Merriam-Webster 在 2025 年 3 月将其列入 "slang & trending" 词条,Collins 更将它评为 2025 年度词汇——这说明它已经不是圈内梗,而是一个真实的社会技术现象。
二、Vibe Coding「包含」哪些东西?——拆解它的完整组成
很多人误以为 Vibe Coding = "让 ChatGPT 写代码"。其实它是一个多层结构,包含以下几个核心组成部分:
1. 核心思维层:Intent-First(意图优先)
| 传统编程关注 | Vibe Coding 关注 |
|---|---|
| 语法是否正确 | 描述清楚你要什么 |
| 数据结构怎么设计 | 功能边界和用户体验 |
| 逐行手写实现 | 用对话引导 AI 产出实现 |
你不再以「我该怎么写这个函数」为起点,而以 "我需要一个带日期过滤器和折线图的营收仪表盘" 为起点。
2. 核心工作流:Prompt → Generate → Run → Feedback(循环)
这不是一次性"生成即完成",而是一个高速迭代环:
┌──────────────────────────────────────────────┐
│ ① 用自然语言描述需求(Prompt) │
│ ↓ │
│ ② AI 生成代码(跨多文件、组件、配置) │
│ ↓ │
│ ③ 你运行它,看效果(Verify by running) │
│ ↓ │
│ ④ 出问题?把错误信息/截图/现象描述贴回去 │
│ ↓ │
│ ⑤ AI 修正 → 回到 ③,直到满足 │
└──────────────────────────────────────────────┘
Karpathy 本人的实践方式就是典型:看东西 → 说东西 → 运行东西 → 复制粘贴错误信息回去 → 它继续修 → 大部分时候能用。他不细看每一行代码——这就是"vibe"的精髓:验证靠运行,不靠审代码。
3. 所需技能包(≠ 零技能)
Vibe Coding 经常被误解为"完全不用学"。实际上它替换的是一套旧技能,同时引入一套新技能:
| 传统编码技能 | Vibe Coding 等价技能 |
|---|---|
| 写语法正确的代码 | 写清晰、具体、结构化的 Prompt |
| 读堆栈跟踪调试 | 能把报错准确地描述/粘贴回给 AI |
| 系统架构设计 | 把产品拆成 AI 能吃透的小任务 |
| 读文档 | 知道哪个 AI 工具适合哪类问题 |
| Git 版本控制 | 每次大改动前保存一个可回滚的稳定态 |
正如产品builder Giulia Greco 所总结的:最难的部分不是生成代码,而是知道怎么拆解问题、怎么验证 AI 产出的东西。
4. 适用场景边界
社区经验表明,Vibe Coding 的甜蜜区是:
- ✅ 范围明确、规模可控的项目:Chrome 扩展、Telegram Bot、内部工具、落地页、Dashboard、MVP
- ✅ 快速原型 / "software for one"(个人效率工具)
- ⚠️ 生产级、多人对齐、安全敏感的系统需要额外的人工架构审查层(后面详述)
三、从技术上说,Vibe Coding 有哪些「特别之处」?
这是最能体现技术深度的部分。Vibe Coding 之所以能成立,不是因为"AI 会写字",而是因为几项底层技术能力的汇聚:
特别点 ①:自然语言成为新的「编程语言」
Karpathy 早在 2023 年就说过 "The hottest new programming language is English"。Vibe Coding 把这个判断落了地——自然语言 Prompt 变成了主要输入介质,LLM 充当了 compiler/interpreter。
这意味着:
- 抽象层级跃升:你操作的单位从「函数/语句」变成了「功能块/行为描述」
- 上下文编译:现代前沿模型(GPT-4o、Claude 3.5+/4 系、Gemini)拥有 长上下文窗口,可以一次吞入多个文件乃至整个代码库的索引,理解模块间依赖关系
特别点 ②:从「补全」到「Agentic 闭环」——AI 不只写,还跑、还修
2025 年的初代 Vibe Coding 偏向「生成代码片段 → 人跑 → 人贴报错」。2026 年的演进形态已经是 Agent Mode:
- 工具如 Cursor Agent / Windsurf / Claude Code 可以让 AI:
- 读文件树 → 理解现有代码结构
- 写入多个文件(不只是改一行)
- 执行命令(npm install、pytest 等)
- 读取报错 → 自主推断原因 → 自动修补 → 再跑
- 循环直到通过(人在关键决策点介入)
这在技术上意味着:AI 从 passive autocomplete 变成了 active agent with tool use(函数调用 + 文件系统 + shell 权限)。这是质的飞跃。
特别点 ③:验证机制翻转——「Run-to-verify」而非「Read-to-verify」
传统工程的一个铁律是 Review the code。Vibe Coding 故意松开这条规矩,用 行为验证 替代 代码审查 作为主反馈信号:
你不是靠读懂代码来确保正确性的,你是靠"跑起来看它能不能用"来推进的。
Simon Willison 对此有一个精到的区分:
"如果 LLM 写了每一行代码,但你 review 了、test 了、理解了——那不叫 vibe coding,那叫把 LLM 当打字加速器。"
换句话说,正统 Vibe Coding 的"特别"恰恰在于它接受了一定程度的「你不读代码」。这也是争议来源(后面提)。
特别点 ④:代码所有权与可维护性的结构性新问题
从技术债角度,Vibe Coding 引入了一类新型风险:
- 代码漂移(Code Drift):多次 prompt 迭代后,没人(包括 AI)对全局架构负责
- 安全盲区:AI 生成的代码可能跳过输入校验、auth 检查、硬编码密钥
- 可理解性坍塌:当你需要改第 37 个迭代后的一个深层 bug,而你从未读过那些文件……
所以 2026 年的成熟实践已经开始把 architectural context(架构上下文)、quality gates(质量门)、Git 回滚纪律 重新织回工作流——有人称之为向 "Agentic Engineering" 的演化。
四、Vibe Coding 有限定使用的「界面或程序」吗?
简短回答:没有单一限定界面。Vibe Coding 是一套工作流范式,可以跑在多种载体上。 但不同载体的体验天差地别。
工具生态全景(按上手门槛排列)
🌐 层 1:浏览器直用(零安装,门槛最低)
| 工具 | 特点 | 适合谁 |
|---|---|---|
| Bolt.new | 纯对话式,浏览器内直接出完整可运行项目 + 预览 + 部署 | 完全零基础,想 5 分钟内看见东西的人 |
| Lovable | 偏 UI/前端质感,实时预览,一键部署,Supabase 集成友好 | 想做有脸面的 Web App 但不想碰终端的人 |
| Replit(AI Agent 模式) | 云端 IDE,自带运行环境,Agent 可自主写代码+装包+跑 | 不想配本地环境的人 |
🖥️ 层 2:本地 AI 编辑器(最主流的「程序员 Vibe Coding」场景)
| 工具 | 特点 |
|---|---|
| Cursor(⭐最推荐入门) | 基于 VS Code,Cmd+K 内联生成 / Cmd+L 对话,Agent Mode 多文件自治,兼容所有 VS Code 插件和工作流 |
| Windsurf(Codeium 出品) | 类似 Cursor,Supercomplete 预判,Cascade 面板做多步 agentic 流 |
| GitHub Copilot(含在 VS Code / JetBrains) | 免费版可用(每月 2000 次补全+50 次对话),门槛低,生态最广 |
⌨️ 层 3:终端 Agent(面向更"硬核"的技术用户)
| 工具 | 特点 |
|---|---|
| Claude Code(Anthropic 官方 CLI) | 理解整个代码库上下文,可读写文件、执行命令、做 multi-step agentic 流程,支持 MCP 扩展 |
| OpenAI Codex CLI | 官方终端 agent,支持 --full-auto 全自动模式,沙盒内自主运行 |
总结一句话:Vibe Coding 不绑定某个特定 App,但 Cursor 目前是最典型的"Vibe Coding 专用界面"——它被从头设计为围绕 AI 对话组织开发流程,而非在传统编辑器里挂个侧边栏聊天框。
五、普通人如何上手?——一条可执行的路径
Step 0:心态重置(最重要的一步)
放下「我得先学 Python/JS 才能开始」这件事。你的第一门"语言"是清晰的描述能力。先从做一个你能用得上的小东西开始,而不是从教程的 Hello World 开始。
Step 1:选入口(按你的舒适区挑一条)
| 你的状态 | 推荐起点 | 为什么 |
|---|---|---|
| 完全零基础,连编辑器都没装过 | Bolt.new 或 Lovable(浏览器打开就能用) | 零安装 friction,5 分钟见成果 |
| 愿意装一个软件,想学得"正规"一点 | Cursor(cursor.com 下载) | 免费额度够用,界面像 VS Code,教程最多 |
| 已经有 VS Code | 装 GitHub Copilot 扩展(免费版即可) | 最小侵入,渐进过渡 |
Step 2:学写「好 Prompt」(核心技能,10 分钟就能入门)
❌ 差的 Prompt:
"帮我做个网站"
✅ 好的 Prompt:
"用 React + Tailwind 做一个报价单生成器:输入客户名、服务项目、单价×数量自动算总额、可导出 PDF。配色深蓝+白,繁体中文界面。"
规律就四条:
- 具体 > 抽象(说清字段、说清交互)
- 给约束(用什么技术栈、什么风格、什么语言)
- 拆小步(先做框架 → 再加深色模式 → 再加导出,不要一次塞 10 个需求)
- 出错时直接贴(把报错整段复制给 AI,不用你自己解释)
Step 3:走完第一个「循环」
以 Cursor 为例的最小闭环:
- 新建项目文件夹 → 新建
index.html - 按
Cmd+K(或Ctrl+K)→ 用自然语言描述你要的组件 → AI 生成 - 右键「Open with Live Server」或直接在浏览器打开
index.html看效果 - 不对?选中那段代码按
Cmd+K说"按钮太小,间距不对",或者切Cmd+L开聊天面板把报错贴进去 - 跑通了?截个图存档 / 丢进 GitHub 存个版本(养成习惯)
Step 4:给自己设一个「有用」的第一个项目
比教程更好的练手:做一个你自己明天就想用的东西——
- 个人读书追踪 / 健身记录
- 一个 Chrome 扩展(高亮某类信息 / 自动填表)
- 一个小内部工具(记账、报价、排班)
范围小、有明确验收标准、有你的情感投入——这三点保证你不会在第三天弃坑。
六、诚实的边界:Vibe Coding 不能(也不该)替什么
| 场景 | Vibe Coding 够不够 | 说明 |
|---|---|---|
| 个人项目 / 原型 / 内部工具 | ✅ 通常够 | 核心优势区 |
| SaaS MVP → 准备接真实用户 | ⚠️ 需要人工加质量门 | 至少补:auth 审计、输入校验、rate limit、错误监控 |
| 金融 / 医疗 / 安全敏感系统 | ❌ 不能直接"只跑不审" | 合规性要求可读可审计的代码 |
| 多人长期协作的大型代码库 | ⚠️ 需引入架构规范 + PR review | AI 写的也要有人"拥有一个结构性的脑" |
正如 Karpathy 后来暗示的方向——Vibe Coding 是起点,Agentic Engineering(给 AI 结构化目标、丰富上下文和定义好的工作流)才是它走向生产的成年形态。
最后
Vibe Coding 的本质不是"偷懒不学编程",而是 把编程的入口门槛从「语法记忆」降到了「清晰思考 + 会描述 + 会验证」。它让一个人从「我有想法但卡在实现门口」变成「我能把想法跑起来」——这才是它引爆的真正原因。
但对技术人来说,真正的功力也从不是"会不会写 for 循环",而是:你能不能拆对问题、给对上下文、设对边界、知道什么时候必须把车开回人工车道。
工具会迭代,模型会换代,但「把意图翻译成现实」这件事——无论你管它叫 coding、vibe coding 还是 agentic engineering——永远是创造者的核心能力。

浙公网安备 33010602011771号