
kenz1117/dsh-engram
dsh-engram
Local-first cross-session long-term memory for DeepSeek Harness — 22 narrow tools, hybrid FTS5 + local-vector retrieval, evidence gate, provenance audit, SM-2 review. Zero external services, zero API keys.
Install
npx @deepseek-ai/dsh plugin --profile web add @kenz1117/dsh-engramRestart `dsh web` after install. Bundle APIs can change during the developer preview.
README badge
[](https://dshhub.dev/plugins/dsh-engram)Paste this into your README. The star count updates with every catalog sync.
From the README
Excerpt from kenz1117/dsh-engram, cleaned of badges and images.
dsh-engram · 记忆宫殿
<p align="center"><b>Local-first long-term memory for your coding agent.</b><br> 纯本地 SQLite 的跨会话长期记忆:<b>零外部服务 · 零 API Key · 零 Docker</b>,一条命令装完即用。<br> 23 个窄参数工具 · 混合检索(FTS5 + 本地向量 RRF)· 证据门 · 全链路审计 · SM-2 间隔重复复习 · 面板中英俄文。</p>中文 | English
<b>目录</b>
- 快速开始
- 为什么是它
- 记忆怎么流动
- 界面速览
- 宫殿结构:目录即房间,路径即路线
- 特性
- 工具(23 个,窄参数)
- 配置
- 工作原理
- Web 管理面板
- 开发
- Model Experience
- Known Limitations and Deferred Work
- 路线图
- 致谢
- 许可证
快速开始
dsh plugin --profile web add @kenz1117/dsh-engram
安装后无需配置即可使用(默认分库与模型缓存在 ~/.dsh/engram,画像注入开启,自动摄取关闭)。
让 agent 自己装——把下面这段话贴给任意 agent:
请执行这条命令安装 dsh-engram(DeepSeek Harness 的跨会话长期记忆插件):
dsh plugin --profile web add @kenz1117/dsh-engram
装完后确认插件中心出现「记忆宫殿」侧栏入口,并在新会话里用 engram_stats
确认已注册 23 个 engram_* 工具。
为什么是它
记忆插件不少,但多数要你先准备一整套基础设施。这里是三条主流路线与本插件的对照(对照对象为各项目公开 README 与 npm 依赖声明):
| dsh-engram | 服务端型(Postgres/pgvector/Milvus/Python 服务) | 文件型(纯 Markdown 记忆) | |
|---|---|---|---|
| 安装成本 | 一条 npm 命令,装完即用 | Docker + 数据库 + 向量库 + 迁移 | 一条 npm 命令 |
| 外部依赖 | 无:嵌入模型离线推理,失败自动降级纯关键词并显式标记 | 必装,通常还要 LLM API Key | 无 |
| agent 工具面 | 23 个窄参数工具,覆盖保存/检索/事实链/时间线/审计/导出/蒸馏/信念/复习全生命周期 | 常见 1–3 个(只给检索) | 常见 0–1 个 |
| 证据门 | 有:engram_assess 由代码强制「声称充足 + 本批次有效证据 + nextStrategy=answer」三者齐备才判充足 | 一般无 | 一般无 |
| 审计 | 来源会话/轮次/seq 三级溯源 + 取代链 + 矛盾边 + op_log 全量流水 | 通常只有日志 | 无 |
| 复习 | SM-2 间隔重复:只给坐标与门牌线索,不给正文,先回忆后揭示 | 无 | 无 |
| 注入防护 | 协议标签防提示注入 + 入库脱敏 + 召回占位防自强化回声 | 无 | 无 |
| 可携带 | Markdown / JSON 导出 + Obsidian/Logseq 友好镜像 | 看实现 | 本来就是文件 |
| 界面语言 | zh / en / ru | 看实现 | 一般单语 |
一句话:我们把「记忆」做成一个装完就能用的本地库,而不是一个需要你运维的服务。
记忆怎么流动
会话日志 --+
+--> 摄取 / 保存 --> 写入四态: accept · merge · defer · drop
agent 调用+
|
SQLite 双库: user.db(跟人走)+ project-<hash>.db(跟仓库走)
|
+----------------------+----------------------+----------------------+
v v v
FTS5 关键词道 本地向量道 (RRF) 关系边一跳扩展
+----------------------+----------------------+----------------------+
v
engram_search --> 命中行带 id= / ref= 与批次 id
v
engram_assess(证据门): 不足以回答就继续检索
v
每轮注入画像 <-- 信念 · 事实链 · 实体 <-- 蒸馏 · 巩固 · 衰减 · SM-2
界面速览
今日——记忆宫殿的仪表盘:速览 KPI、半年活动热力、入殿导航、房间目录。
<p align="center"><img src="docs/screenshots/today.png" width="820" alt="今日视图:速览 KPI、活动热力图、房间目录"></p>满宽翻新清单——每条建议完整展示决策理由与记忆原文,就地阅读、就地执行(降级 / 蒸馏合并),不再挤在小卡里靠弹窗补全。
<p align="center"><img src="docs/screenshots/refurb-fullwidth.png" width="820" alt="翻新清单:满宽铺开,理由与原文完整展示,就地执行"></p>陈展——全量记忆库:房间 / 状态 / 内容过滤,行内铭牌展开与取代链编辑。
<p align="center"><img src="docs/screenshots/library.png" width="820" alt="陈展视图:过滤、排序与行内详情"></p>宫殿结构:目录即房间,路径即路线
…

