<a id="vibe-coding-experience"></a>
<a id="2-vibe-coding-经验"></a>

# Vibe Coding 经验

> 用自然语言定义目标，用 AI CLI 执行工程动作，用文档、测试与 Git 固化结果。
> 道生一，一生二，二生三，三生万物。

**一**：安装一个 AI CLI，获得与 AI 对话的能力

**二**：AI 能读写一切文件，你不再需要手动编辑

**三**：AI 能配置一切环境，安装依赖、部署项目

**万物**：AI 生成代码、文档、测试、脚本——一切皆可生成

---

### 心法

> 我是 AI 的寄生者，没有 AI 我失去一切能力。

**你**：描述意图、验证结果、做决策

**AI**：理解意图、执行操作、生成产出

### 基本前提

大语言模型的底层能力是**通用语言能力**：理解、改写、分类、推理、规划、翻译、归纳、生成和校验语言结构。

所以遇到任何任务，第一步不是问“AI 会不会做”，而是判断：这个任务能否被语言表达、拆解、约束和验证；它能否通过语言能力直接完成，或间接转化为工具调用、文件修改、流程编排、数据处理与代码实现。

代码能力只是最直观的例子：编程本质上是把人的意图翻译成计算机可执行的指令。Vibe Coding 的关键，就是把“模糊想法”逐步压缩成“明确语言”，再把明确语言转成可运行、可测试、可回滚的工程产物。

### 核心判断

Vibe Coding 不是把代码外包给 AI，也不是让 AI 随机试错。

它是一套工程协作方式：人负责目标、约束、判断与验收；AI 负责读取上下文、提出计划、修改文件、运行命令与整理证据。

关键原则：**AI 不能自证正确**。凡是能被测试、类型、schema、lint、CI、脚本或代码断言校验的规则，都应变成机器门禁，而不是只写在提示词里。

### 四层能力

**一：连接**

安装 Codex CLI，获得能直接操作仓库的 AI 编程入口。

**二：读写**

AI 能读取项目结构、修改文件、生成文档、补充测试，不再只停留在聊天框里。

**三：闭环**

AI 能安装依赖、执行命令、修复报错、提交 Git；你负责确认目标和验收结果。

**万物：复用**

把一次成功经验沉淀成 README、AGENTS、prompt、skill、workflow，下次直接复用。

### 人机分工

**你负责：**

- 说清目标：要做什么、不要做什么、成功标准是什么
- 设定约束：技术栈、时间、成本、风险、边界
- 做最终判断：方案是否合理、结果是否可接受
- 设计门禁：让 AI 把自然语言验收标准转成测试、CI、脚本、类型、schema 或检查清单等强制硬门禁

**AI 负责：**

- 读取上下文：代码、文档、配置、错误日志
- 拆解任务：计划、步骤、验证方式
- 执行动作：写代码、改文档、跑命令、查问题
- 沉淀证据：测试结果、diff、commit、风险说明

**机器门禁负责：**

- 拦截幻觉：依赖不存在、路径错误、命令不可执行、链接失效、配置字段不匹配时直接失败
- 拦截糊弄：没有测试、没有 lint、没有类型检查、没有验收证据时不允许合并
- 拦截越界：不符合 AGENTS、schema、接口契约、目录规范或安全规则的改动直接报错
- 强制分发：把规范分发到 CI、pre-commit、脚本、模板、类型系统、单元测试和集成测试里，让规则自动执行

### 入门铁律

1. 先定义问题，再让 AI 写代码。
2. 先让 AI 给计划，再让 AI 执行。
3. 每一步都要能验证，不把“看起来对”当成完成。
4. 频繁提交 Git，把每次进展变成可回滚的检查点。
5. 让 README、AGENTS、任务文档持续更新，避免上下文丢失。
6. 不相信 AI 的口头保证，只相信可复现命令、测试输出、CI 状态和可审查 diff。
7. 重要规范必须代码化：能写成 lint、test、schema、type、hook、CI 的，就不要只写成自然语言。
8. 不符合规范的产出必须失败，而不是靠人记住提醒 AI。

---

### 下一步

→ [CLI 配置](cli-setup.md) - 默认 AI CLI 路线，文末包含 OpenCode 备选方案
