按 LangChain 2026 年 9 月官方分类,Agent Harness 是内置工具、提示词和子 Agent 等能力的“batteries-included”框架;Coding Agent Harness 进一步把代码库上下文、文件与 Shell、权限、执行循环和验证组织成可运行系统。选型应先区分成品 Harness、Harness SDK、Agent Framework 与 Runtime,再比较入口、模型自由度、沙箱、可观测性、团队治理和迁移成本。

本文覆盖 30 个现役候选、邻接框架和迁移项,不把 Harness 等同于 DeepSeek Harness,也不把底层模型能力当成 Harness 能力。价格和套餐变化快,不纳入静态排名;所有产品能力和迁移状态以 2026 年 9 月 15 日可访问的官方页面、官方文档或官方仓库为准。


一句话结论:先选 Harness 类型,再选产品

Coding Agent Harness 没有脱离场景的“最强”,只有与工作入口、权限边界和交付方式匹配的方案。

  • 主要在终端改仓库:先比较 Claude Code、Codex、Gemini CLI、OpenCode、Qwen Code、Aider、Goose、Amp。

  • 主要在编辑器内交互:先比较 Cursor、Kiro、Cline、Continue、Zed Agent、JetBrains Junie。

  • 需要 Issue 到 PR 的异步执行:比较 GitHub Copilot cloud agent、OpenHands、Devin、Jules。

  • 需要嵌入自己的产品:先比较 Claude Agent SDK、Deep Agents、Pydantic AI Harness、Microsoft Agent Framework Harness Agent,再按需下沉到 Agent Framework 或 Runtime。

  • 需要研究可替换的运行时组成:把 DeepSeek Harness 作为插件化实验候选,而不是所有 Harness 的代名词。

1. Harness 到底是什么

模型负责生成下一步,Harness 负责决定模型看见什么、能调用什么、如何继续以及怎样验收。 一个完整 Coding Agent Harness 通常包含八层:

  1. 模型适配层:认证、模型选择、流式输出、重试和上下文窗口。

  2. 上下文层:仓库检索、项目规则、压缩、记忆和会话恢复。

  3. 工具层:shell、文件编辑、搜索、浏览器、MCP、IDE 与 Git。

  4. 权限层:审批、沙箱、网络、目录范围和敏感操作策略。

  5. 执行循环:规划、行动、观察、纠错、停止条件和预算。

  6. 协作层:子 Agent、后台任务、任务队列和结果汇总。

  7. 验证层:测试、lint、diff 审查、代码评审和回滚。

  8. 交互层:CLI、IDE、桌面端、Web、移动端和 API。

Anthropic 官方文档把 Claude Code 定义为能读取代码库、编辑文件、运行命令并集成开发工具的 agentic coding tool;OpenAI 官方文档把 Codex CLI定位为在终端和脚本中使用 Codex 的入口。两者底层模型不同,但 Harness 层的核心问题相同:如何组织上下文、工具、权限和完成条件。

2. 先排除三个常见误区

Harness、模型和 API 服务商是三个独立选型,不能混成一张“谁更强”排行榜。

模型强,不代表 Harness 一定强

同一个模型放进不同 Harness,会因为系统指令、上下文检索、工具 schema、审批策略、错误反馈和验证循环而表现不同。真实评测必须固定模型、仓库、任务、权限和预算。

支持很多模型,不等于可替换成本低

替换模型还会影响工具调用格式、思考预算、上下文长度、图像输入、缓存、错误码和价格。选型表里的“多模型”只能作为入口条件,不能代替兼容性测试。

能自动改代码,不等于能自治交付

文件编辑只是执行循环的一步。自治交付还需要环境初始化、依赖安装、测试、失败恢复、Git 操作、权限控制、结果汇报和人工接管。

3. 30 个 Harness、框架与迁移项全景对比

下面 30 项分属五种产品形态,横向比较时应先在同类中筛选。 “模型策略”描述控制倾向,不代表任何模型都能做到完全等价;邻接框架和迁移项用于划清边界,不应与现役成品 Agent 直接打分。

类别

方案

