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

一、代码量级总览(实测)
通过 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 全栈)关键发现
OpenClaw 体量最大,但其 TS 文件数异常庞大(12,093 个),推测含生成代码或内嵌声明/类型文件,实际活跃业务代码密度需结合模块数判断。
Hermes 文档量(45 万行 Markdown)远超其他三者之和,与其"自改进 + 开放标准"的定位一致——大量技能文档、记忆文件、开放标准说明。
Claude Code 最"纯":几乎不含文档与配置文件,51 万行全部是 TS 源码,是四者中单仓库业务代码占比最高的。
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 |
安装方式 |
|
|
|
|
启用能力 | 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 全栈框架,中间件链 + 子代理引擎工程化标杆。
三、语言栈与多语言分工
四个项目里 Hermes 和 DeerFlow 都是 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 驱动,spawnnode子进程运行。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 状态树 + 工具循环 |
|
OpenClaw | 四层网关(渠道→Gateway→插件→提供商) | Plugin SDK 能力注册表 |
Hermes | 入口层 / 引擎层 / 工具层 / 存储层 |
|
DeerFlow | 三层(客户端→Nginx→Gateway+Frontend)+ harness/app 分层 |
|
4.2 Agent 引擎对比
Claude Code:
QueryEngine.ts驱动messages[]历史,解析tool_use→ 路由 Tool → 继续循环。支持并行工具调用、自动上下文压缩(6 种策略)、编译时 Prompt Cache 分段。OpenClaw:Gateway 路由到 Agent 推理循环,核心不依赖具体实现,通过提供商插件 45 个有序钩子覆盖完整推理生命周期。
Hermes:
run_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 公共技能( | 中间件链 + 社区集成 | ❌ |
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 | ★ |
| 仅 Node/Bun |
OpenClaw | ★ |
| 仅 Node |
Hermes | ★★ |
| Python + Node + ripgrep + ffmpeg |
DeerFlow | ★★★ |
| Python + Node + Docker + Redis + nginx |
注:Claude Code / OpenClaw 因纯 TS 单体,可一行命令安装;Hermes 与 DeerFlow 因含 Python 重引擎,需更重的安装/编排。
6.3 单文件规模警示(可维护性)
文件 | 项目 | 行数 | 风险 |
|---|---|---|---|
| Claude Code | 786KB(~20K+ 行) | React 状态树过大 |
| Hermes | ~11,989 行 | 同步循环巨型文件 |
| Hermes | ~11,700 行 | 交互编排过重 |
| Hermes | ~11,076 行 | 网关逻辑集中 |
| DeerFlow | 1,163 行 | 子代理引擎核心 |
| 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 的四种典型范式:
Claude Code —— 纯 TS 单体 CLI 的极致:用编译时特性裁剪、Prompt Cache 分段、Client Attestation 把"对话循环"工程化到天花板,但体量相对克制(51 万行)。
OpenClaw —— 插件化网关的典范:233 万行 TS 中大量是 115 个插件与 20+ 渠道适配,核心与插件通过 Plugin SDK 严格解耦,是"可扩展性"教科书。
Hermes —— Python 大脑 + 自改进灵魂:188 万行里 Python 占 151 万,TS 仅 36 万(且大部分构建后退役)。其真正护城河不是规模,而是"技能自动创建→改进→持久化"的闭环,以及覆盖 CLI/TUI/Web/Desktop/16 平台的广接入能力。
DeerFlow —— 全栈分层框架的标杆:体量最小(36.5 万行)却最"均衡",harness/app 严格分层 + 40+ 中间件链 + 工程化 CI/CD,是字节跳动级工程标准的体现。
量级 ≠ 能力:OpenClaw 代码最多但定位是网关;Hermes 用中等体量实现了最独特的自改进能力;DeerFlow 以最小代码量提供了最完整的企业级框架;Claude Code 用最"纯"的代码库做到了最高的工程完成度。选型时应以场景匹配度优先于代码规模。

Comments
Join the conversation
Emoji supported. Comments appear immediately.