AI Agent 框架太多,选不过来。
每周都有新榜单,但不知道信哪个。Claude Code、Cursor、OpenClaw、OpenHands、goose……名字都听过,但到底哪个适合你?
别急,有个榜单帮你筛完了。
167 个框架,12 个类别
GitHub 上有个项目叫 Best-of-Agent-Harnesses,作者 RyanAlberts 维护。
收录了 167 个 AI Agent harness,按 12 各类别分类排名。每周重新评分,数据从 GitHub 实时抓取。
什么是 harness?
harness 是"让 AI 模型能干活的外壳"。模型本身只会生成文本,harness 给它加上工具调用、文件读写、记忆、循环执行的能力。Claude Code、Cursor、OpenClaw 都是 harness。
打个比方:模型是发动机,harness 是整辆车。发动机再强,没有底盘、变速箱、方向盘,也跑不起来。harness 就是把这些零件组装起来的东西。
12 个类别包括:
- 个人 Agent 运行时
- 编码 harness 配置
- 多 Agent 编排
- Agent 评测
- 无头/批处理运行
- 崩溃恢复
- 研究和任务特定 harness
- 库和 SDK
- 多模态 Agent
- 本地 Agent
- 云端 Agent
- 其他
每个类别都有自己的评分标准。不是简单看 star 数,而是综合活跃度、文档质量、社区反馈、更新频率等多个维度。每周重新计算,所以排名会变化。
评分维度包括:
- 活跃度:最近一周的 commit 数量、issue 处理速度
- 文档质量:README 是否完整、是否有示例代码、是否有教程
- 社区反馈:issue 和 PR 的响应速度、社区讨论热度
- 更新频率:是否持续维护、是否有新版本发布
- MCP 支持:是否支持 MCP 协议,能否与其他工具集成
这些维度综合起来,形成一个分数。分数高的排名靠前。每周重新计算,所以排名会变化——上周的第一名,这周可能掉到第三名。
个人 Agent 运行时
这类框架适合个人开发者,想搭建自己的 AI Agent,处理日常任务。
OpenJarvis(9.7k stars)
- 复杂度:略复杂
- MCP 支持:✅
- 特点:模块化设计,支持多种 LLM 后端,可以处理文件、代码、网页等多种任务
- 适合:想搭建个人助手的开发者
- 亮点:插件系统丰富,社区贡献活跃,文档齐全
其他两个:略
个人运行时这个类别,核心看的是能不能快速上手。OpenJarvis 的优势在于模块化——你可以只装需要的功能,不用一次性引入所有依赖。对于个人开发者来说,这意味着更少的依赖冲突和更简单的调试。
个人运行时的另一个关键指标是模型兼容性。有些框架只支持特定模型,有些支持多种模型。OpenJarvis 支持多种 LLM 后端,这意味着你可以根据任务需求选择不同的模型——简单任务用便宜的小模型,复杂任务用贵的大模型。这种灵活性对个人开发者来说很重要,可以显著降低成本。
模型兼容性的另一个好处是避免供应商锁定。如果你只用一个模型,模型涨价或降智,你就被锁死了。支持多种模型的框架,让你可以随时切换,保持议价能力。
编码 harness 配置
这类框架专注于代码生成和编辑,适合开发者日常编码。
get-shit-done(9.4k stars)
- 复杂度:简单
- MCP 支持:✅
- 特点:轻量级,配置简单,适合快速上手
- 适合:想快速搭建编码 Agent 的开发者
- 亮点:配置文件简洁,学习成本低,适合新手
Claude Agent SDK(8.1k stars)
- 复杂度:复杂
- MCP 支持:✅
- 特点:功能强大,支持复杂工作流,但学习曲线陡
- 适合:需要复杂编码 Agent 的团队
- 亮点:支持多轮对话、工具调用、文件操作,功能全面
其他一个:略
编码 harness 这个类别,get-shit-done 和 Claude Agent SDK 是两个极端。前者追求极简,后者追求全面。选择哪个取决于你的需求:如果只是想让 AI 帮你写代码、改 bug,get-shit-done 够用;如果需要搭建复杂的编码工作流,Claude Agent SDK 更合适。
编码 harness 的另一个关键指标是上下文窗口管理。代码任务通常涉及大量文件,Agent 需要读多个文件才能理解项目结构。好的编码 harness 会自动管理上下文窗口,把最重要的信息保留在窗口里,把不重要的信息压缩或丢弃。Claude Agent SDK 在这方面做得比较好,支持智能上下文管理。
上下文窗口管理的核心是信息密度。同样大小的窗口,能装多少有效信息,决定了 Agent 能处理多复杂的任务。Claude Agent SDK 用智能压缩算法,把不重要的信息压缩成摘要,保留关键细节,这样可以在有限窗口里处理更大的代码库。
多 Agent 编排
这类框架支持多个 Agent 协作,适合复杂任务分解。
PraisonAI(9k stars)
- 复杂度:简单
- MCP 支持:✅
- 特点:支持多 Agent 协作,可以分解复杂任务给不同 Agent
- 适合:需要多 Agent 协作的场景
- 亮点:支持任务分解、角色分配、结果汇总
其他两个:略
多 Agent 编排的核心价值在于任务分解。一个复杂任务,比如"分析这个代码库并生成报告",可以拆成"读代码"、"分析架构"、"生成报告"三个子任务,分别交给不同的 Agent。PraisonAI 的优势是配置简单,不需要写复杂代码就能实现多 Agent 协作。
多 Agent 编排的另一个关键指标是通信机制。多个 Agent 协作,需要交换信息。有些框架用消息队列,有些用共享内存,有些用文件系统。PraisonAI 用简单的消息传递机制,配置简单但功能够用。如果需要更复杂的通信机制,可以考虑 Symphony。
通信机制的选择取决于任务复杂度。简单任务用消息传递就够了,复杂任务可能需要共享内存或文件系统。Symphony 支持多种通信机制,可以根据任务需求灵活选择。
Agent 评测
这类框架专注于评估 Agent 性能,适合团队做选型决策。
MiroThinker(8.4k stars)
- 复杂度:略复杂
- MCP 支持:❓
- 特点:支持多种评测基准,可以量化 Agent 能力
- 适合:需要评估 Agent 性能的团队
- 亮点:支持 SWE-bench、inspect_ai、Terminal-Bench 等多种评测
其他两个:略
评测这个类别,核心是"用数据说话"。你换了模型、改了 prompt、加了工具,Agent 是变好了还是变差了?靠感觉不行,得靠评测。MiroThinker 支持多种评测基准,可以量化 Agent 能力,帮助团队做选型决策。
评测的另一个关键指标是可重复性。好的评测应该可以重复运行,每次运行结果一致。这样才能对比不同框架、不同模型的表现。MiroThinker 支持可重复评测,可以设置随机种子,确保每次运行条件一致。
可重复性的重要性在于对比。你换了模型,想看看是变好了还是变差了。如果评测不可重复,你无法确定变化是模型导致的还是随机因素导致的。MiroThinker 的可重复评测,让你可以准确对比不同模型的表现。
无头/批处理运行
这类框架设计用于无人值守运行,适合批量任务和长时间运行。
opencode:轻量级,适合快速批处理 OpenHands:功能强大,支持复杂任务 goose:社区活跃,更新频繁 Symphony:企业级,支持大规模部署 Prime Agent:高性能,适合生产环境 SWE-agent:专注于软件工程任务 Claude Agent SDK:支持无头模式 RepoMaster:专注于代码仓库管理
无头运行的核心价值是不需要人盯着。你可以提交一个任务,让 Agent 自己跑,跑完了通知你。适合批量代码生成、批量数据处理、长时间监控等场景。
opencode 适合快速批处理,轻量级,启动快。OpenHands 适合复杂任务,功能强大但资源占用高。goose 社区活跃,更新频繁,适合喜欢尝鲜的开发者。Symphony 适合企业级部署,支持大规模并发。
无头运行的另一个关键指标是资源隔离。多个批处理任务同时运行,需要资源隔离,防止一个任务占用所有资源导致其他任务失败。Symphony 支持资源隔离,可以为每个任务分配独立的资源配额。
资源隔离的核心是公平性。如果没有资源隔离,一个任务可能占用所有 CPU 和内存,导致其他任务饿死。Symphony 的资源隔离,确保每个任务都能获得公平的资源份额。
崩溃恢复(durable)
这类框架支持崩溃后恢复,适合长时间运行任务。
特点:
- 任务状态持久化
- 崩溃后自动恢复
- 支持断点续传
- 适合长时间运行的任务(如代码生成、数据处理)
适合场景:
- 批量代码生成
- 长时间数据处理
- 需要高可靠性的生产环境
崩溃恢复的核心是不丢任务。你提交了一个跑两小时的任务,跑到一小时的时候崩了,如果没有崩溃恢复,这一小时就白跑了。有了崩溃恢复,Agent 可以从断点继续,不用从头开始。
OpenHands 和 goose 都支持崩溃恢复,适合长时间运行任务。如果你需要高可靠性,建议选择支持崩溃恢复的框架。
崩溃恢复的另一个关键指标是恢复速度。崩溃后恢复,需要读取之前的状态,恢复到断点。恢复速度越快,浪费的时间越少。OpenHands 的恢复速度比较快,因为它的状态文件是增量的,只需要读取最近的变化。
恢复速度的重要性在于成本。崩溃恢复需要时间,如果恢复需要一小时,那这一小时就是浪费的。OpenHands 的增量状态文件,让恢复速度更快,减少浪费。
怎么用
MCP server:让 Agent 自己查列表选框架。
claude mcp add agent-harnesses -- uvx agent-harnesses-mcp复制粘贴模板:AGENTS.md、Claude Code 安全配置、最小 harness 配置。
分步 playbook:从零开始搭建 Agent 的详细步骤。
llms.txt 和 JSON:机器可读格式,方便集成。
MCP server 是一个亮点。你可以让 Claude Code 自己查这个榜单,根据你的需求推荐合适的框架。比如你问"我想搭建一个编码 Agent,推荐哪个",Claude Code 会查榜单,给你推荐 get-shit-done 或 Claude Agent SDK。
复制粘贴模板也很实用。AGENTS.md 是 Agent 的配置文件,定义了 Agent 的行为规则。Claude Code 安全配置可以防止 Agent 执行危险操作。最小 harness 配置让你快速上手,不用从零开始写配置。
分步 playbook 是另一个亮点。它不是简单的教程,而是从零开始搭建 Agent 的详细步骤。包括环境准备、依赖安装、配置文件编写、测试运行、生产部署。每个步骤都有详细说明,跟着做就能搭建一个可用的 Agent。
llms.txt 和 JSON 格式是机器可读的,方便集成到其他工具。比如你可以写一个脚本,定期从 llms.txt 拉取最新排名,生成报告或发送通知。
机器可读格式的价值在于自动化。你可以把榜单集成到 CI/CD 流程,每次有新版本发布时自动检查排名变化。也可以集成到监控工具,当某个框架的排名下降时自动通知你。
选择建议
个人开发者:
- 先从 OpenJarvis 或 get-shit-done 开始
- 复杂度低,上手快
- 社区活跃,文档齐全
- 建议先跑通一个简单任务,再逐步深入
团队/企业:
- 考虑 Claude Agent SDK 或 PraisonAI
- 功能强大,支持复杂场景
- 但学习曲线陡,需要培训
- 建议先做技术验证,再全面推广
需要多 Agent 协作:
- PraisonAI 或 Symphony
- 支持任务分解和协作
- 适合复杂项目
- 建议先定义清楚任务边界,再分配 Agent
需要评估性能:
- MiroThinker
- 支持多种评测基准
- 可以量化 Agent 能力
- 建议先建立评测基线,再对比不同框架
需要长时间运行:
- 选择支持崩溃恢复的框架
- 如 OpenHands 或 goose
- 确保任务不会因崩溃而丢失
- 建议先测试崩溃恢复功能,再用于生产环境
- 需要选 Agent 框架的开发者/团队
- 想了解 AI Agent 生态的人
- 想搭建自定义 Agent 的人
- 需要评估 Agent 性能的团队
- 需要多 Agent 协作的复杂项目
- 只想用现成产品(如 Cursor、Claude Code)的人
- 不需要自定义 Agent 的人
- 对技术细节不感兴趣的人
- 只是好奇看看、没有实际项目需求的人
- GitHub: RyanAlberts/best-of-Agent-Harnesses
- 协议: CC-BY-SA-4.0
- 每周重新评分
建议收藏,下次选 Agent 框架时翻出来看。
特别声明:以上内容(如有图片或视频亦包括在内)为自媒体平台“网易号”用户上传并发布,本平台仅提供信息存储服务。
Notice: The content above (including the pictures and videos if any) is uploaded and posted by a user of NetEase Hao, which is a social media platform and only provides information storage services.