2026 年,AI 编程工具的代码生成能力已跨过实用门槛。以高德大模型应用平台的实践数据为例,出码率已从 53% 提升至 80%-90%——这一数据看起来接近“自动化”的理想状态。
但一个反直觉的困局随之浮现:项目交付周期并未等比例缩短。编码快了,但 Code Review 慢了;出码多了,但返工也多了。这揭示了一个被低估的真相:出码率不等于交付率,编码环节仅占研发全链路的 20%-30%,即使编码效率翻倍,整体提效也有限。
更深层的问题在于,AI 生成的代码往往缺乏对存量应用隐性依赖、历史架构决策的认知,甚至可能因“过早宣布胜利”或“上下文污染”而导致上线故障。行业共识正在形成:AI 编程必须从“个人技能”升级为“团队级工程能力”,从“氛围编程”(Vibe Coding)进化为“规范驱动、工程治理”的研发范式。
SDD(规范驱动开发)与 Harness Engineering 的组合,正是这一演进路径的核心技术框架。
在传统开发中,代码是唯一的“事实来源”,PRD 和设计文档服务于代码,往往在上线前就已过期。SDD 颠覆了这一结构:规范成为主要工件,代码服务于规范。
这一范式转移的核心价值在于:当需求变更时,开发者不再需要逐行修改代码,而是修改“规范”,随后由 AI 工具根据规范重新生成、验证并更新底层代码。维护软件意味着演进规范,而不仅仅是修补代码。
Microsoft Learn 与 GitHub Spec Kit 将 SDD 实践归纳为四个递进阶段:
验收标准是 SDD 的“灵魂”。只有当规范精确到足以生成工作系统时,“意图与实现之间的鸿沟”才能被消除。
微软官方文档指出,三种趋势使 SDD 对企业团队至关重要:
在“棕地”(Brownfield)场景(存量应用)中,SDD 要求通过“宪法”记录现有架构模式和约束,新功能规范需确认现有基础设施和集成点。如果某条架构约定不在代码库中以机器可读的形式存在,对 AI Agent 来说它就不存在。
Mitchell Hashimoto(HashiCorp 联合创始人)对 Harness Engineering 的定义极为精炼:“每当你发现 AI Agent 犯了一个错误,你就花时间去工程化一个解决方案,让它再也不会犯同样的错。”
OpenAI 工程团队的实践进一步扩展了这一概念:在 5 个月内,约 100 万行代码、1500 个 PR 全部由 Agent 生成,但人类工程师的工作转移到了定义产品规格、设计约束、搭建反馈系统等“支撑结构”上。
结合高德与得物技术的落地实践,一套成熟的 Harness 体系包含四个关键模块:
支柱一:结构化上下文与“地图式”索引
Agent 在运行时无法访问存储在 Google Docs、聊天记录或人脑中的知识。Harness 要求在代码库内建立结构化的 docs/、product-specs/、design-docs/ 目录。关键在于提供“地图”而非“百科全书”——通过一个精简的顶层索引(如 AGENTS.md 控制在 ~100 行),让 Agent 按需渐进式披露深层信息,避免上下文过载。
支柱二:Agent 专业化与架构约束 赋予所有权限的通用 Agent 更易出错。实践建议分离 Planner、Generator、Evaluator 角色。得物技术的 Harness 实践更具体:让 AI“模仿”而非“凭空创造”——在提示词中显式指定参考文件、复用数据结构、模仿分层方式(Controller/Service/Repository),将 AI 的创作空间约束在已有的工程范式内。
支柱三:结构化执行与“反向验证” 不让 Agent 在未经批准的计划前写代码。理想执行流为:理解 → 规划 → 执行 → 验证。在验证环节,通过自定义 Linter、结构测试强制执行架构规则(如“UI 层禁止直接访问数据库层”)。同时,建立反馈回路:Agent 写完代码→自动运行测试→失败→读取错误日志→自我修正并重试;人类修复的经验固化为新规则,防止再
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。