近年来,"Vibe Coding"(氛围编码)作为一个新兴术语在开发者社区中逐渐流行,尤其是在前端开发者和AI技术爱好者中。本文将深入探讨Vibe Coding的定义、相关工具、使用场景以及其对软件开发的影响,基于《The Pragmatic Engineer》 newsletter 的内容整理而成。
什么是 Vibe Coding?
"Vibe Coding"这一术语最早由计算机科学家、OpenAI联合创始人、前特斯拉AI总监Andrej Karpathy在其推文中定义,并迅速在开发者社区中引发热议。他描述Vibe Coding为一种完全"顺应氛围"的编码方式,开发者几乎不关注代码本身,而是通过与大型语言模型(LLM)交互来实现目标。以下是Karpathy对Vibe Coding的定义:
"Vibe Coding是一种新的编码方式,你完全沉浸在'氛围'中,拥抱指数级的生产力,忘记代码的存在。这是因为LLM(例如Cursor Composer结合Sonnet模型)变得太强大了。我通过语音工具SuperWhisper与Composer交互,几乎不碰键盘。我会提出一些简单要求,比如'将侧边栏的内边距减半',因为我懒得自己去找代码。我总是'全部接受'AI的建议,不再仔细阅读代码差异。如果遇到错误,我直接复制粘贴错误信息,通常就能解决问题。代码的复杂度超出了我的日常理解范围,我得花时间仔细阅读才能弄明白。有时LLM无法修复某个Bug,我就绕过它或随机调整直到问题消失。这种方式对临时周末项目还不错,挺有趣的。我在开发项目或Web应用,但这不像是传统编码------我只是看、说、运行、复制粘贴,大部分时候都能成功。"
简单来说,Vibe Coding是指将代码生成的重担交给AI工具,开发者只关注高层次目标,而非代码细节。这与传统的"AI辅助编码"不同,后者要求开发者仔细审查和调整AI生成的代码,而Vibe Coding更像是"让AI全权负责",开发者只需提供指令并观察结果。
Simon Willison在其博客中进一步区分了Vibe Coding和AI辅助编码:

"Vibe Coding并不等同于所有AI辅助编码!Vibe Coding是指完全不审查AI生成的代码,仅通过提示LLM来构建软件。这对于低风险的原型项目非常有趣,因为LLM生成代码的速度远超最熟练的人类程序员。"
因此,Vibe Coding的核心在于完全信任AI生成代码,开发者更像是一个"监督者"而非直接的代码编写者。然而,对于有经验的软件工程师来说,完全不看代码可能并不现实,因为他们通常会忍不住检查或调整AI的输出。
Vibe Coding的核心工具
Vibe Coding依赖于强大的AI编码工具,这些工具既适用于传统的AI辅助开发,也支持"放手让AI干"的Vibe Coding模式。以下是一些开发者常用的工具:
- 集成开发环境(IDE)中的AI工具
- GitHub Copilot:最知名的AI编码助手,支持VS Code、Visual Studio、JetBrains IDEs等,近期推出了Agent Mode,增强了自动化能力。
- Cursor Chat(原名Compose):Cursor IDE中的AI对话工具,适合快速生成代码。
- Cascade:由Windsurf开发,支持Windsurf和JetBrains IDEs。
- Cline:VS Code扩展,定位为"协作AI编码器"。
- Junie:JetBrains IDEs的AI助手。
- 独立AI编码工具
- Claude Code:Anthropic推出的基于Sonnet 4模型的本地运行工具,受到许多开发者的好评,甚至有人从Copilot转向Claude。
- Codex:OpenAI的云端软件工程代理。
- Aider:终端中的付费AI编程工具,去年已颇受欢迎。
- Amp:Sourcegraph的AI编码工具。
- 通用LLM
- ChatGPT:最常用的LLM,开发者常通过提示生成代码后复制到IDE运行。
- Claude:在代码生成方面表现优异,广受好评。
- Claude Artifacts:适合快速生成小型Web应用和代码片段。
- Gemini:谷歌的LLM,开发者可通过提示生成代码。
- 设计相关工具
- Google Stitch:将提示转化为移动端和Web的UI设计。
- Figma Make:从创意到原型的设计工具。
- Anima:将Figma设计转化为代码。
- 全栈开发平台
一些新兴平台专注于快速生成全栈Web或移动应用,通常结合Supabase等后端服务:
- Lovable:快速原型开发的热门工具。
- Vercel v0:适合创建视觉原型,开发者反馈良好。
- Replit:支持快速构建Web应用,例如开发者Julian Harris在周末用Replit构建了VoteLogo.com。
- Bolt.new:支持React Native和Expo生成移动应用。
- Firebase Studio:谷歌基于Gemini和Firebase的开发工具。
- Grok Studio:xAI基于Grok模型的全栈工作空间。
此外,还有一些自动化工具如Gamma(生成幻灯片)、n8n(工作流自动化)以及其他20多种AI代码生成工具(参考X帖子)。