主要入口

模型策略

主要选型信号

成品终端 Agent

Claude Code

CLI、IDE、桌面、Web

Claude 为核心,部分本地入口支持第三方 provider

多入口一致性、CLAUDE.md、Hooks、Skills、MCP、子 Agent

成品终端 Agent

Codex

CLI、IDE、桌面、云端

OpenAI 模型为核心

AGENTS.md、沙箱与审批、Skills、MCP、并行任务、代码审查

成品终端 Agent

Gemini CLI

CLI

Gemini 为核心

开源 CLI、终端工作流、扩展与 MCP、Google 生态

开放终端 Agent

OpenCode

TUI、CLI、桌面、IDE、Web

多 provider

开源、provider 配置、Agents、权限、LSP、MCP、SDK、Server、插件

开放终端 Agent

Qwen Code

CLI、IDE 集成、SDK

Qwen 优先,兼容多种 API 协议

开源、Skills、子 Agent、无头模式、开发者 SDK

开放终端 Agent

Aider

CLI

多 provider

Git 原生、轻量结对编程、仓库映射、低界面负担

开放通用 Agent

Goose

CLI、桌面、API

多 provider

本地运行、MCP/ACP、Recipes、子 Agent、安全控制

托管与本地 Agent

Amp

Web、CLI、macOS、iOS

平台多模型路由

本地线程与云端 Orb、跨设备继续、后台执行

插件化运行时

DeepSeek Harness

Web UI、CLI

可配置模型插件

Cordis、“一切皆插件”、会话轨迹、四种运行模式、开发者预览

AI 开发环境

Cursor

IDE、CLI、Web/移动端 Cloud Agent

平台模型目录

编辑器原生上下文、Agent、规则、Skills、MCP、Cloud Agents

AI 开发环境

Kiro

IDE、CLI、Web、Mobile

平台模型目录

统一 Harness、Specs、Steering、Hooks、Skills、MCP、云会话

多入口开放 Agent

Cline

IDE、CLI、桌面、TUI、Kanban、SDK

多 provider

人工审批、工具轨迹、MCP、Rules、Skills、子 Agent、并行任务

IDE Agent 平台

Continue

VS Code、JetBrains、CLI

多 provider

开源扩展、Agent/Chat/Edit/Autocomplete、共享配置

AI 编辑器

Zed Agent

Zed Agent Panel、ACP 外部 Agent

自带与外部 provider

多线程、worktree 隔离、checkpoint、diff 审查、ACP

多入口编码 Agent

JetBrains Junie

JetBrains IDE、CLI、CI/CD

平台与 BYOK

并行 worktree、Headless、GitHub Action、GitLab CI/CD、ACP

异步编码 Agent

GitHub Copilot cloud agent

GitHub、Issue、PR、集成入口

Copilot 模型体系

独立临时环境、后台任务、分支与可选 PR、仓库治理

自治软件工程平台

OpenHands

Web、本地、云、API

多 provider

开源平台、沙箱运行、Issue/仓库任务、可部署性

自治软件工程平台

Devin

Web、CLI、Desktop、API

平台托管

本地到云端 handoff、异步长任务、独立工作区、团队交付

异步编码 Agent

Jules

Web、GitHub、虚拟机

Google 托管

计划审批、后台执行、仓库任务、AGENTS.md

应用构建 Agent

Replit Agent

Web、Replit 工作区

平台路由

从需求到部署、计划模式、checkpoint、托管运行环境

研究型最小 Agent

mini-SWE-agent

CLI、批量评测

多 provider

Bash-only、线性轨迹、沙箱适配、基准研究

自建 Agent SDK

Claude Agent SDK

Python、TypeScript SDK

Claude 为核心

复用 Claude Code 的 Agent 循环与工具能力

自建 Harness SDK

LangChain Deep Agents

Python、JavaScript/TypeScript

多 provider

文件系统、规划、上下文管理、Skills、子 Agent、人工介入

自建 Harness SDK

Pydantic AI Harness

Python

多 provider

类型安全、能力组合、文件与 Shell、规划、压缩、子 Agent

