当前位置: 首页 > news >正文

02 | AI Agent 架构设计:工具系统设计 ——OpenClaw、Claude Code、Hermes Agent对比

02 | AI Agent 架构设计:工具系统设计 ——OpenClaw、Claude Code、Hermes Agent 对比

声明:📝 作者:甜城瑞庄的核桃(ZMJ)
原创学习笔记,欢迎分享,但请保留作者信息及原文链接哦~


前言

基本信息内容
系列AI Agent 架构设计(二):工具系统设计
核心目标工具系统是模型意图到真实操作的桥梁——三个框架如何在扩展能力与控制行为之间取舍
适合读者想理解 Agent 工具调用机制和权限设计的开发者
预计阅读20 分钟

语言模型本身只能输出文字。你让它"帮我删掉这个目录里的临时文件",它能理解这个意图,能输出一段描述该怎么做的文字。但如果没有工具系统,它什么也做不了——它没有手,碰不到文件系统。

工具系统是连接"模型意图"和"真实操作"的桥梁。每次模型决定要采取一个行动,工具系统拦截这个决定,检查它是否被允许,然后执行,把结果返回给模型。

这个桥梁的设计,要同时回答两个方向的问题:

  • 向外扩展能力:Agent 能调用哪些工具,能做什么事,能力边界在哪里。
  • 向内控制行为:谁来决定工具调用是否被允许,危险操作如何拦截,人如何保持对 Agent 行为的控制。

这两个方向的设计取舍,在 OpenClaw、Claude Code、Hermes Agent 三个框架里给出了三种根本不同的答案。


一、工具调用的基本机制

在拆解三个框架之前,先把共同的底层机制说清楚。

所有框架的工具调用都遵循同一个流程:

用户意图 │ ▼ ┌─────────────────┐ │ 模型决策层 │ ← 理解意图,生成工具调用指令 └────────┬────────┘ │ 工具调用请求 ▼ ┌─────────────────┐ │ 权限检查层 │ ← 检查是否被允许执行 └────────┬────────┘ │ 通过检查 ▼ ┌─────────────────┐ │ 工具执行层 │ ← 实际执行操作 └────────┬────────┘ │ 执行结果 ▼ ┌─────────────────┐ │ 结果回传层 │ ← 结果返回给模型 └─────────────────┘ │ ▼ 真实操作(文件、网络、系统…)

这个流程里有一个关键的设计决策点:权限检查发生在哪里,由谁来做。

  • 是在模型层(靠提示词约束)?
  • 是在框架层(靠程序逻辑)?
  • 还是在系统层(靠沙箱隔离)?

三个框架的根本差异,就在这里。


二、三大框架工具系统架构全景

┌────────────────────────────────────────────────────────────────────────┐ │ AI Agent 工具系统:三大框架的架构设计与安全哲学 │ ├──────────────────┬──────────────────────┬─────────────────────────────┤ │ OpenClaw │ Claude Code │ Hermes Agent │ │ │ │ │ │ Unix 哲学 │ 工具即权限单元 │ 工具执行 = 情景记忆输入 │ │ 最大能力 │ 三档自动分级 │ 40+ 内置工具 │ │ 六层权限模型 │ AI 辅助分类器 │ 六种执行后端 │ │ 安全靠配置 │ 安全内聚于工具本身 │ 基础设施级安全隔离 │ ├──────────────────┴──────────────────────┴─────────────────────────────┤ │ 共同底层:工具调用流程 │ │ 用户意图 → 模型决策 → 权限检查 → 工具执行 → 结果回传 │ │ │ │ 关键差异点:权限检查在哪一层?由谁负责? │ └────────────────────────────────────────────────────────────────────────┘

三、OpenClaw:开放优先,安全靠配置

3.1 核心设计哲学:最大能力,按需收紧

OpenClaw 的工具系统设计哲学是:默认给 Agent 最大的能力,让用户自己决定怎么收紧。

这和 Unix 的设计哲学很像——系统给你 root 权限,你自己决定要不要用。

exec是整个工具系统里最关键的工具。它能执行任意 Shell 命令,意味着 Agent 可以做操作系统层面能做的一切——这既是 OpenClaw 强大的根源,也是它安全风险最集中的地方。

rm -rf也是 Shell 命令。

┌───────────────────────────────────────────────────┐ │ OpenClaw 设计哲学与核心能力 │ ├─────────────────────┬─────────────────────────────┤ │ 最大能力,按需收紧 │ exec 能力与风险核心 │ │ │ │ │ 类比 Linux root 权限 │ ┌──────────────────────┐ │ │ 默认给 Agent 最大 │ │ exec │ │ │ 操作空间 │ │ 执行任意 Shell 命令 │ │ │ │ │ │ │ │ 工具执行全景: │ │ ⚠️ 高风险 │ │ │ exec 是核心行行 │ └──────────────────────┘ │ │ 文件编辑 │ │ │ 浏览控制 │ 最大能力 = 最大风险 │ │ 设置更改等 │ rm -rf 也是 Shell 命令 │ └─────────────────────┴─────────────────────────────┘

