Hendre Page
11/28/2025, 7:51 AMJeff Mandell
11/28/2025, 9:59 PMJeff Mandell
12/01/2025, 4:28 PMAntonii Belyshev
12/01/2025, 6:25 PMagent.run), then you do not need to transfer the context between different agents (which you indeed can do, but that's not an expected use).
Generally, if you have some dependent tasks / requests (like different messages in a single chat), they should be handled inside a single strategy run. On the other hand, when you have a few independent pipelines (like different chats), it's better to run a separate agent for each of those tasks.Jeff Mandell
12/01/2025, 7:28 PMreadln and println with a different IO mechanism, e.g. flows. One use-case that I'm exploring is an audio-based chat agent.Jeff Mandell
12/01/2025, 11:06 PMwhile example to use flows with this gist. Setting the strategy signature as AIAgentFunctionalStrategy<Flow<String>, Flow<String>> was fun.Hendre Page
12/15/2025, 11:40 PMAntonii Belyshev
12/22/2025, 9:16 AMrequestLLM(userMessage), the user message and the model response will be added to the prompt. This functionality does not require any features installed. However, the history will not be visible in another agent.run , so the whole conversation should be performed inside a single strategy (like in the chat agent example).
The history compression is a functionality designed to reduce the message history but preserve the main information. It's useful for a few reasons:
• LLM requests with shorter history will contain less tokens, and therefore be cheaper and faster
• The responses could improve because models' responses often become worse when input length grows
• Too long prompts will hit the max context length
To use the history compression, you can call compressHistory (in a functional strategy) or use nodeLLMCompressHistory (in a graph strategy)
The persistence feature is responsible for storing the agent state outside of the agent context (i.e. creating checkpoints). The main idea behind its design is to allow to resume an agent run from the latest available checkpoint if it unexpectedly stopped (e.g. due to a network error).