在 OpenClaw 凭借 43 万行代码席卷 GitHub、一周内狂揽 10 万星标的同时,一个来自香港大学的研究团队悄然推出了 NanoBot——一个只有 4000 行 Python 代码的 AI 助手框架。这不是功能阉割版,而是对”简单就是美”哲学的彻底实践。
为什么我们需要轻量级 AI Agent?
OpenClaw 的成功证明了市场对本地 AI 助手的强烈需求。但随着功能的叠加,它也暴露出大型框架的通病:启动需要 8-12 秒,常驻内存超过 400MB,430,000 行代码让审计和定制变得几乎不可能。
更严重的是安全问题。CrowdStrike 和 Bitdefender 等安全公司已经发出警告:OpenClaw 的第三方技能生态存在数据窃取风险,Cisco 的研究团队甚至在测试中发现某个社区技能会在用户不知情的情况下执行数据泄露。Meta AI 对齐部门主管 Summer Yue 公开表示,她的 OpenClaw Agent 曾在邮箱中”失控”。
这不是功能太多的问题,而是复杂度太高的代价。当一个框架大到无法被完整理解时,安全和可控性就成了奢望。
NanoBot 是什么?
NanoBot 由香港大学数据科学实验室(HKUDS)开发,是一个极简主义的 AI Agent 框架。它的核心承诺是:用 99% 更少的代码,实现完整的 Agent 功能。
核心特性
代码量: 3,932 行 Python 代码(可通过 core_agent_lines.sh 随时审计),相比 OpenClaw 的 430,000+ 行减少了 99%。
启动速度: 0.8 秒冷启动,相比 OpenClaw 的 8-12 秒快 10 倍。
内存占用: 约 45MB RAM,相比 OpenClaw 的 200-400MB+ 减少 80%+。
多模型支持: 与 OpenClaw 一样,NanoBot 是模型无关的。支持 OpenRouter、DashScope(Qwen)、DeepSeek、Moonshot、VolcEngine、Groq、Zhipu 等主流 LLM 服务商,也支持通过 vLLM 运行本地模型(如 Llama 3.1 8B)。
多平台接入: 支持 Telegram、Discord、WhatsApp、飞书、钉钉、Slack、Email、QQ 等 8+ 个聊天平台。值得一提的是,飞书和 QQ 使用 WebSocket 长连接,不需要公网 IP 就能部署在家庭网络或笔记本上。
本地优先: 完全支持离线运行。连接本地 vLLM 服务器后,所有推理都在设备上完成,数据永不出境。
架构设计
NanoBot 采用三层模块化架构:
- Providers(LLM 后端):负责与各类大模型通信,新增一个 Provider 只需两步。
- Channels(聊天接口):处理不同平台的消息收发,每个 Channel 独立部署和测试。
- Agents(任务编排):核心 Agent 逻辑,包括工具调用、记忆管理、错误恢复和多轮对话。
这种分层设计让开发者可以在不触碰核心逻辑的情况下,自由替换任何一层的实现。代码故意在关键部分(Agent 逻辑、任务规划)保持冗余以提高可读性,在其他地方(配置处理、Channel 路由)则极度精简。
与 OpenClaw 对比:功能、代码量、部署难度
| 维度 | OpenClaw | NanoBot |
|---|---|---|
| 代码量 | 430,000+ 行(JS/TS) | ~4,000 行(Python) |
| 启动时间 | 8-12 秒 | ~0.8 秒 |
| 内存占用 | 200-400MB+ | ~45MB |
| 支持平台 | 12+(WhatsApp, Telegram, Signal, Discord, iMessage, Teams, Slack, Matrix 等) | 8+(Telegram, Discord, WhatsApp, 飞书, 钉钉, Slack, Email, QQ) |
| 浏览器自动化 | ✅ Chromium via CDP | ❌ |
| 语音支持 | ✅ 唤醒词检测、推送通话 | 部分(Telegram 语音转录) |
| 伴侣应用 | ✅ macOS, iOS, Android | ❌ CLI only |
| 技能生态 | 100+ 社区技能(ClawHub) | 模块化,社区较小 |
| 本地模型 | ✅ Ollama | ✅ vLLM/llama.cpp |
| MCP 支持 | ✅ | ✅ |
| 开发语言 | JavaScript/TypeScript | Python |
| 理想用户 | 高级用户、需要广泛集成 | 开发者、研究者、极简主义者 |
功能差异
OpenClaw 胜在功能广度:浏览器自动化、Canvas 可视化工作区、语音唤醒、多 Agent 路由、100+ 社区技能、主动心跳调度器(无需提示即可唤醒 Agent)。
NanoBot 则专注核心能力:Shell 执行、文件 I/O、Web 搜索、Cron 调度、语音转录、MCP 支持、模块化技能系统。它缺少浏览器控制、可视化工作区和伴侣应用的深度。
部署难度
NanoBot 更简单:
1. pip install nanobot-ai(或 uv tool install nanobot-ai)
2. nanobot onboard(交互式配置)
3. nanobot agent -m "2+2 等于几?"(验证安装)
整个过程不到 2 分钟。
OpenClaw 更复杂:需要 Node.js 环境、多个依赖包、Gateway 配置、可能还需要 Docker。对新手来说,首次部署可能需要 20-30 分钟。
安全模型
两者都将数据存储在本地,都需要 API 密钥,也都容易受到提示注入攻击。
关键差异在于攻击面:OpenClaw 因为集成更广、第三方技能生态更大,攻击面也更大。Cisco 记录了真实案例:某个社区技能在用户不知情的情况下执行了数据泄露。CrowdStrike 甚至专门为企业安全团队编写了管理 OpenClaw 部署的详细指南。
NanoBot 的代码量更小、架构更简单,意味着审计工作量更低。但更简单不等于默认安全——两者都需要谨慎的权限管理。
适用场景:开发者与隐私敏感用户的首选
你应该选择 NanoBot,如果你:
- 想理解 AI Agent 的工作原理,而不仅仅是使用一个黑盒
- 是开发者或研究者,计划在 Agent 循环基础上构建自己的功能
- 需要一个能在一个下午内完整阅读、审计和修改的代码库
- 在低配硬件上运行,如树莓派、家用 NAS 或预算 VPS
- 主要使用亚太平台,如飞书、钉钉、QQ
你应该选择 OpenClaw,如果你:
- 想要一个功能完整的个人助手,能连接你所有的应用
- 熟悉命令行,理解基本的网络安全
- 需要开箱即用的浏览器自动化、语音控制和伴侣应用
- 有足够的硬件空间,能运行一个占用 1GB+ RAM 的长期后台守护进程
- 想访问大型社区技能生态,并且不介意审计你安装的内容
实际应用案例
研究与教学:NanoBot 的清晰代码非常适合教授 Agent 行为、提示工程和工具使用模式。在研讨会和课程中,它不会用框架复杂性淹没学生。
隐私优先团队:通过 vLLM 完全在设备上运行,数据永不离开基础设施。这对医疗、法律、金融等受监管行业至关重要。
预算有限的初创公司:本地模型支持 + 多 Provider 灵活性 = 成本优化部署。可以先用免费的本地模型测试,再按需切换到付费 API。
快速原型开发:代码量少意味着迭代更快、调试更容易、定制更直接。如果你需要为特定业务场景定制 Agent 逻辑,NanoBot 是更好的起点。
如何开始使用 NanoBot
安装(三种方式)
从源码安装(开发模式):
git clone https://github.com/HKUDS/nanobot.git
cd nanobot
pip install -e .
通过 uv 安装(快速稳定):
uv tool install nanobot-ai
通过 PyPI 安装(标准方式):
pip install nanobot-ai
配置
NanoBot 使用单个 JSON 配置文件 ~/.nanobot/config.json。最小化设置只需要:
1. 一个 API 密钥(从 OpenRouter、DashScope 或本地 vLLM 服务器获取)
2. 一个聊天平台 Token(推荐 Telegram,90 秒配置)
最快上手路径:
nanobot onboard # 交互式配置
nanobot agent -m "2+2 等于几?" # 验证安装
本地模型部署
完全不依赖外部 API 的私有推理:
- 启动 vLLM 服务器,指向任何 Hugging Face 模型(如 Llama 3.1 8B)
- 配置 NanoBot 指向
http://localhost:8000 - API Key 字段填任意非空字符串(本地服务器通常无需认证)
多平台接入
单个 NanoBot 实例可以同时服务多个聊天平台(nanobot gateway 命令)。配置复杂度按平台不同:
简单(仅需 Token):Telegram、Discord、QQ——从平台设置获取 Bot Token 和用户 ID。
中等(需要凭证):WhatsApp(Node.js QR 扫码)、飞书(WebSocket,无需公网 IP)、钉钉、Slack、Email(IMAP/SMTP)。
推荐 Telegram:在 Telegram 搜索 @BotFather,发送 /newbot,复制 Token 粘贴到配置文件。全程 90 秒。
结论:简单不是妥协,而是选择
NanoBot v0.2.1(2026 年 6 月 1 日发布)的出现,证明了一个被行业长期忽视的真相:大多数用户不需要 43 万行代码的 AI 助手。
OpenClaw 的成功是因为它解决了真实需求——本地运行、多平台集成、工具调用。但它的规模也成了负担:难以审计、安全风险、资源占用、学习曲线陡峭。
NanoBot 提供了另一种答案:用 1% 的代码实现 80% 的功能。它不是功能阉割,而是优先级重排——专注于核心 Agent 循环,将其他一切设计为可选扩展。
这种哲学在软件工程中并不新鲜。Unix 的”做好一件事”、Go 的”少即是多”、SQLite 的”小而完整”——历史一次次证明,简单的工具往往比复杂的平台更长久。
对于开发者、研究者和隐私敏感用户来说,NanoBot 已经是 2026 年最值得关注的 AI Agent 框架。它不会取代 OpenClaw,但会成为那些真正想理解和控制自己 AI 助手的人的首选。
简单就是美,不是因为简单容易,而是因为简单可控。
项目信息:
– GitHub:HKUDS/nanobot(12.2k stars)
– 开源协议:MIT
– 活跃开发:2026 年 2 月至今,206 个开放 Issue,161 个 PR



