Skip to content

Commit c4a9ba6

Browse files
committed
Merge branch 'refactoring-v3-mvp' of github.com:lss233/chatgpt-mirai-qq-bot into refactoring-v3-mvp
2 parents 8f33998 + 1158b6d commit c4a9ba6

File tree

2 files changed

+17
-2
lines changed

2 files changed

+17
-2
lines changed

framework/plugin_manager/plugin_loader.py

Lines changed: 12 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -379,4 +379,15 @@ def _load_plugin_info(self, module) -> Optional[PluginInfo]:
379379
return PluginInfo(**module.__plugin_info__)
380380
except Exception:
381381
pass
382-
return None
382+
return None
383+
384+
def discover_external_plugins(self):
385+
"""发现并加载所有已安装的外部插件"""
386+
eps = entry_points(group=Plugin.ENTRY_POINT_GROUP)
387+
388+
for ep in eps:
389+
if ep.name not in self._loaded_entry_points:
390+
try:
391+
self._load_external_plugin(ep.name)
392+
except Exception as e:
393+
self.logger.error(f"Failed to load external plugin {ep.name}: {e}")

main.py

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -116,9 +116,13 @@ def main():
116116
register_system_blocks(container.resolve(BlockRegistry))
117117

118118
# 发现并加载内部插件
119-
logger.info("Discovering plugins...")
119+
logger.info("Discovering internal plugins...")
120120
plugin_loader.discover_internal_plugins()
121121

122+
# 发现并加载外部插件
123+
logger.info("Discovering external plugins...")
124+
plugin_loader.discover_external_plugins()
125+
122126
# 初始化插件
123127
logger.info("Loading plugins")
124128
plugin_loader.load_plugins()

0 commit comments

Comments
 (0)