Skip to content

jev-compaction-plus

Claude Code compaction plugin where Jev decides per old tool result whether to keep it verbatim or move it to a drawer file.

Projectprototype

Overview

jev-compaction-plus replaces Claude Code's /compact summary with a Jev decision. For every old tool result, Jev answers a yes/no question that quotes a preview: does the assistant still need this output word for word? Kept results stay verbatim; dropped results move to a drawer file that Claude can read back, and the session keeps a one-line label pointing to it.

It is a fork of fast-jev-compaction with fixes for very large sessions. User messages, Claude replies, the first message and the newest six messages are always kept. If Jev fails or cannot cut at least 25 percent, the normal summary runs instead. The README reports one 591,489-token session where compaction took 0.43 to 0.74 seconds versus 35.1 seconds for built-in /compact, matching it 6/6 on a recall quiz, and explicitly says this is one example rather than a benchmark.

What the decision model decides

TypeQuestionAnswers
Yes / noDoes the assistant still need this output word for word?—

How it works

  1. Trigger on /compact or auto-compact at 60 percent context
  2. Send conversation and a preview-quoting yes/no question per old tool result to Jev
  3. Keep yes answers verbatim; move no answers to a drawer file with a pointer label
  4. Fall back to Claude Code's normal summary if Jev fails or saves under 25 percent

Strengths

  • README reports compaction in under a second versus about 35 seconds
  • Never calls Opus for compaction
  • Dropped outputs remain recoverable from the drawer

Caveats

  • Results come from one session and one quiz
  • Derived fork; depends on upstream fast-jev-compaction design
  • No licence stated in the sources

At a glance

Type
Project
Status
prototype
Runtime
Claude Code plugin
Has code
yes

Use cases and integrations

How curated lists describe it

  • Claude Code compaction that keeps what is still needed word for word and moves the rest to a draft, derived from fast-jev-compaction.

    MrJev/awesome-jev

Frequently asked questions

What does Jev decide?

Whether each old tool result is still needed word for word.

What happens to dropped output?

It moves to a drawer file and Claude gets a one-line label telling it where to read it.

Is it faster than /compact?

The README reports 0.43 to 0.74 seconds versus 35.1 seconds in one large session.

Related projects

  • Claude Code plugin and npm library that replaces the compaction summary with Jev keep, truncate or drop scores for every tool call.

    PluginbetaTypeScript
  • winnow★ 110

    Calibrated context sieve for Claude Code: Jev judges each block of large tool output and hides confident-no blocks behind recallable stubs.

    Projectbeta
  • Recursive language model layer for coding agents that keeps inputs in a local evaluator, with optional Jev judge_many for typed calls.

    ProjectbetaRust
  • Local proxy for Claude Code that uses Jev to remove stale tool results from the context once it reaches about 120K tokens, failing open.

    ProjectbetaJavaScript
  • Agent plugin that asks Jev whether the session is at a safe boundary to /compact and can trigger it on Pi and Claude Code.

    PluginbetaTypeScript
  • Claude Code /fc command where Jev picks which old tool outputs to keep whole; the rest are trimmed and saved to files.

    ProjectbetaTypeScript