--- title: "codemo1991/nanobot-webui: ๐ŸŽฏ Nanobot WebUI โ€” A Smarter, More Efficient Claude AI Assistant โœ… Coding & Bug Fixes โœ… Excel / PDF / PPT Processing โœ… Git Automation โœ… Visual Configuration Panel โœ… Q&A & Knowledge Management 24/7 ready to boost your productivity ๐Ÿš€" source: "https://github.com/codemo1991/nanobot-webui" author: - "[[GitHub]]" published: created: 2026-03-16 description: "๐ŸŽฏ Nanobot WebUI โ€” A Smarter, More Efficient Claude AI Assistant โœ… Coding & Bug Fixes โœ… Excel / PDF / PPT Processing โœ… Git Automation โœ… Visual Configuration Panel โœ… Q&A & Knowledge Management 24/7 ready to boost your productivity ๐Ÿš€ - codemo1991/nanobot-webui: ๐ŸŽฏ Nanobot WebUI โ€” A Smarter, More Efficient Claude AI Assistant โœ… Coding & Bug Fixes โœ… Excel / PDF / PPT Processing โœ… Git Automation โœ… Visual Configuration Panel โœ… Q&A & Knowledge Management 24/7 ready to boost your productivity ๐Ÿš€" tags: - "clippings" --- **Tribute to nanobot** *This project is built upon [nanobot](https://github.com/HKUDS/nanobot) for secondary development. nanobot was inspired by [Clawdbot](https://github.com/openclaw/openclaw), implementing complete Agent functionality with approximately 4000 lines of core code. Thanks to the nanobot community for the lightweight, readable, and extensible foundation.* --- ## ๐Ÿ“ข What's New in This Fork This fork extends nanobot with **Web UI**, **MCP support**, **additional channels** (Discord, QQ, DingTalk), **document/office skills**, **system monitoring**, and more. --- ## โœจ Features Overview | Category | Features | | --- | --- | | **Core Capabilities** | Multi-platform: Web UI, Telegram, Feishu, CLI; Local่ฟ่กŒ๏ผŒไฟๆŠค้š็ง; Support for multiple LLMs (DeepSeek, Claude, GPT, etc.) | | **Function Modules** | File system operations, Code execution, Memory system (long-term + daily notes), Extensible skill system | | **Web UI** | React + TypeScript SPA: Chat, Config (Channels/Providers/Models/MCP/Skills), System Status | | **Channels** | Discord, QQ (qq-botpy), DingTalk (้’‰้’‰), plus original Telegram, WhatsApp, Feishu | | **MCP** | Model Context Protocol integration โ€” connect external tools via stdio/HTTP/SSE | | **Skills** | `claude-code`, `git-manager`, `xlsx`, `pdf`, `pptx`, `skill-creator`, `mirror-system`, `code-review-expert` | | **Cron** | Schedule reminders and recurring tasks โ€” set fixed-time or interval-based jobs | | **Providers** | Zhipu (ๆ™บ่ฐฑ), DashScope (้€šไน‰ๅƒ้—ฎ), vLLM, OpenRouter, Anthropic, OpenAI, DeepSeek, Groq, Gemini, Minimax | | **Startup Scripts** | `nanobot-launcher.sh` (Linux/macOS) + `nanobot-launcher.ps1` (Windows) โ€” Auto environment check, dependency update, frontend build, one-click launch | | **System** | StatusRepository (SQLite), SystemStatusService (uptime, session count), centralized logging | --- ## ๐Ÿ› ๏ธ Built-in Skills nanobot-webui comes with a powerful skill system that extends the AI's capabilities: | Skill | Description | | --- | --- | | **claude-code** | Delegate coding tasks to Claude Code CLI for advanced code generation and refactoring | | **git-manager** | Git repository management โ€” commit, push, pull, branch operations | | **xlsx** | Excel spreadsheet operations โ€” read, write, edit.xlsx files | | **pdf** | PDF operations โ€” read, write, merge, split PDF documents | | **pptx** | PowerPoint presentation operations โ€” create and edit.pptx files | | **skill-creator** | Create new skills to extend nanobot's capabilities | | **mirror-system** | Self-awareness exploration system for personal growth | | **code-review-expert** | Git diff code review โ€” analyze changes and provide feedback | ### Creating Custom Skills The skill system is extensible. You can create custom skills by implementing skill functions that the AI can invoke. See the `skill-creator` skill for a template. --- ## โฐ Scheduled Tasks (Cron) nanobot-webui supports scheduled tasks through a built-in Cron system, allowing you to set up recurring reminders and automated actions: | Feature | Description | | --- | --- | | **Fixed-Time Jobs** | Schedule tasks at specific times (e.g., daily 9:00 AM, weekly Monday 10:00 AM) | | **Interval Jobs** | Run tasks at regular intervals (e.g., every 30 minutes, every 2 hours) | | **Recurring Reminders** | Set up periodic reminders for meetings, deadlines, health checks, etc. | | **Message Channels** | Send scheduled messages to any configured channel (Feishu, Telegram, Discord, etc.) | ### Usage Example ``` # Set a daily reminder "ๆฏๅคฉๆ—ฉไธŠ 9 ็‚นๆ้†’ๆˆ‘ๅ–ๆฐด" # Set a weekly meeting reminder "ๆฏๅ‘จไธ€ไธŠๅˆ 10 ็‚นๆ้†’ๆˆ‘ๅผ€ๅ‘จไผš" # Set an interval check "ๆฏๅŠๅฐๆ—ถๆฃ€ๆŸฅไธ€ไธ‹ๆœๅŠกๅ™จ็Šถๆ€" ``` The Cron system runs in the background and automatically delivers scheduled messages to your configured channels. --- ## ๐Ÿ“ธ Screenshots ### Chat Multi-turn conversation with Nanobot, Markdown rendering, new sessions and history. Example shows weather query โ€” Agent fetches real-time data via MCP tools and returns structured card results. [![Chat interface](https://github.com/codemo1991/nanobot-webui/raw/main/case/chat.png)](https://github.com/codemo1991/nanobot-webui/blob/main/case/chat.png) ### System Status View service health, uptime, active session count, installed Skills, workspace path, and system environment info. [![System status](https://github.com/codemo1991/nanobot-webui/raw/main/case/system_status.png)](https://github.com/codemo1991/nanobot-webui/blob/main/case/system_status.png) ### Config โ€” Channels (IM) Manage IM channel enablement and config โ€” Feishu, Discord, QQ, DingTalk, Telegram, WhatsApp, and more. [![Channels config](https://github.com/codemo1991/nanobot-webui/raw/main/case/setting_channels.png)](https://github.com/codemo1991/nanobot-webui/blob/main/case/setting_channels.png) ### Config โ€” Providers (AI) Manage AI model providers โ€” DeepSeek, Qwen, Zhipu, OpenAI, Anthropic, OpenRouter, vLLM, Groq, Gemini, etc. Add, edit, or remove providers. [![Providers config](https://github.com/codemo1991/nanobot-webui/raw/main/case/setting_providers.png)](https://github.com/codemo1991/nanobot-webui/blob/main/case/setting_providers.png) ### Config โ€” Default Model Set the default Agent model โ€” model name (provider/model-name format), Temperature, Max Tokens, and other parameters. [![Default model config](https://github.com/codemo1991/nanobot-webui/raw/main/case/default_model.png)](https://github.com/codemo1991/nanobot-webui/blob/main/case/default_model.png) ### Config โ€” MCP Manage Model Context Protocol servers โ€” stdio, http, sse, streamable\_http. Import/generate JSON or add new MCP services. [![MCP config](https://github.com/codemo1991/nanobot-webui/raw/main/case/mcp.png)](https://github.com/codemo1991/nanobot-webui/blob/main/case/mcp.png) ### Config โ€” Skills Manage AI skills โ€” select skill folders for upload to workspace, view installed skills (version, status, description), enable or disable. [![Skills management](https://github.com/codemo1991/nanobot-webui/raw/main/case/skills.png)](https://github.com/codemo1991/nanobot-webui/blob/main/case/skills.png) --- ## ๐Ÿš€ Quick Start ### Install ``` git clone https://github.com/codemo1991/nanobot-webui.git cd nanobot-webui pip install -e . ``` The intelligent startup scripts in the `scripts/` directory handle everything automatically โ€” the simplest way to get started: **Supported Platforms:** - **Linux / macOS:** `nanobot-launcher.sh` - **Windows PowerShell:** `nanobot-launcher.ps1` **What it does:** - โœ… Automatically checks Python (โ‰ฅ3.11) and Node.js environment - โœ… Automatically installs/updates Python dependencies - โœ… Automatically builds the frontend - โœ… One-click launches the Web UI service **Usage:** - **Windows (PowerShell):** ``` .\scripts\nanobot-launcher.ps1 ``` - **Linux / macOS:** ``` chmod +x scripts/nanobot-launcher.sh ./scripts/nanobot-launcher.sh ``` Then open [http://127.0.0.1:6788](http://127.0.0.1:6788/) > **Tip:** Run the script again anytime to update dependencies and restart the service โ€” the simplest way to keep your installation up-to-date! ### Manual Startup (Without Scripts) ### Web UI ``` # Build frontend (first time) cd web-ui && npm install && npm run build && cd .. # Start Web UI (backend + static files) nanobot web-ui ``` Open [http://127.0.0.1:6788](http://127.0.0.1:6788/) โ€” Chat, Config, and System pages are available. ### CLI Chat ``` nanobot onboard # Initialize config # Edit ~/.nanobot/config.json with your API key nanobot agent -m "Hello!" ``` ### Docker ``` # Build the image docker build -t nanobot-webui . # Run (recommended: mount volume for config persistence) docker run -d -p 6788:6788 -v nanobot-data:/root/.nanobot --name nanobot nanobot-webui # Or use host path for config docker run -d -p 6788:6788 -v ~/.nanobot:/root/.nanobot --name nanobot nanobot-webui ``` Then open [http://127.0.0.1:6788](http://127.0.0.1:6788/). On first launch, the app auto-creates `~/.nanobot/config.json`; add your API key via the Config page in the Web UI. --- ## ๐Ÿ’ป Web Interface Features - **Chat** โ€” Create sessions, multi-turn conversations, Markdown rendering, session persistence - **File Browser** โ€” Browse and manage workspace files directly from the UI - **Session History** โ€” View and manage conversation history - **Model Switching** โ€” Easily switch between different AI models - **Config** โ€” Manage Channels (IM), Providers, Models, MCP servers, Skills - **System** โ€” Health check, uptime, session count, system info, config export --- ## ๐Ÿ“ฆ Optional Dependencies ``` # Feishu pip install nanobot-ai[feishu] # QQ pip install nanobot-ai[qq] # DingTalk pip install nanobot-ai[dingtalk] # MCP pip install nanobot-ai[mcp] ``` --- ## ๐Ÿ“ Project Structure (This Fork) ``` nanobot/ โ”œโ”€โ”€ agent/ # Core agent (loop, context, memory, tools) โ”‚ โ””โ”€โ”€ tools/ # mcp.py, filesystem, shell, registry... โ”œโ”€โ”€ channels/ # telegram, whatsapp, feishu, discord, qq, dingtalk โ”œโ”€โ”€ web/ # REST API server (api.py) โ”œโ”€โ”€ mcp/ # MCP loader โ”œโ”€โ”€ storage/ # StatusRepository (SQLite) โ”œโ”€โ”€ services/ # SystemStatusService โ”œโ”€โ”€ skills/ # claude-code, git-manager, xlsx, pdf, pptx, skill-creator, mirror-system, code-review-expert... โ”œโ”€โ”€ providers/ # LLM providers (OpenAI, Anthropic, DeepSeek, etc.) โ”œโ”€โ”€ config/ # Extended schema (Discord, QQ, DingTalk, MCP) โ””โ”€โ”€ cli/ # web-ui command, status, etc. web-ui/ # React SPA (Chat, Config, System) scripts/ # Startup scripts (nanobot-launcher.sh, nanobot-launcher.ps1) ``` --- ## ๐Ÿค Contributing Contributions are welcome! Please feel free to submit a Pull Request or open an Issue for bugs and feature requests. ### Development Setup ``` # Clone the repository git clone https://github.com/codemo1991/nanobot-webui.git cd nanobot-webui # Install in development mode pip install -e . # Install web-ui dependencies cd web-ui && npm install # Run development server cd .. nanobot web-ui ``` ### Code Style - Python: Follow PEP 8 - JavaScript/TypeScript: Follow ESLint configuration - Commit messages: Use clear, descriptive messages --- ## ๐Ÿ“„ License MIT License โ€” see LICENSE file for details. --- ## ๐Ÿค Credits - **[nanobot](https://github.com/HKUDS/nanobot)** โ€” The base project this fork builds upon - **nanobot contributors** โ€” For the lightweight, research-friendly design --- *Thanks for visiting โœจ nanobot-webui!*