| from dataclasses import dataclass | |
| from typing import List | |
| 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) | |