From ccd3868cd7bd560ff5c507d7a3439c2dc041e41b Mon Sep 17 00:00:00 2001 From: ARCHITECT Date: Wed, 24 Dec 2025 08:51:47 +0000 Subject: [PATCH] fix: handle None values in servers/agents config parsing MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - Fix AttributeError when servers: or agents: is empty/None in config.yaml - Use `or {}` pattern to safely handle None values - Orchestrator CLI now starts correctly with minimal config 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude Opus 4.5 --- orchestrator/config.py | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/orchestrator/config.py b/orchestrator/config.py index 1bfdb14..0aa6bfd 100644 --- a/orchestrator/config.py +++ b/orchestrator/config.py @@ -226,7 +226,8 @@ class Config: def _parse_servers(self) -> dict[str, ServerConfig]: """Parsea la sección servers.""" servers = {} - for name, data in self._raw.get("servers", {}).items(): + raw_servers = self._raw.get("servers") or {} + for name, data in raw_servers.items(): if data: servers[name] = ServerConfig( name=name, @@ -240,7 +241,8 @@ class Config: def _parse_agents(self) -> dict[str, AgentConfig]: """Parsea la sección agents.""" agents = {} - for name, data in self._raw.get("agents", {}).items(): + raw_agents = self._raw.get("agents") or {} + for name, data in raw_agents.items(): if data: agents[name] = AgentConfig( name=name,