Files
NeoBot/docs/project-structure.md
K2cr2O1 3cbf5328bb refactor(core): 优化权限管理和事件模型
- 重构 AdminManager 和 PermissionManager 以 Redis 为主要数据源
- 为所有事件模型添加 slots=True 提升性能
- 更新文档说明 Mypyc 编译注意事项
- 清理测试和调试文件
- 移动静态资源到 web_static 目录
2026-01-13 08:35:54 +08:00

2.0 KiB
Raw Blame History

项目结构

了解项目里每个文件夹是干嘛的,能让你更快找到代码。

.
├── core/                   # 核心代码,别乱动
│   ├── handlers/           # 底层事件处理器
│   ├── managers/           # 全局单例管理器
│   ├── utils/              # 工具函数
│   └── ws.py               # WebSocket 连接实现
├── data/                   # 存放持久化数据
│   ├── admin.json          # 管理员列表
│   └── permissions.json    # 用户权限列表
├── docs/                   # 开发文档
├── logs/                   # 日志文件
├── models/                 # 数据模型
│   └── events/             # OneBot 事件模型
├── plugins/                # 你的插件都放这
├── templates/              # 图片渲染用的网页模板
├── venv/                   # Python 虚拟环境
├── .gitignore              # Git 忽略配置
├── main.py                 # 主入口文件
├── requirements.txt        # Python 依赖列表
└── setup_mypyc.py          # [可选] Mypyc 编译脚本,用于将核心模块编译为 C 扩展以提升性能

重点目录说明

core/

这是框架的心脏。除非你知道自己在干嘛,否则别碰这里面的东西。大部分功能都由 managers 里的管理器提供,你只需要 import 它们就行。

data/

存放一些 JSON 格式的数据。管理员和用户权限默认存在这里。如果你用 Redis这些文件会作为备份。

plugins/

这是你最常待的地方。你写的所有插件(.py 文件都扔在这个目录里。Bot 启动时会自动加载这里的所有插件。

templates/

如果你要用 ImageManager 画图,就需要把 HTML 模板文件放在这里。

main.py

程序的入口。负责加载配置、初始化管理器、启动 WebSocket 连接和 FastAPI 服务。