🧠 dsh-memory-db
August 20, 2026 · View on GitHub
为 DeepSeek Harness 打造的项目级记忆数据库插件:自动沉淀每个项目的问答对话,并在每轮对话前智能检索注入相关历史记忆,让 AI 助手真正"记得"你的项目。
✨ 核心特性
- 🔄 静态常驻:普通插件形态(组合加载),随 DSH 启动自动运行,重启不丢、无需批准
- 📁 按项目独立记忆库:每个项目一个独立数据库(
.dsh/memory-db/memory.json),互不干扰;支持项目级独立开关与全局默认值 - 📝 自动收集问答:自动配对用户的提问与模型回答,记录发生时间、所属会话标题及标题演变历史(初始标题 → 于某时变更为新标题)
- 🧭 三态智能分类器:每轮提问先由常驻子代理(B 通道)或主模型内联(A 通道)判断意图——
recall(回忆需求)→ 强制标准注入continue(话题延续)→ 零注入,缓存全连续shift(话题转向)→ 单次任务轻量注入(5%)/ 常规话题标准注入(40%)
- 🔑 关键词直接检索:分类器提炼关键词 → 库内直接匹配 → 按时间近到远排序,精准命中
- 📊 上下文预算化注入:注入上限 ,轻量 ;历史 + 记忆 ≤ 60% 窗口;仅在注入回合触发动态历史压缩,连续对话零损耗
- ♻️ 缓存友好:字节级相同的注入自动去重复用,尾部追加不破坏前缀缓存命中
- 🛡️ 防污染:注入的记忆、网页搜索正文自动排除,不进入记忆库(避免重复记忆);网址链接保留
- 🌐 管理网页:
http://127.0.0.1:3080/memory-db-admin—— 检索 / 筛选 / 增删 / 批量导入导出 / 一键去重 / 会话标题演变面板,一站管理所有项目
🏗️ 工作原理
用户提问
│
▼
┌───────────────────────────────────────────────┐
│ agent/pre-step 钩子 │
│ ① 三态分类器(B 常驻子代理 / A 内联降级) │
│ ├─ recall ──► 强制标准注入(关键词检索) │
│ ├─ continue ─► 不注入(前缀缓存全命中) │
│ └─ shift ──► single=轻量注入 / normal=标准注入│
│ ② 检索命中 → 记忆资料构造(原文近因优先 + 摘要收敛) │
│ ③ 预算控制 → 动态历史压缩(仅注入回合) │
│ ④ 注入「历史记忆参考」消息 → 模型结合记忆作答 │
└───────────────────────────────────────────────┘
│
▼
回合结束 → turn/end 事件 → 问答对自动入库
🚀 使用
安装(静态常驻版,开机自启)
插件以**普通插件(静态组合插件)**形态运行,随 DSH 进程启动自动加载,重启不丢、无需批准:
- 安装包体:将
static/目录内容复制到 DSH profile 的 node_modules:# 示例:web profile Copy-Item static\package.json $env:USERPROFILE\.dsh\profiles\web\node_modules\dsh-memory-db\ Copy-Item static\lib\* $env:USERPROFILE\.dsh\profiles\web\node_modules\dsh-memory-db\lib\ - 注册组合行:在
~/.dsh/profiles/web/cordis.patch.yml追加:- insert: - id: dsh-memory-db name: 'dsh-memory-db' - 重启 DSH(组合变更需重启生效),刷新浏览器页面。
从 v0.1.0 动态版升级:首次启动自动迁移旧开关状态(storageDomain
memory_db域 / 项目config.json→ settings.yaml),现有项目开关与记忆数据不丢失。
开启记忆库
- 会话顶部点击「记忆库」胶囊按钮切换当前项目
- 设置 → 通用配置全局默认开关
- 或调用
memory_admin工具:enable/disable/status
模型侧工具
memory_search:按关键词直接搜索历史问答(问题、回答、时间、会话标题与演变历史)memory_admin:开关管理与状态查看(含生效窗口、预算、分类通道、统计)
管理网页
浏览器打开 http://127.0.0.1:3080/memory-db-admin
- 模糊检索、按项目 / 时间筛选、分页浏览
- 手动添加 / 成对删除 / 批量导入(兼容导出格式)
- 按筛选条件导出 JSON
- 一键去重(问题+回答完全相同)
- 会话标题变更历史面板
📁 项目结构
dsh-memory-db/
├── static/ # 静态常驻版(推荐,开机自启)
│ ├── package.json # npm 包声明(dsh.client 客户端注入)
│ └── lib/
│ ├── index.js # Host: Service 类(收集/分类器/注入/API/管理网页)
│ └── client.js # Client bundle(头部开关/记忆管理/设置项)
├── plugin/ # 动态版源码(原型/历史参考)
│ ├── host.js
│ └── client.js
├── cordis/ # 动态插件构建脚本(开发用)
├── docs/
│ └── 上下文优化改进方案.md # 设计文档(预算 / 分类器 / 缓存策略)
└── README.md
🗺️ 路线图
- 项目级记忆库 + 自动收集 + 关键词搜索
- 三态分类器(recall / continue / shift)+ 双通道(子代理 / 内联)
- 上下文预算化注入 + 动态历史压缩 + 缓存去重
- 管理网页 + 会话标题演变
- 普通插件化,开机自启(静态常驻版 v0.2.0)
- 记忆条目标注 / 手动修正
- 跨项目记忆共享(可选)