找回密码
立即注册
搜索
热搜: Java Python Linux Go
发回帖 发新帖

2118

积分

0

好友

276

主题
发表于 昨天 06:45 | 查看: 8| 回复: 0

OpenClaw 是目前最流行的开源 AI Agent 平台。

我用了很久。但我越用,越觉得可以做得更好。所以,我决定自己写一个。用 Rust。从零开始。这就是 clawhive

起因

我想用 OpenClaw 来实现多 Bot 和多 Agent 协作——让多个 AI 机器人各司其职,协同完成复杂任务。

但 OpenClaw 最初版本的 Channel 设计并不能很好地匹配我的需求(后来支持了),需要对它进行扩展才可以。

改着改着,我萌生了一个念头:不如自己写一个吧。

当时市面上开源的 Rust 版 AI Agent 几乎为零。有意思的是,等 clawhive 发布的时候,Rust 版的 Agent 框架已经如雨后春笋般冒了出来。大家想到一块去了。

我日常工作中已经用了两年 Rust,对这门语言的内存安全和性能表现有足够的信心。于是,说干就干。

OpenClaw 的三个痛点

在使用 OpenClaw 的过程中,我遇到了三个绕不过去的问题。这些问题也坚定了我自己造轮子的决心。

第一,安全是后来才补的。

OpenClaw 早期根本没有认真考虑安全沙箱。Agent 可以执行任意命令、访问任意文件。

最近的版本终于加入了安全沙箱。但升级策略有点一刀切——默认开启沙箱,几乎拦截所有风险行为。结果社区里很多人直呼“OpenClaw 变傻了”。

这其实是个两难:不加沙箱,不安全;加了沙箱,又太死板。安全这个东西,要么从第一天就设计进去,要么永远都是补丁。

第二,稳定性堪忧。

这可能是因为 OpenClaw 迭代太快了,也可能是架构层面的问题。具体表现有两个:

一是配置文件很脆弱。你稍微改一下配置,系统就可能崩溃。对于一个需要长期运行的服务来说,这是不可接受的。

二是“空转”问题。让 OpenClaw 写简单代码还行,一旦任务复杂起来,它就开始“演戏”——告诉你它正在工作,实际上什么都没做。它说得煞有介事,你以为它在干活,其实它在原地打转。

clawhive 的第一个版本就是用 OpenClaw 写的。一开始正常一切,但过了一会就停滞了。更离谱的是,你问进展,它煞有介事地答复你在干着呢。最后,我换成 OpenCode 才完成了第一个版本。

第三,资源消耗惊人。

有一次我发现 OpenClaw 的 Gateway 响应越来越慢,一查不要紧:

15 个进程,总内存占用 3.7GB!

其中 Gateway 主进程独占 800MB,外加一堆 Chrome 渲染进程,每个都是 300MB 级别。

3.7GB!就跑了一个 Agent 网关。

同一台机器上,clawhive 跑着同样的多 Bot 服务:

1 个进程,48MB。

你没看错。48MB。差了将近 80 倍。

这就是我不喜欢用 TypeScript、Python 这类语言,而选择 Rust 的原因。我追求的是轻量和极致的性能表现。臃肿?不好意思,是可忍孰不可忍!

Rust 特别适合 AI 时代。它编译出来的二进制文件小、内存占用低、没有 GC 停顿、并发模型优秀。对于需要 7×24 稳定运行的 Agent 服务来说,Rust 是对 LLM 应用最友好的语言,目前没有任何对手。

但 OpenClaw 依然值得尊敬

说了这么多痛点,但我必须承认:OpenClaw 是先行者,是标杆。

它的理念是先进的:把 IM 和 Agent 进行了完美的结合,让用户通过日常使用的聊天工具就能驱动 AI Agent 完成各种任务。

它提供了很多实用的功能,能完成 Claude Code、Codex、OpenCode 之类产品做不到的事情。

它的迭代速度令人敬佩,隔三岔五就有新版本发布。

