diff --git a/app/agents/meta_agent.py b/app/agents/meta_agent.py index 7c137ca..5f6bdaf 100644 --- a/app/agents/meta_agent.py +++ b/app/agents/meta_agent.py @@ -14,7 +14,11 @@ from datetime import datetime, timezone from typing import Any from app.agents.base import AgentResult, AgentStatus, AgentTrigger, BaseAgent -from app.agents.registry import registry + + +def _get_registry(): + from app.agents.registry import registry + return registry DEFAULT_CONFIG: dict[str, Any] = { @@ -86,7 +90,7 @@ class MetaAgent(BaseAgent): sources_count = context.get("sources_count", self._config["sources_count"]) weights = self._config.get("weights", {}) - all_agents = registry.list_agents() + all_agents = _get_registry().list_agents() if not all_agents: await self.set_idle() return AgentResult( @@ -117,7 +121,7 @@ class MetaAgent(BaseAgent): results: dict[str, Any] = {} for name, _weight in selected: try: - result = await registry.run_agent(name, {"trigger": "meta_agent"}) + result = await _get_registry().run_agent(name, {"trigger": "meta_agent"}) results[name] = { "success": result.success, "message": result.message, @@ -151,8 +155,8 @@ class MetaAgent(BaseAgent): async def _generate_report(self) -> AgentResult: """Generate summary report of all agent statuses.""" - all_agents = registry.list_agents() - metrics = registry.get_metrics_all() + all_agents = _get_registry().list_agents() + metrics = _get_registry().get_metrics_all() return AgentResult( success=True,