01 结论先行

Spec + Harness
把 Vibe Coding 钉成可交付

口播面试官不问「会不会用 Claude」——问的是规格、护栏、人机边界、三关、CI。

AI 加速的是生成;Spec + Harness 加速的是可控交付。
Vibe 负责速度,规格负责方向,缰绳负责边界。

可追问 · 可复用 · 可进流水线 老李 · 架构师 甜心智能 · Vibe Coding 对齐
先立痛点:能跑的代码,为什么联调一开就炸?
02 痛点

Why · 缺的不是模型,是规格与护栏

半小时「能跑」:联调、安全、架构一起炸

口播口头对需求 → Cursor 开干 → 边界炸、密钥硬编码、直连库绕过网关。

1

边界条件全炸

空值、幂等、异常态没进规格;生成只优化「看起来像对」。

2

安全一眼穿

密钥硬编码、鉴权漂移——Review 跟不上生成速度。

3

分层被揉烂

直连库、绕过网关;架构漂移「也能跑」,最危险。

核心判断:AI 加速生成 ≠ 可控交付 —— 中间缺 Spec + Harness
痛点立住了——下一页给定义:Spec 管什么,Harness 卡什么。
03 是什么

What · 规格钉意图,缰绳钉行为空间

两个词别混:SpecCoding ≠ Harness

口播左边写「要什么 / 不做什么 / 怎么验收」;右边约束「能改哪、禁什么、过什么门」。

SpecCoding

可判定的契约面

  • 目标 / 非目标 / 接口契约
  • 验收用例(可执行命令)
  • 形态:OpenSpec · 任务清单 · 测试
Harness

行为空间的缰绳

  • 目录边界 · 依赖白名单
  • 禁止模式 · Rules / Skills
  • 评审检查项 · 自动化门禁
不是什么

不是禁止 vibe,也不是再造瀑布文档——是把 vibe 收进规格,把规格收进门禁。

定义清楚了——下一页横向对照:纯 Vibe / Prompt 模板 / Spec+Harness。
04 选型对照

What · 三种输入,三种风险面

团队交付选哪条:可审计 > 感觉快

口播按列念:输入是什么、风险在哪、适合谁——面试答「为什么不全靠 vibe」用这张表。

方式输入风险适合
纯 Vibe 自然语言随手聊 漂移大 · 难复盘 抛原型
Prompt 模板 固定提示词 靠人记 · 难强制 个人提效
Spec + Harness 规格 + 护栏 + CI 前期写规格 · 后期可审计 团队交付
没有 Spec → AI 优化「看起来像对」;没有 Harness → Review 永远跟不上 生成速度
选型定了——下一页画人机边界:谁定方向,谁提草稿,谁做机械门禁。
05 人机边界

How · 人定方向与硬问题,机提效率与草稿

一句话分工:人决策 · 机起草 · 门禁执行

口播从上往下念四层:人 → AI IDE → Harness → 自动化门禁。工具可换,方法不散。

人拆需求 · 写 Spec · Review 三关
机Claude Code / Cursor / Kiro 同构
缰Rules · Skills · 目录/依赖边界 · 禁止模式
门单测 · 静态检查 · 安全扫描 · 架构规则
禁

平台级红线

允许 AI 起草;不允许 AI 擅自改契约。

迁

工具同构

Claude / Cursor 已用;Kiro 按同一套规则迁入。

账

两笔账别混

平台延迟账 ≠ Spec/Harness「不把契约冲烂」。

边界清楚了——下一页面试必答:Review 三关分别看什么、怎么拦。
06 Review 三关

How · 正确性 · 安全 · 架构合规

人审硬问题:三关各有兜底,架构最易被 vibe 冲掉

口播按行念:关卡 → 看什么 → 拦法。架构规则失败直接红灯,不许「下个迭代再还」。

关卡看什么典型拦法
正确性 业务边界 · 空值 · 幂等 · 回归用例 单测 / 契约测试
安全 密钥 · 注入 · 鉴权 · 数据越权 SAST / secret scan
架构合规 分层 · 依赖方向 · 禁止直连 · 中间件用法 架构规则 / CODEOWNERS
有兜底

正确性靠测试;安全靠扫描——漏了还能拦一层。

最危险

架构漂移「也能跑」→ 必须进规则,红灯即停。

三关会答了——下一页看端到端节奏:需求 → Spec → 生成 → 三关 → CI。
07 交付节奏

How · 可口述的操作链

四步合入:Spec → 差分 → 三关 → CI

