滴滴一面:怎么做好 Harness?大部分面试者的回答只停留在怎么用,没有回答的更系统
现在这个时代嘛“Vibe Coding”氛围感编程特别火相信大家身边不少开发者都已经习惯了拉上 AI Agent 就是一顿狂刷代码。你只要把 Prompt 写好了代码那不就哗哗出来了嘛。但是呢话说回来你真的管得住 AI 吗说实话很多时候确实是这样代码是刷出来了可坑也跟着一块儿埋进去了分层不对的情况就是那种本该写在 Service 层的逻辑结果被硬生生塞进了 Controller 里面。格式混乱的问题也挺常见缩进和命名五花八门的看了真的逼死强迫症。还有异常乱抛的一个 try-catch 就想包揽天下要不就是直接把异常给吞掉了。再就是没有测试跑不跑得通全凭运气更别说什么单测覆盖率了。“光靠提示词Prompt根本管不住 AI Agent。坑往往比功能还要多。”在最近某大厂的一面真题里面试官就直接抛出了一个挺前沿的考点就是问 Harness Engineering安全绳/缰绳工程具体怎么做。这道题现在已经是大模型相关岗位面试的经典必考题之一了但是呢据面试官反馈说大部分面试者的回答都只是停留在怎么用这个层面——说说自己配过 ESLint、写过 .cursorrules然后就没有然后了很少有人能讲出一套完整的、成体系的分层方法论出来。那今天我们就来把这套方法论给讲透了帮你在回答这道题的时候能够更有深度一些。什么是 Harness Engineering简单来说的话呢Harness Engineering 就是给 AI Agent 去搭建一套工程约束。在传统开发里面我们靠的是规范和人肉 Code Review 来约束程序员的。但是到了 Agent 时代呢我们就需要把这些规范变成硬规则做成一套让 AI Agent 绕不过去的反馈闭环才行。这套闭环的核心其实就是八个字能跑、能查、能拦、能改。[ AI Agent 生成代码 ] ── 1. 跑得起来 ── 2. 查得出问题 ── 3. 拦截不合格 ── 4. 逼它改过 (循环自我修正)这绝不是说你在 Prompt 里面反复唠叨请注意代码格式必须写单测就行了因为 Agent 这东西它很容易就转头就忘了。我们要做的是用硬性门禁让它在一遍遍的失败和报错当中去进行自我修正直到把合格的代码给写出来。核心框架Harness 工程约束的三层修炼如果你用过 AGENTS.md 或者 .cursorrules 的话呢那恭喜你你其实已经迈入了 Harness 的大门了入门版的。但这还只是怎么用这个层面。真正能让面试官眼前一亮的回答是能够往下做得更加扎实的三层约束1. 第一层架构级约束落在既定架构里AI 最容易放飞自我的地方就是系统架构了。架构级约束的本质说白了就是Agent 写出来的东西必须落在你定好的框架里面才行。统一技术栈这一块比如说 Java 项目就必须统一使用 Spring Boot。统一分层呢就是要严格限制 Controller - Service - Mapper 的调用链路。统一异常与返回体就是规定好全局异常处理的机制和统一的 JSON 返回格式。统一依赖边界就是严格禁止模块之间的循环依赖和越权调用。举个例子来说吧你让 Agent 帮你加一个用户注册接口如果没有架构约束的话呢它可能就直接在 Controller 里面写数据库操作了手动拼 SQL返回体格式跟其他接口完全不一样。但是你要是有了架构级约束——比如在 AGENTS.md 里面写明所有业务逻辑必须在 Service 层Controller 只做参数校验和调用统一返回 Result包装类——那 Agent 生成的代码就能跟项目里其他接口长得一样了你就不用去逐行搬家了嘛。2. 第二层质量级约束格式、规范、覆盖率把质量指标做成铁律一层一层地卡死。这里呢就需要祭出各种自动化静态分析和检测工具了配在本地或者 CI 阶段都行工具名称约束维度作用说明Spotless统一格式化强制规范代码缩进、空格、换行格式不对的话直接编译就失败了。Checkstyle编码规范约束命名风格、类大小、魔术常量这些。SpotBugs缺陷拦截自动扫描代码里面常见的空指针、资源未关闭这些潜在的 Bug。JaCoCo覆盖率门禁强制单测门禁比如说单测覆盖率必须达到 90%不然就不给通过。ESLint / Prettier前端规范前端质量约束同样也不能落下把语法和样式都给卡死了。举个例子来说明一下Agent 写了一段代码里面 catch (Exception e) {} 直接就把异常给吞掉了——这种写法人眼一看就知道是坑但是 Agent 自己往往意识不到有什么问题。你要是配上 SpotBugs 之后呢这类空 catch 块资源未关闭的问题就会被自动标红构建直接就失败了Agent 拿到报错信息之后才会老老实实地把异常处理给补全了。JaCoCo 覆盖率门槛也是同样的道理没有它的话 Agent 大概率就只写业务代码不写测试了你卡了 90% 的门槛呢它就必须把边界情况的单测也给补上才行。3. 第三层流程级约束CI/CD 门禁反馈闭环工具都有了那怎么才能让 Agent 乖乖听话呢这就需要流程级门禁了。不要等到人肉 Review 的时候才发现问题。要通过 CI/CD比如 Jenkins、Git Hooks来构建自动化流水线Agent 提交代码之后就触发流水线了。然后编译器去进行编译Spotless 去做格式化检查Checkstyle 去做静态扫描JaCoCo 去运行单测。任何一步要是挂了的话呢流水线就直接中断了并且把编译报错、测试未通过的这些堆栈信息作为上下文自动反哺给 Agent。然后逼迫 Agent 根据这些报错信息去进行自我修正直到流水线全部变绿通过为止。举个实际的例子Agent 提交了一版代码Git Hook 触发了本地检查Checkstyle 报出了 3 处命名不规范的问题JaCoCo 显示覆盖率只有 72%。这些报错不需要人工去转述直接把日志喂回给 Agent 就行了它就能照着报错逐条去修——改命名、补单测直到门禁全部变绿了才允许合入。整个过程当中工程师几乎就不用插手了真正做到把重复修正的工作交给 Agent 来扛。有没有 Harness差别有多大我们可以用一张图来直观对比一下两种开发模式下的长远走向没有 Harness 约束的情况是这样的现状就是 AI 刷代码确实挺快的但是技术债呈指数级飙升越滚越大。结局呢就是后期维护成本变得极高项目最终就沦为没人敢动的屎山了。引入 Harness 约束之后呢现状就是 AI 生成代码之后在编译器、测试报告、质量门禁、人工审查的这些层层关卡当中被一逼再逼。结局就是 Agent 在编译和测试当中进行自我修正最终产出符合高标准的企业级代码。终局思考Vibe Coding 时代程序员的活是什么在 AI 这个时代呢开发者的定位正在悄悄地发生变化。我们需要记住下面这三个关键点工程规范比以前更严了——正因为代码生成变得简单了嘛入口的把关就必须比以前更加严苛才行不然的话垃圾代码就会泛滥成灾了。重复的修正工作呢大部分都可以交给 Agent 来扛了——程序员不再需要机械地去改格式、补单测、修小 Bug 了把门禁日志丢给 Agent 让它自己去改就行了。工程师的核心价值——其实就是去设计和维护好这套 Harness也就是安全绳工程。未来的优秀工程师不再是那个写代码最快的人了而是那个能为 AI 搭建完美运行轨道的轨道设计师。这也是为什么面试官会在这道题上格外挑剔——他想看到的不是我用过什么工具而是我能不能设计出一套完整的、能够自我闭环的约束体系。学AI大模型的正确顺序千万不要搞错了2026年AI风口已来各行各业的AI渗透肉眼可见超多公司要么转型做AI相关产品要么高薪挖AI技术人才机遇直接摆在眼前有往AI方向发展或者本身有后端编程基础的朋友直接冲AI大模型应用开发转岗超合适就算暂时不打算转岗了解大模型、RAG、Prompt、Agent这些热门概念能上手做简单项目也绝对是求职加分王给大家整理了超全最新的AI大模型应用开发学习清单和资料手把手帮你快速入门学习路线:✅大模型基础认知—大模型核心原理、发展历程、主流模型GPT、文心一言等特点解析✅核心技术模块—RAG检索增强生成、Prompt工程实战、Agent智能体开发逻辑✅开发基础能力—Python进阶、API接口调用、大模型开发框架LangChain等实操✅应用场景开发—智能问答系统、企业知识库、AIGC内容生成工具、行业定制化大模型应用✅项目落地流程—需求拆解、技术选型、模型调优、测试上线、运维迭代✅面试求职冲刺—岗位JD解析、简历AI项目包装、高频面试题汇总、模拟面经以上6大模块看似清晰好上手实则每个部分都有扎实的核心内容需要吃透我把大模型的学习全流程已经整理好了抓住AI时代风口轻松解锁职业新可能希望大家都能把握机遇实现薪资/职业跃迁这份完整版的大模型 AI 学习资料已经上传CSDN朋友们如果需要可以微信扫描下方CSDN官方认证二维码免费领取【保证100%免费】

