diff --git a/zhenxun/builtin_plugins/plugin_store/data_source.py b/zhenxun/builtin_plugins/plugin_store/data_source.py index a7332f4d..f465411d 100644 --- a/zhenxun/builtin_plugins/plugin_store/data_source.py +++ b/zhenxun/builtin_plugins/plugin_store/data_source.py @@ -219,7 +219,7 @@ class StoreManager: return plugin_info, is_external @classmethod - async def add_plugin(cls, index_or_module: str, source: str | None) -> str: + async def add_plugin(cls, index_or_module: str, source: str | None = None) -> str: """添加插件 参数: @@ -518,11 +518,11 @@ class StoreManager: raise PluginStoreException("插件ID不存在...") return all_plugin_list[idx].module elif isinstance(plugin_id, str): - result = ( - None - if plugin_id not in [v.module for v in all_plugin_list] - else plugin_id - ) or next(v for v in all_plugin_list if v.name == plugin_id).module - if not result: - raise PluginStoreException("插件 Module / 名称 不存在...") - return result + if plugin_id in [v.module for v in all_plugin_list]: + return plugin_id + + for plugin_info in all_plugin_list: + if plugin_info.name.lower() == plugin_id.lower(): + return plugin_info.module + + raise PluginStoreException("插件 Module / 名称 不存在...") diff --git a/zhenxun/utils/manager/zhenxun_repo_manager.py b/zhenxun/utils/manager/zhenxun_repo_manager.py index ecae4669..ac157da9 100644 --- a/zhenxun/utils/manager/zhenxun_repo_manager.py +++ b/zhenxun/utils/manager/zhenxun_repo_manager.py @@ -50,6 +50,7 @@ class ZhenxunRepoConfig: "zhenxun/utils", "zhenxun/models", "zhenxun/configs", + "zhenxun/ui", ] ZHENXUN_BOT_VERSION_FILE_STRING = "__version__" ZHENXUN_BOT_VERSION_FILE = Path() / ZHENXUN_BOT_VERSION_FILE_STRING