Back to home@cuteG41cute

dsh-memory-db

🧠 Project memory database plugin for DeepSeek Harness — 为 AI 助手沉淀项目级问答记忆,三态分类智能注入历史上下文

Stars
0
Language
JavaScript
Created
Aug 19, 2026
Updated
Aug 19, 2026

Introduction

🧠 dsh-memory-db

DeepSeek Harness 打造的项目级记忆数据库插件:自动沉淀每个项目的问答对话,并在每轮对话前智能检索注入相关历史记忆,让 AI 助手真正"记得"你的项目。

✨ 核心特性

  • 📁 按项目独立记忆库:每个项目一个独立数据库(.dsh/memory-db/memory.json),互不干扰;支持项目级独立开关与全局默认值
  • 📝 自动收集问答:自动配对用户的提问与模型回答,记录发生时间、所属会话标题及标题演变历史(初始标题 → 于某时变更为新标题)
  • 🧭 三态智能分类器:每轮提问先由常驻子代理(B 通道)或主模型内联(A 通道)判断意图——
    • recall(回忆需求)→ 强制标准注入
    • continue(话题延续)→ 零注入,缓存全连续
    • shift(话题转向)→ 单次任务轻量注入(5%)/ 常规话题标准注入(40%)
  • 🔑 关键词直接检索:分类器提炼关键词 → 库内直接匹配 → 按时间近到远排序,精准命中
  • 📊 上下文预算化注入:注入上限 min(40% × 窗口, 可用),轻量 min(5% × 窗口, 可用);历史 + 记忆 ≤ 60% 窗口;仅在注入回合触发动态历史压缩,连续对话零损耗
  • ♻️ 缓存友好:字节级相同的注入自动去重复用,尾部追加不破坏前缀缓存命中
  • 🛡️ 防污染:注入的记忆、网页搜索正文自动排除,不进入记忆库(避免重复记忆);网址链接保留
  • 🌐 管理网页http://127.0.0.1:3080/memory-db-admin —— 检索 / 筛选 / 增删 / 批量导入导出 / 一键去重 / 会话标题演变面板,一站管理所有项目

🏗️ 工作原理

用户提问
  │
  ▼
┌───────────────────────────────────────────────┐
│ agent/pre-step 钩子                            │
│  ① 三态分类器(B 常驻子代理 / A 内联降级)        │
│     ├─ recall  ──► 强制标准注入(关键词检索)      │
│     ├─ continue ─► 不注入(前缀缓存全命中)        │
│     └─ shift    ──► single=轻量注入 / normal=标准注入│
│  ② 检索命中 → 记忆资料构造(原文近因优先 + 摘要收敛) │
│  ③ 预算控制 → 动态历史压缩(仅注入回合)            │
│  ④ 注入「历史记忆参考」消息 → 模型结合记忆作答      │
└───────────────────────────────────────────────┘
  │
  ▼
回合结束 → turn/end 事件 → 问答对自动入库

🚀 使用

安装

当前版本以 DeepSeek Harness 动态插件(Cordis)形式运行;DSH 重启后需要重新激活。普通插件化(开机自启)正在开发中

开启记忆库

  • 会话顶部点击「记忆库」胶囊按钮切换当前项目
  • 设置 → 通用配置全局默认开关
  • 或调用 memory_admin 工具:enable / disable / status

模型侧工具

  • memory_search:按关键词直接搜索历史问答(问题、回答、时间、会话标题与演变历史)
  • memory_admin:开关管理与状态查看(含生效窗口、预算、分类通道、统计)

管理网页

浏览器打开 http://127.0.0.1:3080/memory-db-admin

  • 模糊检索、按项目 / 时间筛选、分页浏览
  • 手动添加 / 成对删除 / 批量导入(兼容导出格式)
  • 按筛选条件导出 JSON
  • 一键去重(问题+回答完全相同)
  • 会话标题变更历史面板

📁 项目结构

dsh-memory-db/
├── plugin/                  # 插件源码(Host / Client)
│   ├── host.js              # Host 半部:收集 / 分类器 / 注入 / 管理网页 API
│   └── client.js            # Client 半部:头部开关 / 记忆管理菜单 / 设置项
├── cordis/                  # 动态插件构建脚本(开发用)
├── docs/
│   └── 上下文优化改进方案.md  # 设计文档(预算 / 分类器 / 缓存策略)
└── README.md

🗺️ 路线图

  • 项目级记忆库 + 自动收集 + 关键词搜索
  • 三态分类器(recall / continue / shift)+ 双通道(子代理 / 内联)
  • 上下文预算化注入 + 动态历史压缩 + 缓存去重
  • 管理网页 + 会话标题演变
  • 普通插件化,开机自启(进行中)
  • 记忆条目标注 / 手动修正
  • 跨项目记忆共享(可选)

📄 License

MIT