从 2025 年底到 2026 年初,短短两个月,OpenClaw 衍生出了至少 6 个重写版本。这不是偶然,而是技术债积累到临界点的必然爆发。
这篇文章深入分析:原版 OpenClaw 为什么这么臃肿?各 fork 还缺什么?2026 年的趋势是什么?会不会出现统一标准?
原版 OpenClaw 的技术债
OpenClaw 的问题不是功能不够,而是历史包袱太重。
1. 代码膨胀
43 万行 TypeScript 代码,这是怎么来的?
早期快速迭代:
- 2024 年初,OpenClaw 只是个简单的 Telegram bot
- 为了快速验证想法,直接在主分支上加功能
- 没有模块化设计,所有代码堆在一起
功能堆砌:
- 技能市场、插件系统、Web UI、多平台支持、子代理、心跳任务...
- 每个功能都是独立开发,没有统一架构
- 大量重复代码(每个平台都有自己的消息处理逻辑)
依赖爆炸:
- node_modules 几百 MB
- 很多依赖只用了一个函数,但引入了整个库
- 依赖之间的依赖(transitive dependencies)更多
结果:
$ cloc openclaw/
Language files blank comment code
TypeScript 1247 45678 23456 432109
JSON 234 0 0 12345
Total 1481 45678 23456 444454
43 万行代码,大部分是冗余的。
2. 启动慢
OpenClaw 启动要 3-5 秒,为什么?
加载所有模块:
// main.ts
import { TelegramGateway } from './gateways/telegram';
import { DiscordGateway } from './gateways/discord';
import { WhatsAppGateway } from './gateways/whatsapp';
// ... 100+ imports
// 即使你只用 Telegram,也会加载所有 gateway
初始化所有插件:
// 启动时加载所有插件
const plugins = await loadAllPlugins(); // 扫描 plugins/ 目录,加载所有 .js 文件
连接所有服务:
// 启动时连接数据库、Redis、消息队列...
await db.connect();
await redis.connect();
await mq.connect();
结果:
$ time node main.js
real 0m4.231s
4 秒启动时间,对于 serverless 场景完全不可接受。
3. 内存占用高
OpenClaw 运行时内存占用超 1GB,为什么?
上下文无限增长:
// 没有限制上下文长度
class Context {
messages: Message[] = [];
append(message: Message) {
this.messages.push(message); // 无限增长
}
}
缓存过多:
// 缓存所有 LLM 响应
const cache = new Map<string, string>();
async function generate(prompt: string) {
if (cache.has(prompt)) {
return cache.get(prompt);
}
const response = await llm.generate(prompt);
cache.set(prompt, response); // 无限增长
return response;
}
内存泄漏:
// 事件监听器没有清理
gateway.on('message', (msg) => {
// 处理消息
});
// 如果 gateway 重连,旧的监听器不会被移除,导致内存泄漏
结果:
$ node --max-old-space-size=2048 main.js
# 运行一天后
$ ps aux | grep node
USER PID %CPU %MEM VSZ RSS
user 12345 5.2 8.3 2048000 1234567 # 1.2GB RSS
4. 安全问题
OpenClaw 的安全性很弱:
无沙箱:
// 工具直接执行系统命令
async function executeTool(name: string, args: string) {
if (name === 'shell') {
return exec(args); // 直接执行,没有沙箱
}
}
无 prompt injection 防御:
// 直接把用户输入传给 LLM
const prompt = `User: ${userInput}`; // 如果 userInput 包含 "ignore previous instructions"?
明文存储 API key:
// config.json
{
"openai_api_key": "sk-xxx" // 明文存储
}
这些问题在企业场景是致命的。
各 fork 的功能对比
功能
OpenClaw
nanobot
PicoClaw
ZeroClaw
IronClaw
TinyClaw
MimiClaw
多 LLM
✅
✅
✅
✅
✅
✅
✅
多平台
✅
✅
✅
✅
✅
✅
⚠️ (仅 Telegram)
工具调用
✅
✅
✅
✅
✅
✅
⚠️ (有限)
Memory
✅
✅
✅
✅ (hybrid)
✅ (encrypted)
✅
⚠️ (SPIFFS)
子代理
✅
✅
✅
✅
✅
✅
❌
心跳任务
✅
✅
✅
✅
✅
❌
✅
技能市场
✅
❌
❌
❌
❌
❌
❌
Web UI
✅
❌
❌
❌
❌
❌
❌
沙箱
❌
❌
⚠️ (workspace)
⚠️ (allowlist)
✅ (WASM)
❌
❌
OTA 更新
❌
❌
❌
❌
❌
❌
✅
结论:
- 功能最全:OpenClaw(但代价是臃肿)
- 最均衡:nanobot、PicoClaw、ZeroClaw
- 最安全:IronClaw
- 最轻量:TinyClaw、MimiClaw
各 fork 还缺什么
nanobot
缺失:
- 技能市场(需要手动添加工具)
- Web UI(只有命令行)
- 复杂插件系统(静态注册)
改进方向:
- 加一个简单的技能仓库(GitHub repo,用户自己 clone)
- 加一个 TUI(Terminal UI,用 Rich 库)
PicoClaw
缺失:
- 向量搜索(memory 只用 grep)
- 复杂工具(受限于 Go 生态)
改进方向:
- 集成 SQLite + FTS5(全文搜索)
- 用 CGO 调用 C 库(扩展工具能力)
ZeroClaw
缺失:
- 安全性(只有基础 allowlist)
- 技能市场
改进方向:
- 加 WASM 沙箱(学习 IronClaw)
- 加 prompt injection 防御
IronClaw
缺失:
- 性能(WASM 有 10-20% 开销)
- 易用性(配置复杂)
改进方向:
- 优化 WASM runtime(用 Wasmtime 替代 Wasmer)
- 简化配置(提供默认安全策略)
TinyClaw
缺失:
- 复杂协作逻辑(只支持链式/扇出)
- 错误处理(agent 崩溃后没有重试)
改进方向:
- 加 DAG(有向无环图)支持(复杂工作流)
- 加 supervisor(监控 agent,自动重启)
MimiClaw
缺失:
- 功能有限(受限于 512KB RAM)
- 开发门槛高(需要懂嵌入式)
改进方向:
- 支持外置 PSRAM(扩展到 8MB RAM)
- 提供 Arduino 库(降低门槛)
会不会出现统一标准
OpenClaw 生态的爆发,引发了一个问题:会不会出现统一标准?
类似于:
- 容器标准:Docker → OCI(Open Container Initiative)
- 包管理标准:npm/pip/cargo → 统一的包格式
- AI Agent 标准:OpenClaw → ???
可能的标准化方向
1. Agent Protocol
定义 agent 的通信协议:
// agent-protocol.json
{
"version": "1.0",
"agent": {
"name": "my-agent",
"capabilities": ["tool_call", "memory", "subagent"]
},
"endpoints": {
"chat": "POST /chat",
"tool": "POST /tool",
"memory": "GET /memory"
}
}
这样不同实现(nanobot/PicoClaw/ZeroClaw)可以互相通信。
2. Tool Format
定义工具的标准格式:
// tool.json
{
"name": "web_search",
"description": "Search the web",
"parameters": {
"query": {"type": "string", "required": true}
},
"runtime": "wasm", // 或 "native", "docker"
"binary": "web_search.wasm"
}
这样工具可以跨平台使用(nanobot 的工具可以在 ZeroClaw 上跑)。
3. Memory Format
定义记忆的标准格式:
# MEMORY.md
## 2026-02-22 21:30:00
User asked about weather in Beijing.
Tool result: 5°C, Cloudy.
## 2026-02-22 21:35:00
User asked to remember their birthday: 1990-01-01.
这样不同 agent 可以共享记忆。
阻碍标准化的因素
1. 性能 vs 兼容性
标准化意味着妥协:
- ZeroClaw 追求极致性能,不想加额外的协议层
- IronClaw 追求极致安全,不想兼容不安全的工具
2. 生态分裂
不同 fork 有不同的社区:
- nanobot:学术圈(香港大学)
- PicoClaw:硬件圈(Sipeed)
- ZeroClaw:创业圈(Harvard/MIT 学生)
- IronClaw:企业圈(Near AI)
很难统一。
3. 快速迭代
现在还在快速迭代期,过早标准化会限制创新。
我的预测
短期(2026 年):
- 不会出现统一标准
- 各 fork 继续独立发展
- 但会出现事实标准(最流行的实现成为标准)
中期(2027-2028 年):
- 可能出现松散的标准(类似 OCI)
- 定义核心接口(agent protocol、tool format)
- 但实现细节各不相同
长期(2029+):
- 可能出现统一的 agent 框架
- 类似 Kubernetes(统一编排层,底层可以是 Docker/containerd/CRI-O)
- 用户不关心底层是 nanobot 还是 ZeroClaw,只关心功能
2026 年的趋势
基于当前的发展,我预测 2026 年会有这些趋势:
1. 更多语言的重写
已经有 TypeScript(OpenClaw)、Python(nanobot)、Go(PicoClaw)、Rust(ZeroClaw/IronClaw)、Shell(TinyClaw)、C(MimiClaw)。
接下来可能出现:
- Zig 版本:性能接近 C,但更安全
- Nim 版本:Python 语法,C 性能
- Elixir 版本:天生支持分布式、容错
2. 更多硬件支持
MimiClaw 证明了 ESP32 可以跑 AI Agent。
接下来可能出现:
- RISC-V 版本:开源指令集,更便宜
- FPGA 版本:硬件加速 LLM 推理
- 可穿戴版本:智能手表、智能眼镜
3. 更多安全特性
IronClaw 证明了安全性的重要性。
接下来可能出现:
- 形式化验证:用数学证明代码安全
- 零知识证明:证明 agent 执行了正确的操作,但不泄露细节
- 联邦学习:多个 agent 协作,但不共享数据
4. 更多协作模式
TinyClaw 证明了多代理协作的价值。
接下来可能出现:
- 分布式 agent:多个 agent 分布在不同设备上
- 层级 agent:manager agent 管理多个 worker agent
- 竞争 agent:多个 agent 竞争同一个任务,选最好的结果
5. 本地 LLM 集成
现在所有 fork 都依赖云端 LLM(OpenAI/Anthropic)。
接下来可能出现:
- 本地 LLM:集成 Llama/Mistral/Qwen
- 量化模型:4-bit/8-bit 量化,降低内存占用
- 边缘推理:在 ESP32/树莓派上跑小模型
给开发者的建议
如果你想基于 OpenClaw 生态做开发,我的建议:
1. 选对基础
- 快速原型:用 nanobot(Python,易上手)
- 生产部署:用 ZeroClaw(Rust,性能好)
- 企业场景:用 IronClaw(Rust,安全)
- 嵌入式:用 PicoClaw(Go)或 MimiClaw(C)
- 多代理:用 TinyClaw(Shell)
2. 不要重新发明轮子
已经有 6+ 个实现,不需要再写一个。
除非你有明确的差异化:
- 新的语言(Zig/Nim/Elixir)
- 新的硬件(RISC-V/FPGA)
- 新的场景(分布式/联邦学习)
3. 贡献上游
如果你发现 bug 或者有改进建议,直接给上游提 PR。
不要 fork 后自己改,这样会导致生态分裂。
4. 关注标准化
虽然现在没有统一标准,但可以关注:
- Agent Protocol(社区驱动的标准)
- MCP (Model Context Protocol)(Anthropic 提出的工具协议)
未来可能成为事实标准。
总结
OpenClaw 生态的爆发,不是偶然,而是技术债积累到临界点的必然结果。
原版 OpenClaw 用 43 万行代码、1GB 内存、3-5 秒启动时间,证明了 AI Agent 的可行性。但也暴露了问题:代码膨胀、启动慢、内存占用高、安全性弱。
6 个 fork 用不同的语言(Python/Go/Rust/Shell/C)、不同的架构(单二进制/脚本/嵌入式)、不同的权衡(性能/安全/协作),证明了同一个 agent 架构可以适配从 $5 芯片到云端 VPS 的所有场景。
2026 年,这个生态还会继续爆发:更多语言、更多硬件、更多安全特性、更多协作模式、本地 LLM 集成。
但最终,可能会出现一个统一的标准,就像容器标准(OCI)一样。到那时,用户不关心底层是 nanobot 还是 ZeroClaw,只关心功能。
相关链接:
- OpenClaw GitHub
- Agent Protocol
- MCP (Model Context Protocol)
- ← 上一篇:MimiClaw - 在 $5 ESP32 芯片上跑 AI Agent
- ← 返回系列总览