Dev & Engineering cli-managementmulti-account-switchingsession-cleanuptoken-usage-trackinghealth-checksbashstatusline

CCM — Claude Code Manager

A pure-Bash CLI toolkit for Claude Code: multi-account switching, session cleanup, environment snapshots, token analytics, and health checks in one tool.

FollowSkills review · FSRS-2.0
Use with care
55/ 100 5-point scale 2.8 / 5
1 2 3 4 5 6
1Trust15 / 25 · 3.0/5

SKILL.md transparently discloses credential handling, the isolation limitation (credentials not isolated), snapshot scope, dry-run previews, and undo/recover paths; README documents umask 077, no-eval parsing, and input validation — responsible disclosure with visible risks. Deducted for: allowed-tools grants broad Bash(ccm *) plus curl | bash remote script installation (supply-chain trust depends entirely on a remote main branch), and confirmation gates for credential-rewriting operations are not enforced at the skill-doc level.

2Reliability9 / 20 · 2.3/5

Doc is self-consistent, command tables complete, dependencies minimal (bash+jq), failure-recovery via dry-run/undo, and a bats CI workflow exists. Deducted for: no static execution, test files not present in evidence so key paths unverified; a minor internal inconsistency (doctor described as 14 checks in one place, 13 in another); failure-feedback quality on abnormal input unverified.

3Adaptability9 / 15 · 3.0/5

Target scenarios (multi-account switching, session cleanup, usage analytics) are clear, with disclosed macOS/Linux differences and known limits like unreliable process detection on Linux. Deducted for: keyword-stuffed description raising false-trigger risk; no Chinese-language support; install depends on GitHub raw reachability, which may fail from mainland China and is not disclosed.

4Convention11 / 15 · 3.7/5

MIT license, versioning (4.2.2), npm provenance signing, tag-version consistency checks in release flow, multiple install channels, thorough README and troubleshooting — well layered. Deducted for: no CHANGELOG or explicit maintenance-ownership/update commitment visible in evidence; uninstall requires manually deleting data directories.

5Effectiveness6 / 15 · 2.0/5

Pain points (multi-account, disk bloat, permission auditing) are backed by upstream issues; command coverage is complete and marginal value over manual work is plausible. Deducted for: static review cannot verify output correctness or direct usability; comparative benefit rests mostly on author claims and a self-made comparison table.

6Verifiability5 / 10 · 2.5/5

Real CI (release.yml with version checks, test.yml running bats on two OSes), claims traceable to specific upstream issues, good fact/inference separation. Deducted for: test cases themselves absent from evidence; key-path reproduction requires execution, so static review confirms evidence structure but not conclusions.

Evidence confidence:Low Reviewed Sep 10, 2026 Reviewed revision 175ca195ef3a
Before you use it
  • Installation uses curl | bash from a remote main branch — review install.sh before running; GitHub raw may be unreachable from mainland China.
  • The skill touches credentials and kills processes; isolated mode does NOT isolate credentials (upstream limitation), so concurrent sessions may share one token and invalidate each other.
  • The description is keyword-stuffed, raising false-trigger risk; doctor check counts are inconsistent across the doc — trust actual output.
  • Static review only: no commands were executed, so real behavior and failure feedback are independently unverified; publisher identity is not verified by FollowSkills.
Review evidence [1][2][3][4][5][6]
See the full review method →

What does this skill do, and when should you use it?

CCM (Claude Code Manager) is a single-bash-script CLI toolkit for Claude Code, requiring only bash 4.4+ and jq, and running on macOS, Linux, and WSL. It targets long-standing Claude Code pain points: no native multi-account support, a ~/.claude directory that can silently grow past 500GB, and dead permission rules accumulating in settings.. Core capabilities include account management with auto-switching on cd, orphaned session and process cleanup, 14 health checks, per-account/project/session token usage analytics, and a smart statusline that can be installed standalone. Once installed as a skill, your AI agent learns when and how to invoke every ccm command.

Installs a Bash CLI at ~/.ccm/bin/ccm. It adds, switches, aliases, and reorders multiple Claude Code accounts (credentials in macOS Keychain or ~/.claude-switch-backup/ on Linux/WSL, written atomically with umask 077); emits shell hooks that auto-switch accounts on cd into bound directories or set CLAUDE_CONFIG_DIR per terminal; lists, searches, archives, relocates, and cleans sessions; creates/restores environment snapshots (settings. + MCP config + CLAUDE.md, no credentials); computes token usage and estimated cost per account, project, and session from session JSONL files; runs 14 doctor health checks and targeted clean operations (debug logs, telemetry, tmp files, orphaned processes, cache); audits duplicate/contradictory permission rules in settings.; generates .claudeignore by detected project type; watches rate limits and can auto-switch accounts at a threshold; and read-only reports Codex CLI rate limits and usage. The SKILL.md teaches an AI agent when to invoke these commands.

  1. Developers juggling work and personal Claude accounts who want the right account used automatically when cd-ing into different projects
  2. Heavy users whose ~/.claude and tmp directories have ballooned to tens of GB and need doctor checks plus safe cleanup
  3. Users who want token consumption and cost tracked per account, project, and session (ccm usage history/dashboard/sessions)
  4. Experimenters who snapshot their Claude Code config before risky changes and roll back if things break
  5. Users running concurrent Claude Code sessions who want per-terminal config and session history isolation (--isolated profiles)
  6. Pro/Max users who want rate-limit alerts or automatic account switching near the limit (ccm watch)

