Skip to content

fast-compact

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

Projectbeta

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

TypeQuestionAnswers
ScoreHow much is this older tool output still needed?(inferred)—

How it works

  1. Run /fc (optionally with a focus)
  2. Protect recent calls and all prose
  3. Jev ranks older large outputs; top ones kept whole
  4. 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.

    ProjectbetaJavaScript
  • Local compaction proxy for Claude Code and Codex that compacts more often with local rules and keeps full history searchable.

    ProxybetaGo
  • Claude Code (and Codex) plugin that trims long Bash output chunk by chunk with Jev before it reaches the model, without summarising.

    PluginbetaTypeScript
  • Scores installed Claude Code skills against the current project with Jev and hides irrelevant ones via skillOverrides.

    Agent skillbetaJavaScript
  • Agent 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