dsh-memory:为 DeepSeek Harness 内的模型提供本地长期经验记忆

前言

在 DeepSeek Harness(DSH)里跑智能体时,对话一切换或窗口滚走,模型往往拿不到上一轮已经确认过的做法与教训。云侧记忆方案又要绑厂商、绑格式,也不适合只想在本机留一份可审计 JSON 库的场景。下面介绍社区插件 dsh-memory(维护者 hong1413):它在 Harness 内挂五类工具与一个设置页里的 3D 星图,用本地存储做跨会话检索、经人确认后写入,并用反馈推进成熟度;不依赖 npm 构建,引擎为 Python 3.8+ 单文件脚本。

这是什么

dsh-memory 是 DSH 生态里分类为「记忆」的插件包(package.json 版本 1.2.1,MIT 许可,要求 DSH >=0.2.1-rc.5)。定位是:为运行在 Harness 内的任意 LLM 提供与模型厂商无关的长期「经验记忆」——任务开始前可检索历史,用户确认后可保存教训,可汇报使用效果,并在 Web UI 中以交互式 3D 星图浏览整库。数据默认落在本机目录,无云同步表述。

社区目录页:skillhub.cn/plugins/hong1413/dsh-memory。源码与说明:github.com/hong1413/dsh-memory(截至资料抓取时 GitHub 显示 1 star)。目录站点为社区收录,与 DeepSeek / 幻方无官方从属关系;安装与运行仍以你本机 DSH 与插件源码为准。

核心功能

插件向模型暴露五个工具,设计原则在 README 中写死:写入经 Harness 审批服务、审批不可用则 fail closed;冲突教训保留为成对条目而非静默覆盖;每条有版本、来源与仅由显式反馈驱动的成熟度。

工具 作用(据 README)
memory_search 跨会话检索,返回相关性、置信度、成熟度、前提/反例、冲突、来源、陈旧度等
memory_get 单条全文与元数据
memory_status 数量、归档、待批准提案、成熟度分布、数据路径
memory_save 保存教训(摘要、详情、标签、前提、反例、分数、案例类型、置顶、来源引用等)
memory_feedback 结果 good / bad / neutral,推进成熟度(如 draft → active → trusted,bad 可 flipped)

客户端半部提供 3D star map(设置 → Memory star map):区域为星云、子区为星团、单元为星体;可轨道视角、点击聚焦;待批准提案以可点击「流星」形式落下。Host 提供只读 GET /dsh-memory/starmap.json;批准/驳回走 POST /dsh-memory/proposals,可由 allowUiWrites: false 关闭界面写入。

平台:Windows / macOS / Linux;需已启用 plugin_manager 的 DSH(桌面或 CLI 配置均可)。

安装与启用

安装分两步:拿到插件目录,再让 DSH 按目录装入 bundle。README 说明可用仓库 ZIP 解压,解压后的文件夹即插件包(与 git clone 等价,任选其一即可)。

1. 将 bundle 装入当前 DSH profile

在智能体对话或 Plugins 页面中,使用 plugin_manager 按绝对路径安装:

plugin_manager: install_bundle  target = <absolute path to the dsh-memory folder>

管理器会链接包、应用 cordis.patch.yml,五个工具会出现在模型工具列表中。

2. 首次安装后重启客户端

3D 星图挂在 Web UI;首次安装后需退出并重新打开 DeepSeek Harness 一次。之后若只改 client.js,刷新页面即可。

3. 可选配置

在插件行的 config 中可覆盖默认值;空配置即可工作。示例(字段含义见 README 表格):

- insert:
    - id: dsh-memory
      name: 'dsh-memory'
      config:
        dataDir: 'C:\Users\you\AppData\Local\doubao-memory\data'
        # pythonExe: 'python'
        # timeoutMs: 30000
        # maxResults: 6
        # allowWrites: true
        # requireApproval: true
        # allowUiWrites: true
        # promptHint: true

常用默认:dataDir 在 Windows 为 %LOCALAPPDATA%\doubao-memory\data,其他系统为 ~/.local/share 下对应路径;pythonExe 为 python(Windows)或 python3(macOS/Linux);maxResults 默认 6;requireApproval 默认 true。

安装前建议自行阅读仓库源码与 MIT 许可证:插件以当前 DSH 进程权限运行,会调用本机 Python 执行捆绑的 memory_onefile.py,并在 dataDir 读写 JSON;HTTP 路由仅绑定 Harness Web 服务 127.0.0.1,星图写入需本机人工点击或模型侧审批流。

典型用法

在对话里用自然语言驱动

模型会根据意图调用对应工具,例如 README 中的示意:

Did I write down anything about pricing used cameras?   → memory_search
Remember this: always check the shutter count before buying a used camera.
How did that advice work out? It saved me.              → memory_feedback good

不启动 Harness 时直连引擎(CLI)

在插件目录下对 memory_onefile.py 操作,例如:

python memory_onefile.py remember "Used cameras: check shutter count first" \
  --premise "in-person inspection" --counter "online listings without a hands-on test" \
  --score 0.85 --case-type success --tags camera,used

python memory_onefile.py search "used camera inspection" --json
python memory_onefile.py status
python memory_onefile.py selftest

完整子命令见 python memory_onefile.py --help。

查看存储位置与共享

运行 memory_status,或读 status 输出中的 dataDir。多个 DSH 安装指向同一 dataDir 可共用一份库。

数据与安全注意

数据模型:每个单元一个 JSON,位于 main_library/units/;版本快照、冷归档、提案等分目录存放,README 称布局稳定且可直接备份、diff。

安全相关(摘自 README):模型写入走审批;无审批或无会话上下文时不静默写入;插件不改会话日志、不注册自定义会话事件、不把数据写到 dataDir 外。星图仅本机回环访问;若担心界面误点批准,可设 allowUiWrites: false。只读部署可设 allowWrites: false。

适用谁、不适合谁

适合:在 DSH 里做长期任务、希望模型「先搜经验再动手」、且愿意对写入与 memory_feedback 做人工把关的开发者。也适合需要本地可读 JSON、可追溯成熟度与冲突对的场景。

不适合:需要多用户鉴权、远程共享记忆服务,或不愿在本机常驻 Python 与本地数据目录的环境。FAQ 提到星图页缺失时,多数情况是安装后未重启 Harness 一次。

结尾

dsh-memory 用五工具加星图,把「检索—确认写入—反馈成熟—可视化浏览」收在本机 DSH 插件里,与具体 LLM 提供商解耦。进一步了解可打开社区目录 skillhub.cn/plugins/hong1413/dsh-memory,安装与细节以 github.com/hong1413/dsh-memory 的 README 为准。

羽毛球分组比赛记分
小程序二维码

欢迎使用《羽毛球分组比赛记分》微信小程序

小夜