三藏签名

2026/7/21

四大Agent源码级架构对比:Deeflow、Openclaw、Hermes、CloudeCode

Agent

在当今时代,源码级别的阅读变得前所未有的方便快捷。相对于看各种二次包装后的短视频或者是帖子,直接阅读源码显然是更好的了解Agent运作方式的途径。所以把几个著名的Agent项目都clone下来,对比了下架构设计

四大Agent源码级架构对比:Deeflow、Openclaw、Hermes、CloudeCode

一、代码量级总览(实测)

通过 find + wc -l 按文件类型分别统计,结果如下(含文档/配置/依赖声明):

项目

主要语言

源代码行数

源代码文件数

含文档总行数

语言构成

OpenClaw

TypeScript

~233.5 万

12,143

~260.9 万

TS 230 万 / 其他 3.5 万

Hermes

Python + TS

~188 万

4,827

~240.9 万

Py 151 万 / TS 36 万 / MD 45 万

Claude Code

TypeScript

~51.2 万

1,884

~51.2 万

TS 51.2 万(几乎无文档/配置)

DeerFlow

Python + TS

~36.5 万

1,465

~45.8 万

Py 29 万 / TS 7 万 / MD 9 万

量级分布可视化

OpenClaw     ████████████████████████████████████  233.5万 (TS 为主)
Hermes       ██████████████████████████████████    188 万  (Py 为主)
Claude Code  █████████████                          51.2 万  (纯 TS)
DeerFlow     █████████                              36.5 万  (Py+TS 全栈)

关键发现

  1. OpenClaw 体量最大,但其 TS 文件数异常庞大(12,093 个),推测含生成代码或内嵌声明/类型文件,实际活跃业务代码密度需结合模块数判断。

  2. Hermes 文档量(45 万行 Markdown)远超其他三者之和,与其"自改进 + 开放标准"的定位一致——大量技能文档、记忆文件、开放标准说明。

  3. Claude Code 最"纯":几乎不含文档与配置文件,51 万行全部是 TS 源码,是四者中单仓库业务代码占比最高的。

  4. DeerFlow 最小但最"全栈均衡":Python 后端(29 万)与 TS 前端(7 万)比例约为 4:1,是典型的分层全栈结构。


二、项目定位与速览

维度

Claude Code

OpenClaw

Hermes Agent

DeerFlow

出品方

Anthropic

社区 (Warelay→Clawdbot→Moltbot→OpenClaw)

Nous Research

字节跳动

定位

官方 CLI 编程助手

个人 AI 网关

自改进 AI 助手 + 研究平台

Super Agent 编排框架

许可证

商业产品

MIT

MIT

MIT

核心语言

TypeScript (Bun)

TypeScript (Node 22+)

Python 3.11+

Python 3.12+ (harness) + TS (Next.js)

运行时进程

单 Node 进程

单 Node 网关进程

1 Python 进程(+可选 TUI Node)

Python gateway + Node frontend + nginx + Redis

安装方式

npm i -g @anthropic-ai/claude-code

npm i -g openclaw

curl | bash 一键脚本

make up(Docker Compose)

启用能力

44 工具 / 88+ 命令

115 插件 / 20+ 渠道 / 40+ 提供商

80+ 工具 / 16 平台 / 27+16 技能

23 技能 / 8 渠道 / 40+ 中间件

一句话画像

  • Claude Code:纯 TS 单体 CLI,工程成熟度最高,编译时特性裁剪玩到极致。

  • OpenClaw:最大体量 TS 网关,插件化架构严谨,核心与插件彻底解耦。

  • Hermes:Python 大脑 + TS 脸面,唯一内置"学习闭环"的 Agent。

  • DeerFlow:分层 harness/app 全栈框架,中间件链 + 子代理引擎工程化标杆。


三、语言栈与多语言分工

四个项目里 HermesDeerFlow 都是 Python + TS 混合,但分工模式截然不同。

