Harness Engineering 业内实践:谁在做,具体做了什么

概览

2026 年,Harness Engineering 从概念迅速落地。本文梳理各家公司和开源项目的具体实践——不讲理论,只讲"谁做了什么,效果如何"。


一、Superpowers —— 最火的开源 Harness 框架

创建者:Jesse Vincent(Request Tracker 作者、Perl 6 负责人、Keyboardio 联合创始人、K-9 Mail / Thunderbird for Android 开发者),由 Prime Radiant 团队维护。

规模:GitHub 137,825 stars,11,649 forks(MIT 协议)

核心理念:AI agent 是"强大但缺乏纪律的初级工程师"。与其建议最佳实践(agent 会在压力下忽略),不如用硬性门控物理阻止跳步。类比:"限速牌 vs 减速带——一个告知,一个物理阻止。"

七阶段工作流

阶段做什么硬性门控
1. Brainstorming探索上下文、提问、提出 2-3 种方案设计未批准前禁止写任何代码
2. Git Worktrees创建隔离工作区、新分支、验证干净测试基线自动隔离
3. Writing Plans拆分为 2-5 分钟的小任务,附带精确文件路径和验证步骤计划假设执行者"零上下文、品味可疑"
4. Subagent 执行每个任务分派独立 agent,仅接收任务描述,不接收完整对话历史每任务后两阶段审查(规格合规 + 代码质量)
5. TDD铁律:没有失败测试就不写生产代码。先写了代码?删掉,重来。Red-Green-Refactor 强制执行
6. Code Review独立 subagent 审查,永远看不到实现者的会话历史(防止偏见)严重问题阻断进度
7. 收尾验证所有测试通过,提供 merge/PR/保留/丢弃选项自动清理 worktree

关键机制

  • 上下文隔离:Subagent 只接收任务上下文,永远不接收完整对话历史,防止"上下文污染"
  • 严重性分级阻断:Code review 按严重性分级,Critical 直接阻断
  • 跨平台兼容:Skills 是纯 Markdown 文件,支持 Claude Code、Cursor、Codex CLI、Gemini CLI、GitHub Copilot CLI 等

实际成果

  • Chardet 7.0.0(字符编码检测库)完全用 Superpowers 开发:41x 性能提升,96.8% 准确率,测试覆盖 2,161 文件、99 种编码
  • agent 可以自主工作数小时不偏离计划

二、OpenAI Codex —— 百万行零手写

  • 小团队 5 个月内用 Codex agent 生成约 100 万行生产代码,约 1,500 个自动化 PR,零行人类手写
  • 构建速度约为手写的 10 倍
  • 强调"声明式意图":人类指定"做什么",agent 决定"怎么做"
  • 核心 harness:AGENTS.md(约 100 行的目录文件) + 机器可读 docs/ 目录 + 自定义 linter 强制分层架构
  • Agent-to-Agent Code Review:agent 相互审查代码,迭代直到通过,仅在架构决策/安全敏感/产品方向问题时升级到人类
  • 开源了 codex-plugin-cc(2026.3.30)——在 Claude Code 内调用 Codex 的官方插件。文章评论:"OpenAI 在竞争对手工具内发布插件,证明护城河是 harness 而非 model"
  • 2026.2 发布 25 小时不间断压力测试

三、Anthropic —— 三 Agent 架构 + 上下文重置

三 Agent 架构(InfoQ, 2026.4)

Agent职责
Planning Agent任务分解与策略制定
Generation Agent执行实际开发工作
Evaluation Agent评估输出质量、提供反馈
  • 5-15 轮迭代,每次运行可达 4 小时
  • 评估者与生成者分离是关键设计:"将做事的 agent 和评判的 agent 分开,是一个强有力的杠杆"
  • 前端设计评估使用 4 个维度:设计质量、原创性、工艺、功能性
  • 评估者通过 Playwright MCP 直接操作实时页面

上下文管理创新

  • 拒绝了 context compaction(压缩会让模型过于谨慎)
  • 改用上下文重置 + 结构化交接:通过 claude-progress.txt 和 git 历史跨会话传递状态
  • 引入"上下文焦虑"概念:上下文窗口填满时输出质量退化

