claude-code - 💡(How to fix) Fix [2.1.123] `--resume` picker shows "No conversations found" when valid sessions exist; direct UUID resume works [1 comments, 2 participants]

Official PRs (…)
ON THIS PAGE

Recommended Tools

×6

Utilities matched from this issue’s tags and category — try them while you read without losing context.

GitHub issue graph ai analysis

Paste a GitHub issue URL. We fetch that issue, discover linked issues from bodies/comments/timeline, collect linked pull requests, and produce a structured English report.

The report is written in English Markdown for sharing and archival.

Helpful · Quick feedback

Loading…
GitHub stats
anthropics/claude-code#54542Fetched 2026-04-30 06:42:47
View on GitHub
Comments
1
Participants
2
Timeline
4
Reactions
0
Author
Timeline (top)
labeled ×3commented ×1

In Claude Code 2.1.123, claude --resume (interactive picker) reports "No conversations found to resume" when run from a project directory that contains valid session JSONLs in the matching encoded project directory. Resuming the same sessions by UUID (claude --resume <uuid>) works fine.

Root Cause

In Claude Code 2.1.123, claude --resume (interactive picker) reports "No conversations found to resume" when run from a project directory that contains valid session JSONLs in the matching encoded project directory. Resuming the same sessions by UUID (claude --resume <uuid>) works fine.

Fix Action

Workaround

# Resume most recent session in current project
claude --resume "$(ls -t ~/.claude/projects/$(pwd | sed 's|/|-|g')/*.jsonl \
  | head -1 | xargs basename | sed 's/\.jsonl$//')"

Code Example

# A project directory with prior sessions
$ pwd
/path/to/some/project

# Sessions exist on disk in the encoded project dir
$ ls ~/.claude/projects/-path-to-some-project/*.jsonl | wc -l
12

# Picker — reports nothing found
$ claude --resume
No conversations found to resume.
Press Ctrl+C to exit and start a new conversation.

# Direct UUID resume — works
$ claude --resume <uuid-from-the-jsonl-filenames>
# (resumes correctly)

---

# Resume most recent session in current project
claude --resume "$(ls -t ~/.claude/projects/$(pwd | sed 's|/|-|g')/*.jsonl \
  | head -1 | xargs basename | sed 's/\.jsonl$//')"
RAW_BUFFERClick to expand / collapse

Summary

In Claude Code 2.1.123, claude --resume (interactive picker) reports "No conversations found to resume" when run from a project directory that contains valid session JSONLs in the matching encoded project directory. Resuming the same sessions by UUID (claude --resume <uuid>) works fine.

Reproducer

# A project directory with prior sessions
$ pwd
/path/to/some/project

# Sessions exist on disk in the encoded project dir
$ ls ~/.claude/projects/-path-to-some-project/*.jsonl | wc -l
12

# Picker — reports nothing found
$ claude --resume
No conversations found to resume.
Press Ctrl+C to exit and start a new conversation.

# Direct UUID resume — works
$ claude --resume <uuid-from-the-jsonl-filenames>
# (resumes correctly)

Verified

  • All JSONLs have a cwd field whose value matches pwd exactly.
  • Encoded project directory name matches the cwd (/ -> -, e.g. /path/to/x -> -path-to-x).
  • Sessions span versions ~2.1.52 through 2.1.122; the running binary is 2.1.123.
  • Direct-UUID resume succeeds for the same files the picker can't surface.
  • claude --continue shows the same "No conversations found" message.
  • Active sessions show as status: busy in ~/.claude/sessions/<pid>.json, but the project dir contains plenty of non-busy historical sessions that should be resumable.

Environment

  • Claude Code: 2.1.123
  • Platform: macOS (Darwin 25.3.0)
  • Shell: zsh / bash (reproducible in both)

Possible cause

The picker's lookup appears to either (a) search a different path than ~/.claude/projects/<encoded-cwd>/, (b) apply a filter that excludes all historical sessions, or (c) use different cwd-encoding rules in 2.1.123. Direct-UUID code path is unaffected.

Workaround

# Resume most recent session in current project
claude --resume "$(ls -t ~/.claude/projects/$(pwd | sed 's|/|-|g')/*.jsonl \
  | head -1 | xargs basename | sed 's/\.jsonl$//')"

extent analysis

TL;DR

The issue with the claude --resume interactive picker not finding conversations to resume in the project directory can be worked around by using a direct UUID resume or the provided bash script to resume the most recent session.

Guidance

  • Verify that the cwd field in the JSONL files matches the current working directory (pwd) exactly, and the encoded project directory name is correctly formatted.
  • Check if the issue persists when using the claude --continue command, which also reports "No conversations found".
  • Use the provided bash script as a temporary workaround to resume the most recent session in the current project.
  • Investigate the possibility of a change in the picker's lookup path or filter in version 2.1.123, which may be causing the issue.

Example

The provided bash script can be used as a workaround:

claude --resume "$(ls -t ~/.claude/projects/$(pwd | sed 's|/|-|g')/*.jsonl \
  | head -1 | xargs basename | sed 's/\.jsonl$//')"

This script resumes the most recent session in the current project by finding the latest JSONL file in the encoded project directory.

Notes

The issue seems to be specific to the claude --resume interactive picker and does not affect direct UUID resume. The cause of the issue is still uncertain, but it may be related to changes in the picker's lookup path or filter in version 2.1.123.

Recommendation

Apply the provided workaround using the bash script to resume the most recent session in the current project, as it provides a reliable way to resume conversations until the underlying issue is resolved.

Vote matrix · Quick signals

Works
Did the solution work? Tap to confirm.
Easy Fix
Was it a quick fix?
Time Saver
Did it save you time?
Blocking
Was it severely blocking?
Common Issue
Are others likely hitting this too?
Flaky / Intermittent
Is it intermittent?
Verified / Reproducible
Can you reproduce it reliably?
Loading…

Still need to ship something?

×6

Another batch ranked right after the header list — different links, same matching logic.

Back to top recommendations

TRENDING