基于 NoneBot2、NapCat 与 OpenClaw Bridge 的 QQ 机器人,支持丰富功能插件以及 Agent 对话能力。
- 丰富插件 - 内置提醒、待办、课表、天气、图片、B站解析等功能
- 数据持久化 - 自动保存数据,重启不丢失
- 易于扩展 - 模块化设计,便于继续添加自定义插件
- OpenClaw Bridge - 可将 QQ 消息桥接到 OpenClaw,支持更强的 Agent / LLM 对话能力
- apscheduler - 定时任务调度支持
- help - 查看所有命令帮助 (
/help) - ping - 快速连通性检查 (
/ping) - status - 服务器状态查询 (
/status,支持戳一戳触发) - schedule - 个人课程表管理 (
/今日课表) - remind - 灵活的提醒功能 (
/remind) - todo - 待办事项管理 (
/todo) - countdown - 事件倒计时管理 (
/countdown,/倒计时) - eat - 今天吃什么推荐 (
/android,/apple) - weather - 城市天气查询 (
/天气 北京) - latex - LaTeX 公式渲染 (
/latex E=mc^2) - pic - 图片管理 (
/savepic,/sendpic) - quote - 消息截图 (
/save) - bilibili - B 站视频解析(群聊自动触发)
- email_notifier - 检查邮箱新邮件(
/check_email) - openclaw_bridge - OpenClaw 对话桥接(群聊 @机器人 / 私聊可触发)
- ops_alert - 查看和触发当前运维巡检状态。(
/ops)
- Linux / WSL2 / macOS
- Python 3.10+
- Git
- 已安装并可使用的 QQ 协议端(如 NapCat)
- 本机可直接调用
openclaw命令
git clone https://github.com/Aununo/MyBot.git
cd MyBotpython3 -m venv .venv
source .venv/bin/activate
pip install --upgrade pip
pip install -r requirements.txtcp env.example .env至少需要根据你的实际环境修改:
SUPERUSERSPORT
如果要启用 OpenClaw Bridge,建议同时关注:
OPENCLAW_AGENT_IDOPENCLAW_BRIDGE_USE_LOCALOPENCLAW_BRIDGE_TIMEOUTOPENCLAW_AUDIO_MODEOPENCLAW_IMAGE_MODE
NoneBot 侧 .env 示例:
HOST=0.0.0.0
PORT=8080
ONEBOT_WS_URLS=[]推荐由 NapCat 主动反向连接 到 NoneBot:
- 反向 WebSocket 地址:
ws://127.0.0.1:8080/onebot/v11/ws - 如果部署在同一台机器,通常 不需要 token
NapCat 侧示例配置:
{
"network": {
"httpServers": [],
"httpClients": [],
"httpSseServers": [],
"websocketServers": [],
"websocketClients": [
{
"name": "mybot-reverse-ws",
"enable": true,
"url": "ws://127.0.0.1:8080/onebot/v11/ws",
"reportSelfMessage": false,
"messagePostFormat": "array",
"token": "",
"debug": false,
"heartInterval": 30000,
"reconnectInterval": 5000
}
]
}
}如果是无桌面服务器,可配合 screen + xvfb-run -a qq --no-sandbox 启动 NapCat/QQ;登录时扫码即可。
source .venv/bin/activate
python bot.py项目内也提供了两个直接启动脚本:
# 启动 NoneBot 本体
bash start_mybot.sh
# 启动 B 站代理服务(给 bilibili 插件生成可访问代理链接)
bash start_bilibili_server.sh如果你使用 screen 管理进程,可参考:
# MyBot
screen -S mybot
cd /path/to/MyBot
bash start_mybot.sh
# Bilibili 代理服务
screen -S bilibili
cd /path/to/MyBot
bash start_bilibili_server.sh
# NapCat / QQ
screen -S napcat
# 然后在该会话中启动 NapCat/QQ# 启动
source .venv/bin/activate
python bot.py
# 重新安装依赖
pip install -r requirements.txt
# 语法检查
python -m compileall src bot.py
# 查看日志(如果你用了 screen / 重定向)
tail -f logs/mybot.logMyBot/
├── bot.py # NoneBot 入口文件
├── pyproject.toml # 项目配置
├── data/ # 数据持久化目录
├── README.md # 项目说明
├── LICENSE # 许可证
├── src/
│ └── plugins/
│ ├── openclaw_bridge.py
│ ├── status.py
│ ├── remind.py
│ ├── todo.py
│ ├── weather.py
│ └── ...
├── env.example # 环境变量模板
└── requirements.txt # Python 依赖
本项目基于 MIT License 开源,详见 LICENSE 文件。