Claude Code 的 Harness 表现

  • 仅改 harness 不改模型,Terminal Bench 2.0 排名从 Top 30 跃升至 Top 5
  • Opus 4.6 在 Claude Code 中排 #33,在另一个 harness 中排 #5(±4 位波动),证明 harness 对基准测试的影响之大
  • 日均约 135,000 次 GitHub 公共提交(约占全部公共提交的 4%)

四、Stripe —— Minions 系统

  • Pre-push hooks 运行启发式选择的 linter
  • 反馈左移策略:将检查尽量提前到代码提交前
  • Blueprint 机制:将反馈传感器集成到 agent 工作流中,形成标准化的执行蓝图

五、Rakuten —— 超大代码库长时间自主运行

  • Claude Code 在 1,250 万行代码库上自主运行 7 小时
  • 达到 99.9% 准确率

六、LangChain —— 模型无关的量化验证

  • 核心等式:Agent = Model + Harness
  • 量化证明:仅优化 harness(不换模型),Terminal Bench 2.0 准确率从 52.8% 提升至 66.5%(+13.7 个百分点)
  • 工具栈:LangGraph(编排) + LangSmith(可观测性)
  • 开源 deepagents 库探索:数百个并行 agent 协作、agent 分析自己的 trace 发现 harness 级故障、动态即时工具/上下文组装

七、Vercel —— 做减法的智慧

  • 移除了 80% 的 agent 工具
  • 结果:更少步骤、更少 token、更快响应
  • 启示:工具不是越多越好,过多工具会让 agent 进入"笨区"(dumb zone)

八、Manus —— 快速迭代

  • 6 个月内 重构 harness 5 次
  • 每次重构都是为了移除不再适用的假设
  • 体现了 Phil Schmid 的原则:"Build to Delete"——harness 代码必须是可丢弃的

九、Linear —— 从 Issue Tracking 到 Agent 入口

  • 2026.3 宣称"issue tracking 已死"
  • Coding agent 已安装在 75% 的企业工作区
  • Deeplink 将 issue 上下文直接注入 Claude Code / Cursor / Copilot 作为预填充 prompt
  • Agent 工作量 3 个月内增长 5 倍

十、HumanLayer —— 五个配置杠杆的实战经验

他们发现的反直觉结论

ETH Zurich 研究:

  • LLM 自动生成的 AGENTS.md 反而损害性能,且多花 20%+ token
  • 人工编写的仅提供约 4% 改善
  • 代码库概览和目录列表没有帮助
  • Agent 在上下文指令上多花了 14-22% 的推理 token 却没提升解决率

实践建议:

  • AGENTS.md 保持 60 行以内,精心手写
  • 用渐进式披露替代全面文档化
  • 用现有 CLI 工具替代 MCP server(节省 token)——他们用轻量 CLI 包装器 + CLAUDE.md 中 6 个用例示例替代了 Linear MCP server

什么有效 vs 什么无效

无效有效
预先设计理想 harness从简单开始,出错后再加配置
预防性安装大量 skills/MCP设计-测试-迭代-丢弃无用组件
会话结束运行 5 分钟以上的完整测试套件吞掉输出只暴露错误,成功保持沉默
微调 subagent 工具权限(造成 tool thrash)从全功能开始,逐步缩减暴露功能

十一、OpenDev —— 学术级 Harness 架构(arXiv 论文)

首个开源终端原生 coding agent 的完整技术报告,贡献了多项工程实践:

五层纵深防御

层级机制
1Prompt 级护栏
2Schema 级工具限制(subagent 看不到不允许的工具)
3运行时审批系统(手动/半自动/自动)
4工具级验证(危险模式检测、超时强制)
5用户自定义生命周期 hooks

五阶段自适应上下文压缩

  1. 摘要工具输出文本
  2. 将旧结果压缩为关键发现
  3. 将情景记忆聚合为学习模式
  4. 将对话轮次摘要为决策记录
  5. 淘汰最旧轮次,保留近期工作

