Lazy loaded image
🤠vibe_coding
Words 4137Read Time 11 min
2026-3-26
2026-3-26
type
Post
status
Published
date
Mar 26, 2026
slug
vibeCodeing
summary
什么是vibe coding,如何搭指定vibe coding 工作流程?
tags
实用教程
必看精选
工具
笔记
category
技术分享
icon
password
类型
日期
标签
概述
状态
进行中

什么是 Vibe Coding?

Vibe 编码”是一种软件开发方法,它利用人工智能 (AI) 和语言学习模型 (LLM) 通过自然语言提示生成代码,而不是手动编写。其理念是,你描述应用程序的功能,然后由 AI 构建它。这种方法非常适合快速原型开发,无需逐行审查代码,从而加快了开发速度,也让非传统程序员更容易上手。

AI 编程工具

Claude Code(CC)

Claude Code 是由 Anthropic 公司开发的一款基于终端的 AI 工具。它旨在帮助用户解决复杂的代码问题、解释陌生的代码库并进行调试。当您需要在修改代码之前了解其功能时,它能发挥最佳作用;只需提供具体问题,它就能逐步引导您解决问题。

CodeX Codex 是 OpenAI 的一款代码驱动型模型,已集成到 GitHub Copilot 等工具中,并可通过 API 使用。

它擅长将清晰定义的需求转化为可运行的代码;只需描述您想要的具体行为,它就能生成相应的实现。Codex 最适合处理封闭、定义明确的任务,而非开放式的架构决策。

Gemini

Gemini CLI 是 Google 面向开发者的命令行 AI 工具。它可以直接在终端中辅助代码生成、解释和重构。如果您已经在使用 Google 生态系统,或者想要一个强大的 AI 助手但又不想改变现有的终端工作流程,那么 Gemini CLI 是一个实用的选择。

Copilot

GitHub Copilot 是一款人工智能驱动的代码助手,可以帮助你更快地编写代码。它会在你输入代码的同时,根据你的代码风格和注释进行学习,从而提供相关的建议,甚至包括代码行和整个函数。

专攻前端

v0

v0 是 Vercel 的 UI 生成工具。您只需用简单的语言描述组件或屏幕,它就能生成简洁的 React 代码,可以直接集成到您的项目中。
它最适合生成单个 UI 组件,而不是完整的应用程序;当您需要快速生成特定的界面元素而无需从头开始编写时,可以使用它。

Lovable

Lovable 可以根据文本描述生成可运行的前端应用程序。它是将想法快速转化为可点击应用的途径之一。生成的应用足以进行早期用户测试,但在正式上线之前,可能需要使用代码编辑器进行一些优化。

vibe coder 的思维模式

人工智能更像是你身边的一位初级开发人员。你不会问完一个问题就走开,而是会和它进行对话。你需要提供背景信息,检查它的反馈,指出错误之处,并引导它找到你所需的功能。如果你能清晰地解释你的想法,它就能更好地发挥作用。
这与传统编程截然不同,传统编程要求你掌握精确的语法,并亲力亲为地编写所有代码。而人工智能则改变了你的角色;你不再是代码编写者,而是项目负责人。你负责设定愿景、审核输出结果,并确保项目朝着正确的方向发展。你仍然需要掌握编程基础知识,但不再需要死记硬背语法或独自摸索每一个细节。

在编写代码前先做好计划

在开始使用人工智能进行编码之前,务必制定计划。明确你的最小可行产品(MVP),并将项目分解成多个阶段。不要试图一次性完成所有工作,而应该循序渐进。向人工智能提供模型、屏幕截图或代码示例等,以便它理解你的需求。你甚至可以利用人工智能本身来帮助你进行规划。告诉它你的想法,让它帮助你完善它,并将其分解成多个阶段。前期做好规划可以节省后期大量的修复时间。

计划需要开发的内容

不要试图一次性构建所有功能。先从最小可行产品(MVP)入手,也就是最简单且可用的版本。如果你要构建一个任务管理器,那么它可能只需要添加、查看和删除任务,仅此而已。然后将剩余功能分解成多个阶段。 例如,第二阶段是用户帐户,第三阶段是通知功能。这样,你始终可以确保部分功能正常运行,而且当你给人工智能分配更小、更专注的任务,而不是让它一次性构建整个应用程序时,它能给出更好的结果。