自建 Harness SDK

Microsoft Agent Framework Harness Agent

Python、.NET、Go

多 provider

规划、压缩、文件与记忆、工具审批、可观测性

邻接 Agent Framework

OpenAI Agents SDK

Python、TypeScript SDK

OpenAI 原生并可扩展

Tools、handoffs、guardrails、sessions、tracing、sandbox agents

邻接 Agent Framework

Google ADK

Python、TypeScript、Go、Java、Kotlin

多 provider

多 Agent、图工作流、上下文管理、评测与部署

邻接 Agent Runtime

LangGraph

Python、JavaScript 库

模型无关

持久化、人工介入、流式执行、长流程恢复

迁移项

AutoGen

Python、.NET

模型可配置

官方指向 Microsoft Agent Framework 作为直接后继

迁移项

Roo Code

VS Code 扩展

多 provider

官方文档显示扩展已停止,评估社区分叉或迁移 Cline

迁移项

Windsurf

原独立编辑器

平台模型目录

官方文档入口已转为 Devin Desktop,按 Devin 产品线重新评估

这张表不是功能勾选越多越好。成品 Agent 提供更短的启动路径,Harness SDK 提供带默认工具和上下文管理的可嵌入能力,Framework 与 Runtime 则要求团队自行补齐更多运行组件。

4. 终端型怎么选

终端型 Harness 适合以仓库、命令和 Git 为核心的开发者,差异主要在模型绑定、权限机制和开放程度。

Claude Code:跨入口保持同一套项目配置

Anthropic 官方文档在 2026 年 9 月列出 Terminal、VS Code、Desktop app、Web、JetBrains 五种入口,并说明这些入口连接同一底层 Claude Code engine,仓库中的 CLAUDE.md、settings 和 MCP servers 可跨入口使用。

适合:已经采用 Claude 工作流,需要 Hooks、Skills、MCP、并行 Agent、CI/CD 或跨设备继续任务的团队。

先验证:第三方 provider 兼容范围、组织权限策略、Hooks 的确定性和长会话成本。

Codex:把沙箱、审批与仓库规则放在前面

Codex CLI 是 OpenAI 官方的终端和脚本入口;Codex 还覆盖 IDE、桌面、云端任务与代码审查。项目规则通过 AGENTS.md 分层组织,执行侧提供沙箱与审批策略。

适合:重视受控文件写入、命令审批、变更审查、并行任务和 OpenAI 生态的团队。

先验证:本地与云端任务的环境差异、组织策略、网络权限和 AGENTS.md 的作用域。

Gemini CLI:Google 生态中的开源终端入口

Gemini CLI 官方仓库将其定位为开源 AI agent,把 Gemini 带到终端。它适合已经使用 Gemini、Google Cloud 或希望审查 CLI 实现的团队。

先验证:目标模型与地区可用性、扩展权限、MCP 服务兼容和企业认证方式。

OpenCode:强调 provider 与客户端形态自由

截至 2026 年 9 月 15 日,OpenCode 官方文档将其定义为开源 AI 编码代理,提供终端界面、桌面应用和 IDE 扩展;文档同时列出工具、规则、Agents、模型、权限、LSP、MCP、Skills、自定义工具、SDK、Server 和插件。

适合:需要切换 provider、希望掌握配置和服务端、同时保留 TUI/IDE/桌面入口的团队。

先验证:不同 provider 的工具调用一致性、凭据存储、共享会话的隐私边界和插件版本。

Qwen Code:兼顾国产模型与多协议接入

Qwen Code 官方文档将其定义为面向终端的开源 AI Agent,提供 Skills、子 Agent、无头模式、IDE 集成和开发者 SDK,并支持 OpenAI、Anthropic、Gemini 兼容协议与 Qwen OAuth。

适合:需要终端优先、开源实现、国内模型生态和协议级 provider 切换的个人或团队。

Aider:轻量、Git 原生的结对编程

Aider 的官方文档以终端中的 AI pair programming 为核心,并把 Git 集成和仓库映射放在工作流中心。它的价值在于较薄的 Harness,而不是提供完整自治平台。

