我不是狐狸,我是那Harness Engineering

0 阅读4分钟

Harness Engineering 介绍

Harness Engineering 是 2025-2026 年兴起的 AI 工程新范式。其核心在于为 AI Agent 构建约束(Constraints)反馈(Feedback)控制系统(Control Systems) ,旨在让 AI 在人类设定的边界内可靠、高效地工作。

 核心理念:从“编写代码”转向“设计让 Agent 可靠运行的环境”。


1. 定义与起源

Harness Engineering(马具/驾驭工程)由 HashiCorp 联合创始人 Mitchell Hashimoto 在 2026 年初提出。它标志着软件工程核心竞争力的重大转移:超越了早期的提示词工程 (Prompt Engineering) 和上下文工程 (Context Engineering)。

“Harness” 的精准隐喻:  驾驭不等同于控制。真正的驾驭工程师不会尝试“硬编码” AI 的每一步行为,而是建立一套框架、约束和引导机制,让 AI 在其中自由发挥能力,同时保持可预测性和可靠性。

[!IMPORTANT] Mitchell Hashimoto 的核心观点:“每当你发现 Agent 犯了一个错误,就花时间设计一个解决方案,使 Agent 永远不再犯同样的错误。”


2. 演进逻辑:从 Prompt 到 Harness

随着 AI 处理任务复杂度的增加,工程重点经历了三个阶段的演进:

图片

阶段核心关注点隐喻解决的问题
Prompt Engineering (2023)说什么指令如何通过提示词让 AI 交付单次结果。
Context Engineering (2025)知道什么信息如何通过 RAG 和动态上下文构建让 AI 获得所需信息。
Harness Engineering (2026)在什么环境做事环境/闭环如何构建约束、反馈与控制系统,让 Agent Reliable 执行任务。

3. Harness Engineering 的三大支柱

根据业界共识(如 Thoughtworks 专家 Birgitta Böckeler 的总结),Harness 由以下三个核心维度构成:

维度一:上下文工程 (Context 2.0)

不再只是简单地填充窗口,而是确保 Agent 在正确的时机获得正确粒度的信息

  • 渐进式披露 (Progressive Disclosure) :将隐性知识转化为结构化信息。通过层级目录(如 docs/ARCHITECTURE.md)按需引导,而非盲目堆砌。
  • 运行时数据接入:提供日志、指标和环境映射,允许 Agent 使用 LogQL/PromQL 等工具进行动态查询。
  • 直接感知环境:通过 CDP 等协议让 Agent 操作浏览器,实现原生的 Bug 重现或 UI 验证。

维度二:架构约束 (Architectural Constraints)

将“代码品味”(命名、依赖原则、边界等)编码为可强制执行的规则,实现“只在边界内行事”。

  • AI 友好型 Linter:传统的错误消息是给人看的,Harness 时代的 Linter 消息直接包含修复建议,便于 Agent 实现自主闭环。
  • 双轨审计机制:引入专门的“审计 Agent”对主开发 Agent 的代码提交进行实时审查和拦截。

维度三:熵管理与反馈回路 (Entropy Management)

防止系统随时间推移而腐化,保障长期的可维护性。

  • 反熵 Agent (Anti-Entropy) :定期扫描代码库,自动清理过时文档、漂移模式和无效依赖。
  • 实时演进:通过持续的监控与自动化验证修复系统缺陷,驱动 Agent 持续进化。

4. 核心实践:OpenAI 的 Codex 极端实验

OpenAI 曾记录过一个极具代表性的实践案例:5 名工程师在 5 个月内交付了 100 万行代码,且其中包含 0 行人类手写代码。

关键成功因素:

  1. 倒逼机制 (Forcing Function) :全团队禁止直接编写代码,迫使所有人集中精力构建 Harness(基础设施)。
  2. 角色彻底转型:工程师从 Code Writer 进化为 Environment Designer。其日常工作由写逻辑转变为维护 AGENTS.md、编写自定义 Linter 以及建立可观测性栈。
  3. 极高吞吐量:平均每人每日交付 3.5 个 PR,且大部分 Code Review 是由 Agent 对 Agent 完成的。

5. 开发者如何构建自己的 Harness?

  1. 精炼 AGENTS.md 索引
    • 目录化:根目录文件应少于 100 行,仅作为导航。
    • 模块化:将架构、设计和安全约束拆分到 docs/*.md
    • 层级化:支持子目录级的覆盖规则(如 AGENTS.override.md)。
  2. 闭环反馈回路
    • 接入自动触发的测试、Lint 和验证工具。
    • 优化反馈信息的格式,使其更易被 AI 解析和执行。
  3. 优化工作流习惯
    • 热启动:下班前启动 Agent 进行深度调研或并行探索。
    • 职能分离:将模糊需求明确拆分为“规划 (Planning)”和“执行 (Execution)”两个阶段。
  4. 建立评估体系 (Evals)
    • 超越简单的 CI,建立一套针对 Agent 意向和产出质量的系统化评估工具。

总结

Harness Engineering = 用工程手段“驯服”大模型,将 AI 转化为可靠的产品。

软件工程团队的核心竞争力,正在从“谁的代码写得好”转向“谁能设计出更好的 Agent 运行环境”。

 相关链接