相关新闻

【试读】企业级项目五:金融信贷实时数仓建设

【试读】企业级项目五:金融信贷实时数仓建设

帮助很多同学掌握了金融数仓项目的整体建设思路,但在真实企业中,仅有离线数仓其实远远不够,因为金融业务天然对实时性有极高要求。 例如: 当一个用户发起贷款申请时,风控系统需要在几百毫秒内完成风险评估&#xff1…

2026/8/6 8:42:07 阅读更多 →
人工智能与国家安全:机遇与挑战

人工智能与国家安全:机遇与挑战

人工智能(AI)的浪潮不仅改变了我们的工作方式、沟通渠道和信息获取途径,更在以惊人的速度颠覆着国家的安全防护模式。对于国家安全和情报机构来说,AI是一座巨大的宝库:它能以人类分析师无法企及的规模和速度&#xff0…

2026/8/6 8:42:07 阅读更多 →
自动驾驶仿真利器Carla:从游戏引擎到算法测试沙盒

自动驾驶仿真利器Carla:从游戏引擎到算法测试沙盒

1. 从游戏引擎到自动驾驶仿真:Carla的诞生与定位 如果你正在研究自动驾驶,或者对机器人仿真感兴趣,那么“Carla”这个名字你大概率不会陌生。它不是一个简单的游戏,也不是一个纯粹的物理引擎,而是一个专门为自动驾驶研…

