Preface¶
When building agents in the DeepSeek Harness (DSH) Web environment, contextual memory is often a challenge. By default, conversations are independent and cannot automatically accumulate long-term knowledge. The dsh-simple-memory plugin aims to solve this problem by providing a retrieval-based memory solution built on zero-code storage. Without requiring configuration of a database or vector database, the plugin interacts with the model through the file system, helping developers maintain a structured memory repository alongside their projects.
Plugin Positioning¶
This is an unofficial plugin independently developed by community member a903067276-rgb. It uses Markdown files as the storage medium and leverages the DSH plugin system as the entry point, integrating memory management into the daily conversation flow without disrupting normal workflow.
Core Capabilities¶
Conversation Index Injection¶
Each time a new conversation is started, the plugin injects three parts during the agent/pre-step stage:
1. Current Project Progress: Displays the most recent project status to prevent the model from using outdated information.
2. Last 6 Notes: Automatically retrieves the titles and first-line conclusions of recently edited notes, helping the model quickly associate context.
3. Category Counts and Search Entry: Provides a global or project-level memory overview.
Four-Action Memory Menu¶
Clicking the light bulb icon to the left of the input box opens a four-action menu for directly manipulating memory:
* Recall: Reviews the current dialogue turn, lists candidate content worth remembering (including decisions, pitfalls, and preferences), and writes it after confirmation.
* Promote: Organizes the staging pool (staging.md) and dream pool (dreams.md), and after confirmation promotes them to global or project directories.
* Browse: Views, searches, and reads stored memories in a side panel without consuming a dialogue turn.
* Dream: Randomly samples 3-5 memories, searches for cross-project commonalities, contradictions, or reusable solutions, generates insights, and writes them to the dream pool.
Memory Format and Limits¶
The plugin enforces memory files to follow a specific format: category-topic.md, with a single file size limit of 2KB. This limit keeps memory entries concise and eases retrieval.
Cross-Conversation Search¶
Once full-text indexing is enabled, you can use the session_search feature to search keywords in past conversation records (time, workspace, title, best-matching snippet).
Dream Pool Mechanism¶
dreams.md is used to store generated cross-project insights. These entries include source memories, connections, and target recommendations, and likewise take effect only after manual confirmation and promotion.
Installation and Activation¶
Add the plugin by running the following command in the terminal:
dsh plugin --profile web add "github:a903067276-rgb/dsh-simple-memory#main"
After adding it, restart dsh web. Go to the “Memory” section of the settings page and click “Initialize memory repo” to initialize the memory repository directory structure with one click.
Usage Workflow¶
Daily Memory Recording¶
During a conversation, when you need to record key information, click the light bulb icon to the left of the input box. Choose Recall mode; the model will list candidate entries, and after confirming they are correct, click write. Alternatively, choose Dream mode to have the model generate new insights based on existing memories.
Memory Organization and Promotion¶
In Promote mode, the plugin lists the contents of the staging pool and dream pool. You need to decide where each item should belong (place it in the global common/ directory or in a specific project), then confirm and execute promotion.
Browsing and Searching¶
Click Browse mode to view the memory list in the pop-up panel. The panel supports grouping by project or globally, and provides a search box to quickly locate content.
Working Principles and File Structure¶
The core of the plugin is the file system. The default memory root directory is located at ~/Documents/DSH/memory/ (can be changed in settings).
memory/
├── common/ # 全局经验,跨项目复用
├── projects/ # 按项目分区的记忆
├── references/ # 冷知识库,仅搜索
├── archive/ # 归档区,遗忘的记忆
├── staging.md # 待提升池
└── dreams.md # 梦境洞察池
All memory files are stored in Markdown format. The plugin is responsible for parsing these files and injecting their contents into the DSH context.
Use Cases and Considerations¶
Use Cases¶
- Building agents that require long-term maintenance of project context.
- Reusing experience across multiple projects (such as coding conventions and pitfall records).
- Developers who want to maintain zero configuration and zero database dependencies.
Precautions¶
- Platform Support: macOS is the development and validation environment. Linux and Windows are expected to work but have not been thoroughly tested.
- Dependency Requirements: DSH Web version must be >= 0.1.0-rc.6. Compatibility with older DSH versions is best-effort.
- Git Dependency: Optional. After installing Git, the entire memory root directory is initialized as a Git repository, providing a rollback safety mechanism.
- Unofficial Project: This project is maintained by a community member. Please check the source code and license as needed.