Introduction¶
In DeepSeek Harness (DSH) agent development, it is easy to lack project context when continuing tasks across sessions. dsh-project-memory is a DSH plugin used to save documents, code symbols, experience records, and task states as project memory for recall in subsequent sessions.
Below, we introduce its positioning, core capabilities, typical usage, and precautions.
What is it¶
dsh-project-memory is maintained by 00080000, categorized as memory, and licensed under MIT. It provides persistent project memory for dsh agents.
This plugin saves data on disk by project and does not use a vector database. The runtime is pure JavaScript, with the only runtime dependency being pdfjs-dist, used for PDF text extraction.
Core Capabilities¶
Document and Code Symbol Memory¶
The plugin supports memory for PDF, Markdown, and plain text files, with entries coming with path:line citations to facilitate source verification.
It also records code symbols, preserving full type signatures. L1 regex extraction covers generics, parameter/return types, overloads, interfaces, and type aliases.
If typescript is installed in the user’s project, optional TypeScript semantic enhancement (L2/L3) can be enabled. Before enabling, you can install TypeScript within the project:
npm i -D typescript
If this enhancement is not needed, the configuration option can be disabled:
enableTypeScript: false
Auto-refresh and Read-time Memory¶
The plugin uses watch_repo to detect changes in content hashes, automatically refreshing newly added or modified files.
Read-time memorization also occurs when files are observed/read by the model, meaning memory is generated during normal development reads rather than requiring a full pre-scan.
Cross-linking is established between documents and code symbols.
Recall and Experience Records¶
Use query_memory to search documents, symbols, and experience notes. Recall is based on BM25 and includes CJK optimization.
Recall results come with path:line citations to verify the source. When a blind spot is hit, query_memory provides blindSpots-aware recall warnings, suggesting that reading the source file is necessary.
Experience records use problem → solution superseding to avoid the accumulation of similar problems. The experience library has a bounded capacity, with project-size capacity limited to 100–2000.
Cross-session Tasks¶
TaskBridge is used for cross-session development tasks. When resuming in a new session, first call list_tasks, then call select_task to perform bind, rename, or unarchive.
query_memory can be used with a task type:
type: 'task'
If using the all type:
type: 'all'
Results will be appended with a task-count hint.
On the user side, the /tasks command can be used to view the task stack, step progress, involved files, and current session binding.
Typical Usage¶
- Read project files in the current session. The plugin performs read-time memorization when files are observed by the model.
- Call
query_memorywhen a query is needed to search documents, symbols, or experience notes. - Verify the
path:linecitations of the returned entries, then check back in the source files. - If continuing a previous development task, first call
list_tasks, then callselect_taskto bind, rename, or unarchive. - Use
/taskson the user side to view the current task stack, step progress, involved files, and current session binding.
Installation and Enablement¶
Current documentation does not provide verifiable official installation commands, so no concatenated command is provided here. You can visit the plugin directory page and GitHub repository to view plugin information:
https://dsh-plugin.org/plugins/00080000/dsh-project-memory
https://github.com/00080000/dsh-project-memory
The runtime environment requires Node >= 18. If TypeScript semantic enhancement is enabled, typescript needs to be installed in the user project; if it is not needed, enableTypeScript: false can be set.
Use Cases and Precautions¶
Suitable for use in DSH agent development projects that require persistent project memory, document/code symbol recall, experience records, and cross-session tasks.
Precautions:
- The plugin runs with the current DSH process permissions; check the source code and license before installing.
- All data is saved on the project disk; confirm directory permissions and cleanup strategies before use.
- TaskBridge auto-sync requires DSH build with session events +
todo_write; verified sources mention verification on0.1.2-alpha.x. On older hosts, task tools can still be used as a plain record list. - When recall warnings indicate a blind spot, you should return to the source file to verify, rather than relying solely on partial summaries.
Related Links¶
Plugin Directory Page:
https://dsh-plugin.org/plugins/00080000/dsh-project-memory
GitHub Repository:
https://github.com/00080000/dsh-project-memory