Skip to content

cursor-clijev-compaction

Cursor CLI plugin that asks Jev keep-or-drop nouls for each tool call and result, then re-injects kept facts after compaction.

CLIbetaMIT

Overview

cursor-clijev-compaction is built for the Cursor CLI agent. Cursor's preCompact hook can only observe, so this plugin captures tool inputs and outputs during the session, scores them with Jev when compaction approaches, and re-injects the kept facts verbatim into the next turn through the stop and sessionStart hooks. Native summarisation still runs; the plugin adds a dense recovery block so file paths, test failures and constraints are not lost to summary drift.

Every non-pinned tool call yields two atomic noul questions: should knowing this call was made stay in context, and should the full output stay verbatim or can it be re-run. Answers at or above 0.5 keep the result, keep only the call with a short head, or drop it. It installs opt-in via --plugin-dir or a cursor-jev wrapper and does not modify the user's global hooks file.

What the decision model decides

TypeQuestionAnswers
Yes / noShould knowing this call was made (and its arguments) stay in context?yes · no
Yes / noShould the full output stay in history verbatim, or can the assistant re-run it?yes · no

How it works

  1. postToolUse hooks capture tool I/O to a local store
  2. preCompact merges transcript and store and sends nouls to Jev
  3. Thresholds at 0.5 decide keep verbatim, keep call only, or drop
  4. stop/sessionStart hooks re-inject the kept facts after compaction

Strengths

  • Keeps exact facts across compaction instead of relying on summaries
  • No changes to global Cursor hooks
  • Small, atomic questions per tool call

Caveats

  • Cursor CLI only
  • Tool outputs are sent to TypeSafe
  • Fixed 0.5 threshold

Getting started

cursor-jev agent -- to start an interactive session with the plugin enabled.

At a glance

Type
CLI
Status
beta
Language
TypeScript
Runtime
Cursor CLI plugin
Has code
yes
License
MIT

Use cases and integrations

How curated lists describe it

  • TypeSafe Jev-scored context recovery for Cursor CLI (agent). Capture tool I/O, score keep/drop, re-inject after native compact.

    logicrw/awesome-jev-projects

Frequently asked questions

What does Jev decide?

Whether each tool call and its output should be kept verbatim, partially kept, or dropped across compaction.

Does it replace Cursor's summary?

No, native compaction still runs; the plugin re-injects kept facts afterwards.

Does it modify my Cursor config?

No, it is opt-in via --plugin-dir or the cursor-jev wrapper.

Related projects

  • MCP server with record and recall tools: facts are logged during a session and Jev keeps only those relevant to the next task.

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

    PluginbetaTypeScript
  • Codex plugin that builds handoff packets by asking Jev whether each old read-only tool record should stay, keeping retained text verbatim.

    ProjectbetaJavaScript
  • DeepSeek Harness plugin that asks Jev which tool results can be pruned early, delaying or avoiding lossy compaction.

    ProjectbetaTypeScript
  • DeepSeek Harness compaction backend that asks Jev which tool calls and outputs to keep, preserving everything else verbatim.

    ProjectbetaJavaScript
  • DeepSeek Harness compaction plugin where Jev decides which tool results are still needed and code writes deterministic receipts.

    ProjectbetaTypeScript