# core/base_module.py from abc import ABC, abstractmethod from typing import Dict, List class AIModule(ABC): """Base class for all AI modules.""" @abstractmethod async def process(self, input_data: Dict) -> Dict: """Process input data and return results.""" pass @abstractmethod async def get_status(self) -> Dict: """Get module status.""" pass @property @abstractmethod def capabilities(self) -> List[str]: """List module capabilities.""" pass