摘要:Vibe Coding(VC)正在重塑软件交付方式,但多数技术人员仍在用传统开发思维做 VC——追求完备、堆砌功能、手工整理数据。本文基于一个企业业务诊断互动页的完整迭代过程,提炼出 VC 时代两个核心方法:大刀阔斧用减法,以及放大 VC 获取、处理、整合海量知识的能力。文中配 12 个 Mermaid 图示,给出可直接复用的实操框架、反例与速查卡。
一、故事开局:从 4 层崩溃到 2 层直出
先说一个真实案例——它浓缩了 VC 时代最核心的矛盾。
我们为超兔 CRM 做一个业务诊断互动页:用户勾选企业问题,系统匹配对应解法。最初照搬咨询方法论设计了 4 层倒推:
L1 症状(8项)→ L2 原因(8项)→ L3 卡点(6项)→ L4 解法
逻辑严密,共 22 个问题。听起来很专业。
第一次交付后,问题集中爆发:
- 页面崩溃:L4 某个选项少了
p字段,JS 一崩到底,C1 之后的所有中心全部不显示 - 用户抵触:"问题太多了,不想答完"
- 内容冗余:L1/L2/L3 中近 10 个选项在说同一件事的不同侧面
最终我们做了两件事:
- 把 L1/L2/L3 三层合并为一层,22 项精简到 10 项
- 让 VC 自动浏览语雀文档库,半天完成 200+ 个产品文档链接的匹配(人工需要 2-3 周)
flowchart TB
subgraph 改版前["改版前:4层倒推(22项)"]
L1["L1 症状<br/>8项"] --> L2["L2 原因<br/>8项"] --> L3["L3 卡点<br/>6项"] --> L4["L4 解法"]
end
subgraph 改版后["改版后:2层直出(10项)"]
N1["L1 核心问题<br/>P0×4 + P1×6"] --> N2["L4 解法能力<br/>带文档链接"]
end
改版前 ==大刀阔斧合并去重==> 改版后
style 改版前 fill:#fef2f2,stroke:#dc2626
style 改版后 fill:#f0fdf4,stroke:#16a34a
| 指标 | 改版前 | 改版后 |
|---|---|---|
| 问题选项 | 22项(跨3层) | 10项(1层直出) |
| 崩溃风险 | 高(字段遗漏×3层) | 低(单层结构) |
| 用户路径 | 4步 | 2步 |
| 文档链接 | 无(人工整理需3周) | 20个链接(半天完成) |
这个案例揭示了 VC 时代两个反直觉的真相:
- "少"不是妥协,"少"本身就是质量保障——代码越少,崩溃风险越低,用户流失越少
- VC 真正的杠杆不在"写代码快",在于它能接管传统开发中最耗时的知识处理环节
本文围绕这两个洞察展开:先讲做减法的方法论,再讲释放 VC 知识处理能力的策略,最后给出可立即上手的实操流程。
二、什么是 Vibe Coding,为什么传统思维会失灵
2.1 VC 的本质:工作流的根本性重构
Vibe Coding(VC)不是"AI 自动补全代码"的升级版,而是开发工作流的根本性重构——开发者以自然语言对话为主要交互方式,借助具备浏览器操作、代码生成、信息提取、数据分析等综合能力的 AI 编程助手完成软件交付。
flowchart TB
subgraph 传统["传统开发工作流"]
T1["需求文档"] --> T2["架构设计"] --> T3["编码实现"] --> T4["测试部署"] --> T5["维护迭代"]
end
subgraph VC["VC 工作流"]
V1["自然语言描述<br/>意图+约束"] --> V2["AI 生成<br/>方案/代码/数据"] --> V3["浏览器验证<br/>看效果找问题"] --> V4["精准迭代<br/>每次聚焦1-2点"]
end
传统 -.->|"范式重构"| VC
style 传统 fill:#f3f4f6,stroke:#6b7280
style VC fill:#dbeafe,stroke:#2563eb
核心矛盾:VC 的生成成本极低(30秒出结果),但纠错成本随代码量非线性增长。所以在 VC 中,代码越少、层级越浅,项目越健康。
2.2 开发者的核心价值发生了转移
flowchart TB
subgraph 传统["传统开发核心价值"]
T1["编码能力"]
T2["框架掌握"]
T3["调试技巧"]
end
subgraph VC["VC 时代核心价值"]
V1["判断力<br/>做什么/不做什么"]
V2["归纳能力<br/>抓住核心矛盾"]
V3["知识杠杆<br/>让AI处理海量信息"]
V4["审美与体验<br/>把控交付质量"]
end
T1 -.->|"价值下降"| V1
T2 -.->|"价值下降"| V2
T3 -.->|"人机协同"| V3
V1 --> V4
V2 --> V4
V3 --> V4
style V1 fill:#fef3c7,stroke:#d97706
style V2 fill:#fef3c7,stroke:#d97706
style V3 fill:#dcfce7,stroke:#16a34a
style V4 fill:#dbeafe,stroke:#2563eb
代码编写不再是瓶颈。真正稀缺的是判断力(什么该做、什么该砍)和归纳力(在一堆看似都合理的选项中抓住核心矛盾)。本文的两个方法,正是围绕这两个新核心展开。
2.3 决策启发式:什么时候用减法,什么时候用杠杆
这是技术人员最常问的"那我到底什么时候该用哪个方法":
flowchart TB
Q{"项目当前卡在哪"}
Q -->|"看不清要做什么"| A["用减法<br/>先砍出MVP范围"]
Q -->|"知道做什么但做不动"| B["用知识杠杆<br/>让VC处理海量数据"]
Q -->|"两者都卡"| C["减法优先<br/>砍出范围后再用杠杆"]
Q -->|"都不卡"| D["直接做<br/>别过度思考"]
style A fill:#dcfce7,stroke:#16a34a
style B fill:#dbeafe,stroke:#2563eb
style C fill:#fef3c7,stroke:#d97706
style D fill:#f3f4f6,stroke:#6b7280
减法是战略选择(决定做什么),杠杆是战术执行(决定怎么高效做)。决策顺序一定是先减法后杠杆——不砍出范围,让 VC 跑海量数据是浪费;砍出了范围但用纯人工做是低效。
三、方法一:大刀阔斧用减法
3.1 核心论点
减法不是妥协,减法是 VC 时代更高阶的设计能力。
AI 天然倾向于生成更多内容——你要 10 个选项,它能给你 20 个,每个都看起来合理。但 AI 不会告诉你"其实 6 个就够了"。大刀阔斧砍掉冗余,是人类开发者在 VC 中最不可替代的价值。
3.2 减法三板斧
flowchart TB
ROOT(["🔪 大刀阔斧用减法"])
ROOT --> A["① 砍层级"]
ROOT --> B["② 砍选项"]
ROOT --> C["③ 砍功能"]
A --> A1["⚠️ 判断标准"]
A --> A2["✅ 典型操作"]
A1 --> A1a["两层选项区分度低"]
A1 --> A1b["用户犹豫归哪层"]
A2 --> A2a["合并症状/原因/卡点"]
A2 --> A2b["折叠深度超过3层的菜单"]
A2 --> A2c["用滚动替代分页跳转"]
B --> B1["⚠️ 判断标准"]
B --> B2["✅ 典型操作"]
B1 --> B1a["3秒内说不清区别"]
B1 --> B1b["描述的是同一件事"]
B2 --> B2a["合并语义重叠项"]
B2 --> B2b["删除边缘低频项"]
B2 --> B2c["让用户精炼措辞"]
C --> C1["⚠️ 判断标准"]
C --> C2["✅ 典型操作"]
C1 --> C1a["犹豫要不要加"]
C1 --> C1b["雪中送炭还是锦上添花"]
C2 --> C2a["砍掉装饰性进度条"]
C2 --> C2b["砍掉低频导出功能"]
C2 --> C2c["砍掉前置信息收集"]
style ROOT fill:#dc2626,stroke:#991b1b,color:#fff
style A1 fill:#fef3c7,stroke:#d97706,color:#92400e
style B1 fill:#fef3c7,stroke:#d97706,color:#92400e
style C1 fill:#fef3c7,stroke:#d97706,color:#92400e
style A2 fill:#dcfce7,stroke:#16a34a,color:#14532d
style B2 fill:#dcfce7,stroke:#16a34a,color:#14532d
style C2 fill:#dcfce7,stroke:#16a34a,color:#14532d
优先级排序:砍层级 > 砍选项 > 砍功能(为什么?看 3.4 节)
3.3 反例库:诊断页砍掉的真实内容
抽象的原则不够说服力,看看实际砍掉了什么:
| 原内容 | 砍后内容 | 砍的理由 |
|---|---|---|
| L1/L2/L3 三层共 22 项 | 合并为单层 10 项 | 3.4节详述 |
| 22项中4项关于"过程黑盒" | 合并为1项"销售过程无留痕,业务全链路黑盒" | 描述同一件事 |
| 6项S(现状良好) | 全部删除 | 现状良好无需"对症" |
| 业务画像收集(6题) | 整模块删除 | 用户大概率跳过,没提供价值 |
| 诊断书PDF导出 | 整功能删除 | 一次都没用 |
| 装饰性进度条 | 删除 | 增加视觉噪音 |
| 多角色切换视图 | 删除 | 复杂度高、使用率极低 |
3.4 为什么"砍层级"排第一?三个连锁效应
追求完备在 VC 中会产生连锁负向循环:
graph LR
A["功能/层级/选项增加"] --> B{"VC场景下"}
B --> C["代码量↑"]
B --> D["上下文窗口消耗↑"]
B --> E["用户认知负担↑"]
C --> F["AI犯错概率↑"]
D --> F
E --> G["用户流失率↑"]
F --> H["交付质量↓"]
G --> H
style A fill:#fee2e2,stroke:#dc2626
style H fill:#fee2e2,stroke:#dc2626
三个连锁效应:
- 对用户:耐心窗口极短 — 网页类产品用户给你的时间是 30 秒到 2 分钟,层级深度与流失率呈指数关系而非线性
- 对 AI:可靠性与代码量负相关 — 诊断页项目中 80% 的 Bug 出现在"为完备而加"的边缘功能上。精简代码本身就是提升稳定性
- 对人:判断力是护城河 — AI 能生成内容但不会做取舍。识别冗余、抓住核心——这是 VC 中最有价值的人的工作
为什么"砍层级"收益最大? 因为层级减少会同时触发上面三条正向效应:用户流失率下降 + AI 犯错率下降 + 人的判断工作量下降。其他两个板斧只触发部分效应。
四、方法二:放大 VC 处理海量知识的能力
4.1 核心论点
VC 最大的杠杆不是"写代码快",而是它能将"获取信息→理解语义→整合数据→生成产物"这条传统上需要人力密集投入的链路,压缩到对话级别完成。
以前需要人花几周做的知识整理工作,在 VC 中可以几小时完成。关键是把 VC 当成知识处理引擎来使用,而不仅仅是代码生成器。
4.2 实战对比:3 周 → 半天
诊断页项目中,最耗时的不是写页面,而是为每个解法匹配对应的产品说明书链接。超兔 CRM 的语雀文档库涵盖 13 个业务中心、上百个功能模块、数百篇文档。
sequenceDiagram
participant P as 产品/运营人员
participant B as 浏览器
participant E as Excel/文档
participant D as 开发者
rect rgb(254, 226, 226)
Note over P,D: 传统方式(预计2-3周)
P->>B: 1. 打开语雀手册
loop 逐页浏览
B->>B: 2. 逐个中心阅读
B->>E: 3. 复制链接到Excel
B->>E: 4. 手动标注对应功能
end
E->>D: 5. 整理好的数据表
D->>D: 6. 手写JS数据结构
D->>D: 7. 写HTML/CSS页面
D->>B: 8. 测试验证
B-->>D: 发现链接/匹配错误
D->>B: 9. 返回修正(循环)
end
rect rgb(220, 252, 231)
Note over P,D: VC方式(实际半天)
P->>D: 1. 告诉需求:功能项清单+文档库入口
D->>VC: 2. "去语雀页面,提取所有子链接"
VC->>B: 3. 自动浏览+提取标题/slug
VC-->>D: 4. 返回结构化链接列表
D->>VC: 5. "匹配功能项→文档链接,生成JS数据"
VC->>VC: 6. 语义匹配+数据生成
VC-->>D: 7. 返回完整JS代码
D->>VC: 8. "写互动页面"
VC-->>D: 9. 返回完整HTML/CSS/JS
D->>B: 10. 浏览器验证
D->>VC: 11. 指出调整点→迭代
end
效率差异不在编码速度,而在知识处理链路被 AI 接管了。 传统流程中,信息收集和数据准备占 70% 以上的时间,而这恰恰是 VC 最擅长的。
4.3 VC 知识处理能力全景
把 VC 当成端到端的知识处理流水线,而不是代码生成器:
flowchart TB
subgraph 输入层
I1["网页/文档库"]
I2["表格数据"]
I3["自然语言需求"]
I4["已有代码库"]
end
subgraph VC能力["VC 知识处理能力"]
C1["信息获取<br/>浏览/提取/爬取"]
C2["语义理解<br/>匹配/分类/摘要"]
C3["数据转换<br/>格式转换/结构化"]
C4["产物生成<br/>代码/文档/图表"]
end
subgraph 输出层
O1["结构化数据<br/>JSON/JS对象"]
O2["可交互页面<br/>HTML/CSS/JS"]
O3["分析报告<br/>对比/统计/建议"]
O4["文档/图表<br/>Markdown/Mermaid"]
end
I1 --> C1
I2 --> C1
I3 --> C2
I4 --> C3
C1 --> C2
C2 --> C3
C3 --> C4
C4 --> O1
C4 --> O2
C4 --> O3
C4 --> O4
style VC能力 fill:#dbeafe,stroke:#2563eb
style 输入层 fill:#f3f4f6,stroke:#6b7280
style 输出层 fill:#dcfce7,stroke:#16a34a
四步完整链路:你提供入口和目标 → VC 获取信息 → VC 理解语义 → VC 转换数据 → VC 生成产物。人只需要在关键节点做校验和判断。
4.4 适合 VC 杠杆的项目类型
flowchart TB
Q2["🟢 VC 杠杆最大<br/>知识密度高 × 逻辑复杂度低"]
Q4["✅ VC 效率很高<br/>知识密度低 × 逻辑复杂度低"]
Q1["🔴 传统开发更优<br/>知识密度高 × 逻辑复杂度高"]
Q2 -->|"典型"| Q2a["知识库/产品手册导航<br/>FAQ/方案匹配工具<br/>诊断测评/问卷工具<br/>数据可视化原型"]
Q4 -->|"典型"| Q4a["落地页/活动页<br/>内部小工具"]
Q1 -->|"典型"| Q1a["核心业务系统<br/>高并发生产系统"]
style Q2 fill:#dcfce7,stroke:#16a34a,color:#14532d
style Q4 fill:#dbeafe,stroke:#2563eb,color:#1e3a5f
style Q1 fill:#fee2e2,stroke:#dc2626,color:#991b1b
VC 杠杆最大的四类项目:知识整合类、互动诊断类、数据可视化类、临时/内部工具。 需要复杂后端逻辑、高安全性、长期维护、多人协作的大型工程——这些场景该用传统工程化流程。
4.5 知识杠杆 ≠ 质量妥协
用 VC 快速处理知识不等于"凑数据"。在诊断页项目中,质量把控的关键是人机校验闭环:
flowchart LR
A["VC批量生成"] --> B["人工快速校验"]
B --> C{"质量OK"}
C -->|"是"| D["交付"]
C -->|"否"| E["指出问题→VC修正"]
E --> B
B --> F["关键项逐个验证"]
F --> D
style A fill:#dbeafe,stroke:#2563eb
style B fill:#fef3c7,stroke:#d97706
style F fill:#fef3c7,stroke:#d97706
style D fill:#dcfce7,stroke:#16a34a
诊断页的具体质量实践:
- 每个文档链接都逐个验证 slug 有效、内容确实对应
- 匹配不准的链接手动纠正(如"客户子表自定义"最终替换为用户提供的精确 slug)
- 选项排序经过多轮迭代,按 p0/p1/s 严重等级+业务主题分组
- 防御性代码到位(如
o.pfallback 防止字段缺失崩溃——这正是第一次崩溃的根因)
人的角色从"执行者"转变为"校验者和决策者"——不是亲自做每一步,而是确保每一步都做对。
五、两方法协同:VC 开发实操框架
5.1 整体工作流
将减法设计和知识杠杆整合到一个可复用的流程中:
flowchart TB
START(["需求来了"]) --> S1["减法设计<br/>三问定范围"]
S1 --> S2["知识获取<br/>让VC从源头提取"]
S2 --> S3["知识整合<br/>让VC做语义匹配"]
S3 --> S4["产物生成<br/>让VC输出代码"]
S4 --> S5["浏览器验证"]
S5 --> S6{"需要调整"}
S6 -->|"是"| S7{"加东西<br/>还是砍东西"}
S7 -->|"加"| S8["精确描述→VC修改"]
S7 -->|"砍"| S9["大刀阔斧砍掉冗余"]
S8 --> S5
S9 --> S5
S6 -->|"否"| END(["交付"])
style S1 fill:#fef3c7,stroke:#d97706
style S2 fill:#dcfce7,stroke:#16a34a
style S3 fill:#dcfce7,stroke:#16a34a
style S9 fill:#fecaca,stroke:#dc2626
5.2 人机分工原则
flowchart TB
subgraph VC负责["VC 负责(执行层)"]
A1["批量提取网页内容"]
A2["生成初始代码/页面"]
A3["数据格式转换填充"]
A4["CSS样式/响应式适配"]
A5["Bug修复/错误处理"]
A6["多方案并行生成"]
end
subgraph 人负责["人负责(决策层)"]
B1["定义核心动作和范围"]
B2["判断什么该砍/该留"]
B3["校验数据准确性"]
B4["把控视觉风格/体验"]
B5["定义对的标准"]
B6["选择最优方案"]
end
VC负责 -->|"输出供决策"| 人负责
人负责 -->|"给出方向与反馈"| VC负责
style VC负责 fill:#dbeafe,stroke:#2563eb
style 人负责 fill:#fef3c7,stroke:#d97706
一句话原则:VC 负责出方案和执行,人负责判断和取舍。
5.3 减法设计三问(开工前必答)
在让 VC 开始写代码之前,必须回答三个问题:
flowchart TB
Q1{"核心动作是什么"}
Q1 -->|"答不出"| R1["需求不清晰<br/>先想清楚再动手"]
Q1 -->|"答得出"| Q2{"哪些是没有也行的"}
Q2 -->|"列清单"| Q3{"最少几层能说清"}
Q3 -->|"1层最好"| GO["开始VC开发"]
Q3 -->|"可以合并"| MERGE["先合并层级再开始"]
Q3 -->|"必须多层"| CAUTION["警惕:真的需要吗"]
CAUTION --> GO
style R1 fill:#fecaca,stroke:#dc2626
style GO fill:#dcfce7,stroke:#16a34a
- 核心动作:用户打开页面,最想做的那一件事是什么?
- 必要边界:哪些是"雪中送炭",哪些是"锦上添花"?犹豫的就先不加。
- 最小层级:能用 1 层不用 2 层,能用 1 页不用 2 页。用户滚动比跳转的耐心高得多。
六、常见误区与反模式
以下五个反模式在 VC 项目中反复出现,每一个都来自真实踩坑经历:
flowchart TD
subgraph 误区["VC 开发常见反模式"]
E1["误区1: 让AI先全做出来再挑"]
E2["误区2: 不舍得砍AI生成的内容"]
E3["误区3: 手工整理数据再喂给AI"]
E4["误区4: 完全不看生成的代码"]
E5["误区5: 一次要求太多改动"]
end
E1 --> S1["结果: 代码膨胀,Bug丛生"]
E2 --> S2["结果: 功能堆砌,体验差"]
E3 --> S3["结果: 浪费VC最大杠杆"]
E4 --> S4["结果: 改A坏B,无法定位"]
E5 --> S5["结果: AI混乱,输出偏离"]
subgraph 正解["正确做法"]
G1["先做减法设计,再让AI生成"]
G2["以用户视角审视,大胆删"]
G3["让AI自己去获取和整理数据"]
G4["保留代码理解力,能做小修"]
G5["每次迭代聚焦1-2个调整点"]
end
style 误区 fill:#fef2f2,stroke:#dc2626
style 正解 fill:#f0fdf4,stroke:#16a34a
误区 1:让 AI 先全做出来再挑。 这是最致命的。VC 的生成成本极低,但纠错成本非线性增长。代码越多,越难定位问题。正确做法是先做减法设计,明确 MVP 范围,再让 AI 生成。
误区 2:不舍得砍 AI 生成的内容。 AI 生成的内容看起来都不错,但很多是冗余的。诊断页中 22 个选项被砍到 10 个,用户反馈反而更好。以用户视角审视,大胆删除。
误区 3:手工整理数据再喂给 AI。 这是对 VC 能力的最大浪费。让 AI 自己去浏览、提取、整理数据——它做这件事比你快 100 倍。
误区 4:完全不看生成的代码。 即使 AI 写了 90% 的代码,你仍需能看懂关键部分:数据结构在哪定义、怎么被使用、Bug 出在哪个环节。完全不看代码,改 A 坏 B 的循环无法避免。
误区 5:一次要求太多改动。 每次迭代聚焦 1-2 个调整点。一次性提 5 个以上改动,AI 容易混乱,输出偏离预期。
七、结语:Vibe Coding 的本质是放大人的判断力
Vibe Coding 最令人兴奋的地方,不是"AI 能写代码了",而是它从根本上降低了把想法变成可用产品的门槛。以前需要一个小团队(产品+前端+后端+设计)花几周做的事,现在一个懂业务的人用 VC 工具几小时就能做出可用版本。
但工具越强,使用者的判断力就越重要。
flowchart LR
A["大刀阔斧用减法"] --> C{"VC 时代<br/>核心竞争力"}
B["放大VC知识杠杆"] --> C
C --> D["用最少的元素<br/>交付最大的价值"]
style C fill:#fef3c7,stroke:#d97706
style D fill:#dcfce7,stroke:#16a34a,color:#14532d
本文提出的两个方法本质上是一件事:
- 减法确保你做的是对的事情(Do the right things)
- 知识杠杆确保你用最高效的方式做(Do things right)
VC 不会替代工程师,它会替代不思考的工程师。
AI 可以帮你写出任何你能描述出来的页面,但它不会告诉你"这个页面不该有这么多功能",也不会主动去浏览上百篇文档帮你整合知识——除非你明确让它这么做。
善用工具,但不要依赖工具替你思考。做减法,用杠杆,做真正有价值的东西。
附录 A:核心原则速查卡
| 原则 | 核心问题 | 一句话答案 |
|---|---|---|
| 减法设计 | 这个功能真的需要吗? | 犹豫就先不加 |
| 砍层级 | 用户需要走这么深吗? | 能用1层不用2层 |
| 砍选项 | 3秒内说不清区别? | 合并 |
| 砍功能 | 雪中送炭还是锦上添花? | 只做雪中送炭 |
| 知识杠杆 | 数据需要人工整理吗? | 让VC去获取 |
| 人机分工 | 这是执行还是决策? | 人做决策,VC做执行 |
| 质量校验 | 生成结果可信吗? | 关键项逐个验证 |
| 迭代节奏 | 一次改多少? | 每次1-2个调整点 |
附录 B:应急止血速查(项目失控时)
| 失控症状 | 应急手段 |
|---|---|
| AI 生成的代码越来越多,但页面越改越差 | 立即回滚到上一个能跑的版本,从那里开始 |
| 每次让 AI 改都引入新 Bug | 加固最小核心,放弃所有边缘功能 |
| 用户反馈"看不懂" | 用一句话写产品定位,把所有功能对位回这句话 |
| 文档链接 404 或匹配错 | 全部去掉 docs 字段,只保留主功能 |
| 团队/老板质疑"为什么要用 VC" | 把诊断页改版前/后的对比表(4层→2层)拿出来 |
| 时间过半但只完成 50% | 砍掉所有 P0 以外的功能,只交 MVP |
附录 C:如何向团队/老板解释"为什么要做减法"
技术决策往往需要说服非技术利益相关方。直接讲"代码量增加导致 AI 犯错率上升"对非技术听众无效,可用这个翻译:
"传统做法是把所有可能性都做出来给用户挑。VC 时代反过来——只做最核心的一两个动作,让用户用得明白,比做十个功能让用户用得糊涂更有价值。诊断页改版前有 22 个问题需要回答,改版后只有 10 个,但用户完成率从 30% 提升到 80%——因为少就是清楚,清楚就是好用。"
*本文基于多个 Vibe Coding 实战项目的真实迭代过程写成,核心案例来自超兔一体云业务诊断互动页开发。