dsh-memoryhub:为 DeepSeek Harness 接入 MemoryHub 项目记忆

前言

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;
  • 注册 mh workflow 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_load
  • mh_save
  • mh_status
  • mh_list
  • mh_search
  • mh_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.32
  • Python >= 3.12
  • Node >= 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 --budgetmh(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_loadbudget 参数。

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 提示 allowlist dsh-memoryhub

链接

  • GitHub:https://github.com/solknight48/dsh-memoryhub
  • 目录页:https://www.skillhub.cn/plugins/solknight48/dsh-memoryhub
羽毛球分组比赛记分
小程序二维码

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

小夜