乐于分享
好东西不私藏

花一周拆完OpenClaw源码,一文讲透28万Star背后的核心架构

花一周拆完OpenClaw源码,一文讲透28万Star背后的核心架构

OpenClaw火了之后,我在春节也加入了养虾大军,每天研究龙虾到底能干点啥。

我让它帮我写程序、爬推特、跑各种自动化,期待它像个万能员工一样什么都能搞定。

结果发现好像不太对,它的产出并没有我用claude code那么高,说好的AI数字员工去哪了???

我百思不得其解,但转念一想,它毕竟是有20万+Star的项目,能火到这个程度,一定是有很多优点的。

于是我花了一周去拆解它的源码,想搞清楚:它到底怎么让AI做到 7×24 小时运行的。

今天想把我搞明白的东西跟大家聊聊:OpenClaw为什么能火、它的核心架构是什么、以及我自己的3个长期判断。

1. OpenClaw为什么能火

拆完源码之后,我觉得OpenClaw能火,核心是两个要素叠加在一起。

第一个要素:它真正实现了一个可以 7×24 小时持续运行的 AI Agent 系统。

换句话说,OpenClaw不仅仅是一个聊天机器人,它更像是一个AI员工的操作系统。

AI模型负责提供智能,OpenClaw负责提供运行环境。

OpenClaw的架构由三个模块组成:Agent Loop、Tools、Gateway。

Agent Loop是龙虾的大脑,它负责决策和思考,它会根据当前任务判断下一步要做什么,并在需要的时候调用各种工具来完成行动。

Tools是龙虾的手脚,为Agent Loop提供各种能力,比如浏览网页、执行命令、调用 API、处理文件等,让龙虾真正具备干活的能力。

Gateway是龙虾的身体,它让整个系统能够持续在线,接收来自不同渠道的消息(比如 Telegram、飞书等),并把任务交给Agent Loop处理,再把结果返回给用户。

简单来说:大脑负责思考和决策,手脚负责执行任务,身体负责保持在线和对外沟通。

当这三部分咬合在一起,一个真正7×24小时不下班的AI员工才算完整出现。

OpenClaw最有价值的地方,就是这套让AI Agent能长期运行的系统架构。

第二个要素:开源。

开源带来了三样非常关键的东西:

1.信任:所有数据都运行在自己的机器上,用户不需要把任务和数据交给一个黑盒服务。

2.生态:社区不断贡献新的 Tools 和 Skills,让能力持续扩展,逐渐形成一个自增长的飞轮。

3.分发:GitHub 本身就是一个巨大的免费分发渠道,项目可以在开发者社区中快速传播。

当7×24 小时运行的 AI 员工遇上开源生态,这两个因素叠加在一起,才构成了 OpenClaw 能拿到20万+Star 的底层逻辑。

少了任何一个都很难火起来。

如果不开源,用户不会信任,也很难形成生态;如果没有这套优秀的架构设计,即使开源了,也不会有人真正用起来。

2. OpenClaw的核心架构是什么

OpenClaw的核心架构是由Agent Loop、Tools、Gateway构成的。

其中Agent Loop、Tools并不是OpenClaw独有的,Claude Code和Codex都有,Gateway是OpenClaw独有的模块。

那让我们先从Agent Loop开始说起吧。

2.1 Agent Loop:龙虾的大脑

Agent Loop,是AI接到一个任务之后,自己一步一步把事情做完的机制。

以写一个登录页面举例,AI做事情的过程大概是这样的:

  1. 1. AI先思考:要做一个登录页面,我首先需要创建一个HTML文件。
  2. 2. AI调用工具:调用写文件工具,把HTML代码写出来。
  3. 3. AI检查结果:HTML文件已经创建成功,但现在页面还没有样式。
  4. 4. AI再次思考:下一步需要补一个CSS文件。
  5. 5. AI继续调用工具:把CSS代码写出来。
  6. 6. AI再次检查结果:页面样式有了,但还缺少表单验证逻辑。
  7. 7. AI继续判断下一步:再补一个JS文件,处理输入校验和提交逻辑。
  8. 8. AI继续执行:把JS文件写出来。
  9. 9. AI反复循环:不断重复思考—调用工具—检查结果—决定下一步,直到整个登录页面完成。

这整套循环,就是Agent Loop。

OpenClaw的Agent Loop是基于Pi SDK的,这是一个独立的开源项目:https://github.com/badlogic/pi-mono

Agent Loop不是OpenClaw的独家优势,Claude Code和Codex都有Agent Loop的逻辑,光从脑子的设计来看,OpenClaw跟Claude Code、Codex没什么本质区别。

2.2 Tools:龙虾的手脚

如果说Agent Loop是龙虾的大脑,那么Tools就是它的手脚。

