你有没有这种感觉——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 最形象的理解方式是接力赛规则。

接力赛最重要的,不是有四个跑得快的人,而是这些事必须说清楚:

  1. 第一棒是谁跑
  2. 第二棒什么时候能接棒
  3. 接棒的时候必须交什么
  4. 哪种情况算犯规

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(外部工程系统)

踩坑提醒

  1. 不要一上来就搞 Rule、Agent、MCP — 概念没分清,越做越乱
  2. Rule 只是软约束 — AI 会遗忘、会偷懒,必须配合 Scripts
  3. 单 Agent 全能有问题 — 需要分工
  4. Skill 要提前固化 — 不要让 AI 每次重新理解流程
  5. MCP 不是主体 — 是外接接口,需要被制度管住

写在最后

Harness Engineering 这个词听起来很大,但它解决的根本问题是朴素的:如何让 AI 在你的项目里持续、稳定、规范、顺畅地做出你真正想要的结果。

不同项目落地出来的 Harness 表面上可能完全不一样——有的 CI 很强,有的规范很强,有的是一个团队协作很扎实。但往下挖,它们解决的其实是同一个问题。

如果你也想在自己项目里从零搭 Harness,第一步该做什么,后面按什么顺序逐步补齐,这篇文章值得反复读。


文章素材来源:《万字干货!Harness Engineering如何工程化落地?》by 白家杰,腾讯云开发者