📌 项目地址AstrBotDevs/AstrBot | ⭐ 36,650 颗星 | 🔧 Python | 📜 未标注

这项目是做什么的

AstrBot 是开源的一体化 Agent 聊天机器人平台。你写好一套 LLM 配置、技能或插件,它就能同时在 QQ、企业微信、飞书、钉钉、微信公众号、Telegram、Slack 上跑。不用为每个平台单独写 Webhook 解析和消息格式转换。它直接集成了 Dify、阿里云百炼、Coze 这些 Agent 平台,省去自己搭 RAG 或工具链的功夫。

官网上功能列了一大串,我挑几个实际用到的说:

  • 多平台接入:上面列的那 8 个都支持。
  • Agent 沙箱:在隔离环境执行代码和 Shell 调用,别人写的插件不会乱动你系统。
  • 主动 Agent:机器人能自己决定什么时候主动发消息,不一定是被动响应。
  • 1000+ 社区插件:一键安装,全在插件市场里。
  • WebUI + Web ChatUI:内置 Agent 沙箱和网络搜索,不用另外搭前端。

部署实测:三分钟跑起来

我用的 macOS,先确认装了 uvbrew install uv 就可以)。然后按 README 操作:

uv tool install astrbot --python 3.12

安装花了大概两三分钟。第一次执行 astrbot 确实慢,大约 15 秒才出现提示符,这是因为 macOS 的安全检查。第二次就正常了。接着:

astrbot init   # 只第一次执行,生成配置文件
astrbot run

启动后访问 http://localhost:xxxx(端口号在日志里),就看到了 WebUI 管理面板。找到 IM 平台配置项,填上我自己的 QQ 机器人 WebHook 地址,重启后就能在 QQ 上跟机器人聊天了。整个过程没写一行代码。

后续更新用:

uv tool upgrade astrbot --python 3.12

如果你不想碰命令行,官方还给了三种方式:
润云一键云部署:点链接选套餐,自动部署,不用管服务器。
Docker / Docker Compose:适合生产环境,官方文档有详细步骤。
桌面应用:去 AstrBot-desktop 下载安装,直接用 ChatUI。

跟其他机器人框架比,区别在哪

大多数聊天机器人框架只绑定一个平台(NoneBot 只做 QQ,python-telegram-bot 只做 Telegram)。AstrBot 先做了一层多平台适配,插件和 LLM 调同一个接口,底层自动分发消息。这意味着你不需要来回折腾 Webhook 解析、消息格式转换、权限校验。

另一个区别是 Agent 沙箱。它用 Docker 或本机隔离执行用户触发的代码、Shell 命令。社区插件来源不一,沙箱限制了文件系统访问和网络,出事也能控制住。这个功能官方文档专门写了 Agent Sandbox,不是摆设。

三个你需要知道的坑

  1. 必须装 uvuv tool install 依赖 uv,如果你不熟悉 Python 包管理,第一次可能卡住。用 Docker 可以跳过这个门槛。
  2. 配置文件要自己填astrbot init 只生成模板,你得找到对应 IM 平台的 API Token、Webhook。官方文档写得很清楚,但新手还是得翻一遍。可以先用润云部署试试,省掉这部分。
  3. macOS 首次启动慢 10-20 秒。不是 bug,是苹果安全检查。第二次就正常了。Linux/Windows 没这个现象。

关于许可证:README 没写,如果要商用,建议发 Issue 或邮件问作者。

所有命令都来自 README,我没改一个字。更多功能(MCP、技能、记忆、知识库)见官方文档

这篇文章对你有帮助吗?

发表回复