前言¶
DSH 插件生态强调「一切皆插件」,社区目录是独立站点,与 DeepSeek / 幻方无官方从属关系。对于需要在多个会话中保留项目约定、用户偏好和阶段性结论的场景,只依赖当前上下文并不方便。dsh-memory-palace 是一个 DeepSeek Harness 插件,把 WorkBuddy 的文件式记忆系统移植进 DeepSeek Harness,为 Harness 提供跨会话持久化、人类可直接编辑的 Markdown 记忆。
下面介绍它的能力、安装方式、典型用法,以及使用前需要注意的事项。
这是什么¶
dsh-memory-palace 由 lovezi0 维护,许可证为 MIT。
它把记忆存放在 Markdown 文件中:
MEMORY.md:长期记忆文件。YYYY-MM-DD.md:每日日志文件。
它支持用户级和工作区级两层记忆,也支持在已有 .workbuddy/memory 或 .codebuddy/memory 的项目中直接读写这些目录,桥接 WorkBuddy / CodeBuddy 记忆。
核心功能¶
Markdown 记忆文件¶
记忆全部存储在 Markdown 文件中,可以用编辑器直接修改。
常见文件包括:
MEMORY.mdYYYY-MM-DD.md
双层记忆¶
插件支持两层记忆:
- 用户级记忆:默认路径为
~/.deepseek-harness/MEMORY.md。 - 工作区级记忆:默认路径为
<cwd>/.deepseek-harness/memory/。
用户级记忆适合保存跨项目个人偏好,工作区级记忆适合保存当前项目的约定和上下文。
每轮读取与写入¶
每轮对话会读取:
- 用户级
MEMORY.md - 工作区
MEMORY.md - 今日日志
YYYY-MM-DD.md
并将相关内容注入 system prompt。
每轮结束会监听 session/event 的 turn/end,经防闲聊闸门后,异步把轻量条目追加到当日日志 YYYY-MM-DD.md。
日志迁移¶
超过保留天数(默认 30 天)的每日日志会自动迁移进 MEMORY.md,然后删除原日志。
WorkBuddy / CodeBuddy 桥接¶
当项目已存在以下目录之一时,插件会直接读写这些目录:
.workbuddy/memory
.codebuddy/memory
这样可以复用已有的 WorkBuddy / CodeBuddy 记忆目录,避免重复维护。
记忆工具¶
插件提供以下工具:
memory_note:把约定或偏好写入当前项目全部目标MEMORY.md。memory_note_user:把跨项目偏好写入~/.deepseek-harness/MEMORY.md。memory_read:一次性读取用户级和项目级记忆、今日日志与最近 3 份历史日志。memory_delete:按内容删除记忆条目,需要两阶段确认,删除动作经 harness 原生确认弹窗硬闸门。
上述工具内置去重,防止重复追加。
hybrid 模式¶
hybrid 模式自 v1.6.0 起引入,支持记忆子代理写今日工作日志,并保留日志作为证据层。
该模式提供以下章节化工具:
memory_writememory_update_sectionmemory_reorganize
用于章节化写入、替换和重整记忆内容。
在 hybrid 模式下,日志永不过期,作为证据层保留。
主动记忆¶
在主动记忆路径(插件模式)下,插件可以引导 agent 在以下场景主动落档:
- 修复
- 验证
- 里程碑
- 偏好
智能模式¶
智能模式(LLM 智能会话摘要)可将会话新增对话增量提炼成摘要,并写入每日日志与 MEMORY.md。
图形化设置¶
DSH 设置中内置「记忆」面板,路径为:
DSH 设置 →「记忆」
所有配置均可图形化调整。
项目说明还提到,配置项(基础 / 自动记录 / 开发 三张卡片的字段、默认值与说明)已整理至 CONFIG.md。
手动蒸馏¶
会话标题栏提供「记忆」按钮,支持手动蒸馏:
- 蒸馏会话
- 蒸馏项目记忆
安装与启用¶
前置要求:已安装 DeepSeek Harness 及其 CLI,且 dsh 命令可用。
资料提供了多种安装方式,可按环境选择。
直接通过 GitHub 安装¶
这条命令会直接把仓库加入指定 profile:
dsh plugin --profile web add github:lovezi0/dsh-memory-palace
如果希望锁定版本,可以使用:
dsh plugin --profile web add github:lovezi0/dsh-memory-palace#v1.6.2-alpha.4
clone 后本地安装¶
适合开发或修改源码的场景:
git clone https://github.com/lovezi0/dsh-memory-palace.git
进入目录并构建:
cd dsh-memory-palace
npm install
npm run build
随后装入 profile:
dsh plugin --profile web add .
通过 npm 安装¶
可以直接由 dsh 从 npm 拉取并装入:
dsh plugin --profile web add dsh-memory-palace
也可以先手动用 npm 安装,再装入:
npm install dsh-memory-palace --registry=https://registry.npmmirror.com/
dsh plugin --profile web add dsh-memory-palace
卸载¶
dsh plugin --profile web remove dsh-memory-palace
典型用法¶
下面列出资料中可复现的读取和写入路径。
读取¶
每轮对话读取以下文件,并注入 system prompt:
用户级 MEMORY.md
工作区 MEMORY.md
今日日志 YYYY-MM-DD.md
写入¶
监听 session/event 的 turn/end,经防闲聊闸门后,异步追加轻量条目到:
YYYY-MM-DD.md
工具调用¶
memory_note:把约定或偏好写入当前项目全部目标MEMORY.md。memory_note_user:把跨项目偏好写入~/.deepseek-harness/MEMORY.md。memory_read:一次性读取用户级和项目级记忆、今日日志与最近 3 份历史日志。memory_delete:按内容删除记忆条目,需两阶段确认。
设置¶
进入:
DSH 设置 →「记忆」
可在这里图形化调整相关配置。
版本与依赖¶
package.json 中 version 为:
1.6.2-alpha.4
peerDependencies 指定了以下依赖版本:
@deepseek-ai/dsh-settings ^0.1.2-alpha.2
@deepseek-ai/dsh-tools ^0.1.2-alpha.2
项目说明还提到:
mian分支已适配 deepseek harness 0.1.2-alpha.2+
旧版本已切换分支归档,见 dsh-v0.1.x
该插件是标准 npm 插件包,经 dsh plugin 装入 profile,cordis.patch.yml 声明 bundle patch。
适用场景与注意¶
这个插件适合以下场景:
- 需要跨会话保留项目约定或个人偏好。
- 希望记忆文件人类可读、可直接编辑。
- 项目中已有 WorkBuddy / CodeBuddy 记忆目录,希望复用。
- 希望用 DSH 设置面板图形化调整记忆相关配置。
- 需要在 agent 修复、验证、里程碑、偏好等场景主动落档。
使用前需要注意:
- 插件以当前
dsh进程权限运行,安装前应检查源码与许可证。 memory_delete需要两阶段确认,删除动作会经 harness 原生确认弹窗硬闸门。hybrid模式下日志永不过期,作为证据层保留。- 项目说明中写有参考
dsh-better-sidebar与dsh-sideband,但本插件实现为各自机制的简化落地,不含其完整功能。
结尾¶
dsh-memory-palace 的价值在于把 DSH 的记忆落到 Markdown 文件中:跨会话可保留,本地可直接编辑,也兼容 WorkBuddy / CodeBuddy 的目录结构。如果你需要在 DeepSeek Harness 中建立一套可检查、可修改、可迁移的记忆层,可以按上面步骤安装并启用。
项目仓库:
https://github.com/lovezi0/dsh-memory-palace