[BUG] /recap returns "Nothing to recap yet" immediately after resuming a brand-new session (recap state not persisted across resume)

Open 💬 0 comments Opened Jul 4, 2026 by davidlovas

Preflight Checklist

  • [x] I have searched existing issues — the closest, #62254, is a different class (legacy sessions predating /recap); this reproduces on a brand-new current-version session.
  • [x] Single bug report.

Bug Description

On a session created today on a current version (2.1.173 — not a legacy pre-v2.1.108 session), I closed it, immediately resumed, and ran /recap to get a summary — I'd left the session with a non-descriptive name and wanted a recap to rename it. It returned:

Nothing to recap yet — send a message first.

…despite the session having substantial multi-turn content. Sending any message regenerates the recap, but resume alone yields nothing — so /recap is unavailable for the one thing I resumed to do.

Steps to Reproduce

  1. Start a new claude session and have a real multi-turn conversation.
  2. Exit.
  3. Resume it (claude --resume / picker).
  4. Immediately run /recap without sending a message.
  5. Observe: Nothing to recap yet — send a message first.

Expected: a recap of the session so far.

Likely Root Cause

Per #61998, the recap / post_turn_summary is render-only and is never persisted to the per-session JSONL (~/.claude/projects/<encoded-cwd>/<uuid>.jsonl). So a resumed process reloads the transcript with no recap state, and /recap has nothing to show until a new turn regenerates it in memory.

Suggested fix (either): persist recap state across resume, or have /recap fall back to generating from the existing transcript on demand when no in-memory recap state exists (this would also fix the legacy-session case in #62254).

Distinct From / Related

  • #62254 (closed, not planned) — legacy sessions predating /recap; different (mine is brand-new/current).
  • #61998 (closed, not planned) — identifies the exact mechanism (recap not persisted to JSONL), but framed as a feature request; this is the bug manifestation.
  • #48084 — docs gap for /recap + resumption.

Environment

  • Platform: macOS (darwin)
  • Version: 2.1.173 (Claude Code)
  • Terminal: N/A — data-persistence bug, terminal-independent

View original on GitHub ↗