Skip to content

dsh-context-curator

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

Projectbeta

Overview

dsh-context-curator is a drop-in replacement for DeepSeek Harness's basic compaction backend. It inherits the original trigger timing, retention policy, logging and surface replacement and overrides only the summarize hook. Instead of rewriting history into a summary, it asks Jev two questions per tool call: is this call still needed, and does its output need to stay verbatim. Only confidently stale items are removed; user and assistant text is kept word for word.

The core algorithm is ported from fast-jev-compaction. It ships in shadow mode by default (adopt: false), running the full pipeline and logging decisions, probabilities and savings while still returning DSH's own summary, so you can review before enabling. The keep threshold defaults to 0.4, lower than upstream's 0.5, deliberately biasing toward retention. Safety rules keep the first message, recent messages, image results and tool call/result pairs together. It falls back to the native summary when unsure. Documentation is mainly Chinese.

What the decision model decides

TypeQuestionAnswers
Yes / nokeep_call: is this tool call still needed?yes · no
Yes / nokeep_result: does this output need to stay verbatim?yes · no

How it works

  1. DSH triggers compaction as usual
  2. Curator asks Jev keep_call and keep_result per tool pair
  3. Drop or truncate items below 0.4; keep all prose verbatim
  4. In shadow mode log only; with adopt: true use the result if savings are large enough

Strengths

  • Verbatim retention instead of lossy summaries
  • Shadow mode for safe evaluation
  • Conservative default threshold

Caveats

  • Shadow by default; no effect until adopted
  • Chinese-first documentation

Getting started

node tools/link-deps.mjs, node tools/install-preset.mjs, restart DSH and select the context-curator preset.

At a glance

Type
Project
Status
beta
Language
JavaScript
Runtime
DeepSeek Harness compaction plugin
Has code
yes

Use cases and integrations

How curated lists describe it

  • DSH-native context compaction that keeps text verbatim: scores every tool call and result with Jev, drops only the stale ones, and falls back to DSH native summary when unsure.

    hellogumbo/awesome-jev

Frequently asked questions

Does it change behaviour immediately?

No, it runs in shadow mode until you set adopt: true.

Why a 0.4 threshold?

Keeping costs only tokens while wrongly deleting cannot be undone, so it biases toward retention.

Where does the algorithm come from?

It is ported from fast-jev-compaction (MIT).

Related projects

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

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

    ProjectbetaTypeScript
  • DeepSeek Harness port of fast-jev-compaction: Jev keep/truncate/drop verdicts per tool call replace lossy summaries.

    ProjectbetaTypeScript
  • 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
  • Cursor CLI plugin that asks Jev keep-or-drop nouls for each tool call and result, then re-injects kept facts after compaction.

    CLIbetaTypeScript