作为开源 AI Agent 领域的先驱,OpenClaw 培育了一个活跃的社区生态,积累了大量的 Skill 和使用场景。没有 OpenClaw 在前面趟路,就不会有 clawhive。

clawhive:从第一天就想清楚的事

既然要重写,就不是简单地换个语言重新实现一遍。那没有意义。我要做的,是解决上面这些问题,同时走一条不同的路。

安全,从第一行代码就内置

clawhive 从第一天就设计了两层安全架构:不可绕过的硬基线防护 + 第三方 Skill 的权限声明机制。

不是 Docker,不是虚拟机,不是WASM(因为现有脚本要重新编译才能用),而是自己实现的一个极简的、零开销的权限沙箱,因为我要的是轻量。细节在架构部分展开。

一个二进制文件,16MB

clawhive 编译出来就是一个静态链接的二进制文件。

不需要 Node.js,不需要 npm,不需要 Docker。没有任何依赖。

16MB。丢到树莓派上都能跑吧?

运行时内存占用 48MB 级别。没有垃圾回收的停顿,没有意外的内存膨胀。

这就是 Rust 给你的底气。

有限执行:不允许失控

每个 Agent 都有明确的资源边界:

  • Token 预算上限
  • 执行超时限制
  • 子 Agent 递归深度限制

不会有无限循环。不会有天价账单。不会有一个 Agent 把整台机器的资源吃光。

定位不同,取舍不同

简单地模仿 OpenClaw,没有意义。clawhive 的定位从一开始就不同。

OpenClaw 是 to C 的——个人 AI 助手。

clawhive 是 to B 的——面向企业的 AI Agent 基础设施。

OpenClaw 的核心场景是:你有一个 AI 助手,它帮你聊天、写代码、查资料。一个人,一个助手。它在这个场景下做得非常好。

clawhive 当然也能做个人助手,但它的定位不止于此。

它可以作为企业内部的 AI 中枢,统一管理和调度多个 AI Agent,让不同的 Agent 服务于不同的业务场景。

它的 Agent 引擎可以单独提取出来,嵌入到任何软件中,作为一个核心组件运行。

有所为,有所不为。clawhive 不会去复刻 OpenClaw 的每一个功能。定位不同,取舍也不同。有些功能不做,是因为不在路线图上;有些功能还没做,是因为时间还没到。

未来的软件,一定是基于 Agent 构建的。clawhive 的 Agent 引擎,就是为这个未来准备的可复用组件。

坦承差距

clawhive 目前还是 Alpha 版本,在很多方面确实不如 OpenClaw。这一点必须坦率地承认。

它还有不少 bug,很多功能没来得及充分测试。

它没有 OpenClaw 的 Node 概念(可视化工作流编排)。

内置工具和 Skill 数量远不及 OpenClaw,第三方 Skill 生态更是从零起步。

在复杂任务的推理能力上,实现还比较粗糙,不够聪明。错误处理、边界情况的覆盖也有很多不足。

这些差距是客观存在的。

原因也很简单:这个项目从想法诞生到现在,满打满算也就两个礼拜的开发时间。想法诞生于春节前,春节期间停工,节后继续,很多时间还是业余时间在写。一个人的精力终归有限。

但我不想拿这些当借口。差距就是差距,慢慢追。

架构一览

整个项目由 12 个独立的 Rust crate 组成,每个模块职责单一、边界清晰。

clawhive 多通道AI代理系统架构图

挑几个有意思的说。

两层安全沙箱。 第一层是硬基线——访问内网、读写 SSH 密钥、执行危险命令等行为,永远被禁止,没有例外。第二层是权限声明——第三方 Skill 必须明确声明需要哪些权限,没声明的一律拒绝。

安装 Skill 时强制安全扫描,运行时遇到风险操作会暂停让用户决定是否放行。既不像 OpenClaw 那样一刀切,也不会放任不管。如果你确实需要在受信任的环境里裸奔,加个 --security=off 参数就行——但除非你知道自己在干什么,否则别这么做。