2026/8/6 8:41:07 阅读更多 →

最新新闻

芯天下 3.3V 4Gbit 并行 NAND Flash (XT27G04ABFIGA)

芯天下 3.3V 4Gbit 并行 NAND Flash (XT27G04ABFIGA)

型号:XT27G04ABFIGA | 品牌:芯天下(XTX) 关键词:4Gbit、x16位宽、VFBGA67、工业级-40~85℃、SLC一、为什么关注这颗料在嵌入式存储选型中,容量、封装、接口带宽和功耗这几项指标往往互相制约。想要大带宽就…

2026/8/6 9:43:41 阅读更多 →
英雄联盟智能助手Seraphine:免费实时战绩查询与BP决策优化终极指南

英雄联盟智能助手Seraphine:免费实时战绩查询与BP决策优化终极指南

英雄联盟智能助手Seraphine:免费实时战绩查询与BP决策优化终极指南 【免费下载链接】Seraphine 英雄联盟战绩查询工具 项目地址: https://gitcode.com/gh_mirrors/se/Seraphine 还在为英雄联盟对局中信息不足而烦恼吗?想要在BP阶段就掌握对手实力…

2026/8/6 9:43:41 阅读更多 →
Dockerfile指令全解与生产级最佳实践手册

Dockerfile指令全解与生产级最佳实践手册

1. 项目概述:为什么你需要一份详尽的Dockerfile指令手册 如果你刚开始接触Docker,可能会觉得Dockerfile就像一份神秘的菜谱,里面写满了各种看不懂的“指令”。而当你试图从网上找资料时,往往发现要么是零散的片段,要么…

2026/8/6 9:43:41 阅读更多 →
芯天下XT27G04ABFIGA:这就那个老老实实干活的4Gb NAND

芯天下XT27G04ABFIGA:这就那个老老实实干活的4Gb NAND

做嵌入式开发的朋友应该都有体会:几百页的NAND Flash规格书看着就头大。最近抽空啃完了一份XTX芯天下的SPI NAND规格书,型号XT27G04ABFIGA,VFBGA67封装,x16位宽。把值得记录的技术要点整理成笔记,分享出来供大家参考。…

2026/8/6 9:43:41 阅读更多 →
法系正红丝绒哑光口红找代工厂,别被“同款料体”忽悠了质地和色号

法系正红丝绒哑光口红找代工厂,别被“同款料体”忽悠了质地和色号

最近好几拨做私域和实体集合店的老板,拿着一张法系口红的海报图,进门第一句就是“我要法系高定丝绒正红架构的烂番茄色,能不能做?”。能做,当然能做。但我要把话撂在前面:丝绒哑光这个品类,是口…

2026/8/6 9:42:40 阅读更多 →
重庆登报挂失怎么操作?重庆登报挂失哪个报社最便宜?

重庆登报挂失怎么操作?重庆登报挂失哪个报社最便宜?

前言很多重庆市民初次办理挂失,会纠结完整操作步骤、办理材料、报社价格、合规报纸筛选难题,大家可以借助慧办好小程序一站式处理登报业务,该平台商标注册号56497105,商标注册时间2021年05月31日,工信部ICP备案号为豫I…

2026/8/6 9:42:40 阅读更多 →

日新闻

深入解析LimboAI C++内核:架构设计与性能优化实战

深入解析LimboAI C++内核:架构设计与性能优化实战

