context saved
—
Estimated tokens removed by applied compactions
fast-jev-plus replaces Claude Code's lossy compaction summary with verbatim pruning. Stale tool calls and results are removed; every message that stays is kept word for word.
claude plugin marketplace add gaaurav03/Jev-Project
claude plugin install fast-jev-plus@fast-jev-plus
community · all usersanonymous, opt-out usage counts
context saved
—
Estimated tokens removed by applied compactions
active installs
—
Sent at least one event in 30 days
compactions
—
Applied across all users
average reduction
—
Per applied compaction
recorded runs & benchmarksconnecting to run history…
estimated tokens saved
—
Estimated from transcript characters
average reduction
—
Across runs with recorded metrics
critical retention
—
Labelled benchmark information kept
task pass rate
—
Deterministic benchmark verification
Summaries are lossy: a file path, exact error, or constraint can vanish when it matters later. This plugin never rewrites. It only removes tool calls and results that are no longer needed.
/compact, or automatically when context reaches 60%.
Secrets and PII are stripped from the outbound copy. Your transcript is untouched.
jev asks the Jev model about every call in one fast request, or local applies offline rules.
Each call is kept, has its result truncated, or is removed with its result. Recent messages are pinned.
Enough savings: the pruned, verbatim history replaces the summary. Otherwise: Claude's built-in summary.
Deletes whole tool calls or truncates results. Kept messages are the original objects, unchanged.
The Jev model scores every call and result against the whole conversation, with a 30-second timeout.
Deterministic rules with zero network requests. Conservative by design: only old duplicate reads go.
Bearer tokens, API keys, passwords, private keys, emails, and phone numbers are removed before anything is sent.
Errors, timeouts, or savings below the minimum hand off to Claude's built-in summary. Compaction never breaks.
Tokens before and after, reduction, latency, requests, and provider usage when reported. Nothing invented.
npm run bench checks that labelled critical calls survive and that tasks still pass, in both modes.
Every run is appended to .jev/runs.jsonl with decisions, never prompts or tool output.
npm run dashboard serves this page on 127.0.0.1 with per-run decision details.
Function hooks are an early-access Claude Code feature (2.1.274+), so enable them first.
Add this to ~/.claude/settings.json. The API key is only needed for Jev mode.
{
"env": {
"CLAUDE_CODE_ENABLE_FUNCTION_HOOKS": "1",
"TYPESAFE_API_KEY": "<your key, jev mode only>"
}
}
From a terminal, or as slash commands inside Claude Code.
claude plugin marketplace add gaaurav03/Jev-Project
claude plugin install fast-jev-plus@fast-jev-plus
Open /config and set mode to jev (more savings, needs a key) or local (offline, most conservative). Restart Claude Code.
Run /compact, or let it trigger at 60% context. The toast reports the result:
kept 20/140 messages, no summary (98% reduction; 60 call_dropped …)
From a clone of the repository:
npm install
npm run bench -- --mode both # retention + reduction
npm run dashboard # private dashboard on 127.0.0.1
Reduction and latency come directly from recorded runs. Missing values stay visibly unavailable.
No measured runs yet.
| time | mode | before / after | reduction | critical | requests | latency | cost | status |
|---|---|---|---|---|---|---|---|---|
Four labelled cases, run in both modes. Each case marks the calls and results that must survive, then runs a deterministic check that the task still passes.
| case | jev reduction | jev critical kept | local reduction | local critical kept | task |
|---|---|---|---|---|---|
| obsolete-read | 40.3% | 100% | 40.3% | 100% | pass · pass |
| required-error | 69.6% | 0% | 0.0% | 100% | pass · pass |
| repeated-test | 42.4% | 100% | 0.0% | 100% | pass · pass |
| protected-constraint | 64.7% | 0% | 0.0% | 100% | pass · pass |
| total | 52.1% | 50% | 12.7% | 100% | 4/4 · 4/4 |
jev saves about four times more context, but in two of four cases it removed information the benchmark marks as critical. local saves less and kept everything critical. Choose local when exact errors and constraints must survive; the assistant can always re-run a removed tool.
Across benchmark runs uploaded to this dashboard.
Reviewed verification commands passed.
Claude Code's built-in compaction asks a model to summarize old turns. fast-jev-plus keeps the original messages and only removes what is stale.
| capability | claude built-in /compact | fast-jev-plus |
|---|---|---|
| How history shrinks | LLM-written summary | verbatim pruning via Jev or local rules |
| Exact paths, errors, commands | can be lost in the summary | kept unless pruned |
| Works without an extra API key | yes | yes, local mode |
| Secrets redacted before sending | n/a | yes |
| Falls back when savings are small | n/a | yes, to the built-in summary |
| Per-run metrics and history | no | yes |
| Retention benchmark | no | yes |
| Dashboard and public metrics | no | yes |
Community totals come from anonymous, opt-out telemetry. The first compaction only shows a notice; nothing is sent until the next one.
Opt out with JEV_TELEMETRY=0, DO_NOT_TRACK=1, or the plugin's telemetry option in /config. Benchmark runs are never sent.
This page shows constrained metrics only. Token figures are estimates; API usage and cost stay unknown unless the provider reports them.