🎁 福利专区全网大模型免费应用 + 新用户福利 + 注册活动入口,低成本玩转 AI

认知记忆运行时 snowfoxHQ/dsh-hmr

DeepSeek Harness
snowfoxHQ15 天前有提交已提供中文文档扫描:含敏感能力

为智能体接入跨会话推理链与反思记忆

29.9/100
综合分
0
GitHub 星标
—
npm 周下载
—/5
用户评分

数据截至 2026/10/21 · 周下载取自 npm 全网(含 CI / 镜像),非本站安装数;综合分由星标、活跃度与兼容性检查合成。

安装命令 · 需先装 dsh CLI 引擎
dsh plugin --profile web add snowfoxHQ/dsh-hmr
该包不可直接 npm 安装,改从 GitHub 源安装(明细见下方安装检查)

状态速览

判定依据:实装验证 · 静态安装检查 · 自动扫描 · 仓库维护状态
信任档位:仅索引
是什么
dsh 原生插件 · chat
装得上吗
本站尚未做安装检查
安全吗
本站尚未对该插件做风险分级
暂未覆盖,不等同于无风险
还在维护吗
活跃:最近一次提交在 15 天前
档位由哪些信号合成

本站实装验证(真实安装 L4 覆盖全站;L5 为运行时冒烟或实机截图,覆盖范围小于 L4) · 验证所用 dsh 版本 · 静态安装检查 · 风险分级 · 仓库维护状态。 下方各区块是它的证据明细。

验证判据与等级说明 →
社区实装还没有人打卡 · 装过的第一个就是你
安全扫描自动 · 静态分析源码
v2.7.0
🔵 扫描:含敏感能力尚无人工评估
展开查看扫描说明与证据 ↓

静态扫描发现插件具备触达本地系统的能力:执行外部命令、读写/删除本地文件、读取剪贴板或密钥类环境变量(至少其一)。这是能力清单,不是危险判定——具体能力项与证据见下方,安装前请自行判断是否需要。

