Commit Graph

32 Commits

Author SHA1 Message Date
minecraft1024a
d7f8a8de26 refactor(plugin): 引入旧版Command兼容层并重构基类
为了平滑过渡到新的`PlusCommand`插件架构,本次重构引入了一个兼容层。

`BaseCommand`现在继承自`PlusCommand`,并剥离了大部分重复的功能实现(如消息发送、配置获取等),转而依赖`PlusCommand`的基类实现。这大大简化了`BaseCommand`,使其专注于作为旧版插件的兼容适配器。

在组件注册流程中,增加了对旧版`BaseCommand`的识别。当检测到旧版命令时,会自动使用`create_legacy_command_adapter`工厂函数将其包装成一个标准的`PlusCommand`实例。这使得旧插件无需修改代码即可在新架构下运行,同时会在启动时打印警告,鼓励开发者迁移。
2025-11-19 23:30:36 +08:00
minecraft1024a
2ee6aa3951 refactor(core): 优化类型提示与代码风格
本次提交对项目代码进行了广泛的重构,主要集中在以下几个方面:

1.  **类型提示现代化**:
    -   将 `typing` 模块中的 `Optional[T]`、`List[T]`、`Dict[K, V]` 等旧式类型提示更新为现代的 `T | None`、`list[T]`、`dict[K, V]` 语法。
    -   这提高了代码的可读性,并与较新 Python 版本的风格保持一致。

2.  **代码风格统一**:
    -   移除了多余的空行和不必要的空格,使代码更加紧凑和规范。
    -   统一了部分日志输出的格式,增强了日志的可读性。

3.  **导入语句优化**:
    -   调整了部分模块的 `import` 语句顺序,使其符合 PEP 8 规范。

这些更改不涉及任何功能性变动,旨在提升代码库的整体质量、可维护性和开发体验。
2025-11-19 23:30:12 +08:00
Windpicker-owo
1b3a2342ce 重构消息处理并用DatabaseMessages替换MessageRecv
-更新PlusCommand以使用DatabaseMessages而不是MessageRecv。
-将消息处理逻辑重构到一个新模块message_processor.py中,以处理消息段并从消息字典中创建DatabaseMessages。
-删除了已弃用的MessageRecv类及其相关逻辑。
-调整了各种插件以适应新的DatabaseMessages结构。
-增强了消息处理功能中的错误处理和日志记录。
2025-11-19 23:30:06 +08:00
John Richard
a79253c714 re-style: 格式化代码 2025-11-19 23:13:20 +08:00
minecraft1024a
b98417dec6 先修一下命令无法正常检查聊天类型限制 2025-11-19 23:08:34 +08:00
Windpicker-owo
fe472dff60 修复代码格式和文件名大小写问题 2025-11-19 22:55:55 +08:00
minecraft1024a
38fed9b4cc 添加聊天类型限制功能,支持根据聊天类型过滤命令和动作,新增私聊和群聊专用命令及动作,优化相关日志记录。 2025-11-19 22:40:01 +08:00
SengokuCola
bad2be2bdc fix:全面移除reply_to,并且非必须 2025-08-11 20:25:13 +08:00
SengokuCola
6f49b3d99d 修复Action没有reply_to_message的问题 2025-08-11 14:55:23 +08:00
UnCLAS-Prommer
3a4f343d84 tools修改 2025-07-25 14:35:59 +08:00
UnCLAS-Prommer
229d45083d command简化,修复unregister的bug 2025-07-25 13:39:27 +08:00
UnCLAS-Prommer
bbb112d803 动态控制命令后续处理 2025-07-25 11:01:14 +08:00
UnCLAS-Prommer
e15183a422 管理插件,但是只有一半 2025-07-23 15:53:59 +08:00
UnCLAS-Prommer
10bf424540 增加了组件的局部禁用方法 2025-07-23 00:41:31 +08:00
UnCLAS-Prommer
8d20134cbb 合并BaseEventPlugin到BasePlugin,重写了components_registry,修正了统计输出 2025-07-19 19:16:42 +08:00
UnCLAS-Prommer
1aa2734d62 typing fix 2025-07-17 00:10:41 +08:00
UnCLAS-Prommer
b303a95f61 部分类型注解修复,优化import顺序,删除无用API文件 2025-07-12 00:34:49 +08:00
github-actions[bot]
99f36fca16 🤖 自动格式化代码 [skip ci] 2025-06-25 05:53:49 +00:00
A0000Xz
7c37469ed7 修复base_command中send_command指令未使用dispaly_name的错误 2025-06-25 13:24:11 +08:00
github-actions[bot]
2bc0451f62 🤖 自动格式化代码 [skip ci] 2025-06-19 15:24:29 +00:00
SengokuCola
43425b3c1f doc:完善doc 2025-06-19 23:21:31 +08:00
github-actions[bot]
7ed3ecb561 🤖 自动格式化代码 [skip ci] 2025-06-19 12:22:36 +00:00
SengokuCola
ab28b94e33 refc:重构插件api,补全文档,合并expressor和replyer,分离reply和sender,新log浏览器 2025-06-19 20:20:34 +08:00
github-actions[bot]
e744de2178 🤖 自动格式化代码 [skip ci] 2025-06-14 11:21:15 +00:00
SengokuCola
790642afd6 fix:修复发送api打字时间,现已成为可选参数。修复可能存在的回复图片问题,为数据库缺失字段提供警告 2025-06-14 19:21:02 +08:00
SengokuCola
b9a04b32f6 fix:修复路径遗留问题 2025-06-12 21:20:06 +08:00
春河晴
7b4e7b94f8 use structlog instead of loguru 2025-06-11 15:17:08 +09:00
github-actions[bot]
0cb595218e 🤖 自动格式化代码 [skip ci] 2025-06-10 16:20:05 +00:00
SengokuCola
22aae4d1cd fix:修复禁言插件和豆包画图插件 2025-06-11 00:18:48 +08:00
SengokuCola
6455dab5b8 feat:将旧版示例插件更新,更新mute插件(tts,vtb,doubaopic持续炸裂中) 2025-06-10 23:36:45 +08:00
春河晴
b0c553703f ruff 2025-06-10 16:43:45 +09:00
SengokuCola
4d32b3052f feat:重构插件api 2025-06-10 15:28:36 +08:00