Nanobot官网,香港大学推出的开源超轻量级个人AI桌面助理
Nanobot是由香港大学数据智能实验室(HKUDS)推出的开源超轻量级个人AI助理框架。该项目在2026年初震撼发布,核心代码仅约4000行,相比于同类复杂系统缩减了99%的体积,却完整保留了智能体最核心的逻辑。Nanobot主打“少即是多”的哲学,旨在为开发者提供一个透明、可控且易于二次开发的底层架构。其功能涵盖了自动化的网页搜索、本地文件操作、代码执行以及长效记忆机制。用户可以轻松接入OpenAI、Anthropic或本地Llama模型,通过极简的配置实现高效的任务处理。无论是作为科研基准还是个人效率工具,Nanobot都以其闪电般的启动速度和极低的资源占用,
Nanobot官网: https://github.com/HKUDS/nanobot
Nanobot:超轻量级AI智能体框架的极简革命
Nanobot是香港大学数据科学实验室开源的超轻量级个人AI助手框架,核心特点是用仅约4000行代码实现了完整的AI Agent功能,代码量比同类项目Clawdbot的43万行减少了99%。这款产品灵感来自OpenClaw和Clawdbot,但通过极致的架构简化实现了更快的响应速度、更透明的代码逻辑和更低的学习门槛。Nanobot支持OpenAI、Claude、Gemini、通义千问等多种大语言模型,可通过Telegram、WhatsApp、Discord等即时通讯平台使用,也提供CLI命令行和Web界面交互。系统具备文件操作、网络搜索、Shell命令执行、子代理管理等丰富的工具能力,支持定时任务和心跳唤醒机制,内置记忆系统可实现长期上下文保持。作为研究友好型开源项目,Nanobot代码结构清晰,模块化设计使其易于理解和扩展,非常适合AI研究人员、开发者和希望深入了解Agent技术的学习者。
Nanobot基于LiteLLM实现了对多种AI模型供应商的统一接入,支持OpenRouter、Anthropic Claude、OpenAI GPT、Google Gemini、vLLM、Groq等主流服务。用户只需在配置文件中填入API密钥,就能灵活切换不同的模型。这种架构让用户完全掌控成本和模型选择,可以根据任务复杂度、响应速度要求和预算限制选择最合适的模型。例如简单的对话任务可以使用成本更低的模型,复杂的代码生成任务则调用性能更强的模型。
系统通过统一的消息总线架构实现了多通道接入能力。支持Telegram机器人集成,可以处理文本消息和语音消息,语音通过Groq Whisper自动转录为文字。WhatsApp集成通过Node.js桥接实现,支持消息收发和多媒体内容。CLI命令行模式提供单条消息和交互式两种使用方式,适合脚本调用和持续对话。所有通道共享同一个AI核心,消息通过MessageBus异步队列进行统一路由和处理,确保跨平台的一致体验。
Nanobot内置了完整的工具注册表,提供多类实用工具。文件系统工具包括ReadFileTool读取文件内容、WriteFileTool写入文件、EditFileTool编辑文件和ListDirTool列出目录,支持AI直接操作本地文件。ExecTool可以执行Shell命令,实现系统级自动化操作。WebSearchTool使用Brave Search进行网络搜索,WebFetchTool获取网页内容并提取主要信息。MessageTool可以向聊天通道发送消息。所有工具都通过标准化接口注册,AI模型可以根据任务需求自主选择和组合使用。
技能系统采用指导文档加工具执行的双层架构。每个技能包含一个SKILL.md文件,以Markdown格式描述如何使用特定工具完成任务。AI会先阅读技能文档理解执行方法,然后调用相应工具完成操作。内置技能包括weather获取天气信息、github进行仓库操作、summarize总结长文本、tmux管理会话、skill-creator帮助创建自定义技能。技能分为始终加载和可用两类,始终加载的技能完整内容包含在系统提示中,可用技能只显示摘要,需要时通过read_file工具读取详细内容,这种设计优化了上下文使用效率。
SpawnTool工具允许主代理创建子代理处理复杂或耗时的后台任务。主代理通过spawn工具分配任务描述和标签,系统会在后台启动独立的子代理进行处理。子代理拥有专注的系统提示和独立的执行环境,可以使用文件操作、Shell命令、网络搜索等工具,但不能发送消息给用户或生成其他子代理。子代理最多执行15次迭代,完成后通过消息总线向主代理发送系统消息通知结果。这种机制让主代理在等待复杂任务完成时仍能响应其他用户请求,实现真正的并行处理。
MemoryStore管理长期记忆和日常笔记,所有重要信息跨会话持久化存储。长期记忆保存在memory/MEMORY.md文件中,包含需要永久记住的核心信息。日常笔记按日期命名为YYYY-MM-DD.md格式,自动记录每天的重要事件。系统会将长期记忆和今日笔记加载到AI的上下文中,帮助AI理解历史对话内容和用户偏好。SessionManager管理不同渠道和聊天的会话历史,每个会话独立存储,支持多轮对话的上下文连续性。
CronService提供完整的定时任务管理功能,支持三种调度方式。一次性执行通过at参数在指定时间点运行一次,固定间隔执行通过every参数每隔指定时间重复执行,Cron表达式执行支持标准的cron语法实现复杂的定时规则。用户可以通过CLI命令添加、列出、删除、启用或禁用任务,也能手动触发任务运行。定时任务配置持久化到文件系统,重启后自动恢复。服务采用单一定时器管理所有任务,动态调整下次唤醒时间,确保毫秒级调度精度。
HeartbeatService实现主动唤醒机制,默认每30分钟自动运行一次。服务会读取工作区中的HEARTBEAT.md文件,检查是否包含需要执行的任务内容。如果文件中有指令,系统会唤醒AI代理读取并执行,执行完成后返回结果。这种机制让AI不仅是被动响应,还能主动执行周期性检查、系统监控、自动化维护等后台工作流。用户可以在HEARTBEAT.md中编写定期需要完成的任务,AI会自动在心跳时间执行。
使用pip从PyPI直接安装最新稳定版,在终端执行命令pip install nanobot-ai。也可以从GitHub克隆源代码进行开发安装,先git clone https://github.com/HKUDS/nanobot.git克隆仓库,进入项目目录cd nanobot,然后执行pip install -e .以可编辑模式安装。推荐使用Python 3.11或更高版本,建议在虚拟环境中安装以避免依赖冲突。对于想要使用最新开发版本的用户,可以使用uv工具安装,执行uv tool install nanobot-ai命令。
首次使用需要运行nanobot onboard命令初始化配置和工作区。系统会在用户主目录下创建.nanobot文件夹,生成默认的config.json配置文件。配置文件包含providers提供商配置用于填写各个AI模型的API密钥,agents代理默认配置指定使用的模型和参数,channels通道配置管理Telegram和WhatsApp的连接信息,tools工具配置存储网络搜索等服务的密钥。同时会创建AGENTS.md定义AI助手的行为规范,SOUL.md描述人格特征,USER.md存储用户信息和偏好,memory/MEMORY.md作为长期记忆文件。
打开~/.nanobot/config.json文件,在providers部分填入AI模型的API密钥。如果使用OpenRouter访问多种模型,在openrouter字段填入apiKey。使用Anthropic Claude直接调用,在anthropic部分配置密钥。OpenAI GPT用户在openai部分配置。Groq可用于LLM调用和语音转录,在groq部分填写密钥。在agents.defaults部分可以指定默认使用的模型,例如设置model为anthropic/claude-opus-4-5。配置完成后保存文件,系统会在启动时自动加载并验证这些配置。
最简单的使用方式是CLI命令行交互。运行nanobot agent -m “你的消息内容”可以发送单条消息并获得回复,适合脚本调用和一次性查询。直接运行nanobot agent不带参数会进入交互式模式,显示友好的提示符等待用户输入,支持多轮连续对话。在交互式模式下可以自由提问、执行任务、使用工具,按Ctrl+C退出。两种模式都使用相同的session_id维护对话上下文,确保AI记住之前的交流内容。
在Telegram中与BotFather对话创建新机器人,获取机器人Token。在config.json的channels.telegram部分,将enabled设置为true启用Telegram通道,在token字段填入刚获取的机器人Token。在allowFrom数组中添加允许使用机器人的Telegram用户ID,可以通过与@userinfobot对话获取自己的ID。保存配置后,运行nanobot gateway启动网关服务,系统会自动连接Telegram并开始监听消息。在Telegram中搜索机器人名称并开始对话,所有消息会通过消息总线路由到AI核心进行处理。
WhatsApp集成通过Node.js桥接实现,需要额外配置。在config.json的channels.whatsapp部分将enabled设置为true,配置bridge_url指向WhatsApp桥接服务地址,在allowFrom中添加允许的电话号码。运行nanobot channels login命令,系统会显示二维码,使用WhatsApp扫码登录。登录成功后,运行nanobot gateway启动服务,就可以在WhatsApp中与AI助手对话。WhatsApp通道支持文本消息和多媒体内容,所有功能与其他通道一致。
通过cron子命令管理定时任务。添加任务使用nanobot cron add –name “任务名称” –message “任务内容” –cron “0 9 * * *”,其中cron表达式0 9 * * *表示每天早上9点执行。列出所有任务使用nanobot cron list查看任务ID、名称、执行时间等信息。删除任务用nanobot cron remove 加任务ID。启用或禁用任务使用nanobot cron enable 任务ID –enable true/false。手动运行任务用nanobot cron run 任务ID,不等待定时触发立即执行。所有任务配置持久化保存,服务重启后自动恢复。
与AI对话时自然描述需求,系统会自动选择合适的工具和技能。询问”北京今天天气怎么样”会调用weather技能获取天气信息。要求”搜索最新的Python特性”会使用WebSearchTool进行网络搜索。说”读取当前目录的README.md文件”会调用ReadFileTool读取文件内容。执行”列出当前目录的文件”会使用ExecTool运行Shell命令。对于复杂任务如”分析这个项目的代码结构并生成报告”,AI可能会创建子代理在后台处理,主代理继续响应其他请求,完成后通知结果。
OpenClaw是Clawdbot的开源替代品,提供完整的AI Agent基础设施,包含100多个CLI命令、WebSocket网关、多Agent路由等企业级特性。代码库包含50多个模块,总计超过43万行代码,适合大型团队构建复杂的Agent系统。Nanobot灵感来自OpenClaw但走极简路线,仅用4000行代码实现核心Agent功能,代码量减少99%。
功能完整度上,OpenClaw提供更丰富的企业级特性和配置选项,支持更复杂的多Agent协作场景。Nanobot专注于个人使用和研究场景,功能覆盖日常需求但不追求企业级复杂度。架构复杂度方面,OpenClaw的多模块设计需要深入学习才能理解,修改一个组件可能影响多个其他部分。Nanobot采用单进程架构,代码库设计为8分钟内可以理解全貌,修改和扩展门槛极低。
性能表现上,Nanobot由于代码体积小,启动速度更快,响应更迅速,资源占用更少。OpenClaw功能全面但启动较慢,内存占用相对较高。学习曲线方面,Nanobot的简洁性使其成为学习Agent技术的理想教材,研究人员可以快速掌握核心原理。OpenClaw虽然功能强大但复杂性也成为学习障碍。两者都是开源项目,但Nanobot更适合个人用户、研究人员和初学者,OpenClaw更适合需要构建生产级Agent系统的企业团队。
NanoClaw是另一个轻量级AI助手项目,同样定位为OpenClaw的简化替代品。核心差异在于隔离机制,NanoClaw基于Apple Container容器技术实现操作系统级隔离,AI在真实的Linux容器中运行,提供更强的安全性。Nanobot使用应用级权限控制和工具限制,安全级别相对较低但部署更简单。
平台支持上,NanoClaw专门针对macOS和Apple平台优化,利用Apple的容器技术深度集成。Nanobot采用Python编写,支持Windows、macOS、Linux全平台,跨平台兼容性更好。模型支持方面,NanoClaw专门为Claude构建,使用Claude Agent SDK深度集成Anthropic的功能。Nanobot通过LiteLLM支持20多种模型供应商,模型选择更灵活。
代码量对比,NanoClaw同样强调简洁,设计为500行左右的核心代码。Nanobot约4000行代码,功能更完整但仍保持轻量级定位。配置方式上,NanoClaw没有配置文件,通过直接修改代码进行定制,适合技术用户。Nanobot提供JSON配置文件和CLI命令管理,更符合常规软件使用习惯。两者都追求”小到可以理解”的理念,但NanoClaw更激进地优化安全隔离,Nanobot更注重功能完整性和易用性。
Clawdbot是2026年初引爆技术圈的桌面AI助手,后来因争议转为OpenClaw项目。原版Clawdbot拥有系统级权限,能直接执行Shell命令、控制浏览器、管理文件、发送邮件等,实现真正的AI操作员体验。Nanobot继承了这种理念,同样提供文件操作、Shell执行、网络搜索等工具,但实现方式更轻量化。
代码复杂度上,Clawdbot原始代码库超过43万行,包含大量企业级功能和配置选项,学习和维护成本极高。Nanobot仅4000行代码,开发者可以在短时间内理解全部逻辑,修改和调试非常容易。功能丰富度方面,Clawdbot提供更完整的桌面集成,支持更多的系统操作和应用控制。Nanobot聚焦核心AI Agent能力,功能够用但不追求覆盖所有场景。
部署复杂度对比明显,Clawdbot需要复杂的环境配置和依赖安装,普通用户难以独立完成。Nanobot通过pip一行命令安装,5分钟内完成配置开始使用。性能开销上,Nanobot的轻量级架构带来更快的响应速度和更低的资源消耗。商业模式方面,Clawdbot曾引发关于开源定义的争议,最终开源为OpenClaw。Nanobot从诞生就是MIT协议的纯开源项目,代码完全透明。
Agent Studio定位为快速搭建个人Jarvis的可视化解决方案,通过图形化界面配置Agent行为,无需编写代码或理解CLI命令。核心优势是可视化配置,所有功能通过拖拽和表单完成,学习曲线平缓。Nanobot通过CLI命令和配置文件操作,需要一定的技术基础但提供更精确的控制。
运行方式上,Agent Studio主要在本地桌面运行,需要用户电脑保持开机才能工作,不支持24小时后台服务。Nanobot可以本地运行也可以部署到服务器,通过nanobot gateway启动后台服务,实现全天候在线。集成深度方面,Agent Studio深度集成企业微信,对国内企业用户非常友好。Nanobot支持Telegram、WhatsApp等国际主流平台,覆盖更广泛的用户群体。
扩展机制对比,Agent Studio提供预设的功能模块,用户选择和组合使用,自定义开发需要较深的技术介入。Nanobot基于工具和技能的模块化架构,用户可以编写SKILL.md文件和工具代码轻松扩展功能。成本方面,Agent Studio作为商业产品可能涉及订阅费用。Nanobot完全开源免费,只需支付AI模型的API调用费用。适用场景上,Agent Studio适合需要可视化配置和本地部署的企业用户,Nanobot适合有一定技术基础、希望深度定制和云端部署的个人用户和开发者。
SmolAgents是另一个轻量级AI Agent框架,同样专注于简洁性和最小开销。设计理念是快速原型开发单一用途的小型Agent,通过一个强大的提示词引导Agent行为,避免复杂的框架代码。Nanobot同样追求简洁,但提供了更完整的基础设施,包括消息总线、会话管理、定时任务等系统级组件。
架构哲学上,SmolAgents强调prompt engineering,依赖精心设计的提示词控制Agent,代码框架极简到接近没有。Nanobot采用工具+技能的双层架构,通过标准化接口和模块化组件实现功能,提供更结构化的开发方式。功能范围方面,SmolAgents适合简单的自动化任务和快速实验,不追求功能完整性。Nanobot虽然轻量但功能相对完整,支持多通道集成、定时任务、子代理并行等高级特性。
学习成本对比,SmolAgents几乎没有框架学习成本,主要挑战在于如何设计有效的提示词。Nanobot需要理解消息总线、工具注册、技能加载等概念,但代码清晰文档完善,学习曲线可控。生产就绪度上,SmolAgents定位为实验性框架,适合原型验证和研究探索。Nanobot虽然轻量但包含会话持久化、错误处理、日志记录等生产必要特性,可以直接用于个人项目和小规模应用。两者都是开源项目,但Nanobot社区更活跃,文档更完善,生态发展更快。
使用pip install nanobot-ai安装过程非常顺畅,依赖包自动下载安装,不到两分钟完成。运行nanobot onboard初始化配置,系统自动创建工作目录和配置文件,并给出清晰的下一步操作提示。打开config.json文件填写OpenRouter的API密钥,整个配置过程不超过5分钟。这种开箱即用的体验确实实现了轻量级框架的承诺,即使没有深厚技术背景的用户也能独立完成。
唯一需要注意的是Python版本要求3.11以上,部分系统默认Python版本较低需要先升级。配置文件采用JSON格式,结构清晰但对不熟悉JSON语法的用户可能需要小心处理逗号和引号。文档提供了完整的配置示例,按照示例修改基本不会出错。对比OpenClaw需要配置环境变量、安装Node.js、设置数据库等复杂流程,Nanobot的准入门槛低了几个数量级。
运行nanobot agent进入交互式模式,提示符设计友好,输入体验流畅。测试简单对话”介绍一下你自己”,AI回复准确且有个性,体现了SOUL.md人格配置的作用。询问”当前时间是几点”,系统正确返回了实时信息,说明上下文构建中的时间戳功能正常工作。尝试复杂任务”搜索2026年AI发展趋势并总结”,AI自动调用WebSearchTool进行搜索,然后整理成结构化的摘要,整个过程约10秒完成。
响应速度确实比重型框架快很多,轻量级架构带来的性能优势明显。不过CLI界面相对简陋,没有富文本格式、代码高亮等高级显示效果。单条消息模式nanobot agent -m “消息”非常适合脚本调用,在自动化工作流中可以无缝集成。会话上下文保持良好,多轮对话中AI能准确记住之前提到的信息,说明SessionManager工作正常。
测试文件工具功能,要求”读取当前目录的README.md文件”,AI正确调用ReadFileTool读取并显示了文件内容。然后要求”在当前目录创建一个test.txt文件,内容是Hello Nanobot”,系统使用WriteFileTool成功创建了文件。进一步测试”列出当前目录的所有Python文件”,AI使用ListDirTool列出目录,然后过滤出.py扩展名的文件,逻辑处理正确。
EditFileTool的表现也不错,要求修改test.txt文件内容,AI准确找到文件并完成编辑。文件操作有工作目录限制,AI只能访问初始化配置的工作区,尝试访问系统目录会被拒绝,体现了基本的安全机制。不过权限控制相对简单,不如NanoClaw的容器隔离那样严格,处理敏感文件时需要用户自己注意安全。
配置Brave Search API密钥后,网络搜索功能表现出色。询问”2026年2月7日的科技新闻”,AI自动调用WebSearchTool,返回了当天的最新资讯并整理成摘要。测试WebFetchTool获取特定网页内容,AI能够提取主要文本信息并过滤广告和导航元素,内容质量较高。搜索速度取决于网络和API响应,通常在3-5秒内完成。
结合搜索和总结功能,要求”搜索Nanobot项目并写一个简介”,AI不仅找到了相关信息,还根据多个来源综合编写了准确的项目介绍。这种信息检索和内容创作的组合能力,展示了Agent框架的真正价值。不过搜索结果的准确性依赖Brave Search API,偶尔会返回不太相关的内容,需要AI进行二次筛选。
使用nanobot cron add添加了每天早上8点的提醒任务,命令行界面清晰显示了任务ID和配置信息。运行nanobot cron list查看所有任务,输出格式友好易读。手动运行nanobot cron run测试任务执行,系统立即触发并通过消息总线发送通知,功能正常。定时任务配置保存在.nanobot目录下,重启服务后任务自动恢复,持久化机制可靠。
Cron表达式支持标准语法,可以实现复杂的定时规则,但需要用户理解cron格式,对新手不太友好。如果能提供可视化的时间选择工具或常用模板,易用性会显著提升。任务执行日志比较简单,只显示成功或失败状态,缺少详细的执行过程记录,排查问题时不太方便。整体而言,定时任务功能实用且稳定,满足日常自动化需求。
配置Telegram机器人后,运行nanobot gateway启动服务,终端显示成功连接Telegram并开始监听。在Telegram中搜索机器人并发送消息,响应速度很快,几乎是秒回。测试发送图片,AI能够识别并描述图片内容,多模态支持正常工作。语音消息自动通过Groq Whisper转录为文字,准确率较高,即使带有口音也能正确识别。
Telegram通道与CLI通道共享相同的记忆和会话,在CLI中告诉AI的信息,在Telegram中AI也能记住,跨通道上下文保持完美。消息格式支持Markdown,代码块、列表、链接等都能正常显示。不过Telegram的消息长度有限制,特别长的回复可能被截断,需要AI分段发送。allowFrom白名单机制有效,只有配置的用户ID能使用机器人,防止了滥用。
测试子代理功能,要求”帮我分析一下最近一周的AI新闻趋势,这可能需要一些时间”,AI识别这是耗时任务,自动调用SpawnTool创建子代理在后台处理。主代理立即返回”已启动子代理处理您的请求”,然后继续响应其他消息。约30秒后,收到系统通知”子代理已完成任务”,主代理总结了分析结果并展示给用户。
这种并行处理机制在实际使用中非常实用,避免了等待耗时任务时无法进行其他操作。子代理的执行日志显示它确实调用了搜索工具、读取文件等操作,功能完整。不过子代理不能发送消息给用户,所有结果必须通过主代理转达,在某些场景下不够灵活。15次迭代的限制在大多数情况下够用,但对于特别复杂的任务可能不足。
下载源代码查看内部实现,项目结构非常清晰,每个模块职责明确。agent/loop.py的核心处理逻辑不到300行,易于理解。消息总线bus/queue.py使用Python的asyncio实现异步队列,代码简洁高效。工具系统采用标准的注册表模式,添加新工具只需继承BaseTool类并实现execute方法,扩展性良好。
代码注释虽不算丰富但关键部分都有说明,配合清晰的命名,理解起来不困难。项目文档包括详细的架构说明和源码解析,对学习者非常友好。使用ruff进行代码风格检查,代码质量统一规范。与OpenClaw动辄几千行的单文件相比,Nanobot的模块化和简洁性确实是巨大优势。这种代码质量让它成为学习AI Agent技术的优秀教材。
Nanobot,香港大学推出的开源超轻量级个人AI桌面助理
Segment Anything,model,github,论文,meta sam AI图像分割模型
openbmb,大模型开源工具链,打造大规模预训练语言模型库与相关工具
minimax agent,AI写作,语音交互,图像识别,文档分析,代码生成,实时翻译等多种功能
grok,马斯克旗下xAI推出的人工智能助手
一站式AI应用平台,,内容创作、文案、问答、图像生成、视频生成、语音生成、智能 Agent、自动化工作流、自定义 AI 应用,定制你专属的 AI 应用工作台
飞书智能伙伴,字节跳动旗下企业办公和协作平台推出的Al办公助手
llama2,开源部署教程,模型下载,中文,论文,Meta发布的大型语言模型
WorkBuddy 是腾讯云代码助手推出的 AI Agent 办公工具,自主规划并交付多模态复杂任务结果,支持多 Agents 并行工作,极致提效。
lovart,lovart邀请码,全球首个专业设计ai Agent
manus ai,全球首款通用型AI Agent,manus邀请码,内测码如何申请获取?