添加全局 BotManager 单例用于统一管理所有 Bot 实例 在 WS 关闭和 ReverseWSManager 清理时调用注销逻辑 修改广播插件使用 BotManager 获取所有活跃 Bot 实例 移除 echo 插件的权限限制并更新文档配置
110 lines
2.3 KiB
Markdown
110 lines
2.3 KiB
Markdown
# 快速上手
|
||
|
||
## 1. 你需要准备
|
||
|
||
* **Python 3.14**:必须是这个版本(JIT编译需要)
|
||
* **Git**:拉取代码
|
||
* **Redis**:缓存和权限管理,需要单独安装
|
||
* **Docker** (可选):用于代码沙箱执行(code_py插件)
|
||
* **OneBot v11 客户端**:机器人本体,推荐用 [NapCatQQ](https://github.com/NapNeko/NapCatQQ)
|
||
|
||
## 2. 搭环境
|
||
|
||
### a. 克隆代码
|
||
|
||
```bash
|
||
git clone https://github.com/Fairy-Oracle-Sanctuary/NeoBot.git
|
||
cd NeoBot
|
||
```
|
||
|
||
### b. 创建虚拟环境
|
||
|
||
```bash
|
||
# Windows
|
||
python -m venv venv
|
||
.\venv\Scripts\activate
|
||
|
||
# Linux / macOS
|
||
python3.14 -m venv venv
|
||
source venv/bin/activate
|
||
```
|
||
|
||
看到命令行前面多了个 `(venv)`,就说明你进来了。
|
||
|
||
### c. 安装依赖
|
||
|
||
```bash
|
||
pip install -r requirements.txt
|
||
```
|
||
|
||
### d. 安装 Playwright 依赖
|
||
|
||
```bash
|
||
playwright install chromium
|
||
```
|
||
|
||
### e. 编译核心 (可选,但强烈建议)
|
||
|
||
想让你的代码更快?把它的核心代码编译成 C。
|
||
|
||
```bash
|
||
python setup_mypyc.py build_ext --inplace
|
||
```
|
||
*注:Windows 上可能需要装个 Visual Studio Build Tools,Linux 上需要 GCC。编译失败也别慌,跳过就行,JIT 也能保证不错的速度*
|
||
|
||
## 3. 第一次
|
||
|
||
### a. 修改配置
|
||
|
||
去根目录找 `config.toml`。
|
||
|
||
```toml
|
||
[napcat_ws]
|
||
# 你的 OneBot 地址
|
||
# 我们用的是正向连接,也就是 Bot 主动去连 OneBot
|
||
uri = "ws://127.0.0.1:3001"
|
||
token = ""
|
||
|
||
#当然你也可以配置逆向连接
|
||
[reverse_ws]
|
||
enabled = true # 是否启用
|
||
host = "0.0.0.0" # 监听地址
|
||
port = 3002 # 监听端口
|
||
token = ""
|
||
|
||
[redis]
|
||
host = "127.0.0.1"
|
||
port = 6379
|
||
db = 0
|
||
|
||
# MySQL 配置
|
||
[mysql]
|
||
# MySQL 主机地址
|
||
host = "114.66.61.199"
|
||
# MySQL 端口
|
||
port = 42398
|
||
# MySQL 用户名
|
||
user = "neobot"
|
||
# MySQL 密码
|
||
password = "neobot"
|
||
# MySQL 数据库名称
|
||
db = "neobot"
|
||
```
|
||
把 `uri` 改成你自己的 OneBot 地址。
|
||
|
||
### b. 启动!
|
||
|
||
一切就绪
|
||
|
||
```bash
|
||
# 推荐开启 JIT + GIL-free 模式启动(Python 3.14)
|
||
python -X jit -X gil=0 main.py
|
||
```
|
||
|
||
**模式说明**:
|
||
- `-X jit`:启用 JIT 编译,提升运行时性能(2-5 倍)
|
||
- `-X gil=0`:启用无全局锁模式,多线程真正并行执行(+300% CPU 密集型任务性能)
|
||
|
||
如果你看到日志刷出来,最后显示 "连接成功!",恭喜,你成功了!
|
||
|
||
现在,试着给你的机器人发个 `/help`看看会返回什么东西 |