claude-session-cli
v1.1.0
Published
CLI tool to manage Claude Code sessions — list, inspect, resume, export, and clean up.
Maintainers
Readme
csm — Claude Session Manager
A CLI tool to discover, inspect, resume, export, and clean up Claude Code sessions from the current directory tree.
Install globally via npm or bun:
npm install -g claude-session-cli
# or
bun add -g claude-session-cliLocal Development
bun install
bun link # makes `csm` available globallyUsage
Run csm from any directory where you've used Claude Code:
csm # List sessions (default)
csm list # Same as above
csm list --all # Show ALL sessions across all projects
csm list --project # Only the exact current directory
csm list --sort messages # Sort by message count
csm list --json # JSON output
csm show 1 # Show details by list number
csm show <session-id> # Show by session ID (partial match works)
csm show 1 --messages # Include conversation messages
csm history # Command history for this directory
csm history --limit 10 # Limit entries
csm resume # Launch Claude's session picker
csm resume 1 # Resume session by list number
csm resume <session-id> # Resume by session ID
csm export 1 # Export session to markdown
csm export <id> -o out.md # Specify output file
csm search "refactor" # Search session titles
csm search "error" --content # Search session titles and content
csm search "api" --all # Search across all projects
csm delete 1 # Delete session by list number
csm rm <id> --force # Delete by ID without confirmation
csm stats # Show usage stats for current project
csm stats --all # Show stats for all projects
csm cleanup # Delete sessions older than 30 days
csm cleanup --days 7 # Custom threshold
csm cleanup --dry-run # Preview without deletingHow It Works
Claude Code stores session transcripts as JSONL files at:
~/.claude/projects/<encoded-path>/<session-uuid>.jsonlWhere <encoded-path> is the project's absolute path with / replaced by -.
csm scans this directory, parses the JSONL files, and presents them in a readable format with:
- Session titles (auto-generated by Claude)
- Timestamps (created and last active)
- Message counts (user and assistant)
- Model info, git branch, and Claude version
Development
bun run dev # Run the CLI
bun run src/index.ts # Same thingBuilt with Bun + Commander.js.
Contributing
Issues and PRs are welcome! This tool was built to scratch a personal itch, but I'm happy to expand its capabilities.
License
MIT
