flymysql/dsh-memory

DeepSeek Harness 跨会话记忆库:memory_remember/recall/forget 三个工具 + 系统提示注入,agent 持久化记忆

Project Overview项目介绍

dsh-memory is a native DSH plugin built exclusively for DeepSeek Harness, designed to add persistent cross-session memory to DSH agents. It solves the core limitation of vanilla DSH, where every new chat session starts with no saved context from past conversations. The plugin exposes three model tools: memory_remember, memory_recall, and memory_forget, and automatically injects the most recent stored memory entries into every system prompt turn. It can be installed in one command via the DSH CLI, or installed manually via npm, with a simple configuration entry added to your cordis profile to enable it.

The plugin works for all DSH users, whether you are working on long-running projects or just want to save your user preferences across multiple chat sessions. To use it, you can simply tell your agent what you want it to remember, and the agent will call the memory_remember tool to store the entry with optional tags for easier retrieval later. When you return to a related topic in a new session, the agent will automatically recall relevant entries and inject them into the current prompt. You can also browse, add, or delete entries directly via the dedicated Memory management page in DSH settings.

dsh-memory is released under the permissive MIT license, so it is free to use, modify, and distribute for any purpose. It has no external dependencies beyond the base DSH framework, so it works out of the box right after installation. Users can customize two core configuration parameters: injectLimit, which sets the maximum number of memory entries injected per prompt, and recallLimit, which sets the maximum entries returned by a recall query. The default values are 8 and 10 respectively, which work well for most common use cases.

flymysql/dsh-memory 是一款专为 DeepSeek Harness(DSH)开发的原生跨会话记忆插件,核心功能是为 DSH 代理提供持久化记忆存储,解决了原生 DSH 每次会话从零开始的问题,让代理能够在多次会话间保留事实信息、用户偏好、项目决策与笔记等内容。它提供三个工具接口:记忆存储、记忆检索、记忆删除,支持每轮系统提示自动注入最新记忆,默认用 JSON 后端将数据存在 DSH 存储域,还自带设置页的可视化管理入口。

这款插件面向所有 DSH 用户,支持两种安装方式:使用 DSH 内置命令行可以一键执行 dsh plugin --profile web add dsh-memory-vault 完成自动配置,也可以通过 npm 安装包安装后,手动在个人配置文件中添加插件条目完成部署。用户可以直接在对话中要求代理记住信息,也可以进入设置页面的记忆管理面板,手动添加、浏览或删除已存储的记忆条目,代理会自动匹配相关记忆检索并注入当前对话。

插件遵循 MIT 开源许可协议,完全免费使用,支持用户自定义配置单轮提示最多注入记忆条数和单次检索最多返回记忆条数,默认分别为 8 条和 10 条。它的架构清晰,分为宿主端的逻辑处理部分和前端设置页部分,方便二次开发,没有额外的外部依赖,用户安装后即可直接使用,仅需要根据自身需求调整配置参数即可。

Pre-install check安装前体检Compatibility · Security兼容性 · 安全性 1 warning1 项注意
  • Only 5 stars - very few users, little community feedback星标只有 5,几乎没人在用,遇到问题缺少社区反馈
DSH walks through these 9 checksDSH 会逐条核对这 9 项

Compatibility兼容性

  • DSH, Node, OS and profile requirementsDSH 版本 / Node 版本 / 操作系统 / profile 是否满足要求
  • External dependencies and runtimes (Electron / Python / Docker, ...)外部依赖与运行时(Electron / Python / Docker 等)是否齐备
  • Conflicts with installed plugins: command names, skill / tool names, ports, duplicate MCP registration与已装插件是否冲突:命令名、skill / tool 重名、端口占用、重复 MCP 注册

Security安全性

  • Repo matches the facts registered here; archived or abandoned?仓库是否与页面登记一致,是否归档或长期停更
  • Safety of preinstall / install / postinstall and install.sh / setup.ps1preinstall / install / postinstall 与 install.sh、setup.ps1 是否安全
  • curl|bash, download-then-execute, obfuscation, unrelated domains → stop immediatelycurl|bash、下载即执行、混淆代码、无关域名 → 立刻停止
  • Typosquatting or unmaintained packages among the new dependencies新增依赖里有没有 typosquatting 或无人维护的包
  • Requested permissions vs. what the feature actually needs申请了哪些权限、是否超出功能所需(filesystem / network / shell / clipboard)
  • Any sudo / admin requirement, plus uninstall and rollback是否要求 sudo / 管理员权限,以及卸载与回滚方式

Anything uncertain must be marked unknown with a note on how to confirm it. This site's signal screen is a static snapshot, not a security audit.拿不准的必须标「未知」并说明要我怎么确认。本站的信号筛查是静态快照,不能替代安全审计。

Or use CLI install (for developers)或使用命令行安装(适合开发者)

CLI Install命令行安装

dsh plugin --profile web add dsh-memory-vault

把 flymysql/dsh-memory 加入你的 DSH 配置(web profile)即可启用。

READMEREADME

dsh-memory-vault

npm version license

Maintained by @flymysql · Blog · Issues

Cross-session memory vault for DeepSeek Harness (DSH).

Every DSH session starts from zero. dsh-memory gives your agents a persistent second brain: facts, preferences, decisions, and project notes survive across sessions and are recalled automatically.

  • 3 model tools — memory_remember / memory_recall / memory_forget
  • Per-turn prompt injection — the most recent entries are injected into every system-prompt assembly, so the agent starts each turn already aware of stored context
  • Durable storage — records live in a storage domain (dsh_memory unit, json backend by default; unit names are snake_case per UNIT_NAME_RE)
  • Browser management page — a "记忆库 / Memory" page in Settings to browse, add, and delete entries

Install

dsh plugin --profile web add dsh-memory-vault

The dsh.bundle manifest wires the dsh-memory row into the profile automatically. To install by hand instead:

npm install dsh-memory-vault

then add a row to your profile cordis.yml (or cordis.patch.yml):

- id: dsh-memory
  name: dsh-memory-vault

Usage

Tell your agent to remember things, or do it yourself:

"记住:这个项目的部署目标是 Windows,测试命令是 pnpm test。"

The agent calls memory_remember with optional tags:

memory_remember(content="User prefers Windows deployment; test command is `pnpm test`", tags=["project:demo", "user"])

When context from an earlier session matters, the agent calls memory_recall(query="Windows deploy") — entries are scored by tag matches (×2) and content matches, newest first. Wrong or obsolete facts are removed with memory_forget(id="m-...") or memory_forget(tag="project:demo").

Configuration

Key Type Default Meaning
injectLimit int 8 Max entries injected per system-prompt assembly
recallLimit int 10 Max entries returned by memory_recall

Showing the opening section of the README — the full document lives in the repository以上为 README 开头摘要,完整文档在仓库内 · View the full README on GitHub →在 GitHub 查看完整 README →

← 上一个 Prev DSH-Office 下一个 Next dsh-skill-manager →