OpenClaw 及新兴 Claws 框架底层架构解析
OpenClaw 在 84 天内狂揽 20 万 GitHub Stars,成为史上增长最快的开源仓库之一。现在很多人用一台老游戏本就能跑起全自主 AI 代理:在 Telegram 发一条消息,就能让它帮你管理整个邮箱、控制智能家居,甚至拍 TikTok 爆款视频。
但绝大多数人在用 OpenClaw,却根本不知道它到底是怎么工作的。如果你只想装好就用,那没问题。但如果你想自己基于它开发,或者至少明白'代理读邮件、自动回信'背后到底发生了什么,那你需要看懂它的架构。
我们从最简单的'LLM 调用工具'开始,一步一步搭出一个完整的自主 AI 代理。同时对比 6 个真实开源仓库,从 500 行 TypeScript 到 40 万行代码,看看它们如何用不同方式实现同一套核心理念。
Step 1:原子 —— 会调用工具的 LLM
所有 AI 代理,不管多复杂,都从同一个原子开始:一个能调用工具的语言模型。

LLM 收到消息后,判断自己不能光聊天,得干活,于是发出'工具调用'。比如:'执行这个 bash 命令''读这个文件''上网搜一下'。工具执行完返回结果,LLM 再决定下一步。
没有工具调用之前,LLM 只是高级自动补全机,只能'说'不能'做'。工具调用彻底改变了游戏规则,把聊天机器人变成了真正能干活的代理。
Claude Agent SDK(后面几个仓库都靠它)把这件事简化到极致:你只给一句指令('把 auth.py 里的 bug 修了'),SDK 就自动完成整个循环:读取文件 → 分析问题 → 修改代码 → 跑测试 → 直到任务完成。你不用自己写循环,Claude 帮你搞定。
这就是原子。后面所有东西,都是在它上面叠加的。
Step 2:加耳朵和嘴巴 —— 消息通道层
光会调用工具还不够,如果只能在终端跟它聊天,那太鸡肋。你需要给它耳朵(接收消息)和嘴巴(回复消息),接在你已经在用的平台上。

这就是 Channel(通道) 的作用。
通道就是一个适配器,把 Telegram、WhatsApp、Discord、Slack 等平台的格式,统一翻译成代理能懂的标准格式,反之亦然。
大多数仓库还会在通道和代理之间加一个 消息总线(Message Bus) —— 一个简单的队列,避免慢吞吞的 LLM 响应把新消息堵住。
消息流超级清晰: Telegram 消息 → 通道适配器 → 标准化后扔进总线 → 代理捡起来思考、调用工具 → 把回复扔回总线 → 通道适配器发回 Telegram。
所有 Claw 仓库都遵循这个模式,区别只在于支持多少通道、路由怎么管。
Step 3:代理循环 —— 心跳
代理循环才是聊天机器人和真正代理的分水岭。每次收到消息,它都会跑这个循环:

- 从总线接收消息
- 思考下一步(调用 LLM)
- 执行决定(调用工具)
- 观察结果
- 判断:任务完成?还是继续循环?
- 完成后回复





