jev-pruner
Claude Code (and Codex) plugin that trims long Bash output chunk by chunk with Jev before it reaches the model, without summarising.
Overview
jev-pruner is a Claude Code plugin, with Codex support, that trims noisy Bash output after the command runs but before the result reaches the main model, reducing what is carried into later turns without generating a summary. Output of 10,000 estimated tokens or fewer passes through untouched without calling Jev. Errors, JSON, XML, YAML, diffs, binary output, whole-document commands such as cat, jq and git diff, and recognised documentation, source code and disassembly are also left alone.
Longer output is split into up to 200 chunks, and Jev gets the context, task, session history, command and chunks with one Noul per chunk: does any line in this chunk need to remain available? Requests are batched under a token budget, with history partitioned rather than truncated when large. A chunk stays if any query scores it at or above the keep threshold or above 0.1, or if it is the first or last chunk, among other protections. The plugin is MIT-licensed.
What the decision model decides
| Type | Question | Answers |
|---|---|---|
| Yes / no | Does any line in this chunk need to remain available? | yes · no |
How it works
- Hook wraps the Bash tool result
- Skip small, error, structured or document outputs
- Split long output into chunks
- Ask Jev one Noul per chunk with session history
- Keep needed chunks and drop the rest before Claude sees it
Strengths
- Cuts context usage from noisy commands
- No generated summary; kept text is verbatim
- Conservative protections for errors, code and structured output
Caveats
- Session history is sent to TypeSafe for scoring
- Dropped lines are not available to later turns
- Requires a TypeSafe key
At a glance
- Type
- Plugin
- Status
- beta
- Language
- TypeScript
- Runtime
- Claude Code plugin (Codex supported)
- Has code
- yes
- License
- MIT
Use cases and integrations
How curated lists describe it
Context management: Claude Code plugin that trims long Bash output with Jev before the model ever sees it, keeping terminal noise out of the window.
yibie/awesome-jevA Claude Code output-pruning plugin filtering selected Bash output before it reaches the main model.
logicrw/awesome-jev-projectsClaude Code plugin: trim long Bash output with TypeSafe Jev before the model…
wh000wh000/awesome-jev-liveClaude Code plugin: trim long Bash output with TypeSafe Jev before the model sees it.
hellogumbo/awesome-jevClaude Code plugin that uses Jev to trim long Bash output before it reaches the model, leaving errors, source code, and structured output untouched.
MrJev/awesome-jev
Frequently asked questions
What does Jev decide?
Whether each chunk of long Bash output contains any line that still needs to be available.
Does it summarise output?
No. It keeps or drops chunks verbatim.
What output is never trimmed?
Short output, errors, structured formats, diffs, whole-document commands and recognised source or docs.
Related projects
Local compaction proxy for Claude Code and Codex that compacts more often with local rules and keeps full history searchable.
ProxybetaGoAgent skill that has Jev pick the few relevant lines from big logs before your coding agent reads them, with a reversible reduce and ledger.
ProjectbetaPythonLocal context-pruning proxy for Claude Code and Codex where Jev decides which history spans can be safely omitted.
ProxyprototypeTypeScriptArchived Go harness finding Jev tool steering does not reliably cut agent tokens in Claude Code or Codex; context trimming helped.
MCP serverresearchGo- 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 Codex hook that compacts large command and tool outputs, using Jev to rank which chunks matter and keeping the full output retrievable.
ServicebetaPython