镀铬酸钾 6b9bdeeff2 Dev (#78)
* fix(discord): 修复 WebSocket 连接检测并增强跨平台文件处理

修复 Discord WebSocket 连接检测逻辑,使用正确的属性检查连接状态
为跨平台消息处理添加文件类型支持,并增加详细的调试日志
优化附件处理逻辑,确保所有文件类型都能正确识别和转发

* feat(跨平台): 优化消息处理并添加纯文本提取功能

添加 extract_text_only 函数过滤非文本标记
修改翻译逻辑仅处理纯文本内容
完善附件处理和消息内容拼接
修复仅包含表情时的消息处理问题

* refactor(discord-cross): 使用模块专用日志记录器替换全局日志记录器

将各模块中的全局日志记录器替换为模块专用日志记录器,以提供更清晰的日志来源标识
同时在适配器中添加会话状态检查和重连机制,提升消息发送的可靠性

* feat(翻译): 改进翻译功能,同时显示原文和译文

修改翻译功能,不再替换原文而是同时显示原文和翻译内容,方便用户对照
更新 DeepSeek API 配置为官方地址和模型
优化 Discord 适配器的重连逻辑,直接关闭 WebSocket 触发重连
修复 Discord 频道 ID 转换逻辑,简化处理流程

* feat(cross-platform): 添加跨平台功能支持及配置优化

- 新增跨平台配置模型和全局配置支持
- 优化 Discord 适配器的连接管理和错误处理
- 添加 watchdog 和 discord.py 依赖
- 创建 DeepSeek API 配置文档
- 移除重复的同步帮助图片代码
- 改进跨平台插件配置加载逻辑

* fix(jrcd): 修正群组ID检查条件

删除不再使用的示例插件文件

* feat: 改进配置加载逻辑并更新项目配置

当配置文件不存在时自动生成示例配置
添加pyproject.toml作为项目构建配置
更新.gitignore忽略更多文件类型
删除不再使用的反向WebSocket示例文件

* docs: 更新架构文档和项目结构说明

添加反向WebSocket连接模式说明
补充核心管理器文档
更新项目结构文件
在文档首页添加特色功能说明

* fix(discord): 修复WebSocket连接检查并添加错误日志

refactor(config): 更新配置文件的网络和认证信息

feat(cross-platform): 为跨平台消息处理添加异常捕获和日志
2026-03-24 14:01:30 +08:00
2026-03-24 14:01:30 +08:00
2026-02-27 10:47:23 +08:00
2026-03-24 14:01:30 +08:00
2026-03-24 14:01:30 +08:00
2026-03-24 14:01:30 +08:00
2026-03-05 23:01:55 +08:00
2026-03-24 14:01:30 +08:00
2026-03-23 16:52:15 +08:00
2026-01-06 19:46:44 +08:00
2026-03-23 16:52:15 +08:00
2026-03-24 14:01:30 +08:00
2026-03-20 15:49:15 +08:00
2026-03-23 16:52:15 +08:00

Calglau BOT by NEO Bot Framework

[INTERNAL USE ONLY]

本仓库为 Calglau BOT 的内部开发版本,请遵守相关保密协议。

Powered by NEO Bot Framework

项目概述

Calglau BOT 是一个基于 NEO Bot Framework 构建的高性能 QQ 机器人。

简单来说:扣一

核心特性

  • 模块化插件架构:所有功能都在 plugins/ 目录,开发者可轻松扩展
  • 性能优化
    • Python 3.14 JIT:运行时热点代码编译成机器码
    • Mypyc AOT编译核心模块编译为C扩展
    • 全局连接复用HTTP 和 Redis 连接池化管理
  • 开发者友好:完整的类型提示,清晰的 API 设计
  • 集成 Redis 缓存:缓存帮助图片、权限数据、会话状态等
  • 正向 WebSocket 连接仅支持正向WS连接模式Bot主动连接OneBot

技术栈

  • 核心框架: Python 3.14 JIT & NEO Bot Framework
  • 编译器: Mypyc
  • 异步核心: asyncio + uvloop (Linux) / 原生 Loop (Windows)
  • 网络通信: websockets (OneBot v11), aiohttp (Shared Session)
  • 浏览器引擎: Playwright (Chromium) + Page Pool
  • 数据序列化: orjson
  • 缓存: Redis
  • 日志: Loguru

项目结构

.
├── plugins/                # 插件目录,业务逻辑都在这
│   ├── admin.py            # 权限管理Admin/User两级权限
│   ├── auto_approve.py     # 自动同意好友请求和群邀请
│   ├── bot_status.py       # Bot运行状态查询图片形式
│   ├── broadcast.py        # 管理员专用广播功能
│   ├── code_py.py          # Python代码沙箱执行
│   ├── echo.py             # Echo/点赞功能
│   ├── furry.py            # Furry图片获取
│   ├── github_parser.py    # GitHub仓库链接解析
│   ├── jrcd.py             # 今日人品/长度查询
│   ├── thpic.py            # 东方Project随机图片
│   ├── web_parser/         # Web链接解析系统B站、抖音、GitHub等
│   └── sync_async_test_plugin.py  # 异步同步混用测试插件
├── core/                   # 框架核心,非请勿动
│   ├── api/                # OneBot API 封装
│   ├── handlers/           # 事件处理器
│   ├── managers/           # 各种管理器 (指令, 浏览器, 图片, 插件, 权限)
│   ├── utils/              # 工具函数
│   ├── ws.py               # WebSocket 通信层 (已编译)
│   ├── bot.py              # Bot 实例
│   ├── config_loader.py    # 配置加载
│   └── permission.py       # 权限枚举
├── data/                   # 数据存储
│   ├── admin.json          # 管理员名单
│   └── permissions.json    # 权限配置
├── models/                 # 数据模型
│   ├── events/             # OneBot事件模型
│   ├── message.py          # 消息段模型
│   ├── sender.py           # 发送者信息
│   └── objects.py          # API响应对象
├── templates/              # Jinja2模板用于图片生成
├── docs/                   # 开发文档
├── tests/                  # 单元测试
├── setup_mypyc.py          # Mypyc编译脚本
├── config.toml             # 配置文件
└── main.py                 # 启动入口

快速开始

1

  1. 装环境: Python 3.14Redis OneBot 客户端 (推荐 NapCat)。
  2. 装依赖: pip install -r requirements.txt
  3. 装浏览器: playwright install chromium
  4. 编译核心 (可选): python setup_mypyc.py build_ext --inplace
  5. 启动: python -X jit main.py

详细文档去 docs/ 目录看

Description
No description provided
Readme 1.6 MiB
Languages
Python 86.8%
HTML 13.2%