async def advance(self):
    """
    Advance the chat completion

    Will not be streamed back to the client
    """

    if not self.llm:
      raise ValueError("Chat: unable to advance without an LLM")

    response = await self.llm.chat_completion(chat=self)
    self.assistant(self.llm.get_response_content(response))

    Advance the chat completion

    Will not be streamed back to the client
    
agent/src/chat.py