|
什么是 Vibe Coding? Forget the code exists, but NOT that the product exists! Vibe Coding(氛围编码) 是一种以自然语言为驱动、AI 为核心的编程新范式。该理念由 OpenAI 联合创始人 Andrej Karpathy 于 2025 年 2 月提出,主张“忘记代码的存在,专注于想法的实现”。Vibe Coding 不再将编程视为堆砌语法的过程,而是通过自然语言与大型语言模型(如 GPT、Claude)交互,让 AI 生成代码,开发者则扮演“产品思维引导者”和“AI 协作者”的角色,这种方式正在将编程从命令式语言推向语义层级表达。 ![]() ![]() Karpathy 将这种方式称为“完全沉浸于编程的'氛围’中”,甚至忘记代码的存在,与传统编程不同,Vibe Coding 更注重意图表达而非语法细节,标志着从“命令式编程”向“语义级编程”的转变,也包含如下这些特点:
上手资源
概念介绍 编程演进 传统人工智能编码辅助工具(如自动补全)通常需要开发人员验证或深入理解生成的代码。相比之下,Vibe Coding 强调快速迭代和接受人工智能生成的代码,即使没有完全剖析每一个细节,也可以完成功能实现,以加速开发过程。 ![]() 开发人员充当高级编排者和战略指导者,而不仅仅是逐行编码者
从现状来看,完全不使用 AI 编程工具纯写代码的时代已经一去不复返,观察身边的同事在日常开发中,都会选择一款趁手的AI编程工具来完成开发任务,使用模式上大概分为两类:
工作方式 当前市面上主流的 Vibe Coding 平台几乎都是围绕如下四种基础功能,搭配一些平台的特色能力来打造。 ![]()
功能分层 ![]()
协议进化 进入 2025 年来,MCP 与 A2A 等协议让 Vibe Coding 从“人机共创”进化为“多智能体协同开发”,实现更高效、更模块化、更自动的开发体验。这也就意味着 Vibe Coding 不再是一个单一工作流,而是一个 由 AI 驱动的智能协作生态,这些协议将成为 AI-native 开发系统的通信基础设施,从“人机共创”进化为“多智能体协同开发”,实现更高效、更模块化、更自动的开发体验。 ![]() 此外,MCP 以模型为中心进行设计,强化上下文的连续性和结构表达,有效增强了大语言模型对任务语境的理解能力。这不仅提升了生成代码的准确性与实用性,也让 Vibe Coding 工具更能贴合实际开发需求与环境语义,推动代码生成从“能用”走向“好用、适用”。 A2A(Agent-to-Agent)协议:A2A 协议的引入,使 Vibe Coding 从“一个 AI 协助我开发”跃升为“一个由多个 AI 组成的协作团队”。这一转变标志着软件生产真正迈向自动化与人类创意深度融合的新时代。 ![]() 通过 A2A 协议,不同智能体之间可以直接通信与协同执行任务,彼此共享上下文、分工合作,从而构建出更复杂、更智能的开发工作流。这为 Vibe Coding 打开了更多可能性——不仅提升了开发效率,也让 AI 更好地嵌入到整个软件生命周期中,成为真正意义上的“协作伙伴”。 AG-UI(Agent User Interaction Protocol):一套开源的 Agent 与 UI 界面之间的交互协议,补充了 Agent 与 Users(即前端应用)之间的通信规范,它是一个开放的、轻量的、基于事件的协议,由 CopilotKit 公司发布,它通过标准 HTTP 或可选的二进制通道,以流式方式传输一系列 JSON 事件,主要用来对 AI agent 和前端应用程序的交互进行标准化。 ![]() 小结一下:
![]() 三者往往互为补充,举个简单的例子:相同的 agent 可以通过 A2A 来跟其他的 agent 进行通信,同时又使用 AG-UI 来跟用户进行交互,另外还能通过 MCP 来进行工具的调用(tool call)。这三个协议,完成用户-Agent-LLM之间交互的标准化。 Vibe Coding 的优势 降低编程门槛 Vibe Coding 极大地降低了编程的入门难度,过去要开发一个软件,需要花费数月甚至数年的时间学习编程语言和框架。而现在,即使是没有编程经验的人,也可以通过自然语言描述自己的想法,让 AI 生成代码。例如,一个初学者可以在短短几个小时内,通过 Vibe Coding 创建一个简单的网页应用程序,而无需深入了解前端领域知识。这种快速实现的能力,让编程变得更加亲民,更多的人可以将自己的创意转化为实际的软件产品,有一个很好的切入点是各种小工具或者插件,比如:Figma 插件、Chrome 浏览器插件,VSCode 开发插件等,这类产品的特点是:适合快速验证想法、工程复杂度可控、功能试错成本低、更专注于创意而非技术细节等。 提高开发效率 对于有一定编程基础的开发者来说,Vibe Coding 同样具有巨大的价值。可以自动化处理那些繁琐、重复的代码任务,如生成样板代码、处理常见的错误等。这使得开发者可以将更多的时间和精力集中在软件的高级设计和创新上,从而大大提高开发效率。例如,一个复杂的项目可能需要数周甚至数月的时间来手动编写代码,但通过 Vibe Coding,开发者可以在短时间内生成大部分代码,并通过迭代优化来完善它,对于一些历史代码,也可以用Vibe Coding的方式来协助优化与维护。 促进创新 Vibe Coding 为创新提供了更广阔的空间。由于它降低了编程的门槛,更多的人可以参与到软件开发中来,从而带来更多的创意和想法。无论是专业的开发者还是非专业的创意人员,都可以通过 Vibe Coding 快速实现自己的想法,进行实验和探索。这种多样化的参与,有助于推动软件行业的创新和发展,创造出更多独特且有价值的应用程序,这里可以推荐度一下关于技术平权理念的讨论。 工具生态与协作模式 How to balance AI suggestions with human insight. ![]() 让 AI 先行(AI as first drafter) 人工智能模型生成初始代码,然后开发人员对其进行完善、重构和测试。主要关注点在于编码规范,就编码标准和提示实践达成一致,需要确保团队成员都用相似的提示词或者提问风格,避免 AI 生成的代码过于随机,同时要加强对于 AI 生成代码的 review,比如:加一个一个标记为'[AI]'的提交,向审查者发出信号,表明该代码可能需要对边缘情况进行额外的彻底审查,适当隔离不同的人工智能引入的更改造成的线上影响。 与 AI 同行(AI as Pair Programmer) 类似传统编程上的“结对编程”,一个人类开发者搭配一个人工智能助手一起工作。这种组合特别有效,融合了人类的经验和机器的效率,可以充分利用 AI 做一些重复性高或者需要归纳总结的工作,如:代码补全,生成文档,编写测试,由人类对 AI 生成的代码进行充分的质量把控。当下还有一个趋势是,随着 AI 工具的普及以及多用样,多个Agent之间的协作成本也越来越低,我们甚至可以尝试让一部分 AI Agent 来实现代码,另一部分 AI Agent 负责 review,组建一个 AI Agent 协作团队。 用 AI 审计(AI as Validator) 作为一个有价值的验证工具,协助进行代码审查和质量保证,通常可以将其作为工具链或者平台功能的一部分。如:公司中的 Bits 平台可以加入一个 AI 机器人负责日常的 code review,一些高级点的人工智能工具可以分析代码中的潜在漏洞、安全漏洞以及对最佳实践的遵守情况。此外,许多人工智能工具还可以协助监控应用程序性能,检测可能表明潜在问题的异常情况。 挑战与争议焦点 AI 的信心远远超过了它的可靠性,AI 没有比他们的训练数据包含的“更好的想法”,也不会对自己的工作负责。 ![]() ![]() 技术风险
认知危机
规模化瓶颈 ![]() 一些反思 Vibe Coding 的普及极有可能改变软件开发的现状,以前知乎上有一个经典的提问,“我有一个改变世界的点子,只差一个程序员”(https://www.zhihu.com/question/22989105),如今回过头来看,这不再是一个简单的玩笑或看热闹的段子,而是一个真实且迫切的挑战,全新的开发工具会对软件开发带产生深远的影响,需要开发者重新聚焦到要做什么和如何交付价值上。 ![]() 开发者角色的转变 传统开发流程多为:需求分析 → 技术选型 → 编码实现 → 测试部署。
从“写代码”到“设计解决方案”和“引导实现过程”的转变,并不意味着技术能力的弱化,而是开发者角色向更高层次的进化,这种进化使得开发者能够创造更大的价值,在 AI 时代扮演更加关键的角色。这不仅仅是工具和技术的变革,更是软件开发范式的根本转变。 学习与实践建议 深度掌握提示工程艺术 提示工程(Prompt Engineering)是与 AI 模型有效沟通的关键技能,它决定了 AI 输出的质量和准确性。在代码生成场景中,一个精心设计的提示可以显著提升代码质量和开发效率。与 AI 有效沟通已成为现代开发者的核心技能。由于 AI 助手往往会根据训练数据模式填补不明确的需求,因此在指导 AI 编码工具时,必须以极高的清晰度和明确性阐述项目需求,并基于 AI 反馈进行迭代优化。 糟糕的提示: '写一个登录功能' 建立混合工作流 理分工是关键,可以让 AI 承担样板代码生成、初始实现草稿和简单工具创建等任务,而人类必须牢牢掌控系统架构、核心业务逻辑和安全关键组件的设计与实现。这种分工确保了效率提升的同时保持质量标准。充分发挥 AI 和人类各自的优势,AI 擅长模式识别和重复性任务,人类擅长创造性思维和复杂决策。 严格执行代码审查 AI 生成 ≠ 自动通过。所有由 AI 生成的代码必须经过资深开发者的严格审查,不能跳过质量把关。审查应重点关注功能正确性、安全性、可维护性以及编码规范的遵循,避免因盲目信任 AI 输出而引入不可控的技术债务。必须明确判断:逻辑是否符合业务需求?是否存在 SQL 注入、XSS、反序列化等安全隐患?结构是否清晰、命名是否规范?是否遵循项目的代码风格和规范? 此外,AI 输出的代码可能包含“幻觉逻辑”或遗漏边界处理,因此还需配套建立全面的测试体系作为风险防护。测试不仅用于验证功能正确性,更是发现安全漏洞和潜在不稳定因素的关键手段,必须覆盖单元测试、集成测试、安全测试以及 AI 回归稳定性测试,确保模型微调或上下文变更不会带来逻辑回退或行为异常。代码审查和测试体系共同构成 Vibe Coding 中不可妥协的质量底线。 综合来看可以发现,虽然Vibe Coding 让编码的时间变少了,但是对于代码质量,代码风格和功能稳定性的要求则会越来越高。 深度理解而非盲目接受 开发者应努力理解 AI 生成的每一行代码,而不是简单地复制粘贴。这种深度理解对于后续的调试、维护和长期项目所有权至关重要,也是专业开发者区别于代码搬运工的核心价值所在。这不仅关乎个人成长,也直接影响项目的稳定性与可维护性。这些理解行为包括:
建议开发者在接受 AI 生成的代码前,先用自然语言解释其核心逻辑,主动识别并精简结构,对关键函数写下注释以明确其意图与关键路径,从而保持对代码质量的真正掌控。 ![]() 通过遵循这些实践,开发者能够在享受 Vibe Coding 带来的创新体验和效率提升的同时,确保代码质量和项目的长期成功。 黄金法则 为了确保协作高效、安全可控,建议团队在 Vibe Coding 实践中遵守以下操作原则: ![]() 这些黄金法则的目标是帮助团队在享受 AI 高效协作的同时,仍能保持开发的透明度、控制力和高质量产出。 未来趋势 ![]() Vibe Coding 作为开发范式跃迁的开端,正在向更加系统性的方向演进,以下是对这类趋势的一些展望:
总结 Vibe Coding 不仅是工具层的革新,更是软件工程范式的跃迁。 ![]() ![]() 软件开发正经历从'工程师写代码'向'AI+人类共创'的深刻转型。在这一新范式中,开发者的角色发生根本性重塑——从纯粹的代码工匠进化为问题定义者、意图引导者和系统调优者,承担更具战略性和创造性的职责。 Vibe Coding 作为这一转型的重要体现,强调营造协作友好的开发氛围,通过轻松愉悦的工作环境、高效的团队协作沟通,以及 AI 辅助工具的合理运用,显著降低了软件开发的参与门槛,让更多人能够投身于软件创建过程。然而,我们必须清醒认识到,当前的 AI 技术尚不能完全替代经验丰富的开发人员,也无法颠覆经过验证的软件工程基本原则。 真正的突破来自于平衡融合:将 AI 驱动的开发速度与人类专业智慧有机结合,在享受 AI 带来的效率提升的同时,充分发挥人类在复杂问题解决、架构思考和质量把控方面的不可替代价值。AI 是一把双刃剑——它是推动软件开发革新的强大引擎,但必须在深刻理解其能力边界的前提下负责任地使用,确保技术进步服务于更好的软件质量和用户体验。 参考资料:
|
|
|