Repolode
HKUDS

HKUDS/nanobot

Self-hosted personal AI agent framework in Python with a browser WebUI, terminal client, chat app channels, tools, memory and MCP support.

Open-source alternative to:ChatGPT

Stars
49,210
Forks
8,653
Open issues
858
Last commit
6 hours ago

What is it?

nanobot is a lightweight, self-hosted personal AI agent written in Python. You run it on your own machine or server and use it through a browser WebUI, a terminal client, or chat apps such as Telegram, Discord, Slack, WeChat, Email, and Mattermost. The AI itself comes from a model provider you configure, including OpenAI-compatible APIs and local model servers.

The agent can work with PDF, Word, Excel, and PowerPoint files, run shell commands, search and fetch web pages, and call MCP tools. It keeps session history and long-term memory, can delegate work to multiple agents, and can run scheduled automations or longer goals while the gateway is running.

For developers, nanobot exposes a Python SDK and an OpenAI-compatible HTTP API so the same agent runtime can be embedded in applications. It is distributed as the nanobot-ai package on PyPI and also runs from a source checkout.

Key features

  • 01Browser WebUI and terminal client sharing the same local gateway and saved conversations
  • 02Chat app channels including Telegram, Discord, Slack, WeChat, Email, and Mattermost
  • 03Built-in tools for reading PDF, Word, Excel, and PowerPoint files, plus shell and web search
  • 04Session history and long-term memory stored in the agent workspace
  • 05MCP integration, multi-agent delegation, and scheduled automations
  • 06Python SDK and OpenAI-compatible API for embedding the agent

Use cases

  • Running a private AI assistant on your own server and chatting with it from Telegram or Discord
  • Summarizing local reports or documents by pointing the agent at a project folder
  • Scheduling recurring tasks that the agent runs and reports back through a chat app
  • Adding an agent backend to your Python application through the SDK or HTTP API

Quick start

  1. 1

    Install the stable package with uv

    uv tool install nanobot-ai
  2. 2

    Open the WebUI for first-run browser setup

    nanobot webui
  3. 3

    In Settings → Models, save a provider or model preset with your credential or supported sign-in

Things to know

  • You need access to a supported model provider or a local model server, and model fees or hardware costs are on you.
  • Requires Python 3.11 or newer.
  • The native terminal UI ships only in prebuilt wheels for macOS, glibc Linux, and Windows x64; other platforms should use the WebUI or --classic.

Topics

FAQ

What is nanobot?
Self-hosted personal AI agent framework in Python with a browser WebUI, terminal client, chat app channels, tools, memory and MCP support. nanobot is a lightweight, self-hosted personal AI agent written in Python. You run it on your own machine or server and use it through a browser WebUI, a terminal client, or chat apps such as Telegram, Discord, Slack, WeChat, Email, and Mattermost. The AI itself comes from a model provider you configure, including OpenAI-compatible APIs and local model servers.
Is nanobot free to use? What license does it have?
nanobot is open source under the MIT license. Check the license terms before using it in commercial products.
Is nanobot still maintained?
Actively maintained. The last commit to nanobot was on Oct 20, 2026.
What can I use nanobot for?
Running a private AI assistant on your own server and chatting with it from Telegram or Discord Summarizing local reports or documents by pointing the agent at a project folder Scheduling recurring tasks that the agent runs and reports back through a chat app Adding an agent backend to your Python application through the SDK or HTTP API
How do I install nanobot?
Install the stable package with uv: uv tool install nanobot-ai Open the WebUI for first-run browser setup: nanobot webui In Settings → Models, save a provider or model preset with your credential or supported sign-in
Where can I get nanobot?
The source code and installation instructions are on GitHub: https://github.com/HKUDS/nanobot

Summary generated by AI from the project's README. GitHub stats refresh daily.

Related projects