前言¶
DSH 的理念是通过插件扩展智能体能力。dsh-memoryhub 解决的是“项目记忆如何跨会话使用”的问题:它把 MemoryHub 维护的 .memoryhub/ checkpoint 记忆接入 dsh 会话,并把 dsh 会话回存到 MemoryHub。下面介绍它的能力、安装方式与配置点。
这是什么¶
dsh-memoryhub 是 solknight48 维护的 DeepSeek Harness(dsh)插件,许可证为 MIT。
它把 MemoryHub(mh)接入 dsh:
- 会话启动时加载
.memoryhub/下的 checkpoint memory; - 保存 dsh 会话回 MemoryHub checkpoints;
- 注册
mhworkflow skill 和mh_*工具。
核心功能¶
记忆加载与回存¶
MemoryHub 将项目记忆保存为 .memoryhub/ 下 git-versioned checkpoints 中的 purified sessions。
dsh-memoryhub 会在会话启动时在会话工作区运行 mh load,并把 checkpoint memory 注入为 durable plugin context。
mh_save 用于将 dsh 会话保存回 MemoryHub:将 durable event log 渲染为 pi-format JSONL transcript,并通过 mh save --transcript 保存。
注册的工具与 skill¶
插件注册六个 mh_* 工具:
mh_loadmh_savemh_statusmh_listmh_searchmh_checkpoint
它还会注册 mh workflow skill,说明何时加载、如何保存以及 hub rules。
Web UI 的 Memory tab¶
在 dsh web UI 中,插件会增加一个 Memory tab,嵌入 mh ui 的 checkpoint map。
Memory tab 通过下面接口获取会话工作区的 mh ui URL:
GET /plugins/memoryhub/mh-ui?session=<id>
Memory tab 仅在存在 web server 时注册;headless compositions 不会看到该功能。
安装与启用¶
前置条件¶
先安装 mh 并加入 PATH:
uv tool install git+https://github.com/solknight48/memoryhub
运行环境需要:
git >= 2.32Python >= 3.12Node >= 22
插件依赖 @deepseek-ai/schemastery ^3.18.1,并 peer depend 于 @deepseek-ai/cordis ^4.0.1 及多个 ^0.1.0-rc.6 的 dsh 包。
安装插件¶
从 GitHub 安装:
dsh plugin --profile web add github:solknight48/dsh-memoryhub
如果是本地 checkout 安装:
dsh plugin --profile web add ./dsh-memoryhub
Git 安装可能涉及 pnpm prepare 构建。使用 pnpm >= 10 时,首次运行 prepare 前可能需要在 profile 的 pnpm-workspace.yaml 中 allowlist dsh-memoryhub,然后重新执行 add。
配置¶
配置位于:
$DSH_HOME/profiles/<name>/cordis.patch.yml
字段可选,默认值包括:
# 可选字段默认值
# autoLoad: true
# registerTools: true
# registerSkill: true
# uiTab: true
与 UI 相关的配置点:
uiBudget默认为none。需要 memoryhub repo 中支持mh ui --budget的mh(2026-08-14 或以后)。uiReadOnly: true会以只读方式提供 map;mh的 loopback bind、one-shot token、Host check 安全模型保持不变。
典型用法¶
1、确认 mh 已安装并在 PATH 中。
2、执行安装命令,将插件加入 web profile:
dsh plugin --profile web add github:solknight48/dsh-memoryhub
3、开启新会话后,默认 autoLoad 会触发 mh load,把 checkpoint memory 注入会话上下文。
4、如果只想加载能放入 budget 的最新会话,可传 mh_load 的 budget 参数。
5、需要把当前 dsh 会话保存回 MemoryHub 时,使用 mh_save。
6、在 dsh web UI 中通过 Memory tab 查看会话工作区的 mh ui checkpoint map。
适用场景与注意¶
适合已经使用 MemoryHub / mh,并希望把 dsh 会话上下文和项目记忆串起来的开发者。
注意:
- 插件会调用
mh,因此mh必须可执行且版本满足要求。 - 插件以当前 dsh 进程权限运行;安装前应检查源码与许可证。
- 许可证为 MIT。
- Memory tab 依赖 web server,headless compositions 中不可见。
- 如果环境使用
pnpm >= 10,需按 dsh 提示 allowlistdsh-memoryhub。
链接¶
- GitHub:
https://github.com/solknight48/dsh-memoryhub - 目录页:
https://www.skillhub.cn/plugins/solknight48/dsh-memoryhub