from dataclasses import dataclass from typing import List @dataclass class AgentResponse: text: str history: List[str] class SimpleAgent: def __init__(self, name: str = "StarterAgent") -> None: self.name = name self._history: List[str] = [] def respond(self, message: str) -> AgentResponse: cleaned = message.strip() if not cleaned: reply = "How can I help?" else: reply = f"{self.name} received: {cleaned}" self._history.append(f"user: {cleaned}") self._history.append(f"{self.name}: {reply}") return AgentResponse(text=reply, history=list(self._history)) def history(self) -> List[str]: return list(self._history)