十六个开源项目全景横评:一张可以随时回来查的选型地图

Agent; 开源项目对比; 技术选型; 架构地图; Agent 横评 2757 字 14 min read

本文是「专题·Agent」系列第 16 篇,也是全专题的收官。上一篇真实架构拆解与设计选型拆了三个真实系统、立了四象限、给了”约束→架构”的映射。这一篇不讲任何新原理——它是一张索引地图

,让你日后选型时可以随时回来查。

前十五篇是”顺着原理往下讲”,每一篇讲一个子系统,顺手带出几个项目怎么做。但选型的时候,你要的是”横着看”

,16 个项目各自怎么解?这一篇就是把那些竖着讲的对比,转成一张横着查的地图。

先说清楚一件事:这张地图不是让你照抄某一行,而是让你在自己的约束下快速定位”谁踩过我这个坑”。 没有哪一列是满分,每个项目的空格和实心格,都是它约束的直接后果。

一、16 个项目,四个阵营

16 个开源 Agent 不是随机散落的,它们按”对什么是 Agent 的理解”聚成四个阵营。这是全专题反复引用的底座框架:

flowchart TB
    subgraph 企业基础设施派["企业基础设施派 · 类型安全优先"]
        Goose["Goose · Rust"]
        Eino["Eino · Go"]
        OpenCode["OpenCode · TS"]
    end
    subgraph 快速原型派["快速原型派 · 迭代速度优先"]
        DeerFlow["DeerFlow · Python"]
        Hermes["Hermes · Python"]
        OhMy["Oh My Open Agent · Python"]
    end
    subgraph 行为塑造派["行为塑造派 · 上下文即行为"]
        Superpowers["Superpowers"]
        Karpathy["Karpathy Skills"]
        ECC["ECC"]
    end
    subgraph 多平台通信派["多平台通信派 · 频道即一等公民"]
        OpenClaw["OpenClaw"]
        NanoClaw["NanoClaw"]
    end

四个阵营之外,本专题还深挖了几个作为”真实架构样本”反复出场的系统——它们更像教学参考,横跨多个阵营:

样本定位反复出现在
pi-agent极简会话树,一个数据结构统一多个概念第 3、7、9、15 篇
deepagents虚拟文件系统 + 规划 + 子代理的完整 Harness第 10、15 篇
Generic Agent(GA)92 行循环 + 9 原子工具,能力全靠涌现第 6、8、14 篇
PaperclipHarness 与应用分离做得最干净的参考第 10 篇

把四阵营的 11 个 + 这 4 个样本合起来,就是本专题横评过的完整项目面。下面的维度表,主要以四阵营的代表项目为列。

二、11 个维度 = 专题的 11 条主线

这张地图的”列”是项目,“行”是维度。而 11 个维度,恰好就是本专题从第 1 篇讲到第 13 篇的主干——每一行都能翻回对应那一篇看细节:

#维度核心问题对应篇目
1语言 / 类型系统编译期安全 vs 运行时灵活第 1、15 篇
2Agent 循环形态循环怎么驱动、何时”停”第 2 篇
3工具 / 插件架构工具怎么注册、怎么隔离第 3、12 篇
4上下文 / 缓存策略稳定前缀怎么保、缓存怎么活第 4 篇
5短期记忆 / 压缩上下文满了怎么办第 5 篇
6长期记忆 / 检索什么活到下次会话、怎么找回第 6 篇
7状态持久化 / 恢复崩了从哪接着跑第 7 篇
8规划机制循环之上要不要一层规划第 8 篇
9多智能体 / 并行度谁决定并行度第 9 篇
10人在环路 / 连接器人怎么介入、怎么接外部平台第 11 篇
11行为塑造 / 安全怎么让 AI 遵从、怎么防跑偏第 12、13 篇

这也是为什么这一篇必须放在最后

,都在这张表里填了几个格子。现在只是把它们收拢起来。

三、核心横评表

下面按维度,把前文已经确立的对比汇到一起。每一格都来自前面某一篇里已经讲过的结论,不是这一篇新造的——这正是”索引”的意思。

维度 1
(第 1、15 篇)

项目语言约束反推
GooseRust + Tauri桌面应用要小二进制、低内存、企业级安全
EinoGo 泛型字节 Go 生态 + 编译期图验证
OpenCodeTS + Effect函数式依赖注入 + 穷举式错误处理
DeerFlow / HermesPythonML 生态 + 中间件运行时动态组装
ECC / SuperpowersMarkdown知识注入而非代码,非程序员可参与

一句话:语言不是品味,是约束的后果(第 15 篇的核心论点)。

维度 3 & 12
(第 3、12 篇)

约束场景插件方式代表项目
支持任意语言工具、需进程隔离MCP 协议Goose
100+ 插件、启动性能优先manifest + 懒加载OpenClaw
编译期类型安全Go interface 分层Eino
非程序员可贡献Markdown 文件ECC

行为塑造派内部还能再切一刀,靠的是它们各自的”内核问题”(第 12 篇):

项目内核问题
SuperpowersAI 会不会在压力下绕过规则?
Karpathy SkillsAI 的默认行为模式对不对?
ECCAI 有没有这个领域的背景知识?

