Introduction
Nanobot is an ultra-lightweight AI agent designed to run on personal hardware with minimal resource consumption. It provides a capable agentic loop with tool use, persistent memory, and multi-provider model support while keeping the codebase small and dependency footprint low.
What Nanobot Does
- Executes multi-step tasks using a lightweight agentic reasoning loop
- Connects to local models via Ollama or remote APIs like OpenAI and Anthropic
- Maintains persistent conversation memory across sessions
- Supports tool calling for file operations, web search, and shell commands
- Runs on consumer hardware including laptops without dedicated GPUs
Architecture Overview
Nanobot is built as a single Python package with a minimal core loop that alternates between LLM reasoning and tool execution. The agent state machine handles planning, action selection, observation, and reflection in a tight cycle. Memory is stored in a local SQLite database with optional vector indexing for semantic retrieval of past interactions.
Self-Hosting & Configuration
- Install via pip with Python 3.10 or later
- Set API keys as environment variables or use local Ollama models
- Configure tool permissions in the YAML settings file
- Memory persistence uses SQLite by default, no external database required
- Customize agent behavior through system prompt templates
Key Features
- Extremely small footprint under 5 MB installed size
- Agentic loop with automatic tool selection and error recovery
- Persistent memory with semantic search over past conversations
- Plugin system for adding custom tools and integrations
- Works with both local and cloud-hosted language models
Comparison with Similar Tools
- OpenClaw — full-featured personal assistant; Nanobot prioritizes minimal resource use
- Aider — focused on code editing; Nanobot is a general-purpose agent
- AutoGPT — autonomous agent with heavy dependencies; Nanobot is lightweight and focused
- Hermes Agent — agent that grows with use; Nanobot targets simplicity and speed
FAQ
Q: How much RAM does Nanobot need? A: The agent itself uses under 100 MB. Total memory depends on the model backend you choose.
Q: Can I use it without an API key? A: Yes, point it at a local Ollama instance and no external API is needed.
Q: Is conversation history persistent? A: Yes, all conversations are stored locally in SQLite and can be searched semantically.
Q: Does it support MCP servers? A: Plugin support allows connecting to MCP-compatible tool servers.