其他亮点

  • 9 遍模糊匹配文件编辑(精确行号→精确文本→模糊→空白变体→语义→前缀→后缀→近似→安全追加)
  • 6 阶段 Shell 执行管道(语法检查→危险模式检测→预执行审批→超时执行→服务器检测→后处理)
  • 双内存架构:情景记忆(历史)vs 工作记忆(当前任务)
  • 关键常量:MAX_ITERATIONS=30,MAX_CONTEXT_TOKENS=120,000,压缩起始比=75%

十二、Epsilla —— 语义图谱方案

  • 提出 30-60-90 天实施路线图:
    • 0-30 天:AGENTS.md 转为结构化 docs/ 目录 + 3-5 条自定义 lint 规则
    • 31-60 天:agent 直接访问日志/指标/trace + 关键用户旅程转为可执行验收场景
    • 61-90 天:自动扫描模式漂移 + 质量仪表板 + 将人工 review 反馈编码为自动化规则
  • 语义图谱:超越简单向量相似度,映射数据/用户/工具之间的关系,为 agent 提供"一致的世界模型"
  • 核心原则:"先实现可检测性,再授予自主权;先建立约束,再优化吞吐量"

十三、生态工具链

编排与终端

工具功能
Conductor (gstack)并行运行多个 Claude Code 会话(Y Combinator 的 Garry Tan 日常跑 10-15 个并行 agent sprint)
Superset每个 agent 一个 git worktree 隔离,无共享可变状态(2026.3 发布)
cmuxmacOS 原生终端,每 agent 状态指示器
Claude ManagerRust TUI,按项目/任务层级组织会话

质量与审查

工具功能
CodeRabbit审查 1,300 万+ PR,连接 200-300 万仓库,发现 7,500 万个缺陷
Taskless将 code review 纠正转为确定性语法树规则(tree-sitter),25+ 语言,每 PR 运行
Claude-Mem自动捕获会话活动、AI 压缩、注入未来会话(44K+ stars)

协作与信号

工具角色
GitHub代码源头(Claude Code 日均约 135K 公共提交)
Linear规划层(deeplink 直接注入 agent)
Slack触发与协调(MCP 集成路由消息到 agent PR)
Sentry可观测性(错误追踪 + LLM 专用监控:agent 运行/工具调用/token 用量/对话回放)
Cloudflare Agents运行时(Agents SDK + Durable Objects,7B token/天工作负载成本降低 77%)

十四、自主权分级模型

越来越多团队采用分级自主权:

级别场景合并前要求
完全自主修错字、加测试、依赖升级CI + 自动审查
轻度审查已有模式内的功能开发CI + 自动审查 + 人类速览(<5 分钟)
完整审查新端点、数据模型、认证/支付CI + 自动审查 + 人类深入审查
人类主导Schema 迁移、基础设施、安全关键人类编写或共同编写,agent 辅助

十五、关键数字汇总

公司/项目指标
OpenAI Codex100 万行代码、1,500 PR、10x 速度、25h 压力测试
Rakuten1,250 万行代码库、7 小时自主、99.9% 准确率
LangChain仅改 harness +13.7 百分点(52.8% → 66.5%)
Claude Code日均 135K GitHub 提交;harness 改进 Top 30 → Top 5
Superpowers137K stars;Chardet 41x 性能提升
Vercel移除 80% 工具后性能提升
Linearagent 安装率 75% 企业工作区;工作量 3 月增长 5x
CodeRabbit1,300 万 PR、7,500 万缺陷
Cloudflare7B token/天成本降低 77%

总结:三条共识

  1. Harness > Model —— 所有实践者都发现,优化 harness 的回报远大于换更好的模型
  2. 约束必须是结构性的,不能靠说 —— hooks、CI、类型系统、linter 优于 prose 指令
  3. 从简单开始,出错再加 —— 预防性的复杂 harness 不如实战中迭代出来的精简 harness

参考来源

Comments (0)

No comments yet

imfht
April 6, 2026