Added
- Delete several sessions at once. ⌘-click sessions in the sidebar to pick them along with the one that's open, or ⇧-click to pick a run of them from it, then Delete from the bar that appears at the bottom — or right-click one of them. A plain click still just opens a session. Once they're gone the list scrolls back to where you started picking, instead of leaving you where the last click was. Sessions with Claude running in a terminal have it closed first, and if Claude is in the middle of a reply you're asked before anything stops. This applies to deleting a single session too.
- Take a session's terminal from another window. A session whose terminal runs in another window used to offer only "Switch to it". It now also offers Open here instead, which stops it there and starts it in this window. While Claude is working in it, the same dialog as ⌘W asks first; the other window is left showing
[process exited]with Restart.
Fixed
- Row menus open upward when there's no room below. The ⋯ menu on a session near the bottom of the sidebar was cut off by the list's edge, so reaching Delete meant scrolling first. Menus now open on whichever side has room, and one too tall for either scrolls instead of being clipped.
- An open session's token counts and duration keep up with it. The context size, lifetime tokens, duration and event count above a transcript were worked out once, when you opened the session, and never again — so a session opened seconds after it started read "0 tokens" for as long as you watched it, while the sidebar showed the real number. They now grow as Claude writes, and start over after an auto-compaction, as they do when you reopen the session.
- The project filter's group heading sits over its own projects. Picking one of several projects sharing a name moved its heading to the top of the menu, where it sat over "All projects" and everything alphabetically before the group. The heading now stays with the directories it names, and a rule closes the group where it ends, so the projects after it read as their own.
- A question you chatted about instead of answering says so. Picking "Chat about this" on one of Claude's questions left its card looking unanswered, since Claude Code records it as a declined question rather than an answer; the card now ends with "Chat about this". A question dismissed with Esc reads "Dismissed without an answer".
- Messages no longer appear twice. Clicking another session while a large one was still loading left the window listening to the live tail twice, so from then on every new message showed up twice — in whichever session it displayed — until the app was restarted. And a message Claude wrote at the very moment a session opened could arrive twice too, or, if it was half-written, not at all. Now only the most recent open listens, and a session picks up exactly where its first read stopped.
Changed
- Uses less memory. Keeping the sessions list current while Claude is working no longer copies every session's cached details each time a session file changes, and a window no longer keeps a terminal alive for every session you've looked at, only for the one you're on and those where Claude is still running.
- The Open tab's icon shows how many sessions are open. A small count on its icon says how many sessions have Claude running in a terminal, turning green while Claude is working in any of them, so you can see it without switching tabs. The tooltip spells out both numbers.
- Precise session status is on by default, as a Claude Code plugin. Claude reports each session's state itself — a question or permission prompt shows as needing you the moment it appears — through a small
ccm-statusplugin the app adds to Claude Code, and a note in the sidebar says so. Turn it off in Settings or with/plugin, and it stays off. If you had switched it on before, its hooks move out of~/.claude/settings.jsoninto the plugin. It needs Apple's command line tools, and uninstalling the app leaves nothing behind that errors.
Install
brew tap zillydev/tap && brew trust zillydev/tap
brew install --cask claude-code-managerOr download the universal .dmg below (Apple Silicon + Intel).
It is not signed or notarized by Apple, so after dragging the app
to /Applications clear the quarantine attribute once:
xattr -cr "/Applications/Claude Code Manager.app"(Or right-click the app → Open → Open.) The Homebrew cask and
make install both avoid this.
Full changelog: v0.1.3...v0.1.4