diff options
Diffstat (limited to 'agent.py')
| -rw-r--r-- | agent.py | 8 |
1 files changed, 5 insertions, 3 deletions
@@ -3,8 +3,8 @@ import json from context import ContextBuilder from identity import AgentIdentity, UserProfile from llm import LLM -from tools import ToolRegistry from memory import WorkingMemory +from tools import MemoryAddFactTool, MemoryAddNoteTool, ToolError, ToolRegistry class Agent: @@ -25,6 +25,9 @@ class Agent: self.working_memory = WorkingMemory() + self.tools.register(MemoryAddFactTool(self.working_memory)) + self.tools.register(MemoryAddNoteTool(self.working_memory)) + self.messages: list[dict[str, object]] = [] def chat(self, user_input: str) -> str: @@ -88,8 +91,7 @@ class Agent: else: try: result = tool.execute(call.arguments).content - self.working_memory.add_note(f"{call.name} returned: {result}") - except Exception as error: + except ToolError as error: result = f"Tool error: {error}" self.messages.append( |