循序渐进而非一气呵成

一次只构建一个功能。让 AI 执行该功能,进行测试,确保其正常运行,然后再进行下一个功能。如果让 AI 一次性构建太多功能,就会出现问题,而且你无法找到原因。循序渐进地进行调试更容易,因为你每次只更改一个地方,所以可以准确地知道问题出在哪里。

用示例阐述

与其只是告诉AI你想要什么,不如直接展示给它看。可以附上截图、草图或类似网站链接,展示你想要构建的内容。如果你有想让AI遵循的代码模板,也可以粘贴过来。
💡
示例比文字描述效果好得多,因为AI无需猜测你的意思。你可以使用像Excalibur这样的工具来绘制草图。

技术栈和编码

选择流行的技术栈,而不是新兴/小众的技术栈。

使用 React、Next.js、Tailwind 和 Supabase 等主流技术栈。人工智能已经基于大量使用这些工具编写的代码进行训练,因此能够提供更佳的结果。对于移动、桌面或硬件项目,同样的原则也适用:坚持使用成熟的工具。如果使用小众或非常新的工具,人工智能会犯更多错误,导致您需要花费更多时间来修复问题。

代码风格偏好

将你的偏好设置——例如文件夹结构、命名规则和编码模式——记录在一个专门的文件(例如CLAUDE.md)中,并在每次会话开始时将其分享给 AI。这样可以避免你反复修改相同的问题,并确保整个项目的代码保持一致。

要求人工智能保持代码模块化,并力求生成更小的模块/文件。

从一开始就告诉AI将代码拆分成小的、功能集中的文件,而不是把所有内容都放在一个地方。小文件更容易阅读、更容易修复,也更容易让AI在以后的会话中理解和处理,避免混淆。

定期让人工智能审查和重构代码库

每隔几个开发周期,暂停新功能的开发,让 AI 清理现有代码。随着时间的推移,代码会变得混乱,定期清理可以保持项目的健康运行,并简化后续的开发工作,避免出现意外故障。

提词的最佳方法

你与人工智能的沟通方式决定了你得到的反馈质量。每次只提一个问题,要具体明确,提供示例,告诉它应该避免什么,并使用上下文文档,这样你就不会在每次对话中重复相同的内容。

期强制重构会话

人工智能将选择阻力最小的路径(添加代码、扩展文件、跳过清理过程)。定期要求它后退一步并进行重构:将事物分解为更小的模块、移除无用代码、提升性能。

保持上下文文档更新

如果你发现自己在重复某些指令,请在相关文档中对这些指令进行记录。另一个有助于此过程的方法是:在讨论会后,如果你认为人工智能能够从会议中的学习中获益,可以请求它更新相关文档(例如 Claude.md)以纳入构建中的学习内容。

一次只要求完成一项任务

保持提示的简洁性。每次只让AI执行一项任务,检查结果,然后再进行下一项。如果将多个请求堆砌在一个提示中,AI就会失去专注,导致所有任务同时出错

具体说明你想要什么

请准确描述您的需求——布局、行为、内容、限制条件。您提供的细节越多,AI 需要猜测的就越少。模糊的提示会产生模糊的结果,最终您会花费更多时间来修正,还不如一开始就明确描述。

提供参考

始终给人工智能提供可供查看的内容,而不仅仅是阅读的内容。粘贴现有文件、附加屏幕截图或提供参考链接。您提供的资料越相关,人工智能需要猜测的内容就越少,输出结果也就越好。

定期更新上下文

每次您做出有关项目的重要决定时,请将其添加到您的上下文文档中,例如CLAUDE.md。这可以缩短会话时间,减少重复解释,并节省令牌,从而节省资金,尤其是在与快速消耗令牌的代理一起使用时。

上下文

利用厂上下文窗口

有些人工智能工具允许你一次性粘贴大量信息。在处理复杂项目时,可以一次性将所有相关文件、笔记和上下文信息提供给人工智能。人工智能对项目了解得越多,在整个过程中做出的决策就越好。

