# How to keep a long session inside the context window This guide shows how to stop a long session from overflowing the model's context. It assumes you already run `mm` and know which server serves your model. ## Steps 1. Tell the agent the size of the window. Either set `contextWindow` in the YAML to the value you started the server with, or leave it at `0` on llama.cpp, where the agent reads `n_ctx` from `/props`. The banner shows the result as `ctx: (config)` or `ctx: (/props)`. 2. Turn the automatic compression on: ```yaml context: enabled: true threshold: 75 keepLastTurns: 3 ``` Before each question, when the history reaches 75 % of the window, the old turns are replaced by one model-written summary and the last three question turns are kept as they are. 3. Watch the report. With `showStats: true` (the default) each compression prints one dimmed line: ``` 🗜️ compressed 14 messages → 1 summary + 7 kept (18.2k → 4.1k tokens, 6.3s) ``` ## Variants - **The window stays unknown** (Docker Model Runner tells nothing, and `contextWindow` is `0`). Only the `maxMessages` trigger can fire; the agent says so in a start-up warning. Set `maxMessages` to a message count (one command costs two messages) or set `contextWindow`. - **Compress by hand.** Type `/compact` at the prompt, or send it from the editor in ACP mode. It ignores the threshold but still keeps the last `keepLastTurns` turns, and says `🗜️ nothing to compact` when there is nothing older. - **The server was started after the agent.** The window is re-probed before the first question while it is still unknown and compression is on; you do not need to restart. - **Your own summary prompt.** Set `context.prompt` to replace the built-in seven-section prompt. - **A compression that fails** (server down, watchdog) leaves the history unchanged and prints `[compact: failed, history kept: …]`. ## See also - Every `context.*` key and its default: [configuration reference](../reference/configuration.md) - Why the summary keeps recent turns raw and merges earlier summaries: [context compression](../explanation/context-compression.md)