diff --git a/nanobot/agent/loop.py b/nanobot/agent/loop.py index 1de583c..6a4d240 100644 --- a/nanobot/agent/loop.py +++ b/nanobot/agent/loop.py @@ -436,7 +436,14 @@ class AgentLoop: self.sessions.save(session) logger.info(f"Emergency trim: {old_size} -> {len(session.messages)} messages") # Rebuild messages from trimmed session - messages, turn_start = self.context.build_messages(session, current_message, system_prompt) + messages = self.context.build_messages( + history=session.get_history(), + current_message=current_message, + media=msg.media if msg.media else None, + channel=msg.channel, + chat_id=msg.chat_id, + ) + turn_start = len(messages) continue # Retry LLM call with shorter context raise # No trim happened — can't recover