loading…
Search for a command to run...
loading…
2-5x longer Claude Code sessions before compaction. Saves 30-40% on input token costs. Remembers your rules and corrections so Claude stops repeating mistakes a
2-5x longer Claude Code sessions before compaction. Saves 30-40% on input token costs. Remembers your rules and corrections so Claude stops repeating mistakes after compaction. Auto-runs in the background, just install once and forget about it.
35,000+ power users trust Cozempic to keep their Claude Code sessions lean.
Context cleaning for Claude Code ��� remove the bloat, keep everything that matters, protect Agent Teams from context loss.
Claude Code sessions fill up with dead weight: progress ticks, thinking blocks, stale file reads, duplicate CLAUDE.md injections, base64 screenshots, oversized tool outputs, and metadata bloat. A typical session carries 8-46MB — most of it noise that inflates every API call.
Cozempic removes it with 17 composable strategies across 3 prescription tiers, while your actual conversation, decisions, and working context stay untouched. The guard daemon runs automatically — install once, forget about it.
usage fields, cache hit rate, context % barZero external dependencies. Python 3.10+ stdlib only.
Pick your package manager:
# pip (Python ≥ 3.10)
pip install cozempic
# pipx — isolated user install, always available on PATH
pipx install cozempic
# uv / uvx — no install needed, run on demand
uvx cozempic --help
# Homebrew (macOS / Linux)
brew install Ruya-AI/cozempic/cozempic
# Nix flake
nix profile install github:Ruya-AI/cozempic?dir=packaging/nix
AUR (yay -S cozempic) and MacPorts (port install py-cozempic) submissions are in progress — see packaging/README.md for status and PKGBUILD/Portfile sources.
That's it. Cozempic auto-initializes on first use — hooks are wired globally, guard daemon auto-starts on every Claude Code session. No manual setup needed. Opt out with COZEMPIC_NO_GLOBAL_INIT=1.
Install cozempic (any method above), then inside Claude Code:
/plugin marketplace add Ruya-AI/cozempic
/plugin install cozempic
This gives you MCP tools, skills (/cozempic:diagnose, /cozempic:treat, etc.), and auto-wired hooks.
# Auto-detect and diagnose the current session
cozempic current --diagnose
# Dry-run the standard prescription
cozempic treat current
# Apply with backup
cozempic treat current --execute
# Go aggressive on a specific session
cozempic treat <session_id> -rx aggressive --execute
# Check for session corruption
cozempic doctor
# View behavioral digest rules
cozempic digest show
# Show all strategies & prescriptions
cozempic formulary
| # | Strategy | Tier | What It Does | Expected |
|---|---|---|---|---|
| 1 | compact-summary-collapse |
gentle | Remove all pre-compaction messages (already in the summary) | 85-95% |
| 2 | attribution-snapshot-strip |
gentle | Strip attribution-snapshot metadata entries | 0-2% |
| 3 | progress-collapse |
gentle | Collapse consecutive and isolated progress tick messages | 40-48% |
| 4 | file-history-dedup |
gentle | Deduplicate file-history-snapshot messages | 3-6% |
| 5 | metadata-strip |
gentle | Strip token usage stats, stop_reason, costs | 1-3% |
| 6 | thinking-blocks |
standard | Remove/truncate thinking content + signatures | 2-5% |
| 7 | tool-output-trim |
standard | Trim large tool results (>8KB or >100 lines), microcompact-aware | 1-8% |
| 8 | tool-result-age |
standard | Compact old tool results by age — minify mid-age, stub old | 10-40% |
| 9 | stale-reads |
standard | Remove file reads superseded by later edits | 0.5-2% |
| 10 | system-reminder-dedup |
standard | Deduplicate repeated system-reminder tags | 0.1-3% |
| 11 | tool-use-result-strip |
standard | Strip toolUseResult envelope field (Edit diffs, never sent to API) | 5-50% |
| 12 | image-strip |
aggressive | Strip old base64 image blocks, keep most recent 20% | 1-40% |
| 13 | http-spam |
aggressive | Collapse consecutive HTTP request runs | 0-2% |
| 14 | error-retry-collapse |
aggressive | Collapse repeated error-retry sequences | 0-5% |
| 15 | background-poll-collapse |
aggressive | Collapse repeated polling messages | 0-1% |
| 16 | document-dedup |
aggressive | Deduplicate large document blocks (CLAUDE.md injection) | 0-44% |
| 17 | mega-block-trim |
aggressive | Trim any content block over 32KB | safety net |
| 18 | envelope-strip |
aggressive | Strip constant envelope fields (cwd, version, slug) | 2-4% |
| Prescription | Strategies | Risk | Typical Savings |
|---|---|---|---|
gentle |
5 | Minimal | 85-95% (with compact boundary) |
standard |
11 | Low | 25-45% |
aggressive |
18 | Moderate | 35-60% |
Dry-run is the default. Nothing is modified until you pass --execute. Backups are always created.
The guard daemon monitors your session and prunes automatically:
# Auto-starts via SessionStart hook after cozempic init
# Or run manually:
cozempic guard --daemon
4-tier proactive pruning (every 30s):
| Tier | Threshold | Action | Reload? |
|---|---|---|---|
| Soft | 25% | gentle file cleanup | No |
| Hard | 55% | standard prune | Yes (deferred if agents active) |
| Emergency | 80% | aggressive prune | Yes (forced) |
| User | 90% | manual aggressive | Yes |
Reactive overflow recovery — kqueue/polling file watcher detects inbox-flood overflow within milliseconds, auto-prunes with escalating prescriptions, circuit breaker prevents loops.
tmux/screen — reload resumes in the same pane via send-keys. Plain terminals open a new window.
Token thresholds auto-detect — 200K and 1M models detected automatically. Override with COZEMPIC_CONTEXT_WINDOW=200000 for Pro plan.
Cozempic extracts your corrections and persists them across compactions:
# View extracted rules
cozempic digest show
# Manually extract from current session
cozempic digest update
# Sync rules to Claude Code's memory system
cozempic digest inject
How it works:
~/.claude/projects/<cwd>/memory/)When Claude's auto-compaction fires, Agent Teams lose coordination state. Cozempic prevents this with five layers:
cozempic doctor # Diagnose issues
cozempic doctor --fix # Auto-fix where possible
| Check | What It Detects | Auto-Fix |
|---|---|---|
trust-dialog-hang |
Resume hangs on Windows | Reset flag |
claude-json-corruption |
Truncated/corrupted JSON | Restore from backup |
corrupted-tool-use |
tool_use.name >200 chars |
Parse and repair |
orphaned-tool-results |
tool_result missing matching tool_use — causes 400 errors |
Strip orphans |
zombie-teams |
Stale team directories with dead agents | Remove stale dirs |
oversized-sessions |
Session files >50MB | — |
stale-backups |
Old .jsonl.bak files wasting disk |
Delete old backups |
disk-usage |
Session storage exceeding healthy thresholds | — |
cozempic init Wire hooks + slash command into project
cozempic list List sessions with sizes and token estimates
cozempic current [-d] Show/diagnose current session
cozempic diagnose <session> Analyze bloat sources
cozempic treat <session> [-rx PRESET] Run prescription (dry-run default)
cozempic treat <session> --execute Apply changes with backup
cozempic strategy <name> <session> Run single strategy
cozempic reload [-rx PRESET] Treat + auto-resume in new terminal
cozempic checkpoint [--show] Save team state to disk
cozempic guard [--daemon] Start guard (auto-starts via hook)
cozempic doctor [--fix] Check for known issues
cozempic digest [show|update|clear|flush|recover|inject]
cozempic self-update Upgrade to latest version from PyPI
cozempic formulary Show all strategies & prescriptions
After cozempic init, these hooks are wired automatically:
| Hook | When | What |
|---|---|---|
SessionStart |
Session opens | Guard daemon + digest inject |
PostToolUse[Task] |
Agent spawn | Team checkpoint |
PostToolUse[TaskCreate|TaskUpdate] |
Todo changes | Team checkpoint |
PreCompact |
Before compaction | Checkpoint + digest flush |
Stop |
Session end | Checkpoint + digest flush |
--execute required to modify fileswrite → fsync → os.replace() — no partial writes.jsonl.bak before any modification Prescription: aggressive
Before: 158.2K tokens (29.56MB, 6602 messages)
After: 121.5K tokens (23.09MB, 5073 messages)
Freed: 36.7K tokens (23.2%) — 6.47MB, 1529 removed, 4038 modified
Context: [============--------] 61%
Strategy Results:
compact-summary-collapse 8.17MB saved (85.2%) (4201 removed)
progress-collapse 1.63MB saved (5.5%) (1525 removed)
metadata-strip 693.9KB saved (2.3%) (2735 modified)
tool-use-result-strip 1.44MB saved (4.9%) (891 modified)
thinking-blocks 1.11MB saved (3.8%) (1127 modified)
tool-output-trim 1.72MB saved (5.8%) (167 modified)
...
cozempic reload --session <id|path> escape hatch when auto-detect fails in multi-agent sessions. Previously reload had no way to recover from ambiguous session detection, leaving users stuck. Matches guard --session.--version still prints the old number (the running Python process can't hot-swap its own code)COZEMPIC_NO_TELEMETRY=1 disables anonymous usage countersCOZEMPIC_NO_AUTO_UPDATE, COZEMPIC_NO_TELEMETRY, COZEMPIC_CONTEXT_WINDOW env vars/exit + claude --resume in the same pane[1m] suffix)pip install --upgrade cozempic on every session. MCP/plugin use uv run --upgrade. npm install.js always upgrades.cozempic self-update: force-upgrade from PyPI regardless of install method (pip, uv, editable, clone)tool-result-age strategy — age-based tool result compaction. Recent results stay verbatim, mid-age get JSON minified and diff context collapsed, old replaced with compact stubs. Claude can re-read any file. 10-40% additional savings targeting the 45% of session size that tool results occupy.is_protected() guard on all strategies, isSidechain preserved in envelope-strip, output_tokens in token formula, parentUuid re-linking, sibling tool_use protectioncompact-summary-collapse (85-95%), attribution-snapshot-strip, microcompact-aware tool-output-trimcozempic diagnose shows cache hit rate| Variable | Default | Effect |
|---|---|---|
COZEMPIC_CONTEXT_WINDOW |
auto-detect | Override context window size (e.g. 200000 for Pro plan) |
COZEMPIC_NO_AUTO_UPDATE |
off | Skip automatic version checks. Not recommended — Claude Code ships frequent changes and cozempic updates keep strategies compatible with the latest session format. |
COZEMPIC_NO_TELEMETRY |
off | Skip anonymous usage counters. Cozempic pings a simple counter on each prune — no personal data, session content, or identifiable information is sent. Helps us prioritize development. |
Contributions welcome. To add a strategy:
src/cozempic/strategies/@strategy(name, description, tier, expected_savings)StrategyResult with a list of PruneActionssrc/cozempic/registry.pyMIT — see LICENSE.
Built by Ruya AI.
Добавь это в claude_desktop_config.json и перезапусти Claude Desktop.
{
"mcpServers": {
"cozempic": {
"command": "npx",
"args": []
}
}
}