3.1 Hermes:Python 做大脑,TS 做脸,单进程融合

Python (151万行)  ← Agent 引擎、LLM 适配、工具执行、多平台网关、记忆/技能
   │
   │  Web 产物:Vite 构建 → 纯静态 HTML/JS/CSS(Python FastAPI serve,无需 Node)
   │  TUI 产物:esbuild 构建 → entry.js(Python spawn `node` 子进程运行 Ink)
   ▼
TypeScript (36万行)  ← Web UI + TUI + Desktop(构建后"退休",仅 TUI 需 Node 运行时)
  • Web UI:Vite 编译成静态文件,由 Python 直接 serve,浏览器即运行时,完全不依赖 Node.js

  • TUI:React/Ink 打包成 ui-tui/dist/entry.js,Python 通过 stdio JSON-RPC 驱动,spawn node 子进程运行。

  • Desktop:Electron 独立客户端。

  • 运行时:Docker 内 s6-overlay 监管,核心就是 1 个 Python 进程(+ 可选 dashboard)。

3.2 DeerFlow:经典前后端分离,双进程常驻

Python (29万行) ── FastAPI Gateway (uvicorn :8001) ──│
   │ harness (LangGraph Agent 引擎 + 沙箱 + 工具)      │
   ▼                                                   │ nginx (:2026)
TypeScript (7万行) ── Next.js SSR (:3000) ─────────────┘  反向代理
   Next.js 16 + React 19,独立 Node 进程常驻
  • 前端:Next.js 16 SSR 服务,不是静态产物,需要 Node.js 运行时始终在线。

  • 后端:FastAPI + uvicorn,内嵌 LangGraph Agent 运行时。

  • 胶水:nginx 反向代理 + Redis Stream Bridge(跨 Worker SSE 投递)。

3.3 对比结论

Hermes

DeerFlow

TS 编译形态

Vite→静态 / esbuild→单文件

Next.js SSR 服务

需要 Node 运行时

仅 TUI 时 spawn

始终需要(Next.js)

进程模型

1 Python(可选 +TUI Node)

Python + Node + nginx + Redis

部署复杂度

低(单容器)

中(多容器编排)

Claude Code 与 OpenClaw 则是纯 TypeScript 单体,无跨语言鸿沟,部署也即 npm install 一类。


四、核心架构对比

4.1 架构范式

项目

架构范式

核心抽象

Claude Code

单进程 React/Ink 状态树 + 工具循环

QueryEngine 多轮状态机

OpenClaw

四层网关(渠道→Gateway→插件→提供商)

Plugin SDK 能力注册表

Hermes

入口层 / 引擎层 / 工具层 / 存储层

AIAgent.run_conversation() 同步循环

DeerFlow

三层(客户端→Nginx→Gateway+Frontend)+ harness/app 分层

make_lead_agent() + 中间件链

4.2 Agent 引擎对比

  • Claude CodeQueryEngine.ts 驱动 messages[] 历史,解析 tool_use → 路由 Tool → 继续循环。支持并行工具调用、自动上下文压缩(6 种策略)、编译时 Prompt Cache 分段。

  • OpenClaw:Gateway 路由到 Agent 推理循环,核心不依赖具体实现,通过提供商插件 45 个有序钩子覆盖完整推理生命周期。

  • Hermesrun_agent.py(~12000 行)同步 + 同进程循环,避免并发竞争。子类通过 delegate_tool独立 Python 子进程执行。支持并行工具(最多 8 线程)、迭代预算(主 90 / 子 50 轮)、自动上下文压缩。

  • DeerFlow:基于 LangGraph 构建,Agent 引擎由 40+ 中间件组成可插拔链(沙箱、摘要、记忆、技能、安全终止…),子代理通过独立后台线程池执行。

4.3 对话循环风格

循环模型

上下文压缩

并行工具

子代理隔离

Claude Code

异步多轮状态机

6 策略(auto/manual/reactive/collapse/micro/session)

✅ 多 tool_use

