jisi71/dsh-memories
dsh-memories
Dual-ledger cross-session memory for DeepSeek Harness: auto-extracted long-term facts (MEMORY.md) + living project progress ledger (PROGRESS.md), recalled into every new session. Inspired by OpenAI Codex's memory pipeline.
Install
npx @deepseek-ai/dsh plugin --profile web add dsh-memoriesRestart `dsh web` after install. Bundle APIs can change during the developer preview.
README badge
[](https://dshhub.dev/plugins/dsh-memories)Paste this into your README. The star count updates with every catalog sync.
From the README
Excerpt from jisi71/dsh-memories, cleaned of badges and images.
dsh-memories
Dual-ledger cross-session memory for DeepSeek Harness.
Inspired by the memory pipeline of OpenAI's open-source Codex agent, dsh-memories gives every new session in a project two living ledgers:
| Ledger | File | Answers |
|---|---|---|
| Long-term facts | .dsh/memories/MEMORY.md | "What are this project's conventions, the user's preferences, past pitfalls?" |
| Project progress | .dsh/memories/PROGRESS.md | "Where are we? What's done? What's in progress? What's next?" |
Both are maintained automatically and recalled into the system context of every new conversation — no re-briefing required.
Features
- Automatic extraction — on each new session (throttled to once per 30 minutes), recent sessions from the same workspace (last 14 days, up to 2 per run) are summarized by an LLM into:
- stable facts in four fixed categories: preference / project / environment / lesson
- progress movements: completed / doing / next
- Strict no-op gate — one-off task details, code dumps, and secrets are never recorded; sessions with nothing worth keeping produce nothing.
- LLM consolidation — drafts are merged and rewritten into clean, deduplicated, sectioned ledgers (with automatic
.bakbackups). - Recall injection — ledger contents ride along in the system prompt of every new session (inline when small, with a file pointer when large).
- Decay — consolidation drops stale entries (30 days unconfirmed) unless marked
pinned. - Model tools & slash commands —
remember/update_progresstools let the agent write proactively;/remember,/progress,/memoriesgive humans direct control. - Failure-safe — LLM failures leave no trace in state; affected sessions are retried automatically next round.
Requirements
A DeepSeek Harness deployment that provides the standard host-plane services:
fs · llm · sessionQuery · systemPrompt · tools · commands · sandboxPolicy
(all ship with the default dsh-base bundle; tested on dsh 0.1.0-rc.9)
Install
Option 0 — one line via dsh plugin add (recommended)
dsh plugin --profile web add dsh-memories
The plugin manager reads this repo's bundled `cordis.patch.yml) and wires everything for you. Needs a release that ships the bundle manifest -- the current npm 0.1.2 predates it, so until the next publish, use Option A.
Option A — npm package into your profile
cd ~/.dsh/profiles/web # or whichever profile you run
npm install <git-url-or-tarball> # places dsh-memories into ./node_modules
Then append a row to ~/.dsh/profiles/web/cordis.patch.yml. Reference the entry file by relative path — the proven pattern in pnpm-managed profiles (bare package names in patch rows are not reliably resolved):
- insert:
- id: dsh-memories
name: './node_modules/dsh-memories/lib/index.js'
Alternatively, register it npm-natively: add "dsh-memories": "*" to the profile package.json dependencies, add "dsh-memories" to dsh.profile.bundles, run pnpm install, and skip the patch row entirely.
Option B — copy the folder
Copy this repository folder into ~/.dsh/profiles/web/node_modules/dsh-memories, then add the same patch row as above.
Restart DSH once. Done — the plugin loads at boot and works silently afterwards.
…

