使用AstrBot+napcat搭建一个专属qq机器人
AstrBot是一款支持多平台的模块化聊天机器人框架,具有松耦合架构、异步处理和插件系统等特性。本文介绍了在雨云平台上部署AstrBot及连接NapCat QQ的完整流程:通过雨云控制台安装AstrBot后,使用Docker部署NapCat并配置WebSocket连接,最终实现QQ机器人的功能对接。部署完成后,用户可通过发送"/help"指令测试机器人是否正常运行。该方案为开发
什么是 AstrBot?
AstrBot 是一个易于上手的多平台聊天机器人及开发框架。通过它,你能够在多种消息平台上部署一个支持大语言模型(LLM)的聊天机器人。并以此实现但不限于 AI 知识库问答、角色扮演、群聊管理、LLM Agent 等功能。它有如下特性
-
松耦合:AstrBot 历经 3 次大代码重构。每一次都在向着松耦合、模块化的方向迈进。目前,AstrBot 采用了事件总线和消息事件流水线的架构设计,实现近乎完全的模块化。
-
异步:AstrBot 采用了异步编程模型,使得 AstrBot 在处理多个消息平台的消息时,能够更加高效。
-
多消息平台部署:AstrBot 默认支持接入 QQ、QQ频道、微信。通过插件,还可以接入 Telegram 等任何消息平台。
-
完善的插件系统:AstrBot 提供了完善、及其易于上手的插件系统,你可以通过插件实现自己的功能。开发一个插件,只需要几行代码。
本文环境
debian12
docker 28.3.2
部署教程
AstrBot部署(本文不演示如何添加模型)
来到控制台

点击重装系统或软件-下滑-选择AstrBot-立即安装

安装完成后输入http://服务器IP:6185访问AstrBot(如遇到响应时间过长,请在ssh中输入ufw allow 6185)
输入默认的用户名astrbot和密码astrbot-登录

首次会让你修改密码

修改完成后进入主界面
点击消息平台

新增适配器

选择接入qq个人号
名称自定义-保存

napcat部署
docker run -d \
-e NAPCAT_GID=$(id -g) \
-e NAPCAT_UID=$(id -u) \
-p 3000:3000 \
-p 3001:3001 \
-p 6099:6099 \
--name napcat \
--restart=always \
mlikiowa/napcat-docker:latest
等待镜像拉取和容器启动完成。

启动完成后,输入http://公网ip:6099/访问napcat
输入默认的token:napcat -登录

首次需要扫码登录qq
进入主界面后点击 网络配置-新建- WebSockets客户端。

在新弹出的窗口中:
- 勾选
启用。 URL填写ws://宿主机IP:端口/ws。如ws://1.2.3.4:6199/ws。- 消息格式:
Array - 心跳间隔:
5000 - 重连间隔:
5000
点击 保存。
前往 AstrBot WebUI 控制台,如果出现 aiocqhttp(OneBot v11) 适配器已连接。 相关蓝色的日志,说明连接成功。
此时,你的 AstrBot 和 NapCatQQ 应该已经连接成功。使用 私聊 的方式在 QQ 对机器人发送 /help 以检查是否连接成功。
效果展示


更多推荐
所有评论(0)