What are this skill's strengths and limitations?

Pros
  • Per the README comparison table, the only tool offering cd-triggered account switching, auto rate-limit switching, and per-account usage comparison
  • Zero runtime dependencies: a single bash script needing only bash 4.4+ and jq — no Node or Python
  • Serious security design: no eval, atomic writes with umask 077, input validation, macOS Keychain storage
  • Broad coverage: accounts, sessions, snapshots, usage, health checks, permissions audit, .claudeignore, statusline
  • Addresses highly-upvoted anthropics/claude-code issues (multi-account, session cleanup, usage tracking, orphaned processes)
Limitations
  • Credentials cannot be isolated per terminal: --isolated separates config and session history only, and a token refresh in one terminal can invalidate another (upstream limitations anthropics/claude-code#70697/#47661)
  • Orphaned process cleanup is macOS-only (ppid=1 unreliable on Linux)
  • Claude Code must be restarted after every account switch
  • Environment snapshots exclude credentials, so they are not a full credential backup
  • Self-described personal weekend project with no mention of a test suite; unaffiliated with Anthropic, so credential handling is at your own risk
  • Minor inconsistency in the README on the doctor check count (14 vs 13)

How do you install this skill?

1) Install the CLI: curl -fsSL https://raw.githubusercontent.com/dr5hn/ccm/main/install.sh | bash (alternatively brew install ccm or npm i -g @dr5hn/ccm), then restart your terminal or source ~/.zshrc. 2) Install as an Agent Skill (for Claude Code and similar agents): npx skills add dr5hn/ccm@ccm — the skill lives at ccm/SKILL.md in the repo. 3) First-run setup: run ccm setup to launch the wizard. Prerequisites: Bash 4.4+ and jq (brew install jq or sudo apt install jq).

How do you use this skill?

Use it directly in the terminal: ccm add registers the current account and ccm alias 1 work names it; ccm switch work switches accounts (restart Claude Code after every switch); ccm bind ~/work/project work binds a directory to an account, paired with eval "$(ccm hook)" or eval "$(ccm hook --isolated)" for auto-switch on cd; ccm doctor / ccm doctor --fix run health checks with safe auto-fixes; ccm session search "query" full-text searches all sessions; ccm usage history --days 30 shows usage; ccm statusline installs the status bar (install it before using ccm watch, which needs its rate-limit data). With the skill installed, you can also just tell your agent things like "clean up my Claude Code disk usage" or "switch to my work account" to trigger the right commands.

How does this skill compare with similar options?

The README compares CCM against Cloak, aisw, Usage Monitor, and native Claude Code: CCM is the only tool combining per-terminal config isolation, auto rate-limit switching, per-account usage tracking, permissions audit, and environment snapshots, and the only one with zero runtime dependencies; Cloak/aisw handle multi-account and isolation but not auto-switching or usage tracking; Usage Monitor only tracks usage. The ecosystem section recommends pairing CCM with ccusage (deep token analytics), ccstatusline (themed status bar), and ccmanager (multi-agent session orchestration).

FAQ

Are my credentials safe?
CCM never uses eval, writes credentials atomically with umask 077, stores them in the macOS Keychain, and strips credentials from snapshots. However, it is a personal project handling OAuth credentials with no Anthropic affiliation — back up your credentials before use.
Can I run different accounts in parallel terminals?
ccm switch --isolated gives each terminal its own config and session history, but credentials remain shared (upstream limitation #70697), so concurrent sessions may invalidate each other's tokens — understand this risk first.
Does it cost money or need the network?
The tool is free and MIT-licensed. Network is needed for installation (curl/Homebrew/npm); everyday cleanup, checks, and usage analytics read local files only, and ccm codex status parses local Codex rollout files read-only.
Could cleanup delete important data?
ccm doctor --fix only removes data older than 30 days; clean commands support --dry-run previews; sessions can be archived to tar.gz instead of deleted; snapshots exclude credentials — risk is low, but preview before cleaning.

Related skills