Vibe Coding的使用场景
Vibe Coding最适合以下场景:
- 快速原型开发:开发者利用AI工具快速生成应用原型,验证创意或展示概念。
- 头脑风暴:通过与LLM交互,探索多种实现方式或创意。
- 构建开发工具:AI可帮助开发者快速生成内部工具或脚本,提高开发效率。
- 非开发者的应用开发:产品经理或非技术人员可通过Vibe Coding快速构建简单应用,尽管复杂需求可能需要开发者介入。
案例分享
- 案例1:一位经验丰富的iOS开发者在3小时内通过Vibe Coding完成了一个应用原型,展示了AI在快速开发中的潜力。
- 案例2:一位产品经理尝试Vibe Coding,但因复杂需求受阻,最终通过更深入的参与完成了应用开发。
Vibe Coding的局限性
尽管Vibe Coding在原型开发中表现出色,但直接将AI生成的代码推送到生产环境存在风险:
- 安全问题:AI生成的代码可能包含漏洞,如SQL注入或跨站脚本攻击(XSS)。
- 性能问题:未经优化的代码可能导致性能瓶颈。
- 成本问题:AI生成的代码可能未考虑云服务成本,导致费用激增。
- Bug风险:未经审查的代码可能包含隐藏错误。
因此,Vibe Coding更适合低风险的实验性项目,而非生产级开发。开发者仍需仔细审查代码,确保其质量和安全性。
Vibe Coding的未来影响
随着AI代理模式的进步(例如"Agentic Modes"),LLM在编码领域的能力将进一步提升,Vibe Coding可能会改变软件开发的多个方面:
- 加速原型开发:开发者可以更快验证创意,缩短从概念到原型的周期。
- 提升对高级工程师的需求:虽然AI能生成代码,但具备深厚技术知识、架构能力和产品品味的工程师将更加抢手。他们能够监督AI输出,确保代码质量,并将创意转化为高质量产品。
- 降低开发门槛:非开发者(如产品经理)可以通过Vibe Coding快速构建简单应用,推动跨职能协作。
总结
Vibe Coding是一种新兴的编码方式,强调通过AI工具快速生成代码,开发者更像是指引者而非直接编写者。它在快速原型开发、头脑风暴和工具构建中展现了巨大潜力,但不适合未经审查直接用于生产环境。得益于GitHub Copilot、Claude Code、ChatGPT等工具的支持,Vibe Coding正在改变开发者的工作方式。然而,软件工程师的深厚技术能力和产品洞察力仍将是不可替代的核心竞争力。
参考资料:
- Andrej Karpathy的推文
- Simon Willison的博客:Not all AI-assisted programming is vibe coding
- 《Beyond Vibe Coding》 by Addy Osmani
- 《Vibe Coding》 by Gene Kim and Steve Yegge
- 《The Pragmatic Engineer》 newsletter