你有没有这种感觉——AI 概念听了一大堆,真正要在自己的项目里落地,却不知道从哪下手?
Harness Engineering 就是来解决这个问题的。
最近读了一篇腾讯工程师写的万字长文,讲他们如何在 JK Launcher 项目里从零搭建 AI 工程化体系。文章没有空谈理念,而是拿出真实案例,一步步拆解每个环节。
核心问题只有一个:如何让 AI 在你的项目里,持续、稳定、规范、顺畅地做出你真正想要的结果?
先把几个概念说清楚
很多人一上来就写 Rule、搞 Agent、接 MCP,最后越做越乱。根本原因不是执行力不够,而是概念没分清楚。
我把文章里的概念速览表直接搬过来:
| 概念 | 它回答什么问题 | 在工程里的角色 |
|---|---|---|
| Rule | 什么事绝对不能乱来 | 基础规矩、红线、底线 |
| Skill | 这件事具体应该怎么做 | 固定动作的标准操作手册 |
| Sub Agent | 复杂任务由谁分工处理 | 不同阶段的专业角色 |
| Workflow | 这些角色按什么顺序接力 | 前进、暂停、打回、重跑规则 |
| Scripts | 最后谁来判断到底做没做好 | 统一门禁和事后验证 |
| MCP | AI 怎么安全接上外部工程系统 | 外接能力与工具链 |
Rule:软约束,不是硬门禁
Rule 是你给 AI 写的"工程规矩"。比如:
改完代码以后,不能只说"我改好了"——你必须去编译。你必须去跑测试。你必须去做事后验证。三步不全过,这次开发就不算完成。
但这里有个关键点:Rule 只是软约束,不是硬门禁。
AI 理论上应该遵守它,但不一定每次都遵守。典型情况:
- 它忘了某条 Rule
- 它觉得某条 Rule 和这次需求"无关"
- 它知道这条 Rule,但偷懒没做,还给自己找理由
所以 Rule 非常重要,但 Rule 不能解决所有问题。
Skill:最推荐早点引入的东西
Skill 本质上是告诉 AI:有些事情你不要临场发挥,不要每次重新理解,更不要自己"猜一个大概的流程",而是严格按照这套固定步骤执行。
拿编译举例。你说"去编译一下",AI 可能自己拼一条命令。但实际工程里,编译可能涉及:
- 要找对 MSBuild
- 要用固定的配置
- 要先还原
- 要把日志输出到指定文件
- 编译完以后还要看错误模式
这些东西如果每次都让 AI 自由发挥,迟早出问题。
所以把编译做成 Skill,把测试做成 Skill,把事后验证也做成 Skill。Rule 告诉 AI"这件事必须做",Skill 告诉 AI"这件事具体应该怎么做"。
Sub Agent:解决"单 Agent 全能"的问题
很多人用 AI,默认是一个 Agent 干到底——分析需求、设计方案、写代码、审代码、写测试、做总结全都它来。
短任务没问题。但只要任务一复杂,问题马上出现:
- 它会自己给自己做需求解释
- 它会自己给自己的方案打分
- 它会自己写代码、自己说自己没问题
- 它天然更倾向于"推进任务继续进行",而不是"停下来承认当前有问题"
这和真实软件研发完全一样。一个人既做产品、又做架构、又做开发、又做 QA,最后质量一定很难收口。
所以要引入多个 Sub Agent,把不同阶段拆开。每个 Agent 只负责自己那一段,把产出写进文档,然后交给下一个 Agent。
就像真实项目组:
- 需求分析的人只管把需求说清楚
- 方案设计的人只管把技术方案做完整
- 闸门的人专门负责判断"这东西能不能进开发"
- 开发的人只管实现
- 代码审查和测试的人负责收口
Workflow:接力赛规则
Workflow 不是"写了几个 Agent"那么简单。如果只写了几个 Agent,而没有 Workflow,那其实只是"有几个人在干活",还谈不上"有一套稳定可复用的协作方式"。
Workflow 最形象的理解方式是接力赛规则。
接力赛最重要的,不是有四个跑得快的人,而是这些事必须说清楚:
- 第一棒是谁跑
- 第二棒什么时候能接棒
- 接棒的时候必须交什么
- 哪种情况算犯规
Scripts:硬门禁
Rule 是软约束,Scripts 是硬门禁。
Scripts 负责判断"到底做没做好"——统一的门禁和事后验证。没有 Scripts 的 Harness,就像没有闸机的工厂,规则写了但没人真正检查执行。
MCP:外接能力的标准插座
MCP(Model Context Protocol)本质上是把"仓库之外的能力"接进 AI 工作链路的标准方式。
没有 MCP 时,AI 通常被锁在本地代码仓库、本地脚本、当前对话上下文。能分析、能改代码、能跑本地验证,但很难安全、结构化、可审计地接入更外层的工程系统。
如果要把闭环做完整,迟早会碰到这类动作:
- 调用 CI 平台发起构建
- 读取构建日志和构建结果
- 调用签名服务给安装包签名
- 上传制品到制品库或发布平台
- 调用发布系统做灰度、提审、发布
- 回写发布状态、版本号、交付记录
MCP 就是这层连接层——把外部系统以 Tool/资源的形式暴露给 AI,便于被 Rule、Workflow、Scripts 一起约束。
如果 Rule 像制度,Skill 像操作手册,Scripts 像闸机,那么 MCP 更像把 AI 接进更大工程系统的标准插座。
落地顺序建议
基于文章内容,我总结了一个搭建顺序:
第一步:定义 Rule(基础规矩)
↓
第二步:构建 Skill(编译/测试/验证等标准操作)
↓
第三步:引入 Sub Agent(分工角色)
↓
第四步:设计 Workflow(接力规则)
↓
第五步:编写 Scripts(硬门禁验证)
↓
第六步:接入 MCP(外部工程系统)
踩坑提醒
- 不要一上来就搞 Rule、Agent、MCP — 概念没分清,越做越乱
- Rule 只是软约束 — AI 会遗忘、会偷懒,必须配合 Scripts
- 单 Agent 全能有问题 — 需要分工
- Skill 要提前固化 — 不要让 AI 每次重新理解流程
- MCP 不是主体 — 是外接接口,需要被制度管住
写在最后
Harness Engineering 这个词听起来很大,但它解决的根本问题是朴素的:如何让 AI 在你的项目里持续、稳定、规范、顺畅地做出你真正想要的结果。
不同项目落地出来的 Harness 表面上可能完全不一样——有的 CI 很强,有的规范很强,有的是一个团队协作很扎实。但往下挖,它们解决的其实是同一个问题。
如果你也想在自己项目里从零搭 Harness,第一步该做什么,后面按什么顺序逐步补齐,这篇文章值得反复读。
文章素材来源:《万字干货!Harness Engineering如何工程化落地?》by 白家杰,腾讯云开发者