[FEATURE] Desktop app: per-message collapse/expand toggle in the conversation transcript
Preflight Checklist
- [x] I have searched existing requests and this feature hasn't been requested yet
- [x] This is a single feature request (not multiple features)
Problem Statement
In the Claude Code desktop app (Code tab), long sessions become very hard to navigate because individual messages cannot be compressed.
A single turn is often several screens tall: a long prompt from me, and an assistant reply containing ASCII architecture diagrams, code listings, tables and multi-section analysis. After a few dozen turns, scrolling back to something I read earlier means dragging through thousands of lines I have already consumed, overshooting, and scrolling back again.
Tool-call blocks are already collapsed into one-liners (Ran 4 commands >), which helps a lot — but the message bodies themselves, which are usually by far the tallest part of the transcript, have no equivalent. Once a turn is finished and understood, there is no way to fold it away so the turns I still care about sit near each other.
The real goal is being able to fold and unfold the individual exchanges of a long, multi-turn session so that going back over what was already discussed is cheap. This matters for more than comfort: over a long session both the assistant and I gradually drift away from the original intent, and the way to catch that is to re-read the earlier turns — the decisions that were made, the constraints that were agreed on, the approaches that were already ruled out. When re-reading costs several minutes of scrolling, it simply doesn't happen, and the drift goes unnoticed until a lot of work has gone in the wrong direction. Collapsing the finished turns makes the whole thread skimmable, so checking back is cheap enough that I actually do it.
Proposed Solution
Add a collapse/expand toggle to every message in the conversation transcript — both my sent messages and Claude's replies:
- A small chevron / disclosure triangle in each message's header area (or revealed on hover in the left gutter), consistent with how tool-call blocks already collapse.
- Clicking it collapses the message to a single-line preview — e.g. the first line of its text plus a hint such as
… 84 lines— and clicking again restores the full message. - Collapse state persists at least for as long as the session is open, and ideally is remembered per session across app restarts.
- Nice-to-have: "Collapse all" / "Expand all" actions for the whole transcript, plus a keyboard shortcut, so I can fold everything and then expand only the two or three turns I need.
Alternative Solutions
- Scrolling / dragging the scrollbar — this is what I do today; it is exactly the thing that is painful when each turn is multiple screens tall.
- Starting a new session to get a short transcript — this throws away the context that made the session useful in the first place.
- Existing collapse behaviour only covers tool calls and pasted input, not message bodies.
Adjacent but distinct existing requests I found while searching:
- #84086 — timestamps + collapse/expand, but scoped to the VS Code extension and primarily about timestamps.
- #91827 — persistent setting to collapse tool-call output by default.
- #46046 (closed) — expanding already-collapsed/folded user input, which is the inverse of this request.
None of them cover a per-message fold control for both sides of the conversation in the desktop app.
Priority
Medium - Would be very helpful
Feature Category
Other
(Desktop app — Code tab conversation view.)
Use Case Example
- I'm in a long architecture-review session in the desktop app Code tab — roughly 30 turns spent mapping out how one subsystem works.
- Several assistant replies contain large ASCII diagrams and code blocks; each one fills the entire window.
- I want to compare a conclusion the assistant reached around turn 8 with the one I just received at turn 30.
- Today I drag the scrollbar back and forth, repeatedly overshooting, because every turn between them is multiple screens tall.
- With per-message collapse I would fold every turn I'm done with; turns 8 and 30 would then sit a few lines apart and be directly comparable on one screen.
Additional Context
In my current session a single assistant reply occupies the whole window, and there is no control anywhere on the message to fold it.
I checked the CHANGELOG up to 2.1.278 (the latest release at the time of writing) before filing this. The collapse behaviour added since covers tool-call summaries, cross-session peer messages, teammate/agent messages in fullscreen mode, and VS Code sidebar sections — but not the body of ordinary messages in the desktop transcript. So this does not appear to be something a version upgrade already solves.
Environment:
- Claude Code desktop app 2.2553.1
- macOS 26.2