~/VibeHandbook
免费 PDF

15 · 01

为什么指挥 AI 时你需要防护栏

AI 并不知道你的应用本该做什么。它只是在向看起来合理的模式靠拢。这意味着它会乐此不疲地:

  • 为了"修复报错"而删掉一个它不理解的检查
  • 在你只要求它改一个文件时,却重构了三个文件
  • 引入一个 happy path 不会暴露出来的隐蔽 bug
  • 在它根本没运行过代码的情况下,自信地告诉你已经做完了

防护栏把"相信我"变成"拿出证据"。目标是构建一个让东西很难被意外搞坏的系统,这样你就能一直说"先试试看",而不必屏着呼吸。

把这些防护栏想象成一条流水线,每一处改动在抵达真实用户之前都必须穿过它。每道关卡都廉价而自动,其中任何一道都能把一个坏改动当场拦下:

   代码变更
       │
       ▼
  ┌────────┐   ┌────────┐   ┌────────┐   ┌──────────┐   ┌────────┐
  │  LINT  │ ▶ │ TYPES  │ ▶ │ TESTS  │ ▶ │ CI  GATE │ ▶ │ DEPLOY │
  │  样式  │   │  形状  │   │  行为  │   │ 全部通过 │   │  上线  │
  └────────┘   └────────┘   └────────┘   └──────────┘   └────────┘
       │            │            │             │
       ▼            ▼            ▼             ▼
     ✗ FAIL ────────────────────────────▶ 阻止合并
                 (在到达用户之前修复)

这件事在 AI 身上比在人类队友身上更重要,有一个更深层的原因。一个删掉校验检查的人类,通常知道自己在冒险,并且能感到那份分量。AI 什么也感觉不到。它会移除一个守卫、重写一个文件、然后报告成功——无论这个改动是绝妙还是灾难性的,都用同样欢快的语气。你读不出它的肢体语言,因为它根本没有肢体语言。防护栏就是它的肢体语言——它是关于这份工作是否真正稳妥,你能得到的唯一诚实信号。

想离线阅读?

免费下载整本书的 PDF 或 EPUB。