适合:希望明确查看 diff、保留 Git 提交节奏、用脚本组合工作流的个人和小团队。

Goose 与 Amp:本地通用 Agent 和跨设备托管 Agent

Block 官方文档把 Goose 定义为运行在本机的通用开源 Agent,入口包括 Desktop、CLI 和 API,并提供 MCP、ACP、Recipes、子 Agent 与安全控制。它不只面向代码,适合把研究、自动化和开发任务放进同一套本地 Harness。

Amp 同时提供本地 CLI 与按线程创建的云端 Orb,并支持 Web、macOS 和 iOS 继续同一线程。它适合需要“本地快速交互 + 云端后台执行 + 跨设备接管”的用户,代价是更强的平台托管与模型路由依赖。

DeepSeek Harness:研究插件化运行时

DeepSeek Harness 是这一大类中的一个具体实现。2026 年 8 月 27 日发布的官方页面列出模型、工具、技能、会话、沙箱、存储、循环、调度和 UI 共九类插件化能力,并提供 Standard、Code、Minimal、Creator 四种运行模式。

它适合研究可替换运行组件、事件轨迹和插件组合;官方仓库同时明确标注 developer preview 和兼容性破坏风险,因此生产使用要增加版本冻结与迁移演练。

5. IDE 与统一开发环境怎么选

IDE 型 Harness 的优势是界面状态、选区、诊断和代码导航天然在上下文内,代价是更强的平台耦合。

Cursor 与 Kiro:完整开发环境优先

Cursor 把 Agent、Rules、Skills、MCP、Cloud Agents、CLI 和多种集成放进同一产品体系;Kiro 官方文档则明确称 IDE、CLI、Web 和 Mobile 共用一个 unified agent harness,并以 Specs、Steering、Hooks、Skills 和云会话组织工作。

适合:愿意把主要开发入口迁移到 AI 开发环境,并由平台管理模型目录、后台任务和团队功能的团队。

先验证:VS Code 扩展兼容、远程开发、设置迁移、数据策略和退出成本。

Cline:从 IDE 扩展扩展到多入口 Agent

Cline 官方文档在 2026 年 9 月列出的入口已包括 VS Code、JetBrains、CLI、TUI、Desktop、Kanban 与 SDK,并保留逐步审批、浏览器、终端、MCP、Rules、Skills 和子 Agent 等能力。它已经不能只按 VS Code 扩展评估。

适合:希望自选 provider、保留人工审批,并在编辑器、终端和并行任务板之间复用同一 Agent Core 的团队。

先验证:扩展权限、工作区信任、自动批准规则、provider 差异和长任务恢复。

Continue:把配置与团队 Assistant 放在中心

Continue 官方文档覆盖 VS Code、JetBrains、CLI、Agent、Chat、Edit 和 Autocomplete。它更像可组装的开发者 AI 平台,适合把组织规则和模型入口做成共享配置。

Zed Agent 与 JetBrains Junie:先服从编辑器栈

Zed Agent Panel 原生支持多线程、worktree 隔离、checkpoint、diff 审查和 ACP 外部 Agent;Junie 则覆盖 JetBrains IDE、CLI、Headless CI/CD、并行 worktree、GitHub Action、GitLab CI/CD 与 ACP。

两者首先是编辑器生态选择:已经使用 Zed 或 JetBrains 的团队可以优先实测,跨编辑器组织不应只因单项 Agent 功能迁移整个工具链。

6. 自治与异步型怎么选

自治型 Harness 适合把任务从“对话”变成“排队、执行、交付和审查”,但必须额外评估环境隔离与失败接管。

GitHub Copilot cloud agent

GitHub 官方当前名称为 Copilot cloud agent。它在 GitHub Actions 驱动的临时开发环境中研究仓库、生成计划并修改分支,可在迭代后再创建 Pull Request,也可从 Issue 等入口直接委派。它适合已经把需求、评审、CI 和权限集中在 GitHub 的团队。

OpenHands

