Spaces:
Paused
Paused
| """Registry for multi-agent system plugins. Look up by game_id.""" | |
| from __future__ import annotations | |
| from .base import MultiAgentSystemPlugin | |
| _registry: dict[str, MultiAgentSystemPlugin] = {} | |
| def register(plugin: MultiAgentSystemPlugin) -> None: | |
| """Register a plugin by its game_id.""" | |
| _registry[plugin.get_game_id()] = plugin | |
| def get_plugin(game_id: str) -> MultiAgentSystemPlugin | None: | |
| """Return the plugin for this game_id, or None.""" | |
| return _registry.get(game_id) | |
| def list_game_ids() -> list[str]: | |
| """Return all registered game_ids.""" | |
| return list(_registry.keys()) | |
| def get_registry() -> dict[str, MultiAgentSystemPlugin]: | |
| """Return the underlying registry dict (for tests or advanced use).""" | |
| return _registry | |