本地进程 / 远程 CCR 容器

OpenClaw

网关事件驱动

未重点强调

依赖插件

Gateway RPC 树

Hermes

同步单进程

LLM 驱动自动压缩

✅ 最多 8 线程

Python 子进程(delegate_tool)

DeerFlow

LangGraph 图

SummarizationMiddleware

中间件可控

后台线程池 + 并发上限


五、能力维度横向对比

5.1 工具 / 插件 / 技能系统

项目

工具数

技能系统

插件体系

自动进化

Claude Code

44 内置 + MCP

SkillTool(Markdown 包)

MCP 客户端(一等公民)

OpenClaw

插件注册

115 内置插件 + ClawHub 社区

Hermes

80+ 工具 / 50+ 工具集

27+16 内置,自动创建+自我改进

记忆 Provider / 上下文引擎插件

学习闭环

DeerFlow

builtin + MCP

23 公共技能(allowed-tools 隔离)

中间件链 + 社区集成

Hermes 的差异化能力:技能从对话中自动生成 → 使用中自动优化 → 持久化到 skills/ → 同步 agentskills.io 开放标准。这是四者中唯一的"自改进"闭环。

5.2 多平台 / 多模型

项目

消息平台

模型提供商

终端后端

Claude Code

CLI(无 IM)

Anthropic 原生

本地 / 远程 CCR

OpenClaw

20+ 渠道

40+ 提供商

本地

Hermes

16 平台

10+ 提供商 / 200+ 模型

6 种(本地/Docker/SSH/Daytona/Singularity/Modal)

DeerFlow

8 渠道

OpenAI/Anthropic/DeepSeek/vLLM/Codex 等

本地 / Docker 沙箱

5.3 记忆系统

项目

记忆层次

存储

跨会话检索

Claude Code

SessionMemory + 压缩摘要

本地 transcript

OpenClaw

未重点强调

Hermes

五层(短期/中期/长期/画像/程序性)

SQLite FTS5 + Honcho 等 9 Provider

✅ FTS5 全文

DeerFlow

MemoryMiddleware 注入

LangGraph Store (SQLite/PG)

5.4 安全机制

项目

安全层次

特色

Claude Code

权限模式 + 工具级审批 + Client Attestation

编译时 DCE 去除内部功能,bun HTTP 栈注入 attestation token

OpenClaw

DM 配对 + 凭据隔离

移动端 LAN 配对安全分级

Hermes

9 层防护

上下文注入检测、Tirith 沙箱、路径/URL/文件安全

DeerFlow

中间件链 + RBAC + 沙箱

InputSanitization / ToolResultSanitization / Guardrails


六、工程化与部署对比

6.1 技术栈总表

层次

Claude Code

OpenClaw

Hermes

DeerFlow

运行时

Bun

Node 22+

uv + Python

uv + Python / Node

构建

Bun bundle

tsdown (Rolldown)

Vite / esbuild

Next.js build / uv

Lint

Biome

oxlint (Rust)

ruff

Ruff + ESLint

类型

Zod v4

Zod

pydantic

pydantic / Zod

测试

Vitest 类

Vitest

pytest (~3000)

pytest + Playwright + rstest

UI

React/Ink

终端 + 伴侣 App

React/Ink + Web + Desktop

Next.js 16 / React 19

6.2 部署复杂度

项目

难度

命令

运行时依赖

Claude Code

npm i -g

仅 Node/Bun

OpenClaw

npm i -g

仅 Node

Hermes

★★

curl | bash

Python + Node + ripgrep + ffmpeg

DeerFlow

★★★

make up

Python + Node + Docker + Redis + nginx

注:Claude Code / OpenClaw 因纯 TS 单体,可一行命令安装;Hermes 与 DeerFlow 因含 Python 重引擎,需更重的安装/编排。

6.3 单文件规模警示(可维护性)

文件

项目

行数

风险

main.tsx

Claude Code

786KB(~20K+ 行)