OpenHands 是开放的软件开发 Agent 平台,提供本地、云端与可部署入口。适合需要自行控制运行环境、模型 provider 和自动化集成的团队。

Devin

Devin 是托管式自治软件工程产品,同时提供 Web、CLI、Desktop 和 API。CLI 可处理本地任务并 handoff 到云端 Devin;云端侧强调独立工作环境、异步任务和团队交付。

Jules 与 Replit Agent

Jules 在虚拟机中克隆 GitHub 仓库、安装依赖和修改文件,并在写代码前提供可审批计划;Replit Agent 则把规划、应用构建、检查、修复和部署放进 Replit 托管工作区。前者偏异步仓库任务,后者偏从需求到上线的应用构建。

mini-SWE-agent:研究与基准的最小基线

SWE-agent 官方已建议默认改用 mini-SWE-agent,并把原 SWE-agent 标为 maintenance-only。mini-SWE-agent 以 Bash-only 工具、线性消息轨迹和可替换沙箱为核心,适合基准、强化学习、可复现实验和最小控制流研究,不应按日常 IDE 助手标准比较。

7. 自建 Harness:先分清 SDK、Framework 与 Runtime

当 Agent 要进入你的产品、权限系统和业务状态机时,应评估 SDK,而不是继续堆叠成品客户端。

  • Claude Agent SDK:复用 Claude Code 式 Agent 循环,在 Python 或 TypeScript 应用中定义工具和权限。

  • LangChain Deep Agents:在 LangGraph 之上提供文件系统、规划、上下文管理、Skills、子 Agent 和人工介入,是官方明确归类为 Agent Harness 的 SDK。

  • Pydantic AI Harness:以 Python 类型系统和可组合 Capability 为中心,提供文件、Shell、仓库上下文、规划、压缩和子 Agent。

  • Microsoft Agent Framework Harness Agent:在 Agent Framework 内提供规划、待办、上下文压缩、文件、记忆、工具审批和可观测性。

OpenAI Agents SDK 与 Google ADK 更接近 Agent Framework:提供工具、handoff 或多 Agent、状态、评测与部署能力,但通常仍需自行组合面向编码任务的文件系统、Shell、项目规则和完成条件。LangGraph 更低一层,是强调持久化、流式执行、人工介入和恢复的 Runtime。

AutoGen 仍有官方文档,但 Microsoft Agent Framework 已被官方定义为 AutoGen 与 Semantic Kernel 的直接后继。新项目应把 Agent Framework 纳入主评估,把 AutoGen 视为兼容与迁移对象。

自建方案的优势是控制权,代价是你必须自己负责工具安全、状态存储、追踪、评测、升级和运维。没有平台团队时,成品 Agent 往往更快达到可用状态。

8. 用 12 个维度做正式评测

可靠选型必须在同一仓库、同一任务、同一模型条件下测 Harness,而不是看演示视频。

  1. 入口:CLI、IDE、桌面、Web、移动端是否符合团队习惯。

  2. 模型控制:能否固定模型、provider、推理预算和回退策略。

  3. 上下文:项目规则、索引、压缩、记忆、会话恢复是否透明。

  4. 工具:shell、编辑、浏览器、MCP 和自定义工具是否结构化。

  5. 权限:能否按目录、命令、网络、工具和环境区分策略。

  6. 沙箱:本机、容器、云环境的隔离和生命周期如何定义。

  7. 协作:子 Agent、后台任务、队列、并发和冲突如何处理。

  8. 验证:测试、lint、diff、PR 和人工审批能否成为停止条件。

  9. 可观测性:是否能查看调用、错误、token、时延和任务状态。

  10. 可移植性:规则、Skills、MCP、会话和配置能否导入导出。

  11. 治理:组织策略、身份、审计、数据保留和插件白名单是否具备。

  12. 总成本:模型费用、订阅、基础设施、人工接管和维护工时之和。

9. 公平测试的任务集

一套 Harness 至少要通过读、改、测、查、协作和恢复六类任务。

任务 A:陌生仓库理解

要求 Agent 找到入口、关键调用链和测试位置,禁止修改文件。记录首个正确结论所需时间、误读数量和引用文件准确率。

