Skip to main content
By default, each call to an agent is a one-shot interaction — the model sees the user’s message and nothing else. Turning on Conversation History persists messages and replays them on every subsequent call so the agent remembers what happened across turns.
History tab

Toggle

  • Enable Conversation History — switch it on to store and replay messages.
When on, every user message, assistant response, tool call, and tool result is appended to the conversation. The agent sees the full history on each subsequent turn (subject to the summarization strategy below). When off, each request is treated as a fresh conversation. The chat UI’s “thread” is still tracked, but the model itself only ever sees the current user message.

Why summarize?

Conversations grow without bound, and the LLM’s context window doesn’t. Beyond a few thousand tokens of history, every call gets more expensive and slower — and eventually the request hits the context limit and fails. The two summarization strategies below trade off cost, latency, and fidelity differently.

LLM-based summarization

Use an LLM to compress older history into a single system message while preserving important context. Behavior:
  1. Before each LLM call, total history tokens are counted.
  2. If they exceed Token Threshold, the oldest runs (everything older than the Keep Recent Count most recent runs) are summarized into one system message.
  3. The agent then sees: [summary of old history] + [N most recent runs verbatim] + [new user message].
Best when: long, context-rich conversations where details from earlier matter (support, planning, multi-step research).

Sliding window summarization

A no-LLM strategy: keep only the most recent N runs and discard everything older. Best when: each conversation is mostly independent of the deep past (e.g. a customer asking unrelated questions across a session), and you want zero extra LLM cost.

What counts as a “run”?

One run = one user message and everything the agent did to respond to it (LLM calls, tool calls, the final answer). Summarization always operates on whole runs, never partial ones — so the assistant’s response to a question is never separated from the question itself.

Relation to other features

  • Memories — persists facts about a user across all conversations, not just within one. Conversation History is per-thread; Memories are per-user (or per-namespace) and durable.
  • Knowledge Bases — shared, retrieval-based context grounded in documents. Use for “what’s in our docs”; use Conversation History for “what did we just discuss.”