Agent harness 有了统一协议,但先别把它当万能插头
UHP 和 HarnessRouter 想把 Codex、Claude Code、Gemini CLI 等塞进同一个后端接口。官方基准说换 harness 能省 25% 到 64%,社区却在问:按通过任务算还省吗,隔离和审批怎么办。
Agent harness 也有统一协议了。开发者做了 UHP(Unified Harness Protocol),开源实现叫 HarnessRouter。它想解决的问题很具体:产品后端接多个 harness 时,不用为每个 harness 重写任务执行、会话、流式输出、文件回传和失败处理。
图里左边是直接集成:产品后端分别对接 Codex、Claude Code、Gemini CLI,各自处理沙盒、流式、输出格式。右边是 HarnessRouter,把沙盒、文件、恢复、跟踪、会话、流式统一收口,再分发到 24 种工具。素材来源:Akshay 的推文。
工作方式不复杂。产品后端发一个任务,带 harness_id;HarnessRouter 在独立 session 里启动选中的 harness;harness 跑自己的 agent loop,把进度流回来;文件、产物、失败信息和最终输出走同一个接口返回。

上图来自 HarnessRouter 的 GitHub。无 Router 时,4 个 harness 要担 36 个集成责任,加到 5 个变 45 个;有 Router 后,产品侧保持一个集成。这个账很好算,痛点也真实:每接一个 harness,任务执行、session、流式、文件、恢复、输出格式都要再处理一遍。
HarnessRouter 目前列了 30 个 harness bases,包括 Codex、Claude Code、Hermes、Pi、DeepSeek Harness、OpenCode、Kilo Code、Qwen Code、Gemini CLI、Cline、goose、Aider、OpenHands 等。它提供 OpenAI Responses 兼容 API,支持持久会话、流式进度、文件与产物、取消和结构化失败。阿里云 Qoder 也接入了 UHP,可以作为 HarnessRouter API 的 agent 后端。
官方基准里有两个数字很抓眼。固定模型、只换 harness,在若干医疗合规任务上成本降了 25% 到 64%。同时换 harness 和模型,最高与最低成本配置之间差 99.8%。
但成本这件事,评论区比基准图冷静。Max Petrusenko 指出,便宜 harness 如果完成任务更少,25% 到 64% 的降幅就不成立,应该看每个通过任务的成本。Solar Nomad 用自家 reel 任务举例:每次运行 2.55 美元,每个被接受的 reel 要 5.74 美元,因为 9 次里扔了 5 次。这个口径比单次运行价更接近生产。
Steven 的观点更靠底层:统一接口最该先定清楚的,是退出契约。什么算完成,部分失败返回什么,成本怎么报。没有这些,路由只是在不同的意外之间切换。
隔离也被点名。Saeid Sisakhti 提醒,HarnessRouter 的 session 是独立 OS 用户和独立 workspace,不是独立容器,Runner 还保留创建这些用户的权限。对会跑任意 shell 的 harness,这层隔离看起来偏薄。他问是否有每 session 一个容器的路线图。
审批流同样没统一。有人问 harness 中途停下来等用户授权怎么办,Akshay 回复说目前没有统一的 pause/approve/resume 流程,HarnessRouter 更偏向自主运行。Tanul Mittal 还问,UHP 是保留每个 harness 自己的权限模型,还是压到最低公共权限。这个问题没有在素材里看到明确答案。
也有一个被低估的用法。SrinivasPadmanabhuni 说,共享 harness 接口最适合当测试夹具:同一套任务跑两个 harness,接口统一后,harness 成了唯一变量,然后逐任务看哪些翻转、工具调用差多少、重试和超时差在哪。这个用法比急着做生产路由更实在。
UHP 降低的是接入成本,不自动解决质量、成本口径、隔离和审批。想拿它做产品后端,先用自己的一小套任务跑每个候选 harness,记录完成率、单通过任务成本、失败类型、隔离要求和审批需求。毕竟协议能统一接口,统一不了每个 harness 干完活的靠谱程度。
发布时间: 2026-11-04 06:42