五款 Coding Agent 深入对比:Claude Code / Hermes Agent / Codex / OpenCode / PI

先说结论:这五个产品看似同属"终端 AI 编程代理”,实际上分成了三个不同的物种。

  • Claude Code 和 Codex 是厂商旗舰,分别深度绑定 Anthropic 和 OpenAI 的最强模型与订阅体系;
  • pi 和 opencode 是开源阵营,一个走“极简可组合内核”路线,一个走“功能齐全的开源平替”路线;
  • Hermes Agent 则根本不是传统意义上的编程工具,它是一个跨消息平台常驻的自我学习型通用代理,写代码只是它能力之一。

一、定位与核心理念

Claude Code(Anthropic)是商用闭源产品,定位是“深度绑定 Claude 模型的工程化编程代理”。它的核心竞争力不在 CLI 本身,而在于围绕模型能力构建的一整套上下文工程体系:hooks 拦截工具调用、subagent 并行委派、skills 打包指令、MCP 接入外部服务、文件式持久记忆、可恢复的会话压缩机制。它是目前“上下文管理做得最精细”的一个。

Codex(OpenAI)定位类似但哲学不同,更强调轻量与本地沙箱。早期是 TypeScript 写的,后来整体用 Rust 重写为独立二进制,启动快、资源占用小。认证深度绑定 ChatGPT 订阅(Plus/Pro/Business/Enterprise 都能用),并衍生出了 VS Code 插件、桌面 App、云端 Codex Web 等一整个矩阵。它的沙箱机制(macOS Seatbelt、Linux Landlock/seccomp)是内建的,走“默认安全”路线——这与 pi 形成了鲜明对照。

pi(Mario Zechner / badlogic 的 pi-mono)是五个中最“纯粹”的开源项目,MIT 协议,理念是可自我扩展的最小内核。它把系统拆成三个可独立复用的包:统一多供应商 LLM API 层(pi-ai)、带工具调用的 agent 运行时(pi-agent-core)、差分渲染的终端 UI 库(pi-tui)。最特立独行的一点是它刻意不内置权限系统——默认以你的用户权限裸跑,需要隔离时官方推荐容器化方案(Gondolin 微 VM、Docker、OpenShell 策略沙箱)。它还投入了大量精力做供应链加固(精确锁版本、min-release-age 防投毒)和开源会话数据集共享(发布到 Hugging Face 用于真实任务评测)。目前 100k+ stars,社区热度极高。

opencode(SST 团队,注意 GitHub 组织已迁移)是“开源界的 Claude Code",MIT 协议,20 万+ stars 是五个中最多的。它的卖点是开箱即用的完整体验:内置 build/plan 双代理一键切换、桌面应用(Beta)、全平台安装渠道(brew/scoop/choco/AUR/nix)、20 多种语言的文档。技术栈是 Bun + TypeScript 多包 monorepo。如果你想要“免费版 Claude Code 且模型随便换”,它是最直接的选择。

Hermes Agent(Nous Research)宣传语是"the agent that grows with you"——自我改进型通用代理。它和前四者不在同一赛道:入口是终端 TUI 加 TG、Discord、Slack、WhatsApp、Signal 等消息平台(通过统一 gateway 进程);执行后端有七种(本地、Docker、SSH、Singularity、Modal、Daytona、Vercel Sandbox),其中 Modal 和 Daytona 支持 serverless 常驻(空闲休眠、按需唤醒)。核心差异点是闭环学习:自动从经验中沉淀技能(兼容 agentskills.io 标准)、FTS5 全文检索历史会话、跨会话构建用户画像。

二、架构与模型支持

从架构复杂度和模型绑定度两个维度看,五者的分布大致如下:

quadrantChart title "五款 Agent 的定位分布" x-axis "模型强绑定" --> "模型中立" y-axis "极简内核" --> "全功能平台" "Claude Code": [0.15, 0.7] "Codex": [0.2, 0.45] "pi": [0.85, 0.2] "opencode": [0.8, 0.75] "Hermes Agent": [0.7, 0.9]

