Context compaction
How Empryo compacts long conversations at 70% of the context window using structured-state (V2) or LLM-summary (V1) strategies, configurably.
Copy & share
Loading sections…
Connect MCP or install the Empryo skillSection exports contain only that heading’s content. Markdown and text links fetch the selected content directly, without the rest of the page.
When your conversation gets close to the model's context window, Empryo compacts it - summarizes older messages into a concise state, preserves the recent ones verbatim. The conversation continues; nothing is lost.
Compaction fires automatically at 70% of the context window. You can also run it manually:
/compactTwo strategies
Empryo tracks structured state - files touched, decisions, discoveries, tool results - as the conversation happens. When compaction fires, this state is already built. Most sessions compact in zero LLM calls.
Best for: typical coding sessions.
Switch with /compact settings or in config.
Config
{
"compaction": {
"strategy": "v2",
"triggerThreshold": 0.7,
"keepRecent": 4
}
}| Field | Default | What it does |
|---|---|---|
strategy | "v2" | "v2" or "v1" |
triggerThreshold | 0.7 | Auto-compact at this fraction of context |
keepRecent | 4 | Recent messages kept verbatim |
maxToolResults | 30 | Rolling window of tool results (V2) |
llmExtraction | true | Allow a cheap gap-fill pass (V2) |
Which model compacts
Assign a cheap model in the task router:
{
"taskRouter": {
"compact": "google/gemini-2.5-flash"
}
}For V2, this model only runs the optional gap-fill. For V1, it does the whole summary.
Signals
- Context bar shows compaction strategy + slot count.
- Compacting spinner during an active compaction.
- System message reports before/after context percentages.