Rumio
|
e5b2a872d3
|
✨ feat(group-settings): 实现群插件配置管理系统 (#2072)
检查bot是否运行正常 / bot check (push) Has been cancelled
CodeQL Code Security Analysis / Analyze (${{ matrix.language }}) (none, python) (push) Has been cancelled
Sequential Lint and Type Check / ruff-call (push) Has been cancelled
Release Drafter / Update Release Draft (push) Has been cancelled
Force Sync to Aliyun / sync (push) Has been cancelled
Update Version / update-version (push) Has been cancelled
Sequential Lint and Type Check / pyright-call (push) Has been cancelled
* ✨ feat(group-settings): 实现群插件配置管理系统
- 引入 GroupSettingsService 服务,提供统一的群插件配置管理接口
- 新增 GroupPluginSetting 模型,用于持久化存储插件在不同群组的配置
- 插件扩展数据 PluginExtraData 增加 group_config_model 字段,用于注册分群配置模型
- 新增 GetGroupConfig 依赖注入,允许插件轻松获取和解析当前群组的配置
【核心服务 GroupSettingsService】
- 支持按群组、插件名和键设置、获取和删除配置项
- 实现配置聚合缓存机制,提升配置读取效率,减少数据库查询
- 支持配置继承与覆盖逻辑(群配置覆盖全局默认值)
- 提供批量设置功能 set_bulk,方便为多个群组同时更新配置
【管理与缓存】
- 新增超级用户命令 pconf (plugin_config_manager),用于命令行管理插件的分群和全局配置
- 新增 CacheType.GROUP_PLUGIN_SETTINGS 缓存类型并注册
- 增加 Pydantic model_construct 兼容函数
* 🐛 fix(codeql): 移除对 JavaScript 和 TypeScript 的分析支持
---------
Co-authored-by: webjoin111 <455457521@qq.com>
|
2025-12-01 14:52:36 +08:00 |
|
Rumio
|
70bde00757
|
✨ feat(core): 增强定时任务与群组标签管理,重构调度核心 (#2068)
* ✨ feat(core): 更新群组信息、Markdown 样式与 Pydantic 兼容层
- 【group】添加更新所有群组信息指令,并同步群组控制台数据
- 【markdown】支持合并 Markdown 的 CSS 来源
- 【pydantic-compat】提供 model_validate 兼容函数
* ✨ feat(core): 增强定时任务与群组标签管理,重构调度核心
✨ 新功能
* **标签 (tags)**: 引入群组标签服务。
* 支持静态标签和动态标签 (基于 Alconna 规则自动匹配群信息)。
* 支持黑名单模式及 `@all` 特殊标签。
* 提供 `tag_manage` 超级用户插件 (list, create, edit, delete 等)。
* 群成员变动时自动失效动态标签缓存。
* **调度 (scheduler)**: 增强定时任务。
* 重构 `ScheduledJob` 模型,支持 `TAG`, `ALL_GROUPS` 等多种目标类型。
* 新增任务别名 (`name`)、创建者、权限、来源等字段。
* 支持一次性任务 (`schedule_once`) 和 Alconna 命令行参数 (`--params-cli`)。
* 新增执行选项 (`jitter`, `spread`) 和并发策略 (`ALLOW`, `SKIP`, `QUEUE`)。
* 支持批量获取任务状态。
♻️ 重构优化
* **调度器核心**:
* 拆分 `service.py` 为 `manager.py` (API) 和 `types.py` (模型)。
* 合并 `adapter.py` / `job.py` 至 `engine.py` (统一调度引擎)。
* 引入 `targeting.py` 模块管理任务目标解析。
* **调度器插件 (scheduler_admin)**:
* 迁移命令参数校验逻辑至 `ArparmaBehavior`。
* 引入 `dependencies.py` 和 `data_source.py` 解耦业务逻辑与依赖注入。
* 适配新的任务目标类型展示。
* 🐛 fix(tag): 修复黑名单标签解析逻辑并优化标签详情展示
* ✨ feat(scheduler): 为多目标定时任务添加固定间隔串行执行选项
* ✨ feat(schedulerAdmin): 允许定时任务删除、暂停、恢复命令支持多ID操作
* 🚨 auto fix by pre-commit hooks
---------
Co-authored-by: webjoin111 <455457521@qq.com>
Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
|
2025-11-03 10:53:40 +08:00 |
|
molanp
|
ee699fb345
|
fix(plugin_store): 修复插件商店的安装与卸载逻辑 (#2050)
* fix(plugin_store): 修复插件商店的安装与卸载逻辑
- 优化了插件安装、更新和移除的逻辑
- 调整了插件路径的处理方式,支持更灵活的安装位置
- 重构了 `install_plugin_with_repo` 方法,使用 `StorePluginInfo` 对象作为参数
- 修复了一些潜在的路径问题和模块命名问题
* refactor(zhenxun): 优化插件信息获取逻辑
- 将 PluginInfo.get_or_none 替换为 get_plugin 方法,简化插件信息获取逻辑
- 优化了插件移除操作中的插件信息获取流程
* refactor(zhenxun): 优化 sparse_checkout_clone 函数的实现
- 将 git 操作移至临时目录中执行,避免影响目标目录中的现有内容
- 简化了稀疏检出的配置和执行过程
- 改进了错误处理和回退逻辑
- 优化了文件移动和目录清理的操作
* 🐛 添加移除插件时二次查询
* ✨ plugin_info.get_plugin参数包含plugin_type时无效过滤
---------
Co-authored-by: HibiKier <45528451+HibiKier@users.noreply.github.com>
|
2025-09-12 17:38:24 +08:00 |
|
HibiKier
|
d9e65057cf
|
⚡ 减少数据库查询次数,提高数据库查询方面性能 (#2030)
检查bot是否运行正常 / bot check (push) Has been cancelled
CodeQL Code Security Analysis / Analyze (${{ matrix.language }}) (none, javascript-typescript) (push) Has been cancelled
CodeQL Code Security Analysis / Analyze (${{ matrix.language }}) (none, python) (push) Has been cancelled
Sequential Lint and Type Check / ruff-call (push) Has been cancelled
Release Drafter / Update Release Draft (push) Has been cancelled
Force Sync to Aliyun / sync (push) Has been cancelled
Update Version / update-version (push) Has been cancelled
Sequential Lint and Type Check / pyright-call (push) Has been cancelled
* 🐛 修复数据库超时问题
* 🔧 移除帮助图片清理功能.
* ✨ 更新插件商店功能,允许在添加插件时指定源类型为 None。优化插件 ID 查找逻辑,增强代码可读性。新增 zhenxun/ui 模块导入。
* 🔧 优化数据访问和数据库上下文逻辑,移除不必要的全局变量和日志信息,调整日志级别为调试,提升代码可读性和性能。
|
2025-08-26 16:53:14 +08:00 |
|
Rumio
|
be86e0bb7f
|
♻️ refactor(scheduler): 重构定时任务系统并增强功能 (#2009)
检查bot是否运行正常 / bot check (push) Waiting to run
CodeQL Code Security Analysis / Analyze (${{ matrix.language }}) (none, javascript-typescript) (push) Waiting to run
CodeQL Code Security Analysis / Analyze (${{ matrix.language }}) (none, python) (push) Waiting to run
Sequential Lint and Type Check / ruff-call (push) Waiting to run
Sequential Lint and Type Check / pyright-call (push) Blocked by required conditions
Release Drafter / Update Release Draft (push) Waiting to run
Force Sync to Aliyun / sync (push) Waiting to run
Update Version / update-version (push) Waiting to run
* ♻️ refactor(scheduler): 重构定时任务系统并增强功能
- 【模型重命名】将 `ScheduleInfo` 模型及其数据库表重命名为 `ScheduledJob`,以提高语义清晰度。
- 【触发器抽象】引入 `Trigger` 工厂类,提供类型安全的 Cron、Interval 和 Date 触发器配置。
- 【执行策略】新增 `ExecutionPolicy` 模型,允许为定时任务定义重试策略、延迟、异常类型以及成功/失败回调。
- 【任务执行】重构任务执行逻辑,支持 NoneBot 的依赖注入,并根据 `ExecutionPolicy` 处理任务的重试和回调。
- 【临时任务】增加声明式和编程式的临时任务调度能力,支持非持久化任务在运行时动态创建和执行。
- 【管理命令】更新定时任务管理命令 (`schedule_admin`),使其适配新的 `ScheduledJob` 模型和参数验证逻辑。
- 【展示优化】改进定时任务列表和状态展示,使用新的触发器格式化逻辑和参数模型信息。
- 【重试装饰器】为 `Retry.api` 装饰器添加 `on_success` 回调,允许在任务成功执行后触发额外操作。
* 🚨 auto fix by pre-commit hooks
---------
Co-authored-by: webjoin111 <455457521@qq.com>
Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
|
2025-08-06 09:02:23 +08:00 |
|
HibiKier
|
67a2560de4
|
✨ 增强权限检查,更新请求管理命令和数据库配置逻辑 (#2011)
|
2025-08-06 09:02:07 +08:00 |
|
molanp
|
872d2499a2
|
feat(ban): 在调用ban列表时主动删除过期数据 (#1997)
* feat(ban): 在调用ban列表时主动删除过期数据
- 除了接收到被ban用户的信息外,现在主动调用`ban列表`命令也会删除过期数据
- 修复 unban 返回信息错误
* refactor(ban): 优化 unban 函数返回值逻辑
- 使用或运算简化返回值判断逻辑
- 移除不必要的字符串转换
* refactor(zhenxun): 优化 unban 函数返回值类型
- 将 unban 函数的返回类型从 tuple[bool, str | None] 改为 tuple[bool, str]
- 修改返回值,确保总是返回字符串类型,避免类型检查错误
|
2025-08-05 19:12:15 +08:00 |
|
molanp
|
59d72c3b3d
|
feat(admin): 增加封禁用户理由并优化相关逻辑 (#1992)
检查bot是否运行正常 / bot check (push) Has been cancelled
CodeQL Code Security Analysis / Analyze (${{ matrix.language }}) (none, javascript-typescript) (push) Has been cancelled
CodeQL Code Security Analysis / Analyze (${{ matrix.language }}) (none, python) (push) Has been cancelled
Sequential Lint and Type Check / ruff-call (push) Has been cancelled
Release Drafter / Update Release Draft (push) Has been cancelled
Force Sync to Aliyun / sync (push) Has been cancelled
Update Version / update-version (push) Has been cancelled
Sequential Lint and Type Check / pyright-call (push) Has been cancelled
* feat(admin): 增加封禁用户理由并优化相关逻辑
- 在 ban 命令中添加了 -r 或 --reason 选项,用于指定封禁理由
- 优化了 ban 命令的参数解析和处理逻辑
- 更新了数据库模型,增加了 ban_reason 字段用于存储封禁理由
- 修复了部分逻辑错误,如永久封禁的处理方式
* 🚨 auto fix by pre-commit hooks
* refactor(ban): 优化 ban 命令和相关功能
- 修复 ban 命令中的 reason 参数可选标记
- 完善恶意触发检测和用户昵称违规的禁言信息
- 统一禁言操作的参数顺序,提高代码可读性
---------
Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
|
2025-07-29 17:22:27 +08:00 |
|
HibiKier
|
da6d5b4be4
|
🐛 修复bot个人介绍重载后不重新读取个人介绍文件 (#1990)
CodeQL Code Security Analysis / Analyze (${{ matrix.language }}) (none, javascript-typescript) (push) Waiting to run
CodeQL Code Security Analysis / Analyze (${{ matrix.language }}) (none, python) (push) Waiting to run
Sequential Lint and Type Check / ruff-call (push) Waiting to run
Sequential Lint and Type Check / pyright-call (push) Blocked by required conditions
Release Drafter / Update Release Draft (push) Waiting to run
Force Sync to Aliyun / sync (push) Waiting to run
检查bot是否运行正常 / bot check (push) Has been cancelled
Update Version / update-version (push) Has been cancelled
|
2025-07-24 15:59:28 +08:00 |
|
HibiKier
|
205f4ff1fa
|
✨ 添加bot画像
* ✨ 新增自我介绍功能及自动发送图片支持
- 在 bot_profile.py 中实现自我介绍指令及重载功能
- 在 group_handle 中添加自动发送自我介绍图片的逻辑
- 在 fg_request 中实现添加好友时自动发送自我介绍图片
- 新增 bot_profile_manager.py 管理 BOT 自我介绍及图片生成
- 更新 models.py 以支持插件自我介绍和注意事项字段
* 🎨 调整管理帮助宽度
* ✨ 更新数据访问层,优化获取数据的方法并引入缓存机制
* ✨ 更新用户数据访问逻辑,优化获取用户信息的方法,使用新的函数替代原有实现
* ✨ 在 BotProfileManager 中添加自我介绍文件不存在的日志记录,优化文件读取逻辑
* ✨ 更新 BOT 自我介绍帮助信息,增加文件不存在时自动创建功能
|
2025-07-16 02:51:06 +08:00 |
|
HibiKier
|
8649aaaa54
|
✨ 引入缓存机制 (#1889)
* 添加全局cache
* ✨ 构建缓存,hook使用缓存
* ✨ 新增数据库Model方法监控
* ✨ 数据库添加semaphore锁
* 🩹 优化webapi返回数据
* ✨ 添加增量缓存与缓存过期
* 🎨 优化检测代码结构
* ⚡ 优化hook权限检测性能
* 🐛 添加新异常判断跳过权限检测
* ✨ 添加插件limit缓存
* 🎨 代码格式优化
* 🐛 修复代码导入
* 🐛 修复刷新时检查
* 👽 Rename exception for missing database URL in initialization
* ♿ Update default database URL to SQLite in configuration
* 🔧 Update tortoise-orm and aiocache dependencies restrictions; add optional redis and asyncpg support
* 🐛 修复ban检测
* 🐛 修复所有插件关闭时缓存更新
* 🐛 尝试迁移至aiocache
* 🐛 完善aiocache缓存
* ⚡ 代码性能优化
* 🐛 移除获取封禁缓存时的日志记录
* 🐛 修复缓存类型声明,优化封禁用户处理逻辑
* 🐛 优化LevelUser权限更新逻辑及数据库迁移
* ✨ cache支持redis连接
* 🚨 auto fix by pre-commit hooks
* ⚡ :增强获取群组的安全性和准确性。同时,优化了缓存管理中的相关逻辑,确保缓存操作的一致性。
* ✨ feat(auth_limit): 将插件初始化逻辑的启动装饰器更改为优先级管理器
* 🔧 修复日志记录级别
* 🔧 更新数据库连接字符串
* 🔧 更新数据库连接字符串为内存数据库,并优化权限检查逻辑
* ✨ feat(cache): 增加缓存功能配置项,并新增数据访问层以支持缓存逻辑
* ♻️ 重构cache
* ✨ feat(cache): 增强缓存管理,新增缓存字典和缓存列表功能,支持过期时间管理
* 🔧 修复Notebook类中的viewport高度设置,将其从1000调整为10
* ✨ 更新插件管理逻辑,替换缓存服务为CacheRoot并优化缓存失效处理
* ✨ 更新RegisterConfig类中的type字段
* ✨ 修复清理重复记录逻辑,确保检查记录的id属性有效性
* ⚡ 超级无敌大优化,解决延迟与卡死问题
* ✨ 更新封禁功能,增加封禁时长参数和描述,优化插件信息返回结构
* ✨ 更新zhenxun_help.py中的viewport高度,将其从453调整为10,以优化页面显示效果
* ✨ 优化插件分类逻辑,增加插件ID排序,并更新插件信息返回结构
---------
Co-authored-by: BalconyJH <balconyjh@gmail.com>
Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
|
2025-07-14 22:35:29 +08:00 |
|
HibiKier
|
2921aed248
|
🐛 修复sqlite下的日统计查询和0权限功能调用 (#1943)
|
2025-07-11 10:07:23 +08:00 |
|
Rumio
|
8b9ae7255b
|
✨ feat!(scheduler): 引入通用持久化定时任务系统 (#1933)
* ✨ feat!(scheduler): 引入通用持久化定时任务系统
* ✨ feat(scheduler): 支持全局定时任务(__ALL_GROUPS__)和多Bot管理
---------
Co-authored-by: webjoin111 <455457521@qq.com>
|
2025-06-26 11:13:36 +08:00 |
|
HibiKier
|
4cc800c832
|
✨ 添加bot消息发送记录 (#1893)
* ✨ 添加bot消息发送记录
* 💬 文本内容修正
* 🚨 auto fix by pre-commit hooks
---------
Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
|
2025-06-16 09:21:41 +08:00 |
|
HibiKier
|
611f0b62ba
|
✨ 引用消息同意好友/群组请求 (#1902)
* ✨ 提供event日志表, 新增引用消息同意好友/群组请求
* ⚡ 移除城市列表更新
* ✨ 新增申请入群功能
* 💬 文本修改
|
2025-06-09 14:39:28 +08:00 |
|
HibiKier
|
b0461865a5
|
✨ 添加真寻银行
|
2025-05-26 10:55:30 +08:00 |
|
HibiKier
|
6769c724cb
|
🐛 修复群被动开关
|
2025-04-17 16:58:45 +08:00 |
|
HibiKier
|
b38509b2f5
|
🐛 插件获取默认过滤父插件 (#1894)
* 🐛 插件获取默认过滤父插件
* 🐛 修复插件获取
|
2025-04-17 16:58:06 +08:00 |
|
HibiKier
|
36bbaa3ae1
|
🐛 修复获取群组时会修改群组插件关闭状态 (#1869)
* 🐛 修复获取群组时会修改群组插件关闭状态
* ✨ 支持https图片地址转换
* ✨ 支持https图片地址转换
* 🎨 移除多余导入
* 🎨 优化GroupConsole设置插件默认状态代码结构
* 🎨 优化群组表代码结构
* ⚡ 移除build_message的https默认转图片
|
2025-04-02 17:25:38 +08:00 |
|
HibiKier
|
aef2597b46
|
✨ 添加自动同意群组请求 (#1848)
* ✨ 添加自动同意群组请求
* ➕ Add nonebot-plugin-waiter
---------
Co-authored-by: BalconyJH <balconyjh@gmail.com>
|
2025-02-12 23:32:46 +08:00 |
|
HibiKier
|
41613c09a9
|
✨ 提供一个插件好感度限制 (#1846)
* ✨ 提供一个插件好感度限制
* 💬 在提示中显示需要的好感度
|
2025-02-10 15:39:18 +08:00 |
|
HibiKier
|
264929e5cb
|
✨ 新增好感度/金币设置和详细帮助 (#1831)
* ✨ 新增好感度/金币设置和详细帮助
* 🔧 修复html帮助
|
2025-01-10 18:39:23 +08:00 |
|
HibiKier
|
ccee16bed2
|
🚨 Add specific ignore items in pyright ignore
🚨 Make pyright happy
♻️ Remove unused adapter
|
2025-01-10 12:19:11 +08:00 |
|
HibiKier
|
e814469b75
|
✨ Compatible with pydantic 2.0 using the pydantic compatibility layer provided by nonebot
|
2025-01-10 12:19:11 +08:00 |
|
HibiKier
|
2a5c06702a
|
✨ 新增全新商店界面 (#1816)
* 🎉 新增商店模板及样式配置
* 🎨 移除webui注释
* 🎨 新增神秘药水道具及商店样式调整
* 🎨 添加商店样式底部边距调整
---------
Co-authored-by: Flern <cb56ec362bbbfb5272eb941281299d8d-qq_connect@git.osc>
|
2025-01-06 19:21:35 +08:00 |
|
HibiKier
|
ec70144d7e
|
✨ 资源下载分离 (#1814)
* 🚀 资源文件单独下载,分离被动任务初始化
* 🔥 移除resources文件夹
* 🚀 优化版本更新逻辑,增加资源下载异常处理
* 🚀 增加资源下载失败异常处理及提示信息
* 🚀 增加资源下载选项及异常处理优化
* 🚀 移除空ID检查及资源更新条件处理
* ✨ 简易配置中未加载的配置将被移除
* 🐛 测试更新
* ✨ 修复更新完成消息格式
---------
Co-authored-by: Flern <cb56ec362bbbfb5272eb941281299d8d-qq_connect@git.osc>
|
2025-01-06 11:32:56 +08:00 |
|
HibiKier
|
91dce56bf8
|
🐛 修复群组中插件默认状态 (#1810)
|
2024-12-30 16:44:13 +08:00 |
|
HibiKier
|
e363d29b3b
|
🐛 优化Bot管理插件,更新使用说明及代码结构 (#1767)
|
2024-12-13 15:31:18 +08:00 |
|
HibiKier
|
a421902bc7
|
🐛 BotConsole添加迁移sql (#1765)
|
2024-12-12 16:25:32 +08:00 |
|
BalconyJH
|
64b5316570
|
🐛 fix bot console init (#1760)
|
2024-12-11 09:31:51 +08:00 |
|
HibiKier
|
5590445679
|
添加Bot管理插件 (#1758)
Co-authored-by: BalconyJH <73932916+BalconyJH@users.noreply.github.com>
|
2024-12-10 20:16:14 +08:00 |
|
BalconyJH
|
bc5a9c4fcc
|
Develop: 完全使用 ruff 替代 isort 与 black (#1757)
* 🚨 完全使用 ruff 替代 isort 与 black
* 🚨 ruff lint&format
|
2024-12-10 19:49:11 +08:00 |
|
HibiKier
|
c7c759f2b1
|
✨ 插件配置新增is_show控制是否显示在菜单中 (#1749)
|
2024-11-29 10:01:50 +08:00 |
|
HibiKier
|
b2da0a902d
|
🎨 playwright添加cookie参数
|
2024-11-07 13:38:20 +08:00 |
|
HibiKier
|
05f954eb8b
|
✨ 指定bot的功能管理 (#1706)
|
2024-10-21 19:07:35 +08:00 |
|
HibiKier
|
3ffe213652
|
🐛 修复签到金币排行bug以及添加官bot监控
|
2024-10-19 00:36:19 +08:00 |
|
HibiKier
|
856976526f
|
🎨 修改限制配置文件key (#1685)
|
2024-10-06 18:16:35 +08:00 |
|
HibiKier
|
3117dc264f
|
✨ unban支持使用id (#1681)
|
2024-10-05 19:07:18 +08:00 |
|
HibiKier
|
f0063283e7
|
🐛 优化功能开关管理 (#1679)
|
2024-10-05 16:45:02 +08:00 |
|
HibiKier
|
bd50e17c58
|
🐛 修复调用统计异常 (#1674)
|
2024-10-04 00:14:36 +08:00 |
|
HibiKier
|
f08114f6c5
|
✨ 提供新webui api (#1673)
|
2024-10-03 23:56:17 +08:00 |
|
HibiKier
|
717a973807
|
✨ 将cd,block,count限制复原配置文件 (#1662)
|
2024-10-01 00:05:43 +08:00 |
|
HibiKier
|
a3681216bd
|
✨ 父级插件加载
|
2024-08-30 23:50:45 +08:00 |
|
HibiKier
|
625f17a708
|
🎨 修复bug,移除plugins文件夹
|
2024-08-29 22:01:34 +08:00 |
|
HibiKier
|
a46cea5948
|
🐛 修复bug
|
2024-08-27 23:30:43 +08:00 |
|
Natalie Johnson
|
7c163142c4
|
代码优化
|
2024-08-22 19:10:47 +08:00 |
|
HibiKier
|
2fe825f67d
|
✨ 新群被动添加时所有群默认状态
|
2024-08-21 23:36:19 +08:00 |
|
HibiKier
|
6d58f6a188
|
🐛 修改bug
|
2024-08-21 22:22:42 +08:00 |
|
HibiKier
|
09f586be25
|
🐛 修复使用道具后未减去道具数量
|
2024-08-19 18:57:21 +08:00 |
|
HibiKier
|
369451c4a5
|
🎨 代码优化
|
2024-08-16 19:54:58 +08:00 |
|