fast-compact
Claude Code /fc command where Jev picks which old tool outputs to keep whole; the rest are trimmed and saved to files.
Overview
fast-compact adds a second, fast compaction command to Claude Code. /fc shrinks old tool output in about a second while Claude Code's own /compact stays untouched for when the conversation itself needs summarising. The newest ten tool calls and everything written by you or Claude are left alone. Older outputs longer than about 2,000 characters are ranked by Jev, and those rated still needed stay whole, up to a quarter of the old output.
The rest are cut to their first 1,000 and last 500 characters with a marker pointing to a file holding the full text, saved before anything is cut, so Claude can read details back; in testing it did so with one grep. Long old inputs and reminders are trimmed too, and no tool call is removed. If Jev is unreachable or no key is set, the newest outputs are kept whole instead and the report explains why; it never falls back to the built-in summary. The example run shows one request, 0.6 seconds and $0.0002.
What the decision model decides
| Type | Question | Answers |
|---|---|---|
| Score | How much is this older tool output still needed?(inferred) | — |
How it works
- Run /fc (optionally with a focus)
- Protect recent calls and all prose
- Jev ranks older large outputs; top ones kept whole
- Trim the rest to head and tail and save full text to files
Strengths
- About one second and very low cost per run
- Nothing lost; full text saved to disk
- Leaves /compact untouched
Caveats
- Claude Code only
- Tool outputs sent to TypeSafe
Getting started
Install the plugin in Claude Code per the README, set a TypeSafe key, then run /fc.At a glance
- Type
- Project
- Status
- beta
- Language
- TypeScript
- Runtime
- Claude Code plugin
- Has code
- yes
Use cases and integrations
How curated lists describe it
/fc for Claude Code: shrink old tool output in about a second — Jev keeps…
wh000wh000/awesome-jev-live/fc for Claude Code: shrink old tool output in about a second — Jev keeps what's still needed, every cut saved to a file. Your /compact stays untouched.
hellogumbo/awesome-jev
Frequently asked questions
Does it replace /compact?
No, it is a separate command; /compact is unchanged.
What does Jev decide?
Which older tool outputs are still needed and should stay whole.
Is cut content lost?
No, the full text is saved to files Claude can read.
Related projects
- 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 Local proxy for Claude Code that uses Jev to remove stale tool results from the context once it reaches about 120K tokens, failing open.
ProjectbetaJavaScriptLocal compaction proxy for Claude Code and Codex that compacts more often with local rules and keeps full history searchable.
ProxybetaGoClaude Code (and Codex) plugin that trims long Bash output chunk by chunk with Jev before it reaches the model, without summarising.
PluginbetaTypeScriptScores installed Claude Code skills against the current project with Jev and hides irrelevant ones via skillOverrides.
Agent skillbetaJavaScriptAgent skill that has Jev pick the few relevant lines from big logs before your coding agent reads them, with a reversible reduce and ledger.
ProjectbetaPython