Anthropic's developer-facing coding assistant, Claude Code, surfaces a block of "extended thinking" text whenever the model pauses to reason. That block looks like a transcript of the model's deliberation. It is not. Anthropic's own documentation describes the visible text as a summary of Claude's full thinking process rather than the reasoning itself, which makes the on-screen block a reconstruction, not a record of what actually happened inside the model.
Practitioner Patrick McCanna flagged the gap in a blog post after spending time with the feature in real sessions. The way he puts it, opening the extended thinking output (Ctrl+O in the Claude Code interface) is closer to opening a JPEG that has been re-encoded as a BMP: the shape of the file survives, but information has already been thrown away. The local logs Claude Code keeps on a developer's machine do not include the model's internal reasoning in any form a user can read. Inputs, outputs, and actions can be scraped from those files. The reasoning that connected them cannot. (Claude Code's "extended thinking" is a summary, not authentic thinking)
The distinction is not a footnote. The phrase "extended thinking returns a summary of Claude's full thinking process" comes from Anthropic's own product documentation, which means the product displays a feature under a label that its own spec contradicts. A user who screenshots the block, ships it into a debugging thread, or treats it as evidence of why the model produced a given output is working from a lossy reconstruction by design, not by accident.
Hacker News commenters extended the same observation to the reasoning traces surfaced on claude.ai itself and described a "two levels of summary" framing: the model produces reasoning, the model summarizes that reasoning for display, and the user sees only the second layer. The HN thread is community commentary rather than vendor confirmation, but the underlying point is consistent with the documentation language and with what developers see in their own files. (Hacker News discussion on the summary gap)
For builders and operators, the practical consequence is structural. There is no authentic audit trail of agent reasoning available from local files. Any team that needs to reconstruct why an agent took a given action, whether for incident review, compliance, or post-hoc debugging, is dependent on a vendor-generated summary that was never designed to serve that purpose. The summary may be faithful. It may not be. Either way, the source data the model actually used to decide is not on disk.
An honest reasoning record would look different. It would carry timestamps tied to the actual generation steps, expose the underlying trace rather than its recap, and use vendor language that does not describe a summary as "thinking." Until any of those change, the right reader posture is a small one: stop treating the visible block as the transcript. It is a paraphrase of a transcript, surfaced under a label the documentation itself qualifies.