1. 解决多个 issue 反馈问题,修复已知 Bug 2. 优化前端界面与交互体验 3. 优化 tool 调用链路,较此前版本节省约 70% token 用量 4. 增加模型思考控制开关,提升整体响应体感 5. 新增 find-skills,全面接入腾讯云 SkillsHub,支持通过对话进行 skills 管理 6. 新增 ima-knowledge-base、ima-notes,全面接入 IMA 知识库和笔记,支持知识库与笔记内容管理和写入 7. 优化 README,并补充 0.7.0 发布说明 8. 发布说明:https://654321.ai/docs/releases/v0.7.0
Lightweight, Extensible AI Agent Framework | Optimized for Chinese Users & Domestic LLMs
中文 | English
What's New
-
v0.6.0 — Latest Release View Detailed Update Guide
- Added WeChat ClawBot integration with support for multiple account bindings
- Added external coding tool integration for Claude, Codex, and OpenCode
- Added first-time remote initialization entry
/setup/<random> - Added
REMOTE_SETUP_SECRET_TTL_MINUTESto control remote setup entry expiration - Strengthened remote auth boundaries for
/api/*and/ws/chat
-
Mar 19, 2026 — v0.5.0 Released View Detailed Update Guide
- True agent-team orchestration with multi-role collaboration, context handoff, and workflow routing
- Configuration expanded from session-level to role-level, team-level, and multi-bot setups
- Custom channel architecture strengthened, with Weibo, WeCom, Xiaozhi AI, and more flexible bot routing
- Better support for running multiple bots across different channels and scenarios
- Frontend comprehensively upgraded across chat, settings, skills, team panels, and overall UX
- Tool calls, media delivery, channel handling, and message flow all improved for complex tasks
-
Mar 14, 2026 — v0.4.0 Released View Detailed Update Guide
- Session-level configuration system (independent API, model, prompts, personality per session)
- Added Weibo, WeCom, Xiaozhi AI channels
- Comprehensive multi-agent collaboration optimization
- Added /help command (accessible via IM channels)
- Integrated Mermaid chart rendering engine
- Full compatibility with OpenClaw Skills ecosystem
- Heartbeat proactive greeting system refactored
-
Mar 4, 2026 — v0.3.0 Released View Detailed Update Guide
- Multi-Agent Collaboration System (Pipeline/Graph/Council modes)
- Enhanced Cron Jobs (one-time tasks, retry mechanism, batch operations)
- Skills System Upgrade (config management, schema validation, auto-fix)
- Added 10+ Chinese AI vendor coding plans support
- Comprehensive UI/UX optimization and stability improvements
- Enhanced Web Tools (Scrapling anti-scraping, JS rendering support)
-
Feb 26, 2026 — v0.2.0 Released
- Focused on bug fixes, UX improvements, and build workflow cleanup
- Pushed CountBot from "basically runnable" toward "stable and iteratable"
-
Feb 21, 2026 — Official Open Source Release
- CountBot was first open-sourced with its core framework, startup scripts, agent runtime, channel system, tool system, skill system, and frontend foundation
- Public iteration started from this point onward
Upcoming Features
- Smart hardware integration (voice control, IoT device support)
- Deep tmux integration (invoke Codex CLI, Claude Code, and other external tools)
- Continuous performance optimization (parallel agent execution, improved caching)
What is CountBot?
CountBot is a lightweight, extensible AI Agent framework optimized for Chinese users and domestic LLMs. With only ~21,000 lines of Python, it delivers production-grade intelligent assistant infrastructure featuring:
- Smart Memory — Auto-summarizes conversations, never forgets important info
- Proactive Greeting — Like a real assistant, reaches out when you're idle
- Zero-Config Security — Frictionless local access, auto-protected remote access
- Multi-Channel Unified — One codebase serving Web, Lark, DingTalk, QQ, Telegram, WeChat
- Personalization — 12 personality presets + custom nicknames and location
- Message Queue — Priority scheduling, deduplication, dead-letter handling
- Domestic LLM Optimized — Deep support for Zhipu, Qwen, Kimi, MiniMax, DeepSeek, etc.
Core philosophy: Make AI Agents into digital companions with memory, emotion, initiative, and collaboration.
CountBot was born from natural language. Our vision is not to make more people learn configuration and programming before they can use AI, but to let ordinary users directly interact with AI through natural language to retrieve information, generate content, break down tasks, call tools, orchestrate workflows, and eventually build their own personal assistants, team collaboration flows, and automation systems.
Why CountBot?
CountBot was born from natural language, and we believe software will continue moving back toward natural language as its most universal interface.
CountBot is not trying to be just another "chat with AI" shell. It aims to be open infrastructure that lets ordinary users use natural language to drive AI, organize tools, connect channels, and land real-world tasks.
Top 10 Highlights
| Highlight | Description | Advantage |
|---|---|---|
| Chinese-Friendly | 21K lines with full Chinese comments, comprehensive docs, deep domestic LLM integration | Low learning curve |
| Dual Deployment | B/S browser + C/S desktop client, one codebase | Fits personal & team use |
| Domestic Ecosystem | 10 built-in skill plugins: search, maps, email, file transfer, web publishing, etc. | Works out of the box |
| GUI Configuration | Full web-based management, zero config file editing | Fewer config errors |
| Deep Personalization | 12 personality system + custom nicknames & location | Warm interaction |
| High Performance | Smart context compression, significantly reduced token usage | Cost-effective |
| Progressive Security | Local access fully open, remote access auto-protected | Security meets convenience |
| Lightweight | 21K lines vs 50K–400K in other frameworks, modular design | Easy to read & extend |
| Smart Memory | Auto-summarize, keyword search, never forget | Long-term companion |
| Message Queue | 4-level priority, deduplication, dead-letter handling | Production-grade reliability |
Use Cases
CountBot combines built-in tools and skill plugins to handle a variety of daily tasks:
Information Retrieval & Search
"Search for today's AI news"
- Uses Baidu Search skill to fetch and summarize the latest information
"Find Western restaurants in Dongguan, I plan to leave at 6 PM"
- Calls Amap (Gaode) skill to search restaurants and plan routes
"What's the weather like today?"
- Queries the weather skill for real-time and forecast data
Email & File Management
"Check if I have any new emails today"
- Connects to QQ/163 mailbox via email skill, auto-checks new mail
"Compress the images on my desktop and send them to my email"
- Uses file tools to package files, sends via email skill
Image Processing & Creation
"Generate a picture of a cat celebrating New Year and send it to me"
- Calls image generation skill for AI art, delivers via channel
"Take a screenshot of my computer and send it to me"
- Uses screenshot tool to capture screen, sends via Lark/DingTalk
"What's in this image?"
- Image analysis skill identifies content with detailed descriptions
Web Design & Publishing
"Design a personal resume webpage and publish it online"
- Uses web design skill to generate HTML, auto-deploys to Cloudflare Pages
Browser Automation
"Open Bing in the browser, search for AI, open the third result, then screenshot it for me"
- Browser automation skill handles complex web operation workflows
Scheduled Tasks
"Check the weather for me every morning at 8 AM"
- Sets up a Cron task that auto-executes and pushes results
Multi-Channel Collaboration
CountBot runs simultaneously on Web, Lark, DingTalk, QQ, and more. All channels share the same smart memory system — no matter where you chat, the AI remembers your preferences and history.
Core Features
Smart Memory System
CountBot's memory system includes:
- Auto Conversation Summary — LLM decides when to summarize, extracting key information
- Rolling Context Compression — Auto-compresses when conversation exceeds window, no info lost
- Keyword Search — Fast retrieval of historical memories by keyword
- Line-Based Storage — Simple, reliable file storage, easy to backup and migrate
# Memory system works automatically
User: "My name is John, I live in Beijing"
AI: "Got it, I'll remember that"
# Days later...
User: "Where do I live again?"
AI: "You live in Beijing" # Auto-retrieved from memory
Heartbeat Proactive Greeting
CountBot has proactive care capabilities:
- Smart Idle Detection — Monitors user's last active time
- Do Not Disturb — Supports DND time windows (e.g., 22:00–08:00 Beijing time)
- Daily Limit — Prevents over-disturbance (default: max 2 per day)
- Natural Randomness — Not mechanical timed greetings, but natural care
# User inactive for 4 hours, within active hours
AI: "Long time no see! What have you been up to? Need any help?"
Zero-Config Security Model
An innovative progressive security design:
- Local Access (127.0.0.1) → Zero friction, direct use
- Remote Access (192.168.x.x) → Guided password setup on first visit
- Password Requirements → Min 8 chars, upper/lowercase + digits
- Session Management → 24-hour validity
# Local use — no configuration needed
http://localhost:8000 ✅ Direct access
# Remote use — auto-protected
http://192.168.1.100:8000 🔐 First-time password setup
Personalization
In the Settings page under "User Management", you can configure:
12 Personality Presets
CountBot offers 12 distinct personality settings: Hot-Tempered Bro, Roast Master, Gentle Sister, Straight Shooter, Sharp-Tongued Boss, Chatterbox, Philosopher, Soft & Cute Assistant, Comedian, Energetic, Chuunibyou, Zen Master. You can also fully customize the personality description to match your usage habits.
Custom Nicknames & Location
- AI Name — Give your assistant a name (default: CountBot)
- User Nickname — How the AI addresses you
- User Location — Your location info (e.g., Dongguan), used for weather, maps, trip planning
Precision On-Demand Cron Scheduler
Not polling, not a simple timer, but a smart scheduling system:
- Precision Wake — Calculates next task time, accurate to the second
- Concurrency Control — Semaphore-based max concurrency
- Timeout Protection — Max execution time per task (default: 300s)
- Independent Sessions — Each task uses its own database session
- SQLite Lock Retry — Auto-handles concurrent write conflicts
# Not polling every second, but precisely calculating next wake time
next_wake = min([job.next_run for job in enabled_jobs])
await asyncio.sleep((next_wake - now).total_seconds())
Quick Start
One-Click Launch
# Clone the repository
git clone https://github.com/countbot-ai/countbot.git
cd countbot
# Install dependencies
pip install -r requirements.txt
# If PyPI access is slow, you can use the Aliyun mirror
pip install -r requirements.txt -i https://mirrors.aliyun.com/pypi/simple/
# Start (auto-opens browser)
python start_app.py
Visit http://localhost:8000, configure an LLM provider in the settings page, and you're ready to go.
Download Desktop Version
https://github.com/countbot-ai/CountBot/releases
Supports Windows / macOS / Linux
Recommended Configuration
Notable Chinese AI models: GLM-5, MiniMax-M2.5, Kimi K2.5, Qwen3.5-Plus, DeepSeek Chat, etc.
Zero-cost start: Use Zhipu AI's free GLM-4.7-Flash model
- Visit Zhipu AI Open Platform
- Register and obtain an API Key
- Select "Zhipu AI" in CountBot settings, enter the API Key
- Start using!
Architecture
Project Structure
countbot/
├── backend/ # Backend (~21K lines)
│ ├── modules/
│ │ ├── agent/ # Agent Core
│ │ │ ├── loop.py # ReAct Loop
│ │ │ ├── memory.py # Smart Memory
│ │ │ ├── heartbeat.py # Proactive Greeting
│ │ │ ├── personalities.py # 12 Personalities
│ │ │ └── context.py # Context Builder
│ │ ├── messaging/ # Message Queue
│ │ │ ├── enterprise_queue.py # Message Queue
│ │ │ └── rate_limiter.py # Token Bucket
│ │ ├── cron/ # Cron Scheduler
│ │ │ └── scheduler.py # Precision Wake
│ │ ├── auth/ # Authentication
│ │ │ └── middleware.py # Zero-Config Security
│ │ ├── channels/ # Channel Management
│ │ ├── providers/ # LLM Providers
│ │ └── tools/ # Tool System (13)
├── frontend/ # Frontend (Vue 3 + TypeScript)
├── skills/ # Skill Plugins (10)
└── docs/ # Documentation
Tech Stack
Backend
- FastAPI — Modern web framework with native async & WebSocket support
- SQLAlchemy 2.0 — Async ORM with complex query support
- aiosqlite — SQLite async driver, zero-config database
- Anthropic & OpenAI SDK — Official SDKs, supports all major models
- Pydantic v2 — Data validation and config management
- Loguru — Structured logging, easy debugging
Frontend
- Vue 3 — Progressive framework, Composition API
- TypeScript — Type safety, fewer runtime errors
- Pinia — Lightweight state management
- Vue I18n — Internationalization (Chinese/English)
- Axios — HTTP client with auto-retry
- Lucide Icons — Modern icon library
Note: Frontend source code is currently undergoing final optimization and will be fully uploaded upon completion. The
frontend/dist/directory contains pre-built HTML files that are fully functional.
Documentation
| Document | Description |
|---|---|
| Quick Start Guide | Feature setup, API key acquisition |
| Deployment | Installation, startup, production deployment |
| Agent Loop | ReAct loop principles |
| Memory System | Auto-summary, context compression |
| Cron Scheduler | Precision wake, concurrency control |
| Channel System | Multi-channel configuration |
| Tool System | Built-in tools and runtime capabilities |
| Skill System | Plugin extension and development |
| Remote Auth | Zero-config security model |
| Configuration Manual | Complete config reference |
| API Reference | REST API + WebSocket |
Supported LLMs (via Official SDKs)
CountBot uses Anthropic and OpenAI official SDKs, compatible with OpenAI / Anthropic / Gemini protocols, supporting all major LLMs:
Recommended Chinese LLMs
| Provider | Model Examples | Access |
|---|---|---|
| Zhipu AI | glm-4.7-flash (free), GLM-5 | open.bigmodel.cn |
| Qwen | Qwen3.5-Plus | dashscope.aliyun.com |
| Moonshot | Kimi K2.5 | platform.moonshot.cn |
| MiniMax | MiniMax-M2.5 | platform.minimax.io |
| DeepSeek | DeepSeek Chat | platform.deepseek.com |
| Doubao | Doubao-Pro-32K | volcengine.com |
| Baidu ERNIE | ERNIE-4.0-8K | qianfan.baidubce.com |
| Tencent Hunyuan | Hunyuan-Lite | hunyuan.tencentcloudapi.com |
| Yi | Yi-Large | platform.lingyiwanwu.com |
| Baichuan | Baichuan4 | platform.baichuan-ai.com |
International LLMs
| Provider | Model Examples | Access |
|---|---|---|
| OpenAI | gpt-5.3 | platform.openai.com |
| Anthropic | Claude Sonnet 4 | console.anthropic.com |
| Gemini | Gemini 2.0 Flash | aistudio.google.com |
| Groq | Llama 3.3 70B | console.groq.com |
| Mistral | Mistral Large | console.mistral.ai |
| Cohere | Command R+ | dashboard.cohere.com |
| Together AI | Llama 3.3 70B Turbo | api.together.xyz |
| OpenRouter | Multi-model aggregation | openrouter.ai |
Local Deployment
| Method | Description |
|---|---|
| Ollama | Local open-source model deployment |
| vLLM | High-performance inference engine |
| LM Studio | GUI-based local deployment |
Custom Compatible APIs
| Protocol | Description |
|---|---|
| OpenAI Compatible | Any OpenAI-protocol compatible API |
| Anthropic Compatible | Any Anthropic-protocol compatible API |
| Gemini Compatible | Any Gemini-protocol compatible API |
Supported Channels
| Channel | Connection | Configuration |
|---|---|---|
| Web UI | Built-in | No config needed |
| Lark (Feishu) | WebSocket | App ID + App Secret |
| DingTalk | Stream Mode | Client ID + Client Secret |
| Official SDK | App ID + Secret | |
| WebSocket | App ID + App Secret | |
| WeCom | WebSocket | Corp ID + Agent ID + Secret |
| Xiaozhi AI | WebSocket | App ID + App Secret |
| Telegram | Long Polling | Bot Token (proxy supported) |
| WeChat (Coming Soon) | Official Account API | App ID + App Secret + Token |
| Discord (Coming Soon) | Gateway | Bot Token |
All channels support allow_from whitelist for access control.
Built-in Tools (13)
| Tool | Function |
|---|---|
read_file |
Read file content |
write_file |
Write file content |
edit_file |
Edit file (replace/insert/delete) |
list_dir |
List directory contents |
exec |
Execute shell commands (sandboxed) |
web_fetch |
Fetch web page content |
memory_read |
Read long-term memory |
memory_write |
Write long-term memory |
memory_search |
Search memory |
screenshot |
Capture screen |
file_search |
Search files |
spawn |
Create sub-agent |
send_media |
Send media files |
Built-in Skill Plugins (10)
| Skill | Description | Config |
|---|---|---|
| Baidu Search | Baidu AI search with web, encyclopedia, AI generation | API Key |
| Cron Manager | Create/manage scheduled tasks via chat | No config |
| QQ/163 mailbox send/receive with attachments | Email auth code | |
| Image Analysis | Zhipu/Qwen vision models, OCR, object recognition | API Key |
| Image Generation | ModelScope text-to-image with LoRA style stacking | API Token |
| Map Navigation | Amap route planning & POI search | API Key |
| News Aggregation | Chinese news + global AI news, multi-category RSS | No config |
| Weather | wttr.in weather service, global city support | No config |
| Web Design | HTML generation + Cloudflare Pages one-click deploy | API Token |
| Browser Automation | agent-browser CLI, web ops, screenshots, data extraction | Manual install |
Security Features
Progressive Security Model
Local Access (127.0.0.1)
↓
Zero Friction
↓
Direct Use
Remote Access (192.168.x.x)
↓
First Visit
↓
Guided Password Setup
↓
Login Required
Command Sandbox
- Workspace isolation (
restrict_to_workspace) - Path traversal detection
- Null byte injection blocking
- Command whitelist/blacklist
- Audit logging
Rate Limiting
- Token bucket algorithm
- Per-user rate limiting
- Configurable rate and burst size
Contributing
We welcome all forms of contribution!
Development Environment
# Backend development (hot reload)
uvicorn backend.app:app --reload --host 0.0.0.0 --port 8000
# Frontend development
cd frontend
npm install
npm run dev
Adding New Components
- New LLM Provider →
backend/modules/providers/ - New Channel →
backend/modules/channels/ - New Tool →
backend/modules/tools/ - New Skill →
skills/<skill-name>/
See CONTRIBUTING.md for details.
License
Acknowledgments
CountBot's creation was inspired and supported by the open-source community.
Project Inspiration
-
PicoClaw — Thanks to the PicoClaw team for demonstrating the possibility of ultra-lightweight AI Agents. CountBot's tool system and core architecture were deeply inspired by it.
-
NanoBot — Thanks to the NanoBot team for showcasing clean code organization and modular design.
-
ZeroClaw — Thanks to the ZeroClaw team for their exploration in security and performance. CountBot's security architecture references their security-first design philosophy.
Tech Stack
Thanks to the following open-source projects and communities:
- FastAPI — Modern Python web framework
- Vue.js — Progressive JavaScript framework
- Anthropic SDK — Anthropic official Python SDK
- OpenAI SDK — OpenAI official Python SDK
- SQLAlchemy — Python SQL toolkit and ORM
- Pydantic — Data validation and settings management
Community
Special thanks to all developers and users who provided feedback, suggestions, and contributions to CountBot. You make AI technology more accessible and user-friendly.
Open Source Spirit
CountBot embraces the open-source spirit, committed to making AI Agent technology more transparent, controllable, and easy to use. We believe that through open-source collaboration, more people can benefit from the advancement of AI technology.