
π **nanobot** is an open-source and ultra-lightweight AI agent in the spirit of [OpenClaw](https://github.com/openclaw/openclaw), [Claude Code](https://www.anthropic.com/claude-code), and [Codex](https://www.openai.com/codex/). It keeps the core agent loop small and readable while still supporting chat channels, memory, MCP and practical deployment paths, so you can go from local setup to a long-running personal agent with minimal overhead.
## π’ News
- **2026-04-21** π Released **v0.1.5.post2** β Windows & Python 3.14 support, Office document reading, SSE streaming for the OpenAI-compatible API, and stronger reliability across sessions, memory, and channels. Please see [release notes](https://github.com/HKUDS/nanobot/releases/tag/v0.1.5.post2) for details.
- **2026-04-20** π¨ Kimi K2.6 support, Telegram long-message split, WebUI typography & dark-mode polish.
- **2026-04-19** π WebUI i18n locale switcher, atomic session writes with auto-repair.
- **2026-04-18** π§ͺ Initial WebUI chat, smarter setup wizard menus, WebSocket multi-chat multiplexing.
- **2026-04-17** πͺ Windows & Python 3.14 CI, Dream line-age memory, email self-loop guard.
- **2026-04-16** π‘ SSE streaming for OpenAI-compatible API, Discord channel allow-list.
- **2026-04-15** ποΈ LM Studio & nullable API keys, MiniMax thinking endpoint, runtime SelfTool.
- **2026-04-14** π Released **v0.1.5.post1** β Dream skill discovery, mid-turn follow-up injection, WebSocket channel, and deeper channel integrations. Please see [release notes](https://github.com/HKUDS/nanobot/releases/tag/v0.1.5.post1) for details.
- **2026-04-13** π‘οΈ Agent turn hardened β user messages persisted early, auto-compact skips active tasks.
- **2026-04-12** π Lark global domain support, Dream learns discovered skills, shell sandbox tightened.
- **2026-04-11** β‘ Context compact shrinks sessions on the fly; Kagi web search; QQ & WeCom full media.
Earlier news
- **2026-04-10** π Notebook editing tool, multiple MCP servers, Feishu streaming & done-emoji.
- **2026-04-09** π WebSocket channel, unified cross-channel session, `disabled_skills` config.
- **2026-04-08** π€ API file uploads, OpenAI reasoning auto-routing with Responses fallback.
- **2026-04-07** π§ Anthropic adaptive thinking, MCP resources & prompts exposed as tools.
- **2026-04-06** π°οΈ Langfuse observability, unified Whisper transcription, email attachments.
- **2026-04-05** π Released **v0.1.5** β sturdier long-running tasks, Dream two-stage memory, production-ready sandboxing and programming Agent SDK. Please see [release notes](https://github.com/HKUDS/nanobot/releases/tag/v0.1.5) for details.
- **2026-04-04** π Jinja2 response templates, Dream memory hardened, smarter retry handling.
- **2026-04-03** π§ Xiaomi MiMo provider, chain-of-thought reasoning visible, Telegram UX polish.
- **2026-04-02** π§± Long-running tasks run more reliably β core runtime hardening.
- **2026-04-01** π GitHub Copilot auth restored; stricter workspace paths; OpenRouter Claude caching fix.
- **2026-03-31** π°οΈ WeChat multimodal alignment, Discord/Matrix polish, Python SDK facade, MCP and tool fixes.
- **2026-03-30** π§© OpenAI-compatible API tightened; composable agent lifecycle hooks.
- **2026-03-29** π¬ WeChat voice, typing, QR/media resilience; fixed-session OpenAI-compatible API.
- **2026-03-28** π Provider docs refresh; skill template wording fix.
- **2026-03-27** π Released **v0.1.4.post6** β architecture decoupling, litellm removal, end-to-end streaming, WeChat channel, and a security fix. Please see [release notes](https://github.com/HKUDS/nanobot/releases/tag/v0.1.4.post6) for details.
- **2026-03-26** ποΈ Agent runner extracted and lifecycle hooks unified; stream delta coalescing at boundaries.
- **2026-03-25** π StepFun provider, configurable timezone, Gemini thought signatures.
- **2026-03-24** π§ WeChat compatibility, Feishu CardKit streaming, test suite restructured.
- **2026-03-23** π§ Command routing refactored for plugins, WhatsApp/WeChat media, unified channel login CLI.
- **2026-03-22** β‘ End-to-end streaming, WeChat channel, Anthropic cache optimization, `/status` command.
- **2026-03-21** π Replace `litellm` with native `openai` + `anthropic` SDKs. Please see [commit](https://github.com/HKUDS/nanobot/commit/3dfdab7).
- **2026-03-20** π§ Interactive setup wizard β pick your provider, model autocomplete, and you're good to go.
- **2026-03-19** π¬ Telegram gets more resilient under load; Feishu now renders code blocks properly.
- **2026-03-18** π· Telegram can now send media via URL. Cron schedules show human-readable details.
- **2026-03-17** β¨ Feishu formatting glow-up, Slack reacts when done, custom endpoints support extra headers, and image handling is more reliable.
- **2026-03-16** π Released **v0.1.4.post5** β a refinement-focused release with stronger reliability and channel support, and a more dependable day-to-day experience. Please see [release notes](https://github.com/HKUDS/nanobot/releases/tag/v0.1.4.post5) for details.
- **2026-03-15** π§© DingTalk rich media, smarter built-in skills, and cleaner model compatibility.
- **2026-03-14** π¬ Channel plugins, Feishu replies, and steadier MCP, QQ, and media handling.
- **2026-03-13** π Multi-provider web search, LangSmith, and broader reliability improvements.
- **2026-03-12** π VolcEngine support, Telegram reply context, `/restart`, and sturdier memory.
- **2026-03-11** π WeCom, Ollama, cleaner discovery, and safer tool behavior.
- **2026-03-10** π§ Token-based memory, shared retries, and cleaner gateway and Telegram behavior.
- **2026-03-09** π¬ Slack thread polish and better Feishu audio compatibility.
- **2026-03-08** π Released **v0.1.4.post4** β a reliability-packed release with safer defaults, better multi-instance support, sturdier MCP, and major channel and provider improvements. Please see [release notes](https://github.com/HKUDS/nanobot/releases/tag/v0.1.4.post4) for details.
- **2026-03-07** π Azure OpenAI provider, WhatsApp media, QQ group chats, and more Telegram/Feishu polish.
- **2026-03-06** πͺ Lighter providers, smarter media handling, and sturdier memory and CLI compatibility.
- **2026-03-05** β‘οΈ Telegram draft streaming, MCP SSE support, and broader channel reliability fixes.
- **2026-03-04** π οΈ Dependency cleanup, safer file reads, and another round of test and Cron fixes.
- **2026-03-03** π§ Cleaner user-message merging, safer multimodal saves, and stronger Cron guards.
- **2026-03-02** π‘οΈ Safer default access control, sturdier Cron reloads, and cleaner Matrix media handling.
- **2026-03-01** π Web proxy support, smarter Cron reminders, and Feishu rich-text parsing improvements.
- **2026-02-28** π Released **v0.1.4.post3** β cleaner context, hardened session history, and smarter agent. Please see [release notes](https://github.com/HKUDS/nanobot/releases/tag/v0.1.4.post3) for details.
- **2026-02-27** π§ Experimental thinking mode support, DingTalk media messages, Feishu and QQ channel fixes.
- **2026-02-26** π‘οΈ Session poisoning fix, WhatsApp dedup, Windows path guard, Mistral compatibility.
- **2026-02-25** π§Ή New Matrix channel, cleaner session context, auto workspace template sync.
- **2026-02-24** π Released **v0.1.4.post2** β a reliability-focused release with a redesigned heartbeat, prompt cache optimization, and hardened provider & channel stability. See [release notes](https://github.com/HKUDS/nanobot/releases/tag/v0.1.4.post2) for details.
- **2026-02-23** π§ Virtual tool-call heartbeat, prompt cache optimization, Slack mrkdwn fixes.
- **2026-02-22** π‘οΈ Slack thread isolation, Discord typing fix, agent reliability improvements.
- **2026-02-21** π Released **v0.1.4.post1** β new providers, media support across channels, and major stability improvements. See [release notes](https://github.com/HKUDS/nanobot/releases/tag/v0.1.4.post1) for details.
- **2026-02-20** π¦ Feishu now receives multimodal files from users. More reliable memory under the hood.
- **2026-02-19** β¨ Slack now sends files, Discord splits long messages, and subagents work in CLI mode.
- **2026-02-18** β‘οΈ nanobot now supports VolcEngine, MCP custom auth headers, and Anthropic prompt caching.
- **2026-02-17** π Released **v0.1.4** β MCP support, progress streaming, new providers, and multiple channel improvements. Please see [release notes](https://github.com/HKUDS/nanobot/releases/tag/v0.1.4) for details.
- **2026-02-16** π¦ nanobot now integrates a [ClawHub](https://clawhub.ai) skill β search and install public agent skills.
- **2026-02-15** π nanobot now supports OpenAI Codex provider with OAuth login support.
- **2026-02-14** π nanobot now supports MCP! See [MCP section](#mcp-model-context-protocol) for details.
- **2026-02-13** π Released **v0.1.3.post7** β includes security hardening and multiple improvements. **Please upgrade to the latest version to address security issues**. See [release notes](https://github.com/HKUDS/nanobot/releases/tag/v0.1.3.post7) for more details.
- **2026-02-12** π§ Redesigned memory system β Less code, more reliable. Join the [discussion](https://github.com/HKUDS/nanobot/discussions/566) about it!
- **2026-02-11** β¨ Enhanced CLI experience and added MiniMax support!
- **2026-02-10** π Released **v0.1.3.post6** with improvements! Check the updates [notes](https://github.com/HKUDS/nanobot/releases/tag/v0.1.3.post6) and our [roadmap](https://github.com/HKUDS/nanobot/discussions/431).
- **2026-02-09** π¬ Added Slack, Email, and QQ support β nanobot now supports multiple chat platforms!
- **2026-02-08** π§ Refactored Providersβadding a new LLM provider now takes just 2 simple steps! Check [here](#providers).
- **2026-02-07** π Released **v0.1.3.post5** with Qwen support & several key improvements! Check [here](https://github.com/HKUDS/nanobot/releases/tag/v0.1.3.post5) for details.
- **2026-02-06** β¨ Added Moonshot/Kimi provider, Discord integration, and enhanced security hardening!
- **2026-02-05** β¨ Added Feishu channel, DeepSeek provider, and enhanced scheduled tasks support!
- **2026-02-04** π Released **v0.1.3.post4** with multi-provider & Docker support! Check [here](https://github.com/HKUDS/nanobot/releases/tag/v0.1.3.post4) for details.
- **2026-02-03** β‘ Integrated vLLM for local LLM support and improved natural language task scheduling!
- **2026-02-02** π nanobot officially launched! Welcome to try π nanobot!
## π‘ Key Features of nanobot
- **Ultra-lightweight**: stable long-running agent behavior with a small, readable core.
- **Research-ready**: the codebase is intentionally simple enough to study, modify, and extend.
- **Practical**: chat channels, API, memory, MCP, and deployment paths are already built in.
- **Hackable**: you can start fast, then go deeper through repo docs instead of a monolithic landing page.
## π¦ Install
> [!IMPORTANT]
> If you want the newest features and experiments, install from source.
>
> If you want the most stable day-to-day experience, install from PyPI or with `uv`.
**Install from source**
```bash
git clone https://github.com/HKUDS/nanobot.git
cd nanobot
pip install -e .
```
**Install with `uv`**
```bash
uv tool install nanobot-ai
```
**Install from PyPI**
```bash
pip install nanobot-ai
```
## π Quick Start
**1. Initialize**
```bash
nanobot onboard
```
**2. Configure** (`~/.nanobot/config.json`)
Configure these **two parts** in your config (other options have defaults). Add or merge the following blocks into your existing config instead of replacing the whole file.
*Set your API key* (e.g. [OpenRouter](https://openrouter.ai/keys), recommended for global users):
```json
{
"providers": {
"openrouter": {
"apiKey": "sk-or-v1-xxx"
}
}
}
```
*Set your model* (optionally pin a provider β defaults to auto-detection):
```json
{
"agents": {
"defaults": {
"provider": "openrouter",
"model": "anthropic/claude-opus-4-6"
}
}
}
```
**3. Chat**
```bash
nanobot agent
```
- Want different LLM providers, web search, MCP, security settings, or more config options? See [Configuration](./docs/configuration.md)
- Want to run nanobot in chat apps like Telegram, Discord, WeChat or Feishu? See [Chat Apps](./docs/chat-apps.md)
- Want Docker or Linux service deployment? See [Deployment](./docs/deployment.md)
## π§ͺ WebUI (Development)
> [!NOTE]
> The WebUI development workflow currently requires a source checkout and is not yet shipped together with the official packaged release. See [WebUI Document](./webui/README.md) for full WebUI development docs and build steps.
**1. Enable the WebSocket channel in `~/.nanobot/config.json`**
```json
{ "channels": { "websocket": { "enabled": true } } }
```
**2. Start the gateway**
```bash
nanobot gateway
```
**3. Start the webui dev server**
```bash
cd webui
bun install
bun run dev
```
## ποΈ Architecture
π nanobot stays lightweight by centering everything around a small agent loop: messages come in from chat apps, the LLM decides when tools are needed, and memory or skills are pulled in only as context instead of becoming a heavy orchestration layer. That keeps the core path readable and easy to extend, while still letting you add channels, tools, memory, and deployment options without turning the system into a monolith.
## β¨ Features
π 24/7 Real-Time Market Analysis |
π Full-Stack Software Engineer |
π
Smart Daily Routine Manager |
π Personal Knowledge Assistant |

|

|

|

|
| Discovery β’ Insights β’ Trends |
Develop β’ Deploy β’ Scale |
Schedule β’ Automate β’ Organize |
Learn β’ Memory β’ Reasoning |
## π Docs
Browse the [repo docs](./docs/README.md) for the latest features and GitHub development version, or visit [nanobot.wiki](https://nanobot.wiki/docs/latest/getting-started/nanobot-overview) for the stable release documentation.
- Talk to your nanobot with familiar chat apps: [Chat Apps](./docs/chat-apps.md)
- Configure providers, web search, MCP, and runtime behavior: [Configuration](./docs/configuration.md)
- Integrate nanobot with local tools and automations: [OpenAI-Compatible API](./docs/openai-api.md) Β· [Python SDK](./docs/python-sdk.md)
- Run nanobot with Docker or as a Linux service: [Deployment](./docs/deployment.md)
## π€ Contribute & Roadmap
PRs welcome! The codebase is intentionally small and readable. π€
### Branching Strategy
| Branch | Purpose |
|--------|---------|
| `main` | Stable releases β bug fixes and minor improvements |
| `nightly` | Experimental features β new features and breaking changes |
**Unsure which branch to target?** See [CONTRIBUTING.md](./CONTRIBUTING.md) for details.
**Roadmap** β Pick an item and [open a PR](https://github.com/HKUDS/nanobot/pulls)!
- **Multi-modal** β See and hear (images, voice, video)
- **Long-term memory** β Never forget important context
- **Better reasoning** β Multi-step planning and reflection
- **More integrations** β Calendar and more
- **Self-improvement** β Learn from feedback and mistakes
### Contributors
## β Star History
Thanks for visiting β¨ nanobot!