Wet paintVera is under heavy development. Try the code, just expect things to move.
Vera

Customize

Context limits and compaction

Control how much conversation Vera retains and when it summarizes older material.

As a conversation grows, Vera summarizes older material to make room for new work. This is compaction. The default settings control when it happens, how large the summary is, and how tool results use the remaining space.

Use /context to inspect usage before changing these settings. If the conversation is working well, leave the defaults in place.

What the model keeps

Every message, tool call and file the model reads takes up tokens in the context. The context has a fixed size, so a long session fills it. Once it is full, the next model call does not fit.

Vera makes room in two ways. Once the context passes a threshold (60% on a typical model window), big tool results from a few turns back are trimmed to a short note that says where the full output is saved. If the context still passes 82%, older messages become one summary in one go. Your last two messages stay as they were. When the current turn alone is too big to keep, its work is summarized too, but your latest message stays word for word next to the summary. Images in it are not kept.

A single tool result is also capped on arrival, so one large read cannot fill the context by itself. The cap is a share of the model’s window, which means a small window gets a smaller cap. What was cut is saved to a file the result points at.

A subagent’s conversation compacts the same way, with the same settings.

Here is the same raid twice, first without compaction, then with it. Sizes are in made-up crow words, and the model fits 100 of them. Real models count tokens and fit hundreds of thousands.

Without compaction
1

Start a raid.

Every message takes up room. Reading a file puts all of it in, so the ledger alone is 30 crow words.

1 of 8
With Vera's compaction
1

Same raid.

Every message takes up room. Reading a file puts all of it in, so the ledger alone is 30 crow words.

1 of 13

When compaction cannot run

If a summary cannot be made, the transcript shows a notice starting Could not summarize, and the conversation carries on unchanged. The reason says what to do:

  • There is not enough finished history to compact yet. Keep working; there is nothing older to summarize.
  • A reason that names the instructions and tool definitions, or the latest messages, means they leave no room for a summary under the trigger. It ends with what to raise: the context limit (or a model with a larger window), or compaction.trigger_tokens when the model’s window is unknown.
  • Could not summarize the earlier messages: <reason> means the summarizing model failed. The reason comes from the provider.

Asking to compact while a turn is running shows Compaction runs between turns. Try again once this one finishes. Stopping a compaction leaves the earlier messages as they were.

Every Could not summarize is also recorded for /failure-report (see Troubleshooting).

Change a setting

Open /settings and choose Overrides. The screen contains controls for the context limit, compaction trigger and target, retained material, and tool result limits. Highlight a setting to read its explanation, then choose a value.

Each change saves only that setting. Choose Default in its value screen to remove your override.

Read the status columns

Context limit             8k        set      live
Compaction trigger        0.82      default  live
Compaction trigger tokens none      default  inert
LabelMeaning
setYou supplied an override.
defaultVera is using its default value.
liveThe setting applies in this conversation.
inertThe setting does not apply with the current context-window configuration.

The explanation beside an inert setting says why it is unused.

Fraction or token limits

When a context window is known, Vera can use fractions of that window for compaction. If the model has no known window and you have not set a limit, fixed token settings take their place. Setting a context limit makes the fraction settings active instead.

Both sets stay visible so you can tell which values currently apply.

Resolve conflicting values

The limit for one tool result must not exceed the total tool-result budget. Vera refuses a conflicting choice before saving it. The value screen shows Not set with the two values involved. Adjust the other limit or choose a compatible value.

A summary target at or above the compaction trigger is allowed, which helps when you want compaction to happen early, for example while testing it. Vera asks first and shows both values. Press 1 to save anyway or Escape to go back to the list. While the target is not under the trigger, compaction aims for about a third of the trigger instead, so one compaction does not set off the next.

Reset overrides

Choose Reset all to defaults to clear all eleven context overrides. The confirmation lists the overrides you set. Press 1 to clear them or Escape to keep them. Other configuration stays unchanged.

The same settings are stored in config.json: top-level context_limit, plus the compaction and tool_results blocks. The settings screen validates changes to these values.