csess
Fast, reliable CLI that lists Claude Code
sessions for a folder and its subfolder projects. Built for speed — designed to
be called by Claude itself with --json.
Why
Claude stores each session as a *.jsonl file under
~/.claude/projects/<encoded-cwd>/. csess resolves those into a readable list
(name, last-active, message count, path), correctly handling nested projects and
folder names containing dashes.
Install
From crates.io
From source (Cargo)
Prebuilt binary
Download the latest static binary from Releases, then:
Install script
|
Usage
Options
| Flag | Description |
|---|---|
PATH |
Folder to scan (default: cwd) |
-g, --global |
All Claude projects |
-R, --no-recursive |
Exact folder only |
-s, --search TERM |
Fuzzy match on name/path |
--since / --until |
2026-06-01 | 7d | 24h | 30m |
--period |
today | yesterday | week | month |
--sort |
active | created | name | messages | size |
-r, --reverse |
Reverse order |
-n, --limit N |
Cap results (with --show, tails the last N messages) |
--show ID_OR_NAME |
Print one session's full transcript |
--before UUID |
With --show: only messages older than this uuid (scroll-up cursor) |
--role user|assistant |
Filter to one side (with --show or --grep) |
--grep TEXT |
Search message text; with --show filters that transcript, else scans across sessions |
--json |
JSON output |
JSON fields
session_id, short, name, cwd, last_active (RFC3339), created,
message_count, git_branch, version, size_bytes, file_path.
Transcripts & search
For AI agents (Claude Code)
Two steps — install the binary, then install the skill (a root SKILL.md does
not auto-register; it must live under ~/.claude/skills/):
# 1. binary
# 2. skill → enables /csess in Claude Code
See SKILL.md for when and how an agent should call csess
(prefer --json).
License
MIT © Sibin C Baby