子代理

子代理是专门处理特定任务的代理,它们在各自独立的上下文中运行。使用子代理可以使工作的每个部分都更加专注,减少令牌的使用,并产生比试图在一次冗长的对话中完成所有操作更清晰的结果

调试

只要提供正确的信息,人工智能就能非常有效地修复错误。直接粘贴错误信息,让它诊断问题;如果几次尝试后仍然失败,就让它列出所有可能的原因,而不是让它猜测。使用日志来精确追踪问题所在;如果条件允许,使用 MCP 工具让人工智能实时了解应用程序内部的运行情况。

提交错误信息

当出现故障时,请复制完整的错误信息,并将其连同您当时的操作简要描述一起直接粘贴到提示框中。大多数情况下,这些信息足以让 AI 找到问题并提供解决方案,无需任何反复沟通。

添加日志

让AI在代码的相关部分添加标记语句,这样你就可以在错误发生时准确地看到每个步骤的具体情况。一旦你找到了问题所在,就让它移除标记并应用相应的修复程序。

安装并要求 AI 使用 MCP

MCP 工具让 AI 可以直接与您的应用交互——例如,使用 Playwright 在真实的浏览器中进行测试。这使 AI 能够真正了解应用的运行情况,而不是仅仅依靠代码进行猜测,从而大大加快调试速度并提高准确性。

版本控制

版本控制系统用于跟踪代码随时间推移发生的更改。像 Git 这样的版本控制工具对于 Vibe 程序员来说尤为重要,因为 AI 有时会做出一些意想不到的重大更改,导致代码崩溃,而拥有最近的保存点意味着你不会丢失太多进度。

使用 git commit

每次 AI 完成任务且结果良好时,都进行一次提交。这样可以锁定你的进度,即使下一个任务出现问题,你也可以回滚到上一个可用的版本,而不会丢失之前的任何工作。

每个新功能都从一个干净的 Git 仓库开始。

在让 AI 构建新功能之前,请确保所有现有更改都已提交。这样可以创建一个干净的检查点,如果新功能导致问题,您可以放弃这些更改并重新开始,而不会对现有内容造成任何风险。

测试

测试是确保应用按预期运行的关键。让 AI 在构建过程中编写测试,而不是在构建完成后才编写。使用端到端测试来捕获用户实际遇到的错误,在修复任何错误之前编写一个破坏性测试,并在测试就绪后自由重构。

让人工智能编写测试

每次人工智能构建新功能时,都要立即让它为该功能编写测试。端到端测试尤其有用,因为它们可以模拟真实用户使用应用程序的过程,并在影响用户体验的错误到达真实用户之前将其捕获。

考虑采用测试驱动开发(TDD)

在测试驱动开发(TDD)中,你需要在编写代码之前先编写测试。让人工智能(AI)先编写一个描述预期行为的测试,然后再编写代码来实现这个测试。这有助于明确你正在构建什么,并最终生成更简洁、更可靠的代码。

测试到位后,定期重构

好的测试能让你自由地清理和重组代码,而不用担心破坏系统。一旦测试套件搭建完成,就要养成定期重构的习惯,让测试在出现任何问题时立即发出警报。

安全问题

在专注于开发时,安全问题很容易被忽视,但忽视安全可能会造成严重后果。务必使用环境变量来存储 API 密钥和密码等敏感信息,并且在正式上线之前,务必让 AI 对应用程序进行漏洞审计。

明确要求人工智能对应用程序执行安全审计

在正式发布任何内容之前,务必让人工智能扫描代码,查找安全问题——例如未受保护的路由、缺失的输入验证、暴露的数据以及其他任何可能被利用的漏洞。务必将此步骤视为强制性步骤,而非可选项。

始终使用环境变量

API密钥、密码和令牌绝不应该直接出现在你的代码中。.env应该使用环境变量将它们存储在一个文件中,并确保该文件已添加到GitHub的管理列表中.gitignore,以防止它被意外推送到GitHub。
上一篇
在线简历
下一篇
dount