Sessions starting with slash commands (/fast, etc.) are invisible in --resume picker
Bug Description
Sessions that begin with a slash command (e.g. /fast) before the first user prompt do not appear in the claude --resume interactive picker. The session data is fully intact on disk and can be resumed by ID (claude --resume <session-id>), but is invisible in the picker UI and cannot be found by name search or /rename.
Steps to Reproduce
- Start a new Claude Code session
- Type
/fastas the first input (before any prompt) - Enter your actual prompt (e.g. "Create an agent team...")
- Work through the session normally, then exit
- Run
claude --resumeto open the interactive picker - The session does not appear in the list
Expected Behavior
The session should appear in the resume picker like any other session, regardless of whether it started with a slash command.
Actual Behavior
- The session is missing from the picker (tested with both search and scrolling)
claude --resume <full-session-id>works fine — the session is intact/renameupdates metadata but the session remains invisible in the pickerclaude --resume <name>also fails to find it
Root Cause Analysis
Inspecting the .jsonl session files, the difference between hidden and visible sessions is:
Hidden session (started with /fast):
Line 0: type=system, subtype=local_command (/fast) → parentUuid: null
Line 1: type=system, subtype=local_command (response) → parentUuid: d56555bc
Line 2: type=file-history-snapshot
Line 3: type=user (actual prompt) → parentUuid: 048b294f ← NOT root
Normal visible session:
Line 0: type=file-history-snapshot
Line 1: type=user (actual prompt) → parentUuid: null ← root
The picker appears to require the first user message to have parentUuid: null (i.e., be the root of the message chain). When /fast is typed first, it becomes the root message, and the actual user prompt gets chained to the /fast response with a non-null parentUuid. The picker then skips the session entirely.
Environment
- Claude Code version: 2.1.37
- OS: macOS (Darwin 25.2.0)
- The affected session contained a team (TeamCreate with 3 agents), though the issue is likely caused by the
/fastprefix, not the team usage
Impact
- Any session started with a slash command becomes permanently invisible in the resume picker
- The only way to access the session is via the full UUID, which users are unlikely to remember
/renamedoes not help since the picker can't see the session at all- This is especially frustrating for long, complex sessions (e.g., team sessions with multiple agents)
Workaround
Resume directly by session ID:
claude --resume b52fb797-328d-4335-985e-52a58daf73fc
Or avoid the bug by always typing the first prompt before any slash commands.
This issue has 2 comments on GitHub. Read the full discussion on GitHub ↗