claude-pick
v1.1.0
Published
Session picker for Claude Code — list, preview, and resume conversations
Maintainers
Readme
claude-pick
Session picker for Claude Code. Lists your recent conversations with chat previews so you can resume the right one.
npx claude-pickThe problem
When you run multiple Claude Code instances on the same repo, claude --continue grabs the most recently modified session — which may not be the one you want. There's no built-in way to see what's in each session before resuming it.
What it does
- Lists all Claude Code sessions sorted by last activity
- Shows project path, start time, last active time, and size
- Previews the last few chat messages so you can identify each session
- Select a number to resume it instantly
Claude Code Sessions (most recent first)
[1] ~/projects/my-app
Started: Apr 12 09:45 | Last active: Apr 12 10:07 (5m ago) | 0.1MB
ID: d47db18f-c0ed-4a6e-9283-702d0f6904ad
YOU: make the login page responsive
BOT: I've updated the login component with mobile breakpoints...
YOU: looks good, now add dark mode
BOT: Done. Added dark mode toggle using CSS custom properties...
──────────────────────────────────────────────────────────────────────
[2] ~/projects/my-app
Started: Apr 10 14:21 | Last active: Apr 11 23:41 (10h ago) | 5.2MB
ID: 02544f36-f8de-4d40-b984-5aa87ba9ffb3
YOU: debug the payment webhook
BOT: Found the issue — the signature verification was using...
──────────────────────────────────────────────────────────────────────
Resume a session:
Enter number (1-2), or press Enter to cancel
>Usage
# Run without installing
npx claude-pick
# Or install globally
npm install -g claude-pick
claude-pick
# Show more sessions
claude-pick 20
# Filter by project name
claude-pick myproject
# Combine both
claude-pick 5 myproject
# Non-interactive: resume most recent session
claude-pick --resume-latest
# Non-interactive: resume session #3
claude-pick --select 3
# Use an alternate sessions directory
CLAUDE_PICK_DIR=/path/to/.claude/projects claude-pickFeatures
- Zero dependencies — single file, nothing to install
- Cross-machine safe — reads the actual working directory from session transcripts, not the encoded folder name
- TTY-aware — strips ANSI colors when piped; skips interactive prompt when stdin isn't a terminal
- Non-interactive modes —
--resume-latestand--select Nfor scripting - Configurable directory —
CLAUDE_PICK_DIRenv var to point at any sessions directory
Requirements
- Node.js >= 18
- Claude Code CLI installed
How it works
Claude Code stores session transcripts as JSONL files in ~/.claude/projects/. This tool reads those files, extracts the recent human/assistant messages, and presents them in a browsable list. When you pick a session, it runs claude --resume <session-id>.
License
MIT
