flymysql/dsh-memory
Cross-session memory vault: remember / recall / forget tools, per-turn prompt injection, and a settings-page entry browser.
Listed
1
Memory
Bundle verified
Preview
What it does
Cross-session memory vault: remember / recall / forget tools, per-turn prompt injection, and a settings-page entry browser.
Best for
- Users who want facts, preferences, decisions, and project notes to persist across DSH sessions.
- Agents that benefit from recent memory entries being injected into every turn automatically.
- Users who want explicit remember, search, and deletion controls through model tools.
- Users who want to browse, add, and remove stored entries from DSH Settings.
Not ideal for
- Stateless or privacy-sensitive workflows that should not retain information across sessions.
- Workflows where automatically injecting recent entries into every turn would add irrelevant context.
- Users who need semantic vector search rather than the documented tag/content matching and recency ordering.
- Environments that cannot use the DSH storage domain and same-origin web endpoints.
README
dsh-memory-vault
Cross-session memory vault for DeepSeek Harness (DSH).
Every DSH session starts from zero. dsh-memory gives your agents a persistent second brain: facts, preferences, decisions, and project notes survive across sessions and are recalled automatically.
-
3 model tools —
memory_remember/memory_recall/memory_forget - Per-turn prompt injection — the most recent entries are injected into every system-prompt assembly, so the agent starts each turn already aware of stored context
-
Durable storage — records live in a storage domain (
dsh_memoryunit, json backend by default; unit names are snake_case perUNIT_NAME_RE) - Browser management page — a “记忆库 / Memory” page in Settings to browse, add, and delete entries
Install
dsh plugin --profile web add dsh-memory-vault
The dsh.bundle manifest wires the dsh-memory row into the profile automatically. To install by hand instead:
npm install dsh-memory-vault
then add a row to your profile cordis.yml (or cordis.patch.yml):
- id: dsh-memory
name: dsh-memory-vault
Usage
Tell your agent to remember things, or do it yourself:
“记住:这个项目的部署目标是 Windows,测试命令是
pnpm test。”
The agent calls memory_remember with optional tags:
memory_remember(content="User prefers Windows deployment; test command is `pnpm test`", tags=["project:demo", "user"])
When context from an earlier session matters, the agent calls memory_recall(query="Windows deploy") — entries are scored by tag matches (×2) and content matches, newest first. Wrong or obsolete facts are removed with memory_forget(id="m-...") or memory_forget(tag="project:demo").
Configuration
| Key | Type | Default | Meaning |
|---|---|---|---|
injectLimit |
int | 8 | Max entries injected per system-prompt assembly |
recallLimit |
int | 10 | Max entries returned by memory_recall
|
- id: dsh-memory
name: dsh-memory-vault
config:
injectLimit: 12
recallLimit: 20
Browser page
Settings → 记忆库 (Memory). Lists all entries newest-first with tags and timestamps; quick-add and delete buttons.
The page talks to the host half through the harness webServer service — same-origin JSON endpoints (GET/POST /dsh-memory/entries). The dynamic-plugin prototype used the sandbox-only harness.handle/host.call package RPC; the published package uses the public route so it works in any deployment.
Development
The plugin is one cordis package:
-
lib/index.js— host half: domain, tools, prompt injection, RPC handlers -
lib/client.js— web half: settings page
License
MIT
Frequently Asked QuestionsFAQ
Use the verified command dsh plugin --profile default add github:flymysql/dsh-memory in a DSH-enabled shell. The command resolves the public package metadata and keeps the plugin attached to the catalog identity shown on this page.
Compatibility follows the bundle and profile status shown above. If a profile is not detected, keep the plugin disabled there and check the repository documentation before enabling it in production.
The GitHub link and activity metadata are the source of truth for releases and maintenance. Revisit this page after a new release to confirm the catalog has observed the latest version.