AstrBot
Getting a language model into the chat apps people already use takes a single self-hosted server running AstrBot, which answers in QQ, Telegram, Discord, Slack, Lark, DingTalk, LINE, and WeCom. The model itself is a setting. OpenAI-compatible endpoints, Anthropic, Google Gemini, DeepSeek, Ollama, and LM Studio all work, with fallback models and retry limits for failed requests, and Dify, Coze, or Alibaba Cloud Bailian can take over a conversation too. A bare model cannot act, so the built-in agent calls MCP servers and Skills, delegates to SubAgents, runs scheduled tasks, and executes code in an isolated sandbox. It cannot read your files either, so a knowledge base takes PDF, Word, Markdown, and EPUB uploads and searches them with hybrid dense and BM25 retrieval. Personas shape each bot's personality, and Whisper or Edge TTS adds speech. When an answer looks wrong, the ChatUI shows thinking, tool calls, token counts, and latency, and a per-message trace timeline shows how the bot got there. Because the panel steers the bot, administrator IDs, session whitelists, optional TOTP login, and HTTPS protect it. Backups live under System Settings, and the plugin market installs any of more than 1,000 extensions in one click. Running on a dedicated VPS on RepoCloud with guaranteed CPU, RAM, and SSD, full root SSH access, and a browser serial console. AGPL-3.0 licensed.
Deploy