ReAct 推理循环 + 防空转。 Agent 的“大脑”是一个 ReAct 循环:感知 → 思考 → 行动,如此往复。每轮循环有硬性的 10 次迭代上限,超了就强制停止。不会出现 Agent 在那里“假装干活”无限空转的情况。

LLM 智能路由与故障转移。 支持十余家 LLM 提供商(Anthropic、OpenAI、Gemini、Azure、Ollama 等)。关键是内置了故障转移链:主模型挂了,自动切备用模型。不同故障类型有不同的冷却时间——限流等 60 秒,账单问题等 5 分钟。恢复后自动切回。对用户来说,整个过程是无感的。

事件总线驱动。 所有模块之间通过一个发布-订阅事件总线通信。消息进来、回复就绪、需要人工审批、定时任务触发——全部是事件。模块之间完全解耦,想加新功能只需要订阅对应的事件。

实时仪表板。 终端里跑一个 clawhive dashboard,就能实时看到所有 Agent 的运行状态、事件流、会话日志。同时也提供 Web 管理界面,浏览器里就能完成所有配置。

三层记忆系统。 借鉴了 OpenClaw 的设计——会话日志(工作记忆)、每日文件(短期记忆)、MEMORY.md(长期记忆),由海马体 + LLM 定期把短期记忆提炼为长期记忆。Memory 是 Agent 的核心模块之一。它没做好,Agent 就会表现得像白痴。目前基本够用,后续会重点深入优化。

Coding Agent 模式。 clawhive 内置了一个 clawhive code 子命令,目标是做一个类似 Claude Code、OpenCode 的编码助手。这是 OpenClaw 没有的。我很喜欢 OpenCode,但它的资源消耗实在太大了。我想试试用 Rust 的轻量优势,把这个编码体验做好。

多渠道适配。 一套 Agent,同时服务 Telegram、Discord、Slack、WhatsApp、iMessage、HTTP/WebSocket。配置一次,全平台可用。

未来的方向

clawhive 不只是一个聊天机器人框架。

在它的架构基础上,可以扩展出各种垂直领域的 Agent 服务。比如 AI DevOps、BI 数据分析、CI/CD、客服工单——这些只是我能想到的方向。你完全可以根据自己的业务场景去想象。

clawhive 的多渠道适配 + Skill 系统 + 事件调度,已经具备了支撑这些场景的基础架构。加入领域知识库,结合知识图谱,配置专属的 Skill,一个通用的 Agent 平台就变成了垂直领域的智能服务。这才是 Agent 真正有价值的地方——不是聊天,而是干活。

最后

clawhive 是 MIT 协议的开源项目,还在活跃开发中。

项目地址:https://github.com/longzhi/clawhive

欢迎 star,欢迎 fork,欢迎提 issue。

如果你有想法、有建议,或者想亲自动手 Vibe Coding 也非常欢迎——毕竟,clawhive 本身就是 100% Coding Agent 的产物。项目中的所有代码,均由 Coding Agent 完成。就连你正在读的这篇文章,也是。

这次从 OpenClaw 到 clawhive 的 开源实战,让我对构建一个现代的、企业级的 开源AI Agent平台 有了更深的理解。如果你也对 Rust 或 AI Agent 技术感兴趣,欢迎到 云栈社区 交流探讨。




上一篇:Saikuro跨语言IPC库与Rust文档裸URL检测工具技术动态
下一篇:基于 Rust 构建高性能大语言模型应用:内存安全与异步并发的实战解析
您需要登录后才可以回帖 登录 | 立即注册

手机版|小黑屋|网站地图|云栈社区 ( 苏ICP备2022046150号-2 )

GMT+8, 2026-3-10 09:33 , Processed in 0.513561 second(s), 42 queries , Gzip On.

Powered by Discuz! X3.5

© 2025-2026 云栈社区.

快速回复 返回顶部 返回列表