From f8aee4f806dd4d67dcbc0b869bd4303c74db3d4c Mon Sep 17 00:00:00 2001 From: Sarah Wooders Date: Wed, 14 May 2025 10:24:16 -0700 Subject: [PATCH] fix: fix message responses for new agent loop (#2170) --- letta/agents/helpers.py | 6 +++--- letta/agents/letta_agent.py | 5 ++++- 2 files changed, 7 insertions(+), 4 deletions(-) diff --git a/letta/agents/helpers.py b/letta/agents/helpers.py index ce07bafc..7847956a 100644 --- a/letta/agents/helpers.py +++ b/letta/agents/helpers.py @@ -14,9 +14,9 @@ def _create_letta_response(new_in_context_messages: list[Message], use_assistant """ Converts the newly created/persisted messages into a LettaResponse. """ - response_messages = [] - for msg in new_in_context_messages: - response_messages.extend(msg.to_letta_messages(use_assistant_message=use_assistant_message)) + response_messages = Message.to_letta_messages_from_list( + messages=new_in_context_messages, use_assistant_message=use_assistant_message, reverse=False + ) return LettaResponse(messages=response_messages, usage=LettaUsageStatistics()) diff --git a/letta/agents/letta_agent.py b/letta/agents/letta_agent.py index 8aca8e1c..b2564e7d 100644 --- a/letta/agents/letta_agent.py +++ b/letta/agents/letta_agent.py @@ -93,8 +93,11 @@ class LettaAgent(BaseAgent): ) tool_call = response.choices[0].message.tool_calls[0] + reasoning = [TextContent(text=response.choices[0].message.content)] # reasoning placed into content for legacy reasons - persisted_messages, should_continue = await self._handle_ai_response(tool_call, agent_state, tool_rules_solver) + persisted_messages, should_continue = await self._handle_ai_response( + tool_call, agent_state, tool_rules_solver, reasoning_content=reasoning + ) self.response_messages.extend(persisted_messages) new_in_context_messages.extend(persisted_messages)