/resume command reports 'No conversations found' despite conversations existing on disk
Status Open
Maintainer reply None cached
Workaround ✓ Mentioned in thread ↓
Activity 11 comments · opened Jan 22, 2026
Bug Description
The /resume command consistently reports "No conversations found to resume" even immediately after exiting a conversation, despite conversation files being properly saved to disk.
Environment
- OS: Linux (Ubuntu on Azure VM)
- Claude Code Version: Latest (installed via npm)
- Shell: zsh
Steps to Reproduce
- Start a Claude Code session in a project directory
- Have a conversation (ask a question, get a response)
- Exit the session (Ctrl+C or
/exit) - Immediately run
claudeagain in the same directory - Run
/resume - Observe: "No conversations found to resume"
Expected Behavior
/resume should list recent conversations from the current project and allow selecting one to resume.
Actual Behavior
/resume returns "No conversations found to resume"
Evidence
Conversations ARE being saved correctly:
$ ls -lt ~/.claude/projects/-home-chrissun-elser/*.jsonl | head -5
-rw------- 1 user user 34603 Jan 22 06:16 d8a06ba6-d7ea-453e-997e-e67241f23d0f.jsonl
-rw------- 1 user user 60702 Jan 22 06:15 ab6b324d-b413-4460-8915-175414b3de69.jsonl
-rw------- 1 user user 12985 Jan 22 06:05 c23b2ca2-507a-41df-a0be-6e0b4eef965d.jsonl
...
The ~/.claude/history.jsonl file also contains proper entries:
{"display":"example prompt","timestamp":1769062085766,"project":"/home/chrissun/elser","sessionId":"ab6b324d-b413-4460-8915-175414b3de69"}
Workaround
Manually specifying the session ID works:
claude --resume ab6b324d-b413-4460-8915-175414b3de69
Additional Context
- This issue is reproducible and persistent (not a one-time occurrence)
- The project directory is
/home/chrissun/elser - Multiple conversation files exist spanning several days
- The issue occurs regardless of conversation length or content
11 Comments
Root Cause Found
After investigation, the root cause has been identified:
The
/resumecommand fails in non-git directories.The
/home/chrissun/elserdirectory is a parent folder containing multiple git repos (elser-anime-api, elser-task-api, etc.), but it is NOT itself a git repository.Technical Details
Looking at the bundled source code in
cli.js, the/resumecommand:sy()function which executesgit worktree list --porcelainxa()function that loads sessions has different code paths based on whether worktree detection succeededYet conversations ARE being saved:
Workaround
Initialize the parent directory as a git repo:
Or use the
--resumeflag with a specific session ID:Suggested Fix
The
/resumecommand should not depend on git worktree detection for finding sessions. Sessions are stored in~/.claude/projects/<project-path>/and should be enumerable regardless of whether the project is a git repo.Found 3 possible duplicate issues:
This issue will be automatically closed as a duplicate in 3 days.
🤖 Generated with Claude Code
I am experiencing this exact same issue over the last 2 days when I never was before. I haven't changed / updated anything.
---
Version Bisect Results
I bisected this issue and found the exact version where the bug was introduced:
┌─────────┬────────────────────────────────────┐
│ Version │ /resume Status │
├─────────┼────────────────────────────────────┤
│ 2.0.76 │ ✅ Works │
├─────────┼────────────────────────────────────┤
│ 2.1.0 │ ✅ Works │
├─────────┼────────────────────────────────────┤
│ 2.1.5 │ ✅ Works │
├─────────┼────────────────────────────────────┤
│ 2.1.6 │ ✅ Works (last good version) │
├─────────┼────────────────────────────────────┤
│ 2.1.7 │ ⚠️ Partial (some sessions missing) │
├─────────┼────────────────────────────────────┤
│ 2.1.9+ │ ❌ Broken │
└─────────┴────────────────────────────────────┘
The bug was introduced in version 2.1.7.
The likely culprit from the release notes:
"Enabled MCP tool search auto mode by default for all users."
Workaround
npm install -g @anthropic-ai/claude-code@2.1.6
---
I am facing the same issue in my case my dir is git repo only please fix this @claude
Additional data point from Windows with git worktrees:
I'm experiencing this same issue, but my situation differs from the original report - I am in a valid git repository.
Environment:
Timeline:
What I tried:
Reproduced in both terminals (Warp and Windows Command Prompt) and both repo types (main repo and worktree), so this is not a terminal-specific or worktree-specific
issue.
Key finding: The session files are valid and resumable. The bug is specifically in the picker UI's session enumeration/display logic, not in session storage or the
resume functionality itself.
Workaround confirmed: Manually get session IDs from ~/.claude/projects/<project-path>/*.jsonl and use:
claude --resume <session-id>
This suggests the issue may be related to how the picker enumerates sessions, possibly in the worktree/branch filtering logic, rather than missing session data.
Figured it out with Claude's help. Couldn't not update to 2.1.32 with Opus 4.6 out lol. If you recently added a worktree and /resume broke with no explanation, this is probably why.
Root cause confirmed: git worktree list with multiple worktrees breaks /resume
Environment: Windows 11, VS Code integrated terminal, Claude Code 2.1.x (latest)
Diagnosis:
/resume internally calls git worktree list --porcelain to resolve the current project. When the repository has multiple worktrees, the session lookup silently fails and returns "No conversations found to resume" — even though the sessions exist on disk and are visible in the startup header's "recent activity" hint.
Reproduction:
Evidence:
Suggested fix: The project-path resolution in the /resume slash command should either:
Workaround: Use claude --continue or claude --resume <session-id> instead of /resume, or temporarily remove extra worktrees with git worktree remove <path>.
Experiencing the same issue on Windows with Claude Code v2.1.37. Sessions
.jsonlfiles exist in~/.claude/projects/but--resumesays "No conversations found to resume." This affects both regular repos and git worktree directories.This issue can also cause /resume to show conversations from the wrong worktree (not just "no conversations")
If you're hitting this, check
~/.claude/settings.jsonfor"cleanupPeriodDays": 0. That value stops.jsonltranscript files from being written — you'll see session directories with nothing in them. The schema says0means "disable cleanup," but the code treats it as "don't write transcripts." Root cause tracked in #23710.Hitting this on v2.1.81 (Linux/Codespaces as well as macOS). Did a bunch of digging and filed #38340 with the full details.
The main thing I found: I created a valid
.jsonlsession file by hand, dropped it in the project directory, and the picker completely ignored it. Ranstraceand confirmed there are no directory reads on the project path during/resumeat all. So the stat-based scanning from v2.1.30 doesn't seem to be working.Also tried removing git worktrees, renaming subagent directories, checking metadata flags, file sizes, content format. None of it mattered. The picker just doesn't look at the filesystem. Direct resume by ID works fine though.
This is particularly painful as an Agent Teams user since all my real sessions are invisible and only old trivial ones show up.