DeepSeek Harness (DSH) agents are stateless across sessions. Context generated during a conversation (project decisions, conventions, debugging techniques) exists only within that conversation and disappears after the session ends. The built-in AGENTS.md is a persistent file, but it is a static, project-level instruction file: agents cannot update it independently, and writing sensitive information such as server addresses or topology into the project directory risks accidental commits.
dsh-workspace-memories is a plugin that provides workspace-level persistent memory for DSH. It creates a separate memory file for each workspace, stores them outside the DSH data directory by default, automatically injects them into the system prompt in every session, and provides a sidebar panel and agent tools to manage memory.
Core Features¶
- Sidebar Management: Use the Workspace Memory sidebar panel to browse, create, edit, or delete memory files.
- Agent Tool: Registers the
save_workspace_memorytool, allowing agents to proactively save new memories during a conversation. - Automatic Injection: The system prompt of every session for a workspace automatically includes the contents of that workspace’s memory files.
- Storage Mode Configuration: Supports two storage modes:
home(default, outside the DSH data directory) andworkspace(inside the project directory).
Installation and Enabling¶
Use DSH’s plugin installation command to add the plugin:
dsh plugin --profile desktop add github:lengfengng-tech/dsh-workspace-memories
After installation, you can find and enable the plugin on the plugin page in the sidebar.
Typical Usage¶
- Create a memory: Open the “Workspace Memory” panel in the sidebar and select “New file” to create a memory file in Markdown format.
- Agent saving: Enter an instruction in the conversation, for example, “remember: this project uses pnpm, not npm”. The agent will call the
save_workspace_memorytool to persist this information. - Configure storage: Set
storage: home(default, stored in the DSH data directory) orstorage: workspace(stored in the workspace directory) through configuration options.
Notes¶
- Session refresh: Tool registration takes effect immediately, but the list of tools visible to the model is built at the start of each session. If a new session is not started after installation or upgrade, the model may not see the
save_workspace_memorytool (especially noticeable in PTC mode). It is recommended to start a new session or send a new message to update the tool list. - Permissions and scope: Operations in the browser panel are limited to the registered
workspaceIdand cannot access arbitrary paths. - File limits:
- File names must be strictly validated and must not contain path separators (such as
/),.., whitespace, or control characters. - The maximum size of a single file is 1 MiB.
- When injecting into the system prompt, each file is truncated to 32K characters, and the total number of memory files is capped at 20.
- File names must be strictly validated and must not contain path separators (such as
- License and nature: This plugin uses the MIT license. It is a community-maintained plugin and not an official DeepSeek product.
Summary¶
dsh-workspace-memories addresses the stateless nature of native DSH and the static, non-updatable limitation of AGENTS.md through external storage and automatic injection. It enables agents to maintain consistency across sessions and allows developers to better control the lifecycle of memories.
- Plugin directory: SkillHub
- GitHub repository: lengfengng-tech/dsh-workspace-memories