AstrBot puts one agent in many chat networks
AstrBot connects language models, tools, knowledge bases, and personas to messaging platforms people already use. The official support table includes Telegram, Slack, Discord, QQ, WeCom, Feishu, DingTalk, WeChat Official Accounts, LINE, Mattermost, and several others. That breadth is its main selling point. A team can build one assistant workflow and expose it in more than one chat environment instead of maintaining a separate bot stack for each network.
The default GitHub README is English and links Simplified Chinese, Traditional Chinese, Japanese, French, Spanish, and Russian versions. Releases include English and Chinese notes. This multilingual effort helps international evaluation, although some linked deployment documentation uses Chinese paths or labels. Teams outside that language community should read the exact adapter guide they need before assuming every integration has equally complete English instructions.
The useful core is broader than message forwarding
AstrBot supports hosted model APIs from OpenAI, Anthropic, Google, DeepSeek, and others, plus local services such as Ollama and LM Studio. It also lists speech-to-text and text-to-speech providers, MCP, skills, multimodal conversations, context compression, a knowledge base, personas, a WebUI, and a browser chat interface. These pieces let a bot answer from private material or call tools rather than merely relaying prompts to one model.
The README advertises more than 1,000 plugins with one-click installation. That catalog can save integration work, but the number is not a security review. A plugin runs close to conversations, provider keys, platform tokens, and possibly tool execution. Check its repository, maintainer activity, requested permissions, network destinations, and update history. Pin approved versions where possible and test upgrades in a separate instance before exposing them to production chats.
What happened when we ran it
Our Python 3.12 install at commit c6a14e0 completed in 76 seconds. It installed 172 packages and occupied 471 MB on disk, while the repository checkout was 15.4 MB. The build completed in another 6 seconds on 3 CPUs and 8 GB of RAM. Pip-audit reported 0 known vulnerabilities in the installed environment, a useful point-in-time result rather than a promise about future dependencies or optional plugins.
Tests stopped after 6 seconds with exit code 4. Pytest could not load tests/conftest.py because importing pytest_asyncio raised ModuleNotFoundError. No tests ran, so there is no pass or failure count to report. The direct finding is a missing test dependency in our installed environment. We did not guess whether the package belongs in a development extra, lock group, or container layer because the log excerpt does not establish that.
Agent sandboxing reduces risk without removing it
AstrBot includes an agent sandbox for isolated code execution, shell calls, and session-level resource reuse. Isolation is the correct direction for an assistant allowed to act. Operators still decide what image runs, which files and networks it can reach, how long jobs live, and how much CPU or memory a session receives. A sandbox with host secrets mounted into it defeats the point.
Our run used an unprivileged container with no secrets, 3 CPUs, and 8 GB of RAM. A real bot will have messaging tokens and model credentials, so keep those outside tool execution wherever the architecture allows. Give each adapter its own narrowly scoped credential, rotate it independently, and avoid using an agent chat as the only way to administer the service. Logs may contain user messages or model output and need their own retention policy.
Platform coverage has explicit gaps
The support table distinguishes official and community adapters. Matrix, Rocket.Chat, and VoceChat are community maintained. WhatsApp is marked Coming Soon; that phrase is an aspiration in the current README, not a working adapter or a dated commitment. If one of those platforms is mandatory, test its exact adapter before choosing AstrBot. A broad logo list matters less than reliable delivery, reconnection, media handling, and permission behavior on the network your users depend on.
Version 4.27.4 was published on August 19, 2026. Its fixes covered preference loading, group-chat context, Telegram audio handling, dashboard behavior, knowledge-base uploads, and a Weixin customer-service webhook case. GitHub listed 1,442 open issues and pull requests on August 25, with a push that same day. The queue is not 1,442 verified bugs, but it does reflect a wide product surface and heavy activity.
Choose AstrBot for channel reach, then narrow it
AstrBot fits a technically capable self-hoster who needs an assistant across several supported messaging systems. The AGPL 3.0 license, Docker and Compose files, active releases, translated README, official adapters, and local-model support make serious evaluation reasonable. Its breadth should be constrained in deployment: enable only the providers, channels, plugins, and tool permissions the bot needs.
Rasa is better for controlled dialogue logic and explicit actions. Botpress suits teams preferring a visual managed builder. Open WebUI is the simpler comparison when users can work in a browser instead of chat networks. AstrBot wins when channel reach is the requirement, particularly around QQ, WeCom, Feishu, and DingTalk. Our missing pytest_asyncio result means contributors should verify the development dependency path before relying on the repository suite.