大脑负责思考,而手脚负责把事情真正做出来。

从结构上看,OpenClaw的工具体系大致可以分成三层。

第一层是基础工具。

这是最底层的一些能力,比如:读写文件、执行命令、浏览网页、搜索和抓取信息,这些工具让 AI 能够真正操作电脑,而不是只停留在聊天里。

第二层是 Skills。

Skills本质上是在教AI怎么像人一样干活。

它会告诉AI在任务场景下应该怎么做、应该调用哪些工具、步骤是什么。

比如:写代码前先扫描项目结构、修改文件前先做备份、写完代码之后自动运行测试,这些经验都可以写成 Skills,让AI在类似任务里自动复用。

如果大家对Skills到底是什么感兴趣,可以看看我之前做的:漫画版图解Skills

第三层是外部工具。

这一层主要是接各种第三方服务,比如:调用外部 API、接入 SaaS 服务、扩展新的工具能力。

所以从底层来看,OpenClaw 的手脚并不是简单的一堆工具,而是一整套:基础工具 + Skills + 外部扩展组成的能力体系。

但工具体系本身并不是OpenClaw的独家优势,像Claude Code和Codex,都有同样的工具体系。

所以严格来说,Agent Loop和Tools都不是OpenClaw的杀手锏。

真正让OpenClaw和其他AI工具拉开差距的,是下面这一层。

2.3 Gateway:龙虾的身体,OpenClaw真正的差异化所在

龙虾之所以能够一直在线、还能主动干活,背后其实都是Gateway在起作用。

它让AI从一个你叫它才动的工具,变成了一个一直在线、随时能干活的员工。

那Gateway具体做了什么?拆开来看,其实就是六件事。

第一,不关机。

龙虾是常驻在线的,就算系统崩了也会自动恢复,重启之后还能记住之前的对话。

比如凌晨3点服务器突然挂了,Gateway会自动把龙虾重新拉起来,并恢复之前的对话上下文,继续处理那些还没做完的任务。

等你第二天早上再来看,它就像从来没有断过一样,一直在工作。

第二,接所有平台。

Telegram、飞书、钉钉等20多个平台的消息,都可以统一接收和处理。

这意味着什么?你不需要为飞书单独写一个 bot,也不需要再为钉钉写一个 bot。

Gateway在中间做了一层消息适配,不管消息来自哪个平台到AI 这里都会被转换成同一种格式。

你在飞书上给它发消息,它就在飞书上回复;在钉钉上发,它也会在钉钉上回你。

第三,会话隔离。

每个聊天窗口都是独立的,你和它的对话不会被别人的任务干扰。

比如你让它帮你查一份数据,同时又在另一个群里让它写一段文案。这两个任务在Gateway里是完全隔离的,各自有各自的上下文,不会串。

就像两个独立的员工在分别处理两件事,各干各的。

第四,排队控制。

同一时间只处理一个任务,不会因为消息太多而搞混。

比如说在一个飞书群里,我和同事同时发消息给龙虾,Gateway的处理策略很简单:谁先来做谁的,后面的任务排队。

这个设计看起来有点笨,但其实很聪明。

因为 LLM 的推理本来就不太适合并发,同时处理多个任务反而更容易出错,最后可能两个任务都做不好。

第五,心跳巡查。

心跳巡查是龙虾可以主动做任务的核心。

OpenClaw的主动执行能力主要靠两套机制:Heartbeat负责周期性巡检,Cron负责精确定时调度。

Gateway会定时主动检查有没有待办任务,如果有它就自己去执行,不需要你催它。

举个例子,你让它每天早上8点整理一份AI资讯摘要推送给你。

到了时间,Gateway的心跳机制就会自动触发这个任务,AI会自己去搜集信息、整理内容,然后发到你的飞书上。

你什么都不用做,打开飞书就能看到结果。

不过这里也有一个需要注意的地方:有时候 AI 会口头答应你已经配置好任务了,但实际上压根没写到待办里,这也就是很多时候龙虾不主动执行任务的原因。

第六,记忆刷盘。

当对话太长需要压缩时,它会先把重要内容存到记忆文件里,再进行压缩,避免关键信息丢失。

这点做的蛮好的,当我们和AI聊了很长一段时间,讨论了项目方案,也确认了不少关键决策。

如果直接压缩旧对话,这些结论就可能丢掉,下次它又得重新问我们。

Gateway的做法是:在压缩之前先把重要的结论和决策存到记忆文件里,这样即使上下文被压缩,关键信息也能随时找回来。

这六件事,每一件单独拿出来都不算什么高科技。

但恰恰是这些不酷、不性感的事情,组合在一起,反而形成了一道真正的壁垒。

2.4 OpenClaw vs Claude Code:两种不同的AI Agent路线

