🚀 HIGH PERFORMANCE ASYNC FRAMEWORK

为现代开发而生
NEO 机器人框架

基于 Python 异步生态构建的 OneBot 11 解决方案。内置 Redis 缓存、插件热重载与类型安全检查。这是我的第一个 Python 作品,致力于极致的开发体验。

Core Team
镀铬酸钾 baby2016
Fairy-Oracle-Sanctuary
$ git clone ...
main.py
"""
NEO Bot 主程序入口
负责启动 WebSocket 连接,初始化插件系统,并提供热重载功能。
"""
import asyncio
from watchdog.observers import Observer
from watchdog.events import FileSystemEventHandler

from core.logger import logger
from core.ws import WS
from core.plugin_manager import load_all_plugins

class PluginReloadHandler(FileSystemEventHandler):
    """监听文件变更,触发热重载"""
    def on_any_event(self, event):
        if not event.src_path.endswith(".py"):
            return
        
        logger.info(f"检测到文件变更: {event.src_path}")
        try:
            run_in_thread_pool(load_all_plugins)
            logger.success("插件重载完成")
        except Exception as e:
            logger.exception(f"重载失败: {e}")

@logger.catch
async def main():
    # 1. 初始化核心组件
    await run_in_thread_pool(load_all_plugins)
    await redis_manager.initialize()
    await admin_manager.initialize()

    # 2. 启动 Watchdog 热重载
    observer = Observer()
    observer.schedule(PluginReloadHandler(), plugin_path, recursive=True)
    observer.start()

    # 3. 启动 WebSocket 客户端
    try:
        bot = WS()
        await bot.connect()
    finally:
        observer.stop()

if __name__ == "__main__":
    asyncio.run(main())

为什么选择 NEO?

不仅仅是一个框架,更是一套完整的现代化开发解决方案。

高性能异步 IO

基于 Python 原生 asynciowebsockets 构建。完全非阻塞设计,单进程即可轻松处理海量并发消息,拒绝卡顿。

智能插件热重载

基于 watchdog 实现文件监控。修改代码后自动重载插件逻辑,无需重启机器人进程。让调试和开发效率提升 200%。

Redis 深度集成

内置 Redis 连接池。自动缓存群信息、好友列表等高频数据,减少 API 调用延迟,让响应速度快人一步。

类型安全

全面采用 Pydantic 和 Dataclasses。为所有事件和数据模型提供完整的类型注解,IDE 智能补全,减少运行时错误。

精细权限管理

内置 Admin/Op/User 三级权限体系。支持动态添加管理员,通过装饰器即可轻松控制每个指令的访问权限。

标准 OneBot 11

完美兼容 OneBot v11 协议标准。支持 NapCatQQ、LLOneBot 等主流实现端,无缝对接,开箱即用。

TERMINAL OUTPUT

性能建议:使用 PyPy

为了获得最佳性能,我们强烈推荐使用 PyPy JIT 编译器 来运行 NEO 框架。在处理高并发消息时,PyPy 相比标准 CPython 能提供显著的性能提升。