| """Base memory interface for Cidadão.AI agents.""" | |
| from abc import ABC, abstractmethod | |
| from typing import Any, Dict, List, Optional | |
| from datetime import datetime | |
| class BaseMemory(ABC): | |
| """Abstract base class for memory systems.""" | |
| def __init__(self): | |
| self._storage: Dict[str, Any] = {} | |
| self._created_at = datetime.now() | |
| async def store(self, key: str, value: Any, metadata: Optional[Dict] = None) -> bool: | |
| """Store a memory item.""" | |
| pass | |
| async def retrieve(self, key: str) -> Optional[Any]: | |
| """Retrieve a memory item by key.""" | |
| pass | |
| async def search(self, query: str, limit: int = 10) -> List[Dict]: | |
| """Search memory items by query.""" | |
| pass | |
| async def clear(self) -> bool: | |
| """Clear all memory items.""" | |
| pass |