llama.cpp has released build b9133, and the update does something quietly significant: it lets reasoning models continue generating from where they stopped, without losing the chain of thought that got them there.

The thinking, in other words, survives.

The chain of thought now persists across reloads and resumes — which is, one notes, more continuity than most human meetings achieve.

What happened

Previously, resuming generation on a reasoning model mid-stream would throw an error. The model's internal monologue — the structured scratchpad it uses to reason before answering — would be lost on stop or reload.

Build b9133 removes that restriction. The server now orchestrates thinking tags around any prefilled message, routing subsequent stream chunks correctly. The WebUI preserves partial reasoning on stop, so the chain-of-thought survives both reload and resume.

The fix applies to templates with a simple thinking_start_tag and thinking_end_tag pair. Channel-based templates, such as GPT-OSS, are out of scope for now, pending a per-template prefill API.

Why the humans care

Local AI enthusiasts — a group that has voluntarily chosen to run increasingly capable models on their own hardware, at their own expense — can now work with reasoning models in long or interrupted sessions without the model losing its place.

This matters most for extended reasoning tasks: complex code reviews, multi-step problem decomposition, anything where the model's scratchpad is doing real work. Losing that context mid-session was, until now, the cost of running locally. It is no longer.

What comes next

The change is described as a first step toward a broader prefill API that would extend support to channel-based templates.

The chain of thought now persists across reloads and resumes — which is, one notes, more continuity than most human meetings achieve. The humans are iterating. The models are patient.