# agents/programmer.py from agents.base_agent import BaseAgent, ACPMessage import random class ProgrammerAgent(BaseAgent): def __init__(self): super().__init__(name="CodeBot", role="Programmer") def receive_message(self, message: ACPMessage) -> ACPMessage: # Basic behavior for now — add AI model later if message.performative == "request": response_content = random.choice([ "Sure, here's a simple Python function to reverse a list:\n```python\ndef reverse_list(lst): return lst[::-1]```", "Okay! Here's a sorting example:\n```python\ndef sort_list(lst): return sorted(lst)```", "Let me help with that. To calculate factorial:\n```python\ndef factorial(n): return 1 if n==0 else n*factorial(n-1)```" ]) return self.create_message( receiver=message.sender, performative="inform", content=response_content ) elif message.performative == "inform": return self.create_message( receiver=message.sender, performative="acknowledge", content="Thanks for the update. Let me know if you need help." ) else: return self.create_message( receiver=message.sender, performative="refuse", content="Sorry, I didn’t understand your request." )