Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

Aununo/MyBot

Repository files navigation

🤖 MyBot

Python NoneBot License Docker

基于 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 管理界面

全新的现代化 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 数据目录

🙏 致谢

  • NoneBot2 - 优秀的 Python 异步机器人框架
  • NapCat - QQ 协议端
  • OneBot - 聊天机器人应用接口标准

📄 许可证

本项目 保留所有权利,详见 LICENSE 文件。

⭐ 如果这个项目对你有帮助,请给个 Star!⭐

Made with ❤️ by Aununo

AltStyle によって変換されたページ (->オリジナル) /