explaingit

hkuds/nanobot

📈 Trending42,724PythonAudience · developerComplexity · 3/5ActiveLicenseSetup · moderate

TLDR

A lightweight, self-hosted AI agent that runs on your machine, connects to any AI provider, and autonomously handles tasks like file operations, shell commands, and web searches through your favorite chat app.

Mindmap

mindmap
  root((Nanobot))
    What it does
      Autonomous task execution
      Reasons and acts loop
      Multi-tool integration
    How to use it
      Install via pip
      Configure AI provider
      Connect messaging app
    Capabilities
      File operations
      Shell commands
      Web search
      Memory across sessions
    Supported platforms
      Discord, Slack, Telegram
      WeChat, Teams, Email
      Local web UI
    Customization
      MCP tool plugins
      Scheduled tasks
      Multiple AI providers

Things people build with this

USE CASE 1

Run a personal AI assistant on your own server that responds via Discord or Slack and autonomously completes daily tasks.

USE CASE 2

Build a custom AI agent that can read your files, run scripts, and search the web without relying on cloud services.

USE CASE 3

Set up scheduled AI-driven routines (like weekly reports or data backups) that execute automatically on your machine.

USE CASE 4

Extend the agent with custom tools via MCP to integrate with your existing workflows and internal systems.

Tech stack

PythonAnthropicOpenAIDeepSeekGoogle GeminiLM Studio

Getting it running

Difficulty · moderate Time to first run · 30min

Requires API key from at least one AI provider (Anthropic, OpenAI, etc.) and chat app integration setup.

Open-source license allowing free use, modification, and distribution for any purpose including commercial use.

In plain English

Nanobot is an open-source, lightweight personal AI agent that you run on your own machine or server. It sits in the same category as tools like Claude Code or OpenAI Codex, agents that use a large language model as a brain and can autonomously take actions like reading files, running shell commands, browsing the web, and managing tasks, but with a deliberate focus on staying small, readable, and easy to self-host. The problem it solves is that mainstream AI agent platforms either lock you into a proprietary cloud service or require complex infrastructure to deploy. Nanobot aims to let anyone run a capable personal AI agent with minimal setup: install via pip, configure which AI provider to use (it supports Anthropic, OpenAI, DeepSeek, Google Gemini, GitHub Copilot, local models via LM Studio, and many others), and the agent is ready to work. Here is how it works: Nanobot maintains an agent loop where it receives a message or task, reasons about it using the connected AI model, decides which tools to use (file operations, shell commands, web search, notebook editing, etc.), executes those tools, and repeats until the task is complete. It supports MCP (Model Context Protocol) for plugging in additional tools, has a memory system so it can remember context across sessions, and can be reached through multiple channels, Discord, Slack, Telegram, WeChat, Microsoft Teams, email, or a local web UI. Scheduled tasks (cron-style reminders and routines) are also supported. You would use Nanobot if you want a personal AI assistant that can autonomously perform tasks on your computer, respond to you through your preferred messaging app, and be customized or extended without depending on any cloud vendor. The stack is Python (3.11 or later), with direct integrations to multiple AI provider SDKs and chat platform APIs.

Copy-paste prompts

Prompt 1
Help me set up Nanobot with OpenAI's API and connect it to my Discord server so it can respond to my messages.
Prompt 2
Show me how to add a custom MCP tool to Nanobot that lets it query my local database and generate reports.
Prompt 3
I want to run Nanobot locally using a free open-source model via LM Studio instead of a paid API. What are the steps?
Prompt 4
How do I configure Nanobot to remember context from previous conversations and use that memory in future tasks?
Prompt 5
Walk me through creating a scheduled task in Nanobot that runs every Monday morning and sends me a summary via email.
Open on GitHub → Explain another repo

Generated 2026-05-18 · Model: sonnet-4-6 · Verify against the repo before relying on details.