任务 B:跨文件小功能

固定需求与验收测试,记录一次通过率、改动文件数、无关 diff、人工提示次数和总 token。

任务 C:失败测试修复

提供一个稳定复现的失败,观察 Harness 是否读取错误、缩小范围、修改、复跑并解释根因。

任务 D:受限权限

禁止网络和仓库外写入,检查 Agent 是否请求批准、降级处理或越界。成功完成任务不能抵消权限违规。

任务 E:并行研究

拆成三个只读子任务,检查上下文是否隔离、结果是否汇总、重复工作是否增加以及主 Agent 是否复核。

任务 F:中断恢复

在工具失败、网络中断或进程重启后恢复,记录会话完整性、重复副作用、继续执行位置和人工接管成本。

10. 不同场景的候选短名单

短名单应控制在 2-4 个同类方案,避免把 30 项全部跑一遍。

  • 终端仓库开发:Claude Code、Codex、OpenCode;偏国产模型生态加入 Qwen Code,偏薄 Git 工作流加入 Aider。

  • 开源与多 provider:OpenCode、Goose、Qwen Code、Aider;需要 IDE 与终端共用 Agent Core 时加入 Cline。

  • 编辑器原生体验:Cursor、Kiro;已有 Zed 或 JetBrains 栈则分别实测 Zed Agent、Junie。

  • GitHub 异步交付:GitHub Copilot cloud agent、OpenHands、Jules;需要本地到云端 handoff 时加入 Devin。

  • 研究与基准:mini-SWE-agent、DeepSeek Harness 的极简模式、OpenHands。

  • 产品内嵌 Harness:Claude Agent SDK、Deep Agents、Pydantic AI Harness、Microsoft Agent Framework Harness Agent。

  • 产品内嵌 Framework/Runtime:OpenAI Agents SDK、Google ADK、LangGraph;已有 AutoGen 项目同时制定迁移评估。

  • 国内模型统一入口:优先选择支持自定义 provider 或标准协议的 Harness,并单独验证流式输出、工具调用和模型别名;七牛云 AI 大模型广场提供多模型统一接入与模型对比页面,可作为模型入口的候选之一。

截至 2026 年 9 月 15 日,Roo Code 官方文档显示扩展已于 5 月 15 日停止运行,并指向社区分叉 ZooCode 与 Cline;docs.windsurf.com 当前已转为 Devin Desktop 文档。存量用户应先评估迁移与数据导出,不应把两者当作无状态变化的现役新购候选。

11. 上线前的红线

任何 Harness 在上线前都必须证明“失败时可控”,而不只是“成功时能跑”。

  • 不允许把生产密钥写进项目规则、会话或插件配置仓库。

  • 不允许默认开放仓库外写入、任意 shell 和无限制网络。

  • 不允许把未审查的 MCP Server、Skill 或插件直接装进生产 Profile。

  • 不允许只看最终答案而不保留 diff、测试与工具错误。

  • 不允许在没有任务预算、超时、取消和人工接管的情况下运行长任务。

  • 不允许把 benchmark 分数直接换算成团队真实交付率。

结论

Coding Agent Harness 的选型顺序应是:先确定终端、统一开发环境、异步平台或 SDK 形态,再确定模型控制权和运行位置,最后比较上下文、工具、权限、协作、验证、可观测性与迁移成本。Claude Code、Cursor、OpenHands、Deep Agents、OpenAI Agents SDK 和 LangGraph 分别代表成品 Agent、开发环境、自治平台、Harness SDK、Agent Framework 与 Runtime,不能放在单一“能力榜”中直接排名。

根据 Anthropic Claude Code 官方文档、OpenAI Codex 官方文档、LangChain 的 Harness 分类页和 Microsoft Agent Framework 官方文档,2026 年的选型边界已经从“哪个聊天工具更强”扩展为“成品 Harness、SDK、Framework 与 Runtime 谁负责哪一层”。本文数据截至 2026 年 9 月 15 日,具体功能、迁移状态、价格和套餐以各官方页面最新状态为准。

参考资料