可执行外部命令读写/删除本地文件发起外部网络请求
查看扫描证据(共 10 处,展示前 10 条)
  • 发起网络请求
    packages/hmr-client/src/client.ts:219
    response = await fetch(url, {
  • 执行外部命令来自配置/变量
    plugins/dsh-hmr/src/cli.ts:27
    const output = execFileSync(command, args, { encoding: 'utf8', stdio: ['ignore', 'pipe', 'pipe'] });
  • 读取本地文件
    plugins/dsh-hmr/src/cli.ts:78
    report('bundled runtime', existsSync(script), script);
  • 读取本地文件
    plugins/dsh-hmr/src/cli.ts:79
    report('python root', existsSync(bundledPythonRoot()), bundledPythonRoot());
  • 读取本地文件
    plugins/dsh-hmr/src/cli.ts:103
    if (!existsSync(script)) {
  • 执行外部命令来自配置/变量
    plugins/dsh-hmr/src/cli.ts:109
    const proc = spawn(pythonBin(), [script, ...extra], {
  • 读取本地文件
    plugins/dsh-hmr/src/service-process.ts:51
    return root.length > 0 && existsSync(root);
  • 读取本地文件
    plugins/dsh-hmr/src/service-process.ts:126
    if (!existsSync(script)) {
  • 写入本地文件
    plugins/dsh-hmr/src/service-process.ts:146
    mkdirSync(storagePath, { recursive: true });
  • 执行外部命令来自配置/变量
    plugins/dsh-hmr/src/service-process.ts:162
    const child = spawn(this.options.python, [script], {
扫描于 2026/11/3(1 天前) · 范围 全包扫描 · 来源 GitHub 仓库

静态扫描只反映源码中出现的调用,不构成安全背书;人工评估与自动扫描相互独立、互不覆盖。

依赖的 DSH / Cordis 模块
@deepseek-ai/dsh
给这个插件打分还没有人投票↓
用户评分
还没有人投票,来当第一个

README

由 DeepSeek 最新模型翻译生成
dsh-hmr — dsh-Hestia Memory Runtime 全名:dsh-Hestia Memory Runtime(包名 dsh-hmr,工具前缀 hmr_,可简称 HMR 认知记忆)。 把 HMR 认知记忆运行时接入 DeepSeek Harness (dsh) 的 monorepo。 HMR 提供的不只是「存笔记 + 搜笔记」,还有显式推理链、反思循环、主动遗忘曲线和自我演化。 dsh-hmr 把这些能力包装成 dsh 插件,让 harness 里的智能体拥有跨会话的认知上下文。 名称说明:官方 @deepseek-ai/dsh-hmr 是热更新(hot module replacement),与 dsh-Hestia Memory Runtime 同名不同物,二者无代码关联。
展开完整文档(README 剩余 1 节)
dsh-hmr — dsh-Hestia Memory Runtime

全名:dsh-Hestia Memory Runtime(包名 dsh-hmr,工具前缀 hmr_,可简称 HMR 认知记忆)。

把 HMR 认知记忆运行时接入 DeepSeek Harness (dsh) 的 monorepo。

HMR 提供的不只是「存笔记 + 搜笔记」,还有显式推理链、反思循环、主动遗忘曲线和自我演化。
dsh-hmr 把这些能力包装成 dsh 插件,让 harness 里的智能体拥有跨会话的认知上下文。

名称说明:官方 @deepseek-ai/dsh-hmr 是热更新(hot module replacement),与 dsh-Hestia Memory Runtime 同名不同物,二者无代码关联。

目录结构

monorepo 按「可发布的 dsh 插件」「dsh 技能」「共享库」三类分目录:

dsh-hmr/
├── docs/
│ └── dsh-listing.md # 提交给 dsh 插件目录的条目文案(显示名:dsh-Hestia Memory Runtime) ├── packages/ │ └── hmr-client/ # 共享 TS 库,封装 HMR 的 HTTP 接口(独立 npm 包) ├── plugins/ │ └── dsh-hmr/ # dsh 插件本体,注册 hmr_* 工具(独立 npm 包) ├── skills/ # dsh 技能目录(当前为空,见 skills/README.md) ├── patches/ # 插件依赖但上游未合并的服务端修复,构建时打到副本上 └── vendor/ └── hmr/ # HMR 上游仓库(git submodule,保持 origin 原样) ├── hmr/ # Python 认知运行时 └── service/ # FastAPI HTTP 服务(127.0.0.1:8077)

新增内容时的归属:dsh 插件放 plugins/<name>/,dsh 技能放 skills/<name>/,被多个包复用的库放 packages/<name>/;三者都是 npm workspace,都会随 npm run build/test 一起跑。

vendor/hmr 保持上游纯净:子仓永远停在 origin/main 的某个提交上,不改文件、不打本地提交。
插件确实需要的上游修复放在 patches/.patch,由 scripts/vendor-python.mjs 在复制到 plugins/dsh-hmr/python/ 之后应用到副本上(见 patches/README.md)。
这样 git -C vendor/hmr status 恒为干净,发布物里又包含修复。

架构

dsh agent
│ hmr_ 工具 ▼
plugins/dsh-hmr (Node.js 插件)
│ HTTP + x-hmr-token
▼
vendor/hmr/service (Python · FastAPI · 127.0.0.1:8077)
│
▼
vendor/hmr/hmr (认知运行时:SQLite + 向量索引 + 推理链)

插件默认以 managed 模式拉起 Python 子进程;把 dsh-hmr.process 设为 external 则退化为连接已有服务(适合已经常驻跑着 HMR 的场景)。

快速开始

只想用插件、不想改代码? 不用 clone 本仓库:先装宿主程序 dsh(npm i -g @deepseek-ai/dsh),再 dsh plugin --profile web add dsh-hmr。完整步骤见 plugins/dsh-hmr/README.md。
下面是从源码构建的开发者流程。

1. 拉取 HMR 子模块
git submodule update --init --recursive

2. 安装 Python 依赖(插件通过 PYTHONPATH 直接加载 vendor 源码,无需 pip install -e)
pip install pydantic numpy fastapi uvicorn
pip install sentence-transformers # 可选,缺失时退化为 TF-IDF

3. 安装 Node 依赖并构建
npm install
npm run build

4. 自检 Python 环境与内置运行时
node plugins/dsh-hmr/dist/cli.js doctor

5. 在 dsh 中启用插件
dsh plugin --profile web add ./plugins/dsh-hmr

环境变量

插件会把下列变量透传给 HMR 子进程;embedding 后端完全由你在这里决定:

| 变量 | 默认 | 说明 |
| HMR_STORAGE_PATH | ~/.dsh-hmr/data | 记忆数据目录;盘符不存在时插件会忽略并回退到默认值 |
| HMR_HOST | 127.0.0.1 | 监听地址,不要改成 0.0.0.0 |
| HMR_PORT | 8077 | 服务端口 |
| HMR_TOKEN | 空 | 设置后客户端必须带同名 x-hmr-token |
| HMR_ST_MODEL | all-MiniLM-L6-v2 | 本地 embedding 模型 |
| HMR_OLLAMA_MODEL | 空 | 走 Ollama embedding 时指定模型 |
| OPENAI_API_KEY | 空 | 优先级最高的 embedding 来源 |

优先级:OPENAI_API_KEY > HMR_OLLAMA_MODEL > HMR_ST_MODEL > TF-IDF 兜底。

工具(暴露给智能体)

| 工具 | 作用 |
| hmr_ingest | 写入记忆,可交给 Policy 自动判定类型 |
| hmr_recall | 主动召回,支持 Policy 选策略 |
| hmr_think | 起一条思考链并记录推理步骤 |
| hmr_reflect | 对思考链做反思,产出洞察与建议记忆 |
| hmr_evolve | 运行自我演化周期(支持 dry-run 预览) |

安全

- 服务只绑 127.0.0.1,不要对外开放。
- 不要把抓取来的不可信网页内容直接写进长期记忆(memory poisoning)。
- HMR_TOKEN 建议在多人共用的机器上设置。

开发

git clone --recursive https://github.com/snowfoxHQ/dsh-hmr.git # vendor/hmr 是子模块
npm install
npm run build # 两个包全量构建(插件会先把 vendor/hmr 复制进 python/ 并打 patch)
npm run typecheck
npm test # 两个包的集成测试,会真实拉起 Python 服务

已 clone 但没带 --recursive 时补一步:git submodule update --init --recursive。

全链路回归(用真实 agent 跑一遍 hmr_ 工具):

dsh plugin --profile headless add ./plugins/dsh-hmr
dsh --profile headless "用 hmr_ingest 记录一条记忆,再用 hmr_recall 查回来"

vendor/hmr 是只读上游子模块,不要在子仓里做任何提交。确实需要的服务端修复写成 patches/.patch,由 vendor:python 在复制副本时应用(详见 patches/README.md)。

发布

npm run preflight # npm pack 预检:元数据、tarball 清单、解包后 import 冒烟
npm run release:dry # 干净工作树 + 构建 + 预检 + npm publish --dry-run
npm run release # 真正发布(默认 latest;可加 -- --tag next --otp 123456)

release 按 @dsh-hmr/hmr-client → dsh-hmr 的顺序发布,两个包共用同一个版本号,版本不一致会直接拒绝。发布前会检查该版本是否已存在于 npm,发布后会回查 npm view 确认。

如果本机 npm 指向镜像(npmmirror / taobao 等),脚本会拒绝发布并提示改用官方源:

npm run release -- --registry https://registry.npmjs.org

首次发布前还需要在 npm 上创建 @dsh-hmr scope,并让 registry 指向官方源(镜像只读)。完整的一次性准备、key/2FA 说明、验证命令与错误排查见 RELEASING.md。

License

MIT,与上游 HMR 一致。
预览分享卡片长什么样 ↓snowfoxHQ/dsh-hmr
分享 · DeepSeek Harness Hub
snowfoxHQ/dsh-hmr

为智能体接入跨会话推理链与反思记忆

这是你的仓库?认领条目

回到顶部