Commit Graph

492 Commits

Author SHA1 Message Date
雅诺狐
bb4592846c Refactor config system to use Pydantic validation
Refactored configuration classes to inherit from a new ValidatedConfigBase using Pydantic for robust validation and error reporting. Updated api_ada_configs.py, config.py, config_base.py, and official_configs.py to replace dataclasses with Pydantic models, add field validation, and improve error messages. This change enhances configuration reliability and developer feedback for misconfigurations. Also includes minor code cleanups and removal of unused variables in other modules.
2025-11-19 22:44:45 +08:00
minecraft1024a
808954a372 refactor(chat): 禁用工具执行器的缓存功能(因为这玩意真的没几次命中过的) 2025-11-19 22:44:41 +08:00
雅诺狐
383f704b53 Remove unused imports across multiple modules
Cleaned up various files by removing unused or redundant import statements to improve code readability and reduce potential confusion. No functional changes were made.
2025-11-19 22:44:32 +08:00
tt-P607
3e20d11eec <Thinking>
我需要分析这个git diff,并生成一个与之前完全不同的commit message。

让我先分析变更内容:

1. **主要变更**:
   - 在 `anti_injector.py` 中添加了新的 `auto` 处理模式
   - 添加了命令跳过列表功能 (`command_skip_list`)
   - 重构了反注入管理命令,从独立插件移动到核心动作插件
   - 更新了配置文件以支持新功能
   - 在插件管理器中添加了跳过列表刷新逻辑

2. **之前的commit message重点**:
   - 强调了"advanced anti-injection capabilities"
   - 重点描述了"intelligent 'auto' mode"
   - 提到了"command skip list"
   - 强调了"dynamically assesses threats"
   - 提到了"refactored and integrated into core actions plugin"

3. **我需要完全不同的角度**:
   - 可以从架构重构的角度
   - 可以从用户体验改进的角度
   - 可以从系统集成的角度
   - 可以从性能优化的角度

让我从**系统架构优化和插件整合**的角度来写这个commit message,重点强调:
- 插件系统的重构和整合
- 管理命令的迁移和统一
- 跳过机制的实现
- 自动化决策系统的引入

这样就能避免使用之前message中的关键词和结构。
</Thinking>

refactor(plugins): 重构反注入插件架构并优化命令管理体系

将反注入管理功能从独立插件迁移至核心动作模块,实现更好的系统集成。新增智能跳过机制,允许已注册的插件命令绕过检测流程,有效减少误判。同时引入自适应处理策略,系统可根据威胁评估结果自主选择最适当的响应方式。

插件管理器现已集成自动刷新功能,确保跳过列表与插件状态保持同步。配置系统扩展支持多种跳过模式和自定义规则,提升了整体可维护性和用户体验。
ps:谢谢雅诺狐姐姐投喂的提交喵^ω^
2025-11-19 22:44:03 +08:00
minecraft1024a
aa8906b491 feat(deps): 实现依赖包智能别名解析
引入了依赖包智能别名解析机制,以解决 Python 生态中常见的安装名与导入名不一致的问题(如 `beautifulsoup4` -> `bs4`)。

当通过包名直接导入失败时,依赖管理器会自动查询一个内置的别名映射表,并尝试使用别名再次导入。这大大提升了开发者在定义简单字符串格式依赖时的体验,减少了因名称不一致导致的依赖检查失败。

同时,更新了相关文档,详细说明了该功能的工作原理、解决了什么问题,并更新了最佳实践。
2025-11-19 22:43:48 +08:00
minecraft1024a
660428cdad refactor(config): 移除视频分析相关重复的配置及未使用的导入(所以我挺好奇为什么VideoAnalysisConfig能有两个)
同时,清理了多个文件中未使用的导入,包括 `inspect`、`base64` 和 `get_image_manager`,以保持代码库的整洁。
2025-11-19 22:43:48 +08:00
minecraft1024a
9b382a9505 feat(plugin): 实现插件配置集中化管理
将插件配置文件从各自的插件目录迁移至项目根目录下的 `config/plugins/` 文件夹中,方便用户统一管理和修改。