3.2 六层级联权限模型

OpenClaw 的权限不是简单的"允许/禁止",而是一个六层的级联策略系统:

┌────────────────────────────────────────────────────────┐ │ OpenClaw 六层级联权限模型 │ │ (超级过滤级别防护) │ │ │ │ ┌──────────────────────────────────────────────────┐ │ │ │ 第一层:企业策略 (Global Policy) │ │ │ │ ── 全局最高优先级,所有 Agent 共享 │ │ │ ├──────────────────────────────────────────────────┤ │ │ │ 第二层:供应商策略 (Provider Policy) │ │ │ │ ── 服务提供商级别约束 │ │ │ ├──────────────────────────────────────────────────┤ │ │ │ 第三层:Agent 策略 (Agent Policy) │ │ │ │ ── 每个 Agent 独立的行为约束方法 │ │ │ ├──────────────────────────────────────────────────┤ │ │ │ 第四层:组策略 (Group Policy) │ │ │ │ ── 跨 Agent 组的共享策略 │ │ │ ├──────────────────────────────────────────────────┤ │ │ │ 第五层:沙盒策略 (Sandbox Policy) │ │ │ │ ── 细粒度执行限制 │ │ │ ├──────────────────────────────────────────────────┤ │ │ │ 第六层:子 Agent 继承 (Inheritance) │ │ │ │ ── 继承父级权限,不能突破上层约束 │ │ │ └──────────────────────────────────────────────────┘ │ │ ↓ │ │ 工具调用执行(通过所有层检查) │ └────────────────────────────────────────────────────────┘

工具调用必须通过每一层的检查才能执行。上层策略可以限制下层,下层不能突破上层的约束。

这个设计的架构价值在于:不同的 Agent 可以有不同的权限配置,而不是所有 Agent 共享同一套规则。

基于角色的权限(Role-based Authorization):

Agent 类型权限范围
邮件 Agent只有邮件相关工具权限
开发 Agent更完整的文件系统访问权限
http://www.jsqmd.com/news/711953/

相关文章:

  • 【Python编程-01】Python开发环境搭建(Windows超详细)+ HelloWorld工程实例(新手零踩坑)
  • AI技能框架cortex-ai-skills:模块化构建与管理LLM应用实战
  • 烟台群策电子-FMC_M6678评估板
  • 天赐范式第24天:用微分几何证明:反应速率的本质是“空间拥挤度”,传统量子化学还在跑超算?不需要 DFT!
  • 合成人脸嵌入向量技术:原理、实现与应用
  • YOLO26管道泄漏识别检测系统(项目源码+YOLO数据集+模型权重+UI界面+python+深度学习+远程环境部署)
  • 实时手机检测-通用部署避坑:CUDA版本冲突/Gradio端口占用解决方案
  • 驱动基础知识
  • 哈希与向量:计算机理解现实的两座桥梁
  • vue2+element-UI上传图片封装
  • AI时代程序员真的会被替代吗_一份冷静的岗位分析报告
  • 告别卡顿!WaveTools鸣潮工具箱让你的游戏体验丝滑如新
  • 新手程序员必看:用RAG技术为AI大模型配置知识库,轻松提升能力并收藏!
  • 从 15V 交流到 5V 直流:桥式整流、电容滤波与 LM7805 稳压电源设计解析
  • 盟接之桥®制造业EDI软件:从Forecast到Invoice,打通供应链的“任督二脉”
  • 扩散模型与轨迹规划:提升生成式AI效率与质量
  • 【Python编程-03】从零入门 Python 加密算法!含完整可运行代码 + 场景对比 + 避坑详解
  • 【多线路故障】含sop的配电网故障重构研究(Matlab代码实现)
  • StitchFlow:基于AI的本地化UI原型生成工作流实践
  • 第十七届蓝桥杯省赛c++b组题解
  • 高通X105调制解调器:5G Advanced与6G关键技术解析
  • 如何用GHelper轻松掌控华硕笔记本性能:5分钟快速配置终极指南
  • 整个 AI 项目从本地 → 部署到服务器
  • 工业级Cat-1导轨式DTU USR-DR154/DR152(口红DTU)技术规范、核心优势与标准化应用场景白皮书
  • 被低估的 .NET 开源项目:AngleSharp,优雅的 HTML 解析神器
  • 10 分钟让网页颜值翻倍(底层+手写+AI提示词)
  • MySQL如何防止通过权限提升攻击_严格控制SUPER权限分配范围
  • 5分钟极速部署NVIDIA Riva ASR语音识别服务
  • YOLO26桥梁缺陷识别检测系统(项目源码+YOLO数据集+模型权重+UI界面+python+深度学习+远程环境部署)
  • 初步了解安卓逆向