如果用龙虾和Claude Code来对比,差异其实很清楚。

在编程能力和Agent 能力上,Claude Code毫无疑问是第一梯队,它就是目前最强的Agent工具之一。

但Claude Code本质上是一个本地工具:你打开它,它帮你干活;任务做完,你关掉它,它也就停在那里。

它不会一直在线,也不会主动执行任务,而且还是闭源产品。

OpenClaw走的是另一条路线。

虽然它编程能力不如Claude Code,但它的目标是做一个长期在线的AI员工系统:可以一直运行、接入多个平台消息、主动执行任务,而且完全开源可以随意定制的Agent。

这两者其实不是竞争关系,而是不同定位的产品。

Claude Code像一把最锋利的手术刀,OpenClaw 更像一把开源的瑞士军刀。

3. 我自己的3个长期判断

看完OpenClaw的技术架构后,除了搞明白了技术层面的东西,我还有3个更深的思考,接下来和大家分享一下。

3.1 创新不一定是技术突破

我把OpenClaw的所有模块都看了一遍,发现了一件很有意思的事:它没有哪个模块是算法级的技术突破。

但这并不意味着龙虾用的技术不好,从工程实现的角度看,龙虾每个模块用的其实都是已经成熟的技术。

Agent Loop直接调用的是Pi SDK,不需要自己从零造一个推理引擎。

Gateway做的是精细化的系统集成,把常驻在线、消息路由、会话管理这些已有的技术方案组合在一起。

Tools也是一样:基础工具、Skills、第三方服务接入,每一个单拿出来都不算新。

但OpenClaw把这些东西封装在一起,让它们彼此咬合、稳定运行,变成一个真正能用的产品,这件事本身就已经很厉害了。

我觉得这个OpenClaw这个事情对我是很有启发的,创新做出好的产品不只有技术突破这一条路

把已有的东西整合好、打磨到可用、让用户真正用起来,这本身也是一种创新,而且是非常有价值的创新。

3.2 AI技术再牛,场景是前提

我刚开始用 OpenClaw 的时候,几乎什么都想让它干:写程序、爬推特、做各种自动化。

结果很快发现,它好像什么都干不明白。

当我总结复盘,并且和朋友交流后才发现:问题其实不在龙虾,而在我没有找到合适的场景。

于是我换了个思路,不再问龙虾能干什么,而是看龙虾比Cluade Code擅长做什么。

龙虾的优势在于:长期在线、多平台接入、可以主动触发任务。

围绕这些优势去找场景,它马上就变得好用了。

比如用它跑定时任务,每天自动整理AI资讯通过飞书推送给我,用它做飞书知识库助手,帮我汇总零散想法、查文档内容。

在拆解需求的时候,我们要想清楚自己到底用什么。

以飞书知识库阅读为例,如果只是查询内容,那其实飞书自己的AI功能已经做的很好了。

如果还希望AI能够记录群里的查询需求、判断查询结果的满意度,那龙虾可能会更合适一点。

AI 技术再怎么厉害,应用起来场景依然是一切的前提。

我们在用AI产品之前,要先想清楚自己的需求是什么,再去找合适的工具。

3.3 不要焦虑AI的飞速发展,先用起来最重要

最后想聊一个跟技术无关的话题,过年期间我看到的不仅是龙虾爆火,还有大家对于AI这一波的焦虑和迷茫。

作为一个AI行业的从业者,我自己也深深的感受到这种焦虑。

AI技能的更新迭代速度太快,看起来满眼都是红利,实则很难抓住。

所以我在想,上一波吃到红利的那些人,他们有什么共性值得我们参考学习吗?

我去问AI,我们俩讨论了很久。

最后我们得到一个很简单的结论:吃到红利的人,其实一直都在那个行业里。

不管PC互联网还是移动互联网,又或者抖音、投资市场,最起码吃到红利赚到钱的前提是,你要一直在。

如果电脑都不会用,那PC互联网是注定没法分一杯羹的;如果从不刷短视频,那抖音的红利期也和你我无关。

所以我想,AI的基础船票莫过于:选一个AI工具,真正用起来,把某一件事做好。

没有这张船票,讨论什么OpenClaw、什么Agent都没有意义。

先用起来,用好了,再看从哪里能获得更大的收益。

📬 如果你想第一时间收到更新,也可以给我一个星标 ⭐

🌱 看完这篇文章觉得有帮助的话,欢迎和我一起去腾讯公益捐一笔,为孩子们出一份小力~👇

本站文章均为手工撰写未经允许谢绝转载:夜雨聆风 » 花一周拆完OpenClaw源码,一文讲透28万Star背后的核心架构

评论 抢沙发

4 + 5 =
  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址
×
订阅图标按钮