dsh-memory
Durable cross-session memory for DeepSeek Harness: local SQLite FTS5 store, three model-facing tools, and a recall prompt section — no embedding service and no sidecar
安装
npx -p @deepseek-ai/dsh dsh plugin --profile web add github:ben7am1n/dsh-memory说明文档
阅读完整 README ↗dsh-memory
Durable cross-session memory for DeepSeek Harness.
The harness ships no memory plugin. Its extension-cookbook names the mechanism — a prompt section plus tools — but nothing implements it, so every session starts blank. This package fills that gap with one local SQLite file: no embedding service, no API key, no sidecar process.
Install
dsh plugin --profile web add dsh-memory
The shipped bundle row stores memories at $DSH_HOME/memory/memory.db, shared by every profile on the machine.
What it gives the model
| Tool | Purpose |
|---|---|
memory_write | Store one self-contained durable fact, optionally tagged and pinned |
memory_search | Keyword search over memory text and tags |
memory_forget | Delete a memory that is now wrong or obsolete |
Plus a memory:recall prompt section that renders pinned memories first, then the most recently updated, under a character budget. Recall therefore does not depend on the model remembering to search — what it stored is already in front of it, and search is for anything older than the budget allows.
The memory_write description steers the model away from the common failure modes: transient task state (that is what the todo list is for), secrets, and facts the repository already records.
Configuration
- id: memory
name: dsh-memory
config:
path: !!js dshHomePath('memory/memory.db')
promptRecentCount: 10
promptMaxChars: 2000
maxTextChars: 2000
searchLimitDefault: 10
searchLimitMax: 50
promptOrder: 50
| Field | Default | Meaning |
|---|---|---|
path | — (required) | SQLite file, or :memory: for an ephemeral store |
promptRecentCount | 10 | Unpinned recent memories offered to the prompt section |
promptMaxChars | 2000 | Budget for the rendered section; overflow is reported as a count, and pinned memories are emitted first so they survive a tight budget |