跳到主要内容

Vibe Coding 如何做限制?

很多团队引入 AI 编码后,第一个错误直觉是:“让它尽量自由,效率才高。” 实际上,Vibe Coding 一旦没有限制,效率提升常常只出现在前 10 分钟,后面会被返工、误改、幻觉和安全风险全部吃回去。 所以真正成熟的做法不是追求无限自动化,而是做分层限制(guardrails)

0. 面试速答(30 秒版 TL;DR)

  • Vibe Coding 的限制,本质上是在控制 4 件事:
    • 它能看什么
    • 它能改什么
    • 它能执行什么
    • 它必须如何验证
  • 限制不是为了降速,而是为了把错误压缩在小范围内。
  • 一套常见而有效的约束链路是:
    • 任务限制:目标、非目标、改动范围
    • 权限限制:目录、命令、外部系统权限
    • 流程限制:先搜再改、先验证再提交
    • 发布限制:CI、评审、审批
  • 原则是:低风险任务自动化,高风险动作必须升级审批。

1. 为什么限制反而能提高效率?

因为 AI 编码里最贵的不是“慢一点”,而是“错得很远”。

没有限制时,常见代价包括:

  • 改错目录
  • 顺手重构一大片
  • 执行不该执行的命令
  • 擅自联网、装包、删文件
  • 没验证就宣称完成

这些问题一旦进入主分支,返工成本远高于前面多加几条限制。

所以限制的真实收益是:

  • 减少回滚
  • 减少 review 成本
  • 降低安全风险
  • 稳定输出质量

2. 第一层限制:任务边界

这是最重要的一层。

至少要明确 4 件事:

  1. 目标是什么
  2. 非目标是什么
  3. 可以改哪些路径
  4. 哪些地方绝对不能碰

例如:

  • 只改 docs/frontend/vibe-coding/
  • 不改现有历史文档
  • 不改侧边栏逻辑代码
  • 只新增,不删除

如果这层不写清,AI 会自然向“它认为更合理”的方向扩展。

3. 第二层限制:权限边界

3.1 文件权限

常见做法:

  • 默认只允许改工作区
  • 只允许改指定目录
  • 删除文件、高影响文件改动需要额外确认

3.2 命令权限

不是所有命令都应该直接给 AI。

尤其要重点限制:

  • 删除类命令
  • 会写系统目录的命令
  • 联网安装命令
  • 发布、部署、推远端命令

更稳的思路是:

  • 默认读操作放开
  • 写操作有限开放
  • 高风险操作升级确认

3.3 外部系统权限

即便接了 MCP,也不等于 AI 就该拥有全部系统能力。

例如:

  • issue 系统可读,不一定可写
  • 监控系统可查,不一定可执行恢复动作
  • 数据库优先只读

权限一旦设计错,AI 的问题不是“写错代码”,而是“做错操作”。

4. 第三层限制:执行流程

很多风险不是权限不够,而是流程没卡住。

团队里至少要约束这些动作顺序:

4.1 先搜索再编辑

避免 AI 凭空假设某个文件或符号存在。

4.2 先理解上下文再动手

至少要看:

  • 相关文件
  • 配置
  • 调用链
  • 验证命令

4.3 改完必须验证

例如:

  • 文档改动跑格式或语法检查
  • 代码改动跑 typecheck
  • 关键功能改动跑测试

没有验证,限制体系其实是不完整的。

5. 第四层限制:发布闸门

即使前面都做了,也不应该让 AI 直接越过最后一道关。

典型闸门包括:

  • CI
  • 测试
  • Code Review
  • 必要的人工审批

一个成熟团队的策略通常是:

  • AI 可以生成改动
  • AI 可以辅助解释改动
  • 但最终合入仍然由人和自动化基线共同决定

6. 一套前端团队可直接落地的限制方案

6.1 低风险任务

例如:

  • 文档新增
  • 样式微调
  • 文案修正

可放宽:

  • 局部自动编辑
  • 局部自动验证

6.2 中风险任务

例如:

  • 组件重构
  • 页面逻辑修复
  • 构建配置调整

应增加:

  • 改动目录限制
  • 必跑验证命令
  • 人类 reviewer 审核

6.3 高风险任务

例如:

  • 数据迁移
  • 权限系统改动
  • 删除大批文件
  • 部署和回滚

必须:

  • 人工主导
  • AI 只做辅助分析和草稿

7. 一个很常见的追问:限制会不会让 AI 失去价值?

更稳的回答是:

  • 会限制一部分“看起来很爽”的自由度
  • 但会显著提升可控性和稳定性

工程里真正要追求的不是“AI 最像全自动员工”,而是:

  • AI 在可控边界内,稳定地产生高质量增益。

8. 常见误区

  • 误区 1:把限制理解成不信任 AI
    • 限制本质上是工程治理,不是情绪表达。
  • 误区 2:只配权限,不配验收
    • 没有验证要求,错误仍然会流进主线。
  • 误区 3:所有任务都一个限制级别
    • 不同风险等级,应该有不同自动化边界。
  • 误区 4:把“能做”当成“该做”
    • 即使 AI 技术上能执行,也不代表流程上该放开。

9. 速记要点(可背诵)

  • Vibe Coding 限制的核心是:看什么、改什么、跑什么、怎么验。
  • 限制不是减效率,而是减少大错和返工。
  • 最稳的治理方式是:任务边界 + 权限边界 + 执行流程 + 发布闸门