"""Helper utility functions""" import uuid from datetime import datetime from typing import Any, Dict, List def generate_id() -> str: """Generate a unique ID""" return str(uuid.uuid4()) def generate_message_id() -> str: """Generate a unique message ID""" return f"msg_{uuid.uuid4().hex[:16]}" def generate_session_id() -> str: """Generate a unique session ID""" return f"session_{uuid.uuid4().hex[:12]}" def get_timestamp() -> str: """Get current ISO 8601 timestamp""" return datetime.utcnow().isoformat() + "Z" def format_agent_name(agent_id: str, name: str = None) -> str: """Format agent display name""" if name: return f"{name} ({agent_id[:8]}...)" return f"Agent {agent_id[:8]}..." def truncate_text(text: str, max_length: int = 100) -> str: """Truncate text with ellipsis""" if len(text) <= max_length: return text return text[:max_length - 3] + "..." def safe_get(dictionary: Dict, *keys: str, default: Any = None) -> Any: """Safely get nested dictionary value""" result = dictionary for key in keys: if isinstance(result, dict): result = result.get(key) else: return default if result is None: return default return result