Configuring dsh-memento
DeepSeek Harness reads the plugin settings from the memento row in cordis.yml. Important defaults include:
| Key |
Default |
Meaning |
enabled |
true |
Enables the service, tools, snapshot, command, panel and answerer |
dbPath |
'' |
Uses $DSH_HOME/dsh-memento/memory.db; relative paths resolve under $DSH_HOME |
writePolicy |
ask |
Accepts ask, auto or off |
language |
en |
Model-visible and command-output language; also accepts zh |
maxEntriesPerQuery |
20 |
Query result cap, hard-capped at 1000 |
auditRetentionDays |
0 |
Keeps audit records forever when 0 |
proposals.enabled |
true |
Captures a proposal after successful compaction |
The hard character budgets default to 2000 for both user layers and 4000 for both agent layers. snapshotOrder defaults to -50; commandListLimit and commandAuditLimit default to 50 and 10. Recall defaults are historyLimitDefault: 8, snippetCap: 5, snippetChars: 300 and windowDays: 30. proposals.maxChars is 2000 and proposals.maxPending is 8.
Commands and surfaces
DeepSeek Harness adds /memory with list, query, add, remove, consolidate, proposals, budgets, audit, export, import <path> and adapters. The memory tool supports add, replace, remove, consolidate and query; memory_recall returns bounded memory and recent session-history matches. The web panel is read-only and shows entries, searches, budget bars and the audit tail.
How dsh-memento behaves
The database uses node:sqlite, WAL and file mode 0600. user and agent tracks each have user-global and workspace layers, isolated per agentPreset. Writes are routed through the approval waterfall in the service. The injected snapshot is written verbatim to request/header.system; approval and audit records support reconstruction of model-visible content.
Requirements and limits
DeepSeek Harness compatibility is 0.1.0-rc.6; Node must be ^22.19.0 || >=24.0.0. Windows, macOS and Linux are supported. The README describes a pure-host implementation with no native code or network. Full budgets return a structured usage-and-limit error: entries are not truncated or automatically compacted.
Written from the project's own documentation and kept in sync with it. Where the two disagree, the source is authoritative — read the README on GitHub