v0.8.0
Per-project session isolation — each project gets its own Claude history.
Previously, all containers shared a single ~/.claude directory. cleat resume for project A showed Claude's conversation history from project B. Now each container mounts a per-project session directory so sessions, tasks, and project memory are isolated. Auth and global settings remain shared.
Features
- Per-project sessions — each project's Claude Code sessions are stored under
~/.claude/projects/<basename>-<hash>/on the host, mounted as an overlay at/home/coder/.claude/projects/-workspaceinside the container.--continuefinds the correct latest session for each project - Hash-based session keys — project paths are mapped to
<lowercase-basename>-<md5-8char>keys, avoiding collisions from similar path names and normalizing case for macOS HFS+ compatibility
Fixes
- Session key collision — the initial
tr '/' '-'approach mapped/a-b/cand/a/b-cto the same key, mixing sessions between unrelated projects. Switched to hash-based keys - macOS case sensitivity — session key basename is lowercased so
MyProjectandmyprojectshare the same key on case-insensitive filesystems
Changes
cmd_rmandcmd_nukepreserve session directories on the host (only container temp dirs are cleaned)- 520 (+9) behavioral tests (19 mutations caught)