nanobot
更新于 2026-09-11 22:55:46
nanobot 是什么
nanobot 是 HKUDS(港大数据智能实验室)开源的超轻量、自托管个人 AI Agent 框架,用 Python 编写。它运行在 WebUI、终端或聊天应用里,把工具调用、长期记忆、MCP 集成、模型路由、多 Agent 委派、定时自动化和 OpenAI 兼容 API 都塞进一个小而可读的核心里。
项目非常活跃:约 48k stars、8.5k forks,支持多语言文档(中/英/日/韩/法/西等)。
核心能力
- 多端运行:浏览器 WebUI、终端 TUI,或接入聊天应用
- 聊天应用接入:Telegram、Discord、Slack、微信、飞书、Teams、Email、Mattermost 等
- 内置工具:文件、shell、网页搜索、网页抓取、MCP、cron 定时、图片生成、子 Agent(subagents)
- 长期记忆:通过 Dream 机制维护会话历史与长期记忆,支持长周期目标(long-horizon goals)与定时自动化
- 模型自由:兼容 OpenAI API、本地 LLM、图片生成、搜索与 fallback 模型路由
- 开放集成:提供 Python SDK 与 OpenAI 兼容 API,可作为常驻本地/服务端 Agent 网关部署
安装
- 要求 Python 3.11+
- 稳定版:
pip/uv从 PyPI 安装,或官方 installer - 尝鲜版:源码 editable 安装(
git pull --ff-only+ 依赖同步) - 支持 Docker / docker-compose 部署,可配置 bubblewrap 沙箱
适用场景
- 想自建一个私有、可控的个人 AI 助理 / Agent 运行时
- 需要把 AI Agent 接入日常聊天工具(微信 / TG / 飞书等)做自动化
- 喜欢阅读源码、二次开发 Agent 框架的开发者(核心代码量小、结构清晰)
二开建议
- 核心框架在
nanobot/目录,WebUI 在webui/,TUI 在tui/,文档在docs/ - 通过 MCP 扩展外部工具,通过 subagents 拆分长任务,配合 cron 做定时自动化
- 关注
COMMUNICATION.md与CONTRIBUTING.md了解社区协作方式
协议:MIT | 仓库:https://github.com/HKUDS/nanobot