主要变更:
- 新增 `plugins.centralized_config` 总开关,用于控制是否启用此功能。
- 修改插件加载逻辑,现在会从 `config/plugins/<plugin_name>/` 目录读取用户配置。
- 如果用户配置不存在,会自动从插件目录下的模板配置文件复制一份。
- 保留了原有的配置版本检查和自动迁移功能,现在作用于用户配置文件。
2025-11-19 22:43:47 +08:00
雅诺狐
875e02d42f 数据库重构 2025-11-19 22:40:23 +08:00
minecraft1024a
38fed9b4cc 添加聊天类型限制功能,支持根据聊天类型过滤命令和动作,新增私聊和群聊专用命令及动作,优化相关日志记录。 2025-11-19 22:40:01 +08:00
雅诺狐
169b07f9c0 Update send_api.py 2025-11-19 22:39:52 +08:00
雅诺狐
6f08596e7b 更新文档格式 2025-11-19 22:39:36 +08:00
minecraft1024a
bf9e1e60c4 优化插件热重载管理,支持多个监听目录 2025-11-19 22:39:07 +08:00
雅诺狐
69f59afc19 格式化了一下代码 2025-11-19 22:37:37 +08:00
雅诺狐
6fcc3f5b93 简化依赖包 2025-11-19 22:37:19 +08:00
minecraft1024a
c9a513d037 更新依赖管理配置,新增使用PyPI镜像源的选项以加速包下载,优化文档以清晰描述镜像源和代理设置,调整相关代码以支持新的配置项。 2025-11-19 22:36:01 +08:00
minecraft1024a
d29a57f1a4 优化依赖管理配置,移除不必要的allowed_auto_install选项,更新文档以更清晰地描述自动安装功能的主开关。调整相关代码以简化逻辑,确保自动安装行为通过单一配置控制。 2025-11-19 22:36:00 +08:00
minecraft1024a
8ed15c8199 新增插件Python依赖管理系统,支持自动检查和安装依赖,优化依赖配置和错误处理,更新相关文档和示例代码。 2025-11-19 22:35:58 +08:00
minecraft1024a
a184f3690e 修复emoji_manager.py中的数据库持久化逻辑;更新Maizone插件的作者信息和项目链接。 2025-11-19 22:35:54 +08:00
minecraft1024a
ddd647a5ee 更新send_api.py中的文档,增加了参数说明和返回值格式,添加了异常抛出信息 2025-11-19 22:35:53 +08:00
雅诺狐
ce8e20b69d platform现在可选了 2025-11-19 22:35:52 +08:00
雅诺狐
2e6ae2419b 优化项目结构,格式化代码 2025-11-19 22:35:40 +08:00
雅诺狐
b966a2f09c 小修复 2025-11-19 22:35:34 +08:00
雅诺狐
ec876d1518 Update send_api.py 2025-11-19 22:35:33 +08:00
雅诺狐
f53d9123c7 Update send_api.py 2025-11-19 22:35:32 +08:00
雅诺狐
a588a2a695 添加了一个发送api 2025-11-19 22:35:26 +08:00
雅诺狐
23ee3767ef 初始化 2025-11-19 22:34:56 +08:00
SengokuCola
4ffcc61f4b feat:记录使用的表达方式 2025-08-12 21:44:35 +08:00
SengokuCola
04bd05c1fe feat:麦麦回复时知道自己做了什么动作 2025-08-12 17:53:26 +08:00
UnCLAS-Prommer
e28e7e08e8 more typing fix和防炸 2025-08-12 17:08:35 +08:00
SengokuCola
ae254de494 better:重构personinfo,使用Person类和类属性 2025-08-12 14:33:13 +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
SengokuCola
9c0f56f6c7 fix:让麦麦可以回复自己的消息,replyer现在可以接受 原因 2025-08-11 14:07:57 +08:00
SengokuCola
1f91967d2d remove:移除willing系统,移除reply2,移除能量值,移除reply_to改为message 2025-08-11 13:18:17 +08:00
UnCLAS-Prommer
41e8966ae7 更多events 2025-08-09 17:33:24 +08:00
SengokuCola
d1f15a932a fix:缺少stream的报错 2025-08-08 21:20:28 +08:00
UnCLAS-Prommer
2feb3ebe6b OnPlan事件 2025-08-08 00:05:12 +08:00
UnCLAS-Prommer
3d98b56c15 空响应就raise 2025-08-06 13:06:53 +08:00
UnCLAS-Prommer
cc3d910cf6 修正检测错误 2025-08-06 12:49:10 +08:00
UnCLAS-Prommer
18e23cacdd 防炸和ruff 2025-08-06 12:25:59 +08:00
Windpicker-owo
cd7c1bb3ca Merge branch 'dev' of https://github.com/Windpicker-owo/MaiBot into dev 2025-08-06 12:02:48 +08:00
Windpicker-owo
94a66bd235 使Tool支持读取配置文件,优化了开始执行工具调用时的日志输出 2025-08-06 12:01:31 +08:00
UnCLAS-Prommer
1e5db5d7e1 正确使用lpmm构建prompt 2025-08-03 19:52:31 +08:00
UnCLAS-Prommer
1f53ecff10 加上tools的enum属性 2025-08-03 10:27:47 +08:00
UnCLAS-Prommer
84216a4df7 api文档更新,注释更新 2025-07-31 15:01:31 +08:00
UnCLAS-Prommer
37e52a1566 tools系统 2025-07-31 11:41:15 +08:00
UnCLAS-Prommer
6c0edd0ad7 调整对应的调用 2025-07-30 17:07:55 +08:00
UnCLAS-Prommer
16c644a666 转换原来的tools到新的(虽然没转) 2025-07-29 00:15:29 +08:00
UnCLAS-Prommer
6062b6bd3c Merge pull request #1149 from Windpicker-owo/dev
在一些细节上完善工具
2025-07-29 00:01:47 +08:00
UnCLAS-Prommer
af27d0dbf0 tools整合彻底完成 2025-07-28 23:57:55 +08:00