口播按箭头念;失败不谈 vibe,只谈哪条规则没过。

①压成 Spec
→
②按规格生成差分
→
③人过三关
→
④CI 红灯即停
1

目标 / 非目标

接口 + 验收用例写进仓库。

2

禁止顺手重构

只改规格允许的面。

3

边界 / 密钥 / 越层

三关逐项打勾或打回。

4

口头豁免无效

门禁不过不谈合入。

节奏有了——下一页把门禁落到仓库与流水线:最小可跑 harness。
08 CI 门禁

Do · 规格入库 · 规则入库 · 门禁入库

最小 harness:Rules + Spec + pre-commit + PR pipeline

口播不追求一次装全宇宙——先让「能跑但不该合」的差分被挡住。

仓库落点

两边共用

  • .cursor/rules/architecture.mdc
  • .cursor/skills/<domain>/SKILL.md
  • CLAUDE.md · openspec/
流水线

PR 必过

  • 单测 · 静态检查 · secret scan
  • 架构规则失败 → 阻断合并
  • 三关通过后才进统一基建分支
账:少写 20 分钟 规格,常换回 2 小时 联调事故(经验账,不是效能看板吹数)
门禁能讲了——下一页用简历证据对齐:小冰日常 + AgentX,数字别混账。
09 简历证据

Do · 诚实对齐:方法账 ≠ 平台延迟账

两场落地:小冰日常流水线 · AgentX 架构合规

口播先讲方法怎么用,再点平台数字——别把 2s→500ms 说成 Spec 的功劳。

A

微软小冰 · 2025.07–2026.07

Claude Code / Cursor:需求拆解 → 指令 → 编码联调;交付前过正确性 / 安全 / 架构合规。

B

AgentX

Java Agent 编排 + MCP;Python DAG + 设计器。状态机可恢复、工具经 MCP、密钥不进节点配置。

C

平台账(另记)

DigitalHuman:ASR/TTS/LLM/LiveKit 全链路延迟 2s→500ms,可用性 99.9%——解释的是平台工程,不是 Spec 本身。

岗位对齐

Claude / Cursor(已用)→ Review 三关 → 统一基建 → 自动化门禁;Kiro 同构可迁。已落地前两环,后两环是同构心智。

证据诚实了——下一页三条洞见:契约、缰绳、架构红灯。
10 洞见 ×3

Insight · 见微知著

带走三条:可判定 · 窄路径 · 架构红灯

口播从左到右念;每条对应一个工程动作,不是鸡汤。

1

Spec 是契约

「尽量高可用」等于没写;「p99 ≤ 500ms,失败重试 2 次」才能进门禁。

2

Harness 是缰绳

创意可以野,合入路径必须窄。白名单依赖、禁止直连、强制走网关。

3

架构最易被冲

正确性/安全有兜底;架构漂移也能跑——规则失败直接红灯。

①可判定 Spec
→
②窄路径 Harness
→
③三关 Review
→
④CI 红灯即停
洞见收束——下一页速查卡:面试六问怎么答、落地物是什么。
11 方法论速查

Cheat sheet · 面试六问

一张表答完:问题 · 答法 · 落地物

口播按行扫;别背工具名,背「可判定 / 行为空间 / 红灯阻断」。

问题答法落地物
Spec 是什么可判定目标 / 契约 / 验收OpenSpec · 用例 · 接口契约
Harness 约束什么AI 与人的行为空间Rules · Skills · 禁止清单
人机怎么分人定方向硬问题,机提效率决策记录 + 差分 PR
Review 三关正确性 / 安全 / 架构合规测试 + 扫描 + 架构规则
如何进 CI红灯阻断,不许口头豁免pre-commit + PR pipeline
和纯 Vibe 差在哪可审计 · 可复用 · 可度量规格入库 · 门禁入库
速查齐了——最后一页收束公式 + 唯一行动号召。
12 收束

带走 · 公式 → CTA

一句话:速度回来,翻车变少

口播先复述公式,再做一个半页 Spec——今晚就能开始。

Vibe = 速度 · Spec = 方向 · Harness = 边界 · Review = 硬问题 · CI = 不信任任何人(含 AI 和你自己)
1

半页 Spec

下一个需求先写目标 / 非目标 / 验收。

2

三条禁止项

写进 Rules:越层、直连库、密钥入仓。

3

CI 挡「能跑」

让流水线挡掉不该合的差分。

先 Spec,再开 Claude / Cursor——工具可以换,方法不散。