维度 6
(第 6 篇)

这是差异最大的一个维度,直接把第 6 篇的横评搬过来:

项目专门记忆系统搜索方式提炼方式成本
Hermes✅ 一等公民FTS5 + 外部向量插件LLM 提炼事实
DeerFlowLLM 语义提取LLM + 30s 防抖批量
Nano Claw✅ 文件文件直读用户手动 remember
Goose❌ 仅历史检索FTS5 全文存原始消息
Eino❌ 仅状态快照

关键观察(第 6 篇)

个项目里只有少数真正做了跨会话记忆,大多数依赖上下文窗口——大多数场景可能并不需要复杂的记忆系统。

维度 7
(第 7 篇)

不同项目把”恢复”这件事做在了不同粒度上:

关注点代表项目解决的问题
执行状态精确恢复Eino从第五步继续,不是从头重来
用户取消与优雅退出GooseCancellation Token
运行时健康检测HermesAgent 还活着吗?卡死了吗?
跨会话任务进度Oh My Open Agent上次做到哪了?

维度 9
(第 9 篇)

“谁决定并行度”这一问,把项目切成了三派:

路线谁决定代表项目并行度可预测性
代码决定写死在图结构里DeerFlow、Eino最高
LLM 决定框架给工具,LLM 自己判断Goose最低
规则决定Skill 里写死严苛条件Superpowers

DeerFlow 的一个硬约束值得记住:最多 3 个并发子代理——并发不是越多越快,它有上限,且子代理之间要协调。

维度 10 & 11
(第 11、12 篇)

多平台通信派把”频道多样性”当成一等公民

/ NanoClaw 的 channel 抽象是架构的核心,而不是外挂。这与企业派、原型派把通信当边缘功能形成鲜明对比(第 11 篇)。

四、四条反复出现的规律

横着看完 11 个维度,有四条规律在几乎每个设计良好的系统里都出现(第 15 篇已提炼,这里作为地图的图例再钉一次):

  1. 隔离是一切可维护性的基础 —— 好系统都在把”变的部分”和”稳的部分”隔开。
  2. 协议比实现重要 —— MCP、Plugin SDK、Runnable 接口才是长期价值的锚点;实现会重写,协议会留存。
  3. 约束驱动 > 最佳实践驱动 —— 最好的决策来自认清自己的约束,而不是照搬别人的”最佳实践”。
  4. 知识和能力是两件事 —— Markdown Skill 是知识(塑造判断),MCP 工具是能力(执行操作);混淆会造成架构混乱。

五、选型速查

真正用这张地图的方式,是从你自己的约束出发,反查该看哪一行、哪一列:

flowchart TD
    Start["你的主要约束是?"] --> Desktop["桌面应用/小二进制"]
    Start --> Team["企业大团队/类型安全"]
    Start --> Fast["快速原型/ML 迭代"]
    Start --> IM["多 IM 平台接入"]
    Start --> Behave["控制 AI 行为/非程序员参与"]
    Desktop --> G["→ 看 Goose(Rust)"]
    Team --> E["→ 看 Eino(Go)/OpenCode(TS)"]
    Fast --> D["→ 看 DeerFlow/Hermes(Python)"]
    IM --> O["→ 看 OpenClaw/NanoClaw"]
    Behave --> S["→ 看 Superpowers/ECC/Karpathy"]

配合第 15 篇的三问,选择范围会自动收窄:

  1. 主要用户是谁? 单开发者 / 小团队 / 企业大团队
  2. 核心需求是什么? 工具执行 / 知识注入 / 工作流编排 / 多模型 / 插件生态
  3. 团队背景是什么? Python·ML / Go 后端 / TypeScript 函数式

答完这三问,地图上属于你的那一行基本就亮了。

收官
,和一整个专题

回到最开始那个问错的问题——“哪个架构最好?”。走完 16 篇,答案已经很清楚:

没有最好的架构,只有最适合你约束的架构。

这张地图不替你做决定,它只做一件事

,让你能快速找到”谁解决过类似问题、他们怎么解的、代价是什么”。这 16 个项目、11 个维度,是一个工具箱的索引,不是一份标准答案。

整个「从概念到系统」专题到这里收束:

  • 第 1–4 篇建立地基
    是什么、对话循环、工具契约、上下文与缓存。
  • 第 5–7 篇处理记忆与状态
    、长期记忆检索、持久化与恢复。
  • 第 8–10 篇讲协调
    、多智能体编排、把一切装进 Harness。
  • 第 11–13 篇面向对外与生产
    MCP、Skills 与行为塑造、生产化。
  • 第 14–16 篇进阶与全景
    、真实架构拆解、以及这张横评地图。

前十五篇给你”零件、原理和真实样本”,这一篇给你”一张随时能回来查的索引”。把它收藏起来——下次要造 Agent 或选型时,从约束出发,回到这里对一对,大概率能省掉几周的试错。


本文为「Agent 系列」第 16 篇,全专题收官。本文不引入新素材,所有横评数据均来自本专题第 1–15 篇已确立的对比结论,以及 agent开发系列《总体设计哲学与选型指南》《16 个开源项目差异对比总览》、how-deerflow-works「超级 Agent 的四个阵营」。术语保留英文原词。