4 万 Star 的 AI Agent 项目 nanobot:一个人能跑、一群人能用的开源 Agent
4 万 Star 的 AI Agent 项目 nanobot:一个人能跑、一群人能用的开源 Agent
先收藏,回头一定用得上。
GitHub 上 AI Agent 项目多如牛毛,但能在 4 个月内冲到 43,800 Star 的不多。nanobot 是香港大学数据科学实验室(HKUDS)研究员 Xubin Ren 以个人身份发起的开源项目,2026 年 2 月 1 日首次提交代码,6 月初 Star 数已突破 4.3 万,Fork 数 7,746。
它做对了一件很多人想做但没做好的事:让 AI Agent 回归「小」和「你的」。
本文提纲
- nanobot 是什么
- 为什么 4 万人在用
- 架构设计:小核心 + 大生态
- 30+ LLM Provider,你想用谁用谁
- 15+ 聊天平台,在哪聊都行
- MCP 原生支持:工具即插即用
- WebUI:开箱即用的 Agent 工作台
- 记忆与目标:Agent 不再金鱼脑
- 和同类项目对比
- 快速上手
nanobot 是什么
一句话:一个超轻量级的开源个人 AI Agent,小到核心可读,大到能干真活。
它围绕一个精简的 Agent Loop 构建——消息从聊天平台进来,LLM 判断是否需要调用工具,记忆和技能按需加载而非预先编排。没有沉重的编排框架,没有黑箱调度,核心路径清晰可读。
MERMAID_BLOCK_0
核心设计理念有三条:
- 小核心:Agent Loop 可读、可审计、可扩展,不是几万行的框架怪兽
- 你的栈:自己托管、自己审查、自己扩展,不绑定任何平台
- 持久工作:目标(Goal)、记忆(Memory)、上下文在长任务中不丢失
为什么 4 万人在用
我翻了它的更新日志,从 2 月 1 日发布到现在,几乎每天都有更新。不是那种攒两周发一个版本的节奏,而是高频迭代——有时一天推送两三个功能。
几个关键版本节点:
| 版本 | 日期 | 核心特性 |
|---|---|---|
| v0.1.4 | 2026-02-17 | MCP 支持、Progress Streaming、多 Provider |
| v0.1.5 | 2026-04-05 | Dream 两阶段记忆、编程 Agent SDK、沙箱 |
| v0.2.0 | 2026-05-15 | /goal 持久目标、WebUI 内置、图像生成、Fallback 模型 |
| v0.2.1 | 2026-06-01 | WebUI 工作台、项目工作区、CLI Apps + MCP 扩展 |
这种迭代速度意味着什么?意味着维护者真的在用这个东西,遇到问题立刻修,想到功能马上加。这不是学术 Demo,这是日常工具。
架构设计:小核心 + 大生态
nanobot 的架构哲学很简单:核心做减法,外围做加法。
Agent Loop 只负责三件事:接收消息、调用 LLM、执行工具。通道(Channel)、Provider、记忆、技能全部是外围模块,按需加载。
MERMAID_BLOCK_1
这种解耦带来的好处很明显:加一个新 Provider 只需要两步,加一个新 Channel 也只需要实现几个接口。项目仓库的主要语言是 Python(约 77%)和 TypeScript(约 21%,WebUI 部分),代码量控制得当。
30+ LLM Provider,你想用谁用谁
这是 nanobot 最让我惊讶的地方——Provider 支持数量堪比 litellm,但它是原生集成而非封装第三方库(事实上 v0.1.4.post6 正式移除了 litellm 依赖,改用原生 openai + anthropic SDK)。
完整 Provider 列表(截至 v0.2.1):
| 类别 | Provider |
|---|---|
| 国际主流 | OpenAI、Anthropic、Google Gemini、Mistral、Groq |
| 平台型 | OpenRouter、Azure OpenAI、AWS Bedrock、HuggingFace |
| 中国厂商 | DeepSeek、Qwen/DashScope、Moonshot/Kimi、Zhipu GLM、MiniMax、StepFun、VolcEngine、百度千帆 |
| 本地部署 | Ollama、vLLM、LM Studio、Atomic Chat、OpenVINO |
| OAuth 登录 | OpenAI Codex、GitHub Copilot |
| 其他 | Novita、SiliconFlow、AIHubMix、Skywork、LongCat、Ant Ling、Xiaomi MiMo |
每个 Provider 都通过 ~/.nanobot/config.json 配置,格式统一:
{
"providers": {
"openrouter": {
"apiKey": "sk-or-***"
}
},
"agents": {
"defaults": {
"provider": "openrouter",
"model": "anthropic/claude-opus-4-6"
}
}
}
还有个实用的 fallback_models 机制——主模型挂了自动切换备用模型,对长期运行的 Agent 来说,这个功能不是锦上添花,是必需品。
15+ 聊天平台,在哪聊都行
nanobot 支持的聊天平台覆盖了你能想到的大部分场景:
| 平台 | 接入方式 |
|---|---|
| Telegram | Bot Token(推荐入门) |
| Discord | Bot Token |
| QR 扫码登录 | |
| WeChat(微信) | QR 扫码登录 |
| Feishu(飞书) | App ID + Secret |
| DingTalk(钉钉) | App Key + Secret |
| Slack | Bot Token |
| Microsoft Teams | App ID + Password |
| Matrix | Homeserver + Token |
| IMAP/SMTP | |
| App ID + Secret | |
| Signal | signal-cli |
| 企业微信 | Bot ID + Secret |
| WebUI | 内置 WebSocket |
配置方式几乎一样——在 config.json 的 channels 里加上对应平台的凭证,运行 nanobot gateway,完事。
这种统一的 Channel 抽象意味着:你的 Agent 不绑定任何单一平台。今天在 Telegram 上用,明天想切到飞书,改个配置就行。
MCP 原生支持:工具即插即用
MCP(Model Context Protocol)是 Anthropic 提出的工具协议标准,nanobot 从 v0.1.4 就开始支持。
配置格式兼容 Claude Desktop 和 Cursor——你可以直接从任何 MCP Server 的 README 里复制配置:
{
"tools": {
"mcpServers": {
"filesystem": {
"command": "npx",
"args": ["-y", "@modelcontextprotocol/server-filesystem", "/path/to/dir"]
},
"remote-api": {
"url": "https://example.com/mcp/",
"headers": { "Authorization": "Bearer ${REMOTE_MCP_TOKEN}" }
}
}
}
}
两种传输模式都支持:
- Stdio:本地进程(
npx/uvx) - HTTP:远程端点(SSE)
MCP 工具在启动时自动发现并注册,LLM 可以像使用内置工具一样调用它们。还支持 enabledTools 过滤——只注册你需要的工具子集,减少 token 消耗。
WebUI:开箱即用的 Agent 工作台
v0.2.0 开始,WebUI 直接打包在 PyPI wheel 里,不需要额外构建。
启用方式:
{ "channels": { "websocket": { "enabled": true } } }
运行 nanobot gateway,浏览器打开 http://127.0.0.1:8765 就能用。
v0.2.1 把 WebUI 升级成了「工作台」:Thought/Response 时间线、实时文件编辑活动、项目工作区、模型和上下文控制。这不是一个简单的聊天界面,是一个能日常使用的 Agent 控制台。
记忆与目标:Agent 不再金鱼脑
大多数 AI Agent 有个致命问题:聊完就忘。nanobot 用两个机制解决这个问题。
Dream 记忆系统(v0.1.5 引入):两阶段记忆架构,跨会话保持上下文。不是简单地把聊天记录全塞进 context window,而是有策略地压缩和检索。
/goal 持久目标(v0.2.0 引入):设定一个长期目标,Agent 会在多轮对话中持续追踪进度。比如「帮我调研某个技术并写成报告」,Agent 不会在第三轮就忘了你在干什么。
这两个功能配合起来,让 nanobot 从「聊天机器人」变成了「能干活的助手」。
和同类项目对比
| 维度 | nanobot | Claude Code | OpenAI Codex CLI |
|---|---|---|---|
| 定位 | 通用个人 Agent | 编程 Agent | 编程 Agent |
| 语言 | Python + TypeScript | TypeScript (Bun) | Rust |
| LLM 绑定 | 30+ Provider 自由选 | 仅 Anthropic | 仅 OpenAI |
| 聊天平台 | 15+ | CLI / API | CLI / API |
| MCP | ✅ 原生支持 | ✅ 原生支持 | ❌ |
| 开源协议 | MIT | MIT | Apache 2.0 |
| WebUI | ✅ 内置 | ❌ | ❌ |
| 记忆系统 | ✅ Dream | ❌ | ❌ |
| Star | 43.8k | 95k+ | 68k+ |
核心差异:nanobot 是通用型 Agent,不局限于编程场景。你可以用它管日程、做调研、跑自动化,甚至接上你的微信当私人助理。而 Claude Code 和 Codex CLI 更专注于代码生成。
快速上手
三步跑起来:
# 1. 安装
pip install nanobot-ai
# 2. 初始化(交互式引导)
nanobot onboard
# 3. 启动
nanobot agent
nanobot onboard 是一个交互式向导:选 Provider、填 API Key、选模型,完成后自动生成 ~/.nanobot/config.json。
想用 Docker 部署也行:
docker run --rm \
-v ~/.nanobot:/home/nanobot/.nanobot \
nanobot-ai \
agent -m "Hello"
数据来源:
- GitHub 仓库:HKUDS/nanobot
- 官方文档:nanobot.wiki
- GitHub API(仓库元数据、语言统计、贡献者信息)
- 项目 README 及 docs/configuration.md(通过 jsdelivr CDN 获取)
- PyPI 包:nanobot-ai
- 所有数据采集时间:2026 年 6 月 7 日
试过了?评论区说说你的体验。还没试?收藏起来周末折腾。
作者: itech001
来源: 公众号:AI人工智能时代
网站: https://www.theaiera.cn/
每日分享最前沿的AI新闻资讯和技术研究。
关注公众号,获取更多 AI 技术干货!

浙公网安备 33010602011771号