基于 NoneBot2 和 NapCat 的功能丰富的 QQ 机器人,支持提醒、待办事项、天气查询等多种实用功能。
- Docker 部署 - 一键部署,无需手动配置
- 丰富插件 - 若干内置插件,覆盖学习、生活、娱乐
- 数据持久化 - 自动保存数据,重启不丢失
- Web 管理界面 - 现代化的可视化管理面板,支持远程管理
- 易于扩展 - 模块化设计,轻松添加自定义插件
- 状态监控 - 实时查看 CPU、内存、运行状态
- apscheduler - 定时任务调度支持
- status - 详细系统状态监控(
/status)
- help - 查看所有命令帮助 (
/help) - ping - 快速状态检查 (
/ping) - schedule - 个人课程表管理 (
/今日课表) - remind - 灵活的提醒功能 (
/remind) - todo - 待办事项管理 (
/todo) - countdown - 事件倒计时管理 (
/time) - eat - 今天吃什么推荐 (
/android,/apple) - weather - 城市天气查询 (
/天气 北京) - latex - LaTeX 公式渲染 (
/latex E=mc^2) - pic - 图片管理 (
/savepic,/sendpic) - summary - 群聊内容总结 (
/总结) - copywriting - 文案生成 (
/文案) - quote - 消息截图 (
/save) - bilibili - B 站视频解析(群聊自动触发)
- relay - 群内接龙(
/接龙) - email_notifier - 检查邮箱新邮件(
/check_email) - usage - 查看命令使用情况(
/usage)
- Git
- Linux/MacOS 或 Windows WSL2
# 1. 克隆项目 git clone https://github.com/yourusername/MyBot.git cd MyBot # 2. 运行一键部署脚本 chmod +x deploy.sh ./deploy.sh # 3. 按提示完成配置,扫码登录即可使用
- 安装 Napcat
curl -o napcat.sh https://nclatest.znin.net/NapNeko/NapCat-Installer/main/script/install.sh && chmod +x napcat.sh bash napcat.sh # 按照指引安装即可 cd ~/Napcat/opt/QQ xvfb-run -a qq --no-sandbox
- 安装 Nonebot
详情请见 nonebot 官方文档
- 通信
修改 nonebot 的 .env.prod:
PORT = 如果 8080 端口被占用,根据你的需要更改
ONEBOT_ACCESS_TOKEN='temp123456'
此处为Napcat代理相关配置,url中的端口需与 nonebot 的 PORT 一致,token 与 nonebot 的 ONEBOT_ACCESS_TOKEN 一致。
{
"network": {
"httpServers": [],
"httpClients": [],
"websocketServers": [],
"websocketClients": [
{
"name": "nonebot",
"enable": true,
"url": "ws://127.0.0.1:8080/onebot/v11/ws",
"messagePostFormat": "array",
"reportSelfMessage": true,
"reconnectInterval": 5000,
"token": "temp123456",
"debug": false,
"heartInterval": 30000
}
]
},
"musicSignUrl": "",
"enableLocalFile2Url": false,
"parseMultMsg": true
}全新的现代化 Web 管理面板,让您随时随地管理机器人!
详见 deployment/DEPLOYMENT.md 完整测试与部署指南。
# 查看实时日志 [最近100行] docker compose logs -f [--tail 100] # 重启服务 docker compose restart # 停止服务 docker compose down # 重新构建 docker compose up --build -d # 备份数据 cp -r data ~/backup_$(date +%Y%m%d)
MyBot/
├── bot.py # NoneBot 入口文件
├── pyproject.toml # 项目配置
├── requirements.txt # Python 依赖
├── docker-compose.yml # Docker Compose 配置
├── Dockerfile # Docker 镜像构建
├── env.example # 环境变量模板
├── deploy.sh # 一键部署脚本
├── web_server.sh # Web 管理面板启动脚本
├── README.md # 项目说明
├── LICENSE # 许可证
├── src/
│ └── plugins/ # 自定义插件目录
│ ├── bilibili.py
│ ├── summary.py
│ ├── weather.py
│ └── ...
├── web/ # Web 管理界面
│ ├── web_api.py # FastAPI 后端
│ └── frontend/ # Vite 前端
│ ├── index.html
│ ├── package.json
│ ├── vite.config.js
│ └── src/
│ ├── App.jsx
│ └── ...
├── deployment/ # 生产部署配置
│ ├── DEPLOYMENT.md # 部署文档
│ ├── nginx_bot.conf # Nginx 配置
│ ├── mybot-web.service # Systemd 服务
│ └── env.web.example # 环境变量模板
├── data/ # 数据持久化目录
│ ├── reminders_data.json
│ ├── todo_data.json
│ ├── eat_data.json
│ └── ...
└── napcat_qq_data/ # NapCat 数据目录
本项目 保留所有权利,详见 LICENSE 文件。
⭐ 如果这个项目对你有帮助,请给个 Star!⭐
Made with ❤️ by Aununo