前四篇拆解了四个框架的源码和架构,这篇把它们放在一起,帮你 30 秒做出选型决策。
TL;DR
如果你只想看一句话结论:
- 个人开发者写代码 → Claude Code(最简洁,@agent-name 一发入魂)
- 企业多宿主部署 → Codex CLI(Rust 原生二进制 + 系统级沙箱)
- 多平台 AI 助手 → OpenClaw(25+ 通道,Gateway 持久化服务)
- 需要深度语义记忆 → Hermes Agent(Hindsight PG + pgvector,472ms 召回)
如果你需要看懂为什么——往下读。本文把四个框架放在五个维度上对比:进程模型、安全边界、记忆系统、多 Agent 协作、运维成本,最后给你一个决策树。
一、先看全貌:四种架构范式
┌─────────────────────────────────────────────────────────┐
│ AI Agent 框架光谱 │
├──────────────┬──────────────┬──────────────┬─────────────┤
│ OpenClaw │ Claude Code │ Codex CLI │ Hermes │
│ 平台路线 │ 务实路线 │ 工程化路线 │ 深度路线 │
│ Gateway │ Node.js │ Rust │ Python │
│ hub-and-spoke│ 子进程树 │ 原生二进制 │ 单循环 │
├──────────────┼──────────────┼──────────────┼─────────────┤
│ 适合: 企业级 │ 适合: 开发者 │ 适合: 生产环境│ 适合: 研究/ │
│ 多通道平台 │ 日常编程 │ 安全第一 │ 长期记忆 │
└──────────────┴──────────────┴──────────────┴─────────────┘
四种范式的本质差异
|
OpenClaw |
Claude Code |
Codex CLI |
Hermes Agent |
| 核心语言 |
TypeScript |
TypeScript |
Rust |
Python |
| 架构模型 |
Gateway 持久化服务 |
CLI 一次性会话 |
多宿主统一核心 |
Python 单循环 |
| 沙箱 |
Docker (CLI Runner) |
Docker + 权限分级 |
系统级原生沙箱 |
四层防御 |
| 记忆系统 |
JSONL + Agent 自管理 |
Auto-Memory (≤25KB) |
AGENTS.md (≤50KB) |
Hindsight PG + pgvector |
| 多 Agent |
sessions_spawn(第一公民) |
@agent-name(对话层) |
multi_agents v2(工具层) |
delegate_task(工具层) |
| 开源 |
✅ |
✅ |
✅ |
✅ |
| Star |
380K |
— |
— |
— |
| --- |
|
|
|
|
| ## 二、维度一:进程模型——你的 Agent 跑在哪里? |
|
|
|
|
| ### 2.1 四种进程模型的工程含义 |
|
|
|
|
OpenClaw: Gateway 进程 (7×24) → Lane Queue → Agent Runtime → 子进程
↑ 持久化服务 ↑ 串行调度 ↑ 进程内/外
Claude Code: CLI 主进程 → child_process.spawn(MCP) → child_process.fork(子Agent)
↑ 一次性会话 ↑ 外部工具进程 ↑ 独立 V8 实例
Codex CLI: Rust 二进制 → Tokio 异步运行时 → SandboxCommand
↑ 零依赖 ↑ 真并发 ↑ 系统级沙箱
Hermes: run_conversation() → ToolRegistry → delegate_task
↑ 单线程循环 ↑ 装饰器注册 ↑ 子进程
2.2 对你的影响
| 进程模型 |
适合场景 |
不适合场景 |
| Gateway 持久化 |
7×24 服务、多用户、多通道 |
个人开发、一次性任务 |
| CLI 一次性 |
终端编程、CI/CD |
需要持久化上下文的服务 |
| Rust 原生二进制 |
生产部署、安全敏感环境 |
快速原型、脚本化 |
| Python 单循环 |
深度定制、记忆密集型 |
高并发、多用户 |
| ### 2.3 一图看懂 |
|
|
|
OpenClaw |
Claude Code |
| --- |
--- |
--- |
| 启动方式 |
服务进程 |
claude 命令 |
| 运行时长 |
持续运行 |
任务结束退出 |
| 并发 |
✅ 原生(Lane Queue) |
❌ 单会话 |
| 依赖 |
Node.js + Docker |
Node.js 18+ |
| 分发 |
Git Clone |
npm install |
| --- |
|
|
| ## 三、维度二:安全边界——你的 Agent 能做什么? |
|
|
| ### 3.1 安全模型的四种哲学 |
|
|
OpenClaw → 「用户决定」: ToolPolicy + 确认对话框
Claude Code → 「分级控制」: 5 级 Permission Mode + 工具白名单
Codex CLI → 「系统隔离」: Seatbelt/Landlock/ACL 内核级沙箱
Hermes → 「多层防御」: Prompt → Policy → Terminal → Vault
3.2 安全 vs 灵活性:一个刻意的取舍
| 框架 |
安全等级 |
安全机制 |
代价 |
| Codex CLI |
★★★★★ |
系统级沙箱(三平台原生) |
需要 Linux 5.13+/macOS/Windows |
| Hermes |
★★★★☆ |
四层防御 + Vault 加密 |
部署复杂(PG + pgvector) |
| Claude Code |
★★★☆☆ |
5 级 Permission + 白名单 |
依赖用户判断 |
| OpenClaw |
★★☆☆☆ |
ToolPolicy + 用户确认 |
无自动拦截 |
| ### 3.3 你需要多高的安全等级? |
|
|
|
场景:写个人项目 → Claude Code(够用,方便)
场景:企业 CI/CD 跑不可信代码 → Codex CLI(系统级沙箱是刚需)
场景:Agent 需要访问数据库/API Key → Hermes(Vault 加密凭据)
场景:多用户共享 Agent → OpenClaw + Codex 安全模型
四、维度三:记忆系统——你的 Agent 记得住什么?
4.1 记忆能力的四个层级
Level 0: 无跨会话记忆
└── Claude Code (Auto-Memory ≤25KB, Agent 自管理)
Level 1: 文件级记忆
└── OpenClaw (JSONL + Daily MD, grep 查找)
└── Codex CLI (AGENTS.md ×N 层, ≤50KB)
Level 2: 语义搜索
└── Hermes (Hindsight PG + pgvector, 472ms 从万条召回)
↑ 唯一一个能做语义搜索的
4.2 记忆策略对照
|
Claude Code |
OpenClaw |
Codex CLI |
Hermes |
| 记忆类型 |
Agent 自管理 |
Agent 自管理 |
项目规则文件 |
独立记忆引擎 |
| 存储 |
JSON 文件 |
JSONL 文件 |
AGENTS.md 文件 |
PostgreSQL + pgvector |
| 搜索方式 |
Agent 读文件 |
grep |
层级收集 |
语义向量搜索 |
| 容量 |
25KB |
无硬限制 |
50KB |
PG 无上限 |
| 跨项目 |
❌ |
❌ |
❌ |
✅(全局 Hindsight) |
| 搜索延迟 |
取决于 Agent |
取决于 grep |
取决于收集 |
472ms |
| ### 4.3 什么时候语义记忆是刚需? |
|
|
|
|
| - 你的 Agent 需要记住 100+ 次对话中的偏好和决策 |
|
|
|
|
| - 你需要跨项目共享 Agent 的知识("上次那个配置怎么解决类似的 OOM?") |
|
|
|
|
| - 你的 Agent 需要从历史错误中学习(不是每次都重新踩坑) |
|
|
|
|
| 如果以上三条都不满足 → 文件级记忆足够。满足任一条 → Hermes 是你唯一的选择。 |
|
|
|
|
| --- |
|
|
|
|
| ## 五、维度四:多 Agent 协作——你的 Agent 能管几个 Agent? |
|
|
|
|
| ### 5.1 多 Agent 接口的易用性 |
|
|
|
|
最简洁 ──────────────────────────────────────→ 最强大
@agent-name delegate_task multi_agents sessions_spawn
(Claude Code) (Hermes) (Codex CLI) (OpenClaw)
「@reviewer check」 「工具调用+配置」 「工具调用+配置」 「第一公民 API」
对话层 工具层 工具层 平台层
5.2 多 Agent 能力对照
|
OpenClaw |
Claude Code |
Codex CLI |
Hermes |
| 接口 |
sessions_spawn API |
@agent-name 对话 |
multi_agents 工具 |
delegate_task 工具 |
| 进程隔离 |
✅ 子进程 |
✅ fork() |
✅ thread 内 |
✅ 子进程 |
| 并行上限 |
无限制 |
无限制 |
无限制 |
5 |
| 配置独立性 |
SOUL.md + 模型 |
prompt + 模型 + 工具 |
thread 配置 |
toolsets + 模型 |
| 编排复杂度 |
高(需设计协作) |
低(对话级) |
中(工具调用) |
中(Kanban) |
| 社区成熟度 |
★★★★★ (14+ 案例) |
★★★☆☆ |
★★★☆☆ |
★★☆☆☆ (v0.16) |
| ### 5.3 选型建议 |
|
|
|
|
| - 需要 5+ Agent 复杂编排 → OpenClaw(第一公民,社区案例多) |
|
|
|
|
- 需要简洁、偶尔用 → Claude Code(@agent-name 零学习成本) |
|
|
|
|
| - 需要企业级批量调度 → Codex CLI(agent_jobs 批量作业) |
|
|
|
|
| - 需要记忆共享的子 Agent → Hermes(子 Agent 也能查 Hindsight) |
|
|
|
|
| --- |
|
|
|
|
| ## 六、维度五:运维成本——部署和维护要花多少钱? |
|
|
|
|
| ### 6.1 部署复杂度 |
|
|
|
|
最简单 ──────────────────────────────────────→ 最复杂
Claude Code Codex CLI Hermes OpenClaw
npm install 下载二进制 pip install Git Clone
(单文件) + PG 配置 + Docker
+ pgvector + 配置 25 通道
6.2 运维成本拆解
|
Claude Code |
Codex CLI |
OpenClaw |
Hermes |
| 安装 |
1 条命令 |
下载 1 个文件 |
Git Clone |
pip install |
| 依赖 |
Node.js |
零 |
Node.js + Docker |
Python + PG + pgvector |
| 启动 |
claude |
codex |
启动 Gateway |
运行 Python 脚本 |
| 更新 |
npm update |
下载新二进制 |
git pull |
pip install -U |
| 监控 |
无 |
无 |
需监控 Gateway |
需监控 PG |
| 成本 |
API 费 |
API 费 |
API + 服务器 |
API + PG 服务器 |
| ### 6.3 什么时候简单就是对的? |
|
|
|
|
| 如果你的需求是"在终端里让 AI 帮我写代码"——Claude Code。一条命令安装,零配置,五分钟上手。不要因为 Codex 的 Rust 沙箱很酷就用它来写个人项目——运维成本不匹配。 |
|
|
|
|
| 如果你的需求是"公司要求所有 AI 生成的代码必须在沙箱里跑"——Codex CLI。系统级沙箱是合规刚需,运维成本是必须付的。 |
|
|
|
|
| --- |
|
|
|
|
| ## 七、终极决策树:30 秒选出你的框架 |
|
|
|
|
开始
│
├─ 你需要 7×24 运行的多通道 AI 助手?
│ ├─ 是 → OpenClaw(Telegram/Discord/Slack 25+ 通道)
│ └─ 否 ↓
│
├─ 你需要跨会话的语义记忆搜索?
│ ├─ 是 → Hermes Agent(Hindsight PG + pgvector)
│ └─ 否 ↓
│
├─ 你需要在生产环境/CI/CD 中运行且安全合规是第一优先级?
│ ├─ 是 → Codex CLI(系统级沙箱 + 零依赖)
│ └─ 否 ↓
│
├─ 你主要是个人开发/日常编码?
│ ├─ 是 → Claude Code(最简洁,npm install 即用)
│ └─ 否 ↓
│
└─ 不确定 → 按技术栈选:
Python 栈 → Hermes Agent
Node.js 栈 → Claude Code 或 OpenClaw
Rust 栈 / 无运行时 → Codex CLI
八、混合使用:最佳组合
四个框架不是互斥的。最合理的组合策略:
日常编码 → Cursor/Windsurf (IDE Agent, 高频低延迟)
+ Claude Code (终端里的重型任务)
批量重构/CI → Codex CLI (沙箱安全 + 可复现)
长期记忆 → Hermes Agent (跨会话上下文)
对外服务 → OpenClaw (多通道 AI 助手)
一个具体的工作流:
1. 用 Cursor 写代码,Tab 补全处理 80% 的日常编辑
2. 遇到需要跨文件重构时,切到终端 claude -p "refactor auth module"
3. 重构完成后,Hermes 自动记录这次决策("auth 模块用 JWT 替代 session")
4. CI 里跑 Codex CLI 做安全检查(沙箱里跑生成的代码)
5. 对外通过 OpenClaw 的 Telegram Bot 回答用户问题(查 Hindsight 记忆)
九、总结:四个框架教会我们的事
9.1 共同趋势
四个框架在三个方向上走向了同一个终点:
| 趋势 | OpenClaw | Claude Code | Codex CLI | Hermes |
|---|---|---|---|---|
| 子进程隔离 | ✅ CLI Runner | ✅ fork/spawn | ✅ SandboxCommand | ✅ delegate_task |
| 协议标准化 | ACP + MCP | ACP + MCP | ACP + MCP | 自研(待标准化) |
| 项目记忆文件 | SOUL.md | CLAUDE.md | AGENTS.md | SOUL.md + skills/ |
9.2 各自的护城河
| 框架 |
护城河 |
能持续多久? |
| OpenClaw |
380K Star 社区 + 25 通道生态 |
强网络效应,后来者难追赶 |
| Claude Code |
Anthropic 模型独占 + 最简洁接口 |
依赖 Claude 模型优势 |
| Codex CLI |
Rust 系统级沙箱 + 零依赖 |
工程壁垒,复制成本高 |
| Hermes |
pgvector 语义记忆 + 四层防御 |
记忆系统是独一无二的 |
| ### 9.3 给你的一句话建议 |
|
|
| - 如果只装一个 → Claude Code(覆盖面最广,个人开发到小团队都够用) |
|
|
| - 如果装两个 → Claude Code + Hermes(编程 + 记忆) |
|
|
| - 如果装三个 → Claude Code + Codex + Hermes(编程 + 安全 + 记忆) |
|
|
| - 如果全都要 → 四个都装,按场景切换 |
|
|
| 没有完美的框架,只有适合你当前场景的组合。 |
|
|
| --- |
|
|
> 系列完结。 五篇文章,四个框架,一个决策树。从 OpenClaw 的 Gateway 到 Codex 的 Rust 沙箱,从 Claude Code 的 @agent-name 到 Hermes 的语义记忆——希望能帮你在 AI Agent 的战场上少踩坑、快选型。 |
|
|
本文由 admin 原创,转载请注明出处。
评论
0