1. 项目概述:为什么我们需要深入LimboAI的C内核?如果你是一名使用Godot引擎的游戏开发者,尤其是对AI行为逻辑有较高要求的项目,那么LimboAI这个名字你大概率不会陌生。它作为Godot 4生态中一个备受瞩目的行为树与状态机插件&#…

2026/8/6 0:00:06 阅读更多 →
Unity 2D游戏敌人AI系统:基于PlayMaker状态机与2D Toolkit的实战开发

Unity 2D游戏敌人AI系统:基于PlayMaker状态机与2D Toolkit的实战开发

1. 项目概述与核心思路大家好,我是老张,一个在游戏开发一线摸爬滚打了十多年的老码农。今天咱们接着聊《空洞骑士》风格2D动作游戏的Demo制作。上一期我们搭好了基础框架,处理了角色移动和碰撞,这一期,我们要让游戏世界…

2026/8/6 0:00:06 阅读更多 →
被动防火门市场前景发展趋势

被动防火门市场前景发展趋势

被动防火门依靠材质结构、密闭构造阻隔烟火蔓延,无需电控启动,是建筑被动消防系统核心构件,行业依托新规管控、城市更新、工业安全升级迎来稳定扩容,整体朝着合规化、专项化、低碳化、智能化方向发展。现阶段 GB12955‑2024 新版国…

2026/8/6 0:00:06 阅读更多 →

周新闻

最大流算法详解:从水管网络到Ford-Fulkerson与Dinic实战

最大流算法详解:从水管网络到Ford-Fulkerson与Dinic实战

1. 从水管网络到最大流:一个核心问题的诞生想象一下,你是一个城市供水系统的总工程师。你的城市有多个水源(水库),需要通过一个复杂的地下管道网络,将水输送到各个居民区。每条管道都有其最大通水能力&…

2026/8/5 15:00:43 阅读更多 →
基于Springboot的企业门户网站(源码+LW+调试文档+讲解)

基于Springboot的企业门户网站(源码+LW+调试文档+讲解)

温馨提示:本人主页置顶文章(点我)开头有 CSDN 平台官方提供的学长联系方式的名片! 温馨提示:本人主页置顶文章(点我)开头有 CSDN 平台官方提供的学长联系方式的名片! 温馨提示:本人主页置顶文章(点我)开头有 CSDN 平台…

2026/8/5 13:13:56 阅读更多 →
MATLAB xcorr函数详解:从互相关原理到四大实战应用

MATLAB xcorr函数详解:从互相关原理到四大实战应用

1. 从一次信号“找茬”说起:为什么我们需要互相关几年前,我在处理一组声学传感器数据时遇到了一个棘手的问题。我有两个麦克风记录了一段相同的音频信号,理论上它们接收到的声音波形应该非常相似,只是由于麦克风位置不同&#xff…

2026/8/5 10:20:36 阅读更多 →

月新闻

免费解锁百度网盘SVIP加速:macOS用户必备的下载提速终极指南

免费解锁百度网盘SVIP加速:macOS用户必备的下载提速终极指南

免费解锁百度网盘SVIP加速:macOS用户必备的下载提速终极指南 【免费下载链接】BaiduNetdiskPlugin-macOS For macOS.百度网盘 破解SVIP、下载速度限制~ 项目地址: https://gitcode.com/gh_mirrors/ba/BaiduNetdiskPlugin-macOS 还在为百度网盘macOS版的龟速下…

2026/8/5 23:28:39 阅读更多 →
终极ncmdump指南:3分钟实现网易云NCM音乐解密与格式转换

终极ncmdump指南:3分钟实现网易云NCM音乐解密与格式转换

终极ncmdump指南:3分钟实现网易云NCM音乐解密与格式转换 【免费下载链接】ncmdump 项目地址: https://gitcode.com/gh_mirrors/ncmd/ncmdump 还在为网易云音乐下载的NCM格式文件无法在其他播放器播放而烦恼吗?ncmdump解密工具帮你轻松解决这个困…

2026/8/5 21:00:14 阅读更多 →
HarmonyOS 应用开发《掌上英语》第81篇: 智能体卡片:为英语学习 App 打造桌面级学习助手

HarmonyOS 应用开发《掌上英语》第81篇: 智能体卡片:为英语学习 App 打造桌面级学习助手

AgentCard 智能体卡片:为英语学习 App 打造桌面级学习助手适用平台:HarmonyOS 7.0 (API 26 Beta)一、引言 HarmonyOS 7.0(API 26 Beta)新增了 AgentCard 智能体卡片能力,这是继 HMAF(鸿蒙智能体框架&#x…

2026/8/5 23:46:51 阅读更多 →