Skip to content

dsh-engram

DeepSeek Harness memory-palace plugin with spaced recall; an optional Jev layer judges ambiguous merge, keep or defer cases.

Pluginbeta

Overview

dsh-engram is a long-term, cross-session memory plugin for DeepSeek Harness built on the information architecture of a memory palace: each memory is pinned to a room and slot coordinate, tour routes only grow, the same topic always lands in the same place, and labels must be unique, differentiated and dated. It adds spaced-repetition recall practice that shows only cues, a knowledge flywheel, hybrid full-text and local-vector retrieval, separate user and per-project stores, and a web management panel. It is pure TypeScript with no external processes.

Jev plays an optional role since v0.7.12, off by default: ambiguous cases in the defer band (merge, allow or shelve) and confirmation of contradiction edges can be sent to Jev, with silent fallback to pure rules when Jev is unavailable, never blocking writes. Each verdict is logged for inspection in the panel. Documentation is mainly Chinese.

What the decision model decides

TypeQuestionAnswers
ChoiceFor this ambiguous new memory, should it be merged, allowed, or shelved?merge · allow · shelve
Yes / noDo these two memories contradict each other?(inferred)yes · no

How it works

  1. Agent saves a memory; rules classify it
  2. Ambiguous cases optionally go to Jev for a three-way verdict
  3. Fallback to rules if Jev is unavailable
  4. Store at a palace coordinate and schedule spaced recall

Strengths

  • Structured, inspectable memory layout
  • Jev optional with safe fallback
  • Local embeddings, no Python

Caveats

  • Jev is a minor, opt-in component
  • Chinese-first documentation

Getting started

dsh plugin --profile web add @kenz1117/dsh-engram.

At a glance

Type
Plugin
Status
beta
Language
TypeScript
Runtime
DeepSeek Harness plugin
Has code
yes

Use cases and integrations

How curated lists describe it

  • DeepSeek Harness memory plugin built on the memory-palace layout - fixed locations as the index, routes that only grow - with cue-only spaced recall. Chinese.

    MrJev/awesome-jev

Frequently asked questions

Is Jev required?

No, it is off by default and used only for ambiguous merge decisions.

What happens if Jev fails?

The plugin silently falls back to its rule-based states and never blocks writes.

How is memory organised?

As a memory palace of rooms and fixed slots with append-only tour routes.

Related projects

  • Personal AI assistant with eight memory types and multi-channel support; per the list, it has an optional Jev provider.

    Projectproduction
  • Android AI chat client and SillyTavern-compatible endpoint where Jev screens memories for relevance and serves as a judge tool.

    LibraryproductionKotlin
  • Federated knowledge retrieval engine for agents that uses Jev to route queries to backends and re-rank evidence, with keyword fallback.

    LibraryprototypePython
  • 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