模型支持方面差异很大:

  • Claude Code 原生只跑 Claude 系列(可通过 LiteLLM 之类的代理强行接其他模型,但官方体验是围绕 Claude 设计的);
  • Codex 主要跑 GPT-5 系列,认证以 ChatGPT 登录为主、API key 为辅;
  • pi 的 pi-ai 层统一封装 OpenAI/Anthropic/Google 等供应商,切换模型是内置能力;
  • opencode 模型中立,配哪个 API 就用哪个;Hermes 支持 Nous Portal、OpenRouter、OpenAI、自建端点,用 hermes model 一条命令切换,是最彻底的模型无关设计。

架构形态上,Codex 的 Rust 单二进制 vs pi 的“三个可复用 npm 包”是两个极端:前者追求交付物干净,后者追求让开发者能把 agent 能力嵌入自己的产品。opencode 和 Hermes 都是多包 monorepo,但 opencode 聚焦开发工作流,Hermes 则有 gateway 进程 + 七种执行后端这种“平台化”架构。

三、安全与权限模型

这是五者分歧最尖锐的维度:

工具 权限/沙箱机制 默认安全程度
Claude Code 内建权限系统,工具调用分级审批,支持沙箱模式 高,默认需用户确认危险操作
Codex 内建沙箱(macOS Seatbelt / Linux Landlock+seccomp),审批分级 高,默认安全
opencode plan 代理只读 + bash 需审批;build 代理全权限 中,靠双代理模式分层
Hermes 命令审批机制 + 隔离执行后端(Docker/Modal 等) 中,可选隔离
pi 无内建权限系统,裸跑用户权限 低,需自行容器化

pi 的“无权限系统”不是疏忽而是立场:作者认为权限弹窗给用户虚假的安全感,真正的隔离应该由操作系统层(VM/容器)解决,所以官方文档直接给出三种容器化方案。Claude Code 和 Codex 走的是“默认安全、逐级放权”,pi 走的是“信任内核、外置隔离”。对个人开发者 pi 的方式很爽快,但在企业环境里前者明显更合规。

四、扩展性与学习/记忆能力

扩展机制上,五者其实正在趋同:MCP 已经成为共同标准(五者全部支持),skills 概念也在收敛(Claude Code 的 skills、pi 的自扩展、Hermes 兼容 agentskills.io)。差异在于深度:Claude Code 的 hooks + subagent + skills + 插件的组合表达力目前最强;pi 的扩展哲学是“让 agent 给自己写扩展”;Hermes 的技能系统带自动沉淀和自我改进闭环,配合 Honcho 用户建模,是唯一把“跨会话成长”作为一等公民的。

记忆机制同样分层:Claude Code 有文件式持久记忆加自动会话压缩(长任务不丢上下文);Hermes 有 FTS5 会话检索加用户画像;opencode 和 Codex 相对朴素;pi 则把记忆交给使用者自己组合实现。

五、选型建议

具体怎么选,取决于你是谁、在什么约束下工作。
如果你所在团队已采购 Anthropic 订阅、追求最强的上下文工程和审批安全,Claude Code 仍是综合能力最强的选择;如果你用 ChatGPT 订阅、喜欢轻量本地沙箱,Codex 的 Rust 二进制和沙箱机制很扎实;如果你想省钱/用国产或本地模型、又要开箱即用的完整体验,opencode 是最省心的开源平替;如果你是 agent 开发者、想把 agent 内核嵌进自己产品或研究 agent 本身,pi 的三包解耦架构和开源会话数据集是独一无二的资源;如果你要的不只是编程,而是一个挂在 TG 上 7×24 小时帮你干活、越用越懂你的常驻助理,Hermes Agent 开辟的是另一条赛道。

posted @ 2026-09-18 19:44  江一乐  阅读(115)  评论(0)    收藏  举报