React 状态树过大

run_agent.py

Hermes

~11,989 行

同步循环巨型文件

cli.py

Hermes

~11,700 行

交互编排过重

gateway/run.py

Hermes

~11,076 行

网关逻辑集中

subagents/executor.py

DeerFlow

1,163 行

子代理引擎核心

client.py (harness)

DeerFlow

67KB

嵌入式客户端

共性警示:Agent 项目普遍出现"巨型文件"——对话循环 / CLI / 网关三大逻辑极易膨胀到万行级,是四者的共同技术债。


七、综合评分(基于各项目分析文档自评)

维度

Claude Code

OpenClaw

Hermes

DeerFlow

架构设计

⭐⭐⭐⭐⭐

⭐⭐⭐⭐⭐

⭐⭐⭐⭐⭐

⭐⭐⭐⭐⭐

代码质量

⭐⭐⭐⭐⭐

⭐⭐⭐⭐

⭐⭐⭐⭐

⭐⭐⭐⭐⭐

扩展能力

⭐⭐⭐⭐

⭐⭐⭐⭐⭐

⭐⭐⭐⭐⭐

⭐⭐⭐⭐⭐

安全性

⭐⭐⭐⭐⭐

⭐⭐⭐⭐

⭐⭐⭐⭐⭐

⭐⭐⭐⭐⭐

多平台

⭐⭐

⭐⭐⭐⭐⭐

⭐⭐⭐⭐⭐

⭐⭐⭐⭐

自改进

⭐⭐⭐⭐⭐

工程化

⭐⭐⭐⭐

⭐⭐⭐⭐

⭐⭐⭐⭐

⭐⭐⭐⭐⭐

文档完整

⭐⭐⭐⭐

⭐⭐⭐⭐

⭐⭐⭐⭐⭐

⭐⭐⭐⭐


八、选型建议

场景

推荐

理由

个人开发者的终端编程助手

Claude Code

纯 TS 单体、安装即用、工程成熟度最高

自托管多渠道 AI 网关(隐私优先)

OpenClaw

插件化解耦、20+ 渠道、本地优先

需要"越用越聪明"的通用助手

Hermes

唯一学习闭环、五层记忆、16 平台、6 终端后端

企业级 Agent 编排平台 / 深度研究

DeerFlow

分层 harness/app、40+ 中间件、子代理引擎、IM 集成

想研究 RL 训练数据收集

Hermes

完整 Atropos 流水线 + 轨迹压缩


九、总结

四个项目代表了当前开源/商业 AI Agent 的四种典型范式:

  1. Claude Code —— 纯 TS 单体 CLI 的极致:用编译时特性裁剪、Prompt Cache 分段、Client Attestation 把"对话循环"工程化到天花板,但体量相对克制(51 万行)。

  2. OpenClaw —— 插件化网关的典范:233 万行 TS 中大量是 115 个插件与 20+ 渠道适配,核心与插件通过 Plugin SDK 严格解耦,是"可扩展性"教科书。

  3. Hermes —— Python 大脑 + 自改进灵魂:188 万行里 Python 占 151 万,TS 仅 36 万(且大部分构建后退役)。其真正护城河不是规模,而是"技能自动创建→改进→持久化"的闭环,以及覆盖 CLI/TUI/Web/Desktop/16 平台的广接入能力。

  4. DeerFlow —— 全栈分层框架的标杆:体量最小(36.5 万行)却最"均衡",harness/app 严格分层 + 40+ 中间件链 + 工程化 CI/CD,是字节跳动级工程标准的体现。

量级 ≠ 能力:OpenClaw 代码最多但定位是网关;Hermes 用中等体量实现了最独特的自改进能力;DeerFlow 以最小代码量提供了最完整的企业级框架;Claude Code 用最"纯"的代码库做到了最高的工程完成度。选型时应以场景匹配度优先于代码规模。

Comments

Join the conversation

Emoji supported. Comments appear immediately.

No comments yet.