graph-memory
知识图谱记忆插件:跨会话可追溯、可检索的 agent 长期记忆
安装
dsh plugin --profile web add github:adoresever/graph-memory 界面预览 5
graph-memory
压缩回答”这段对话还剩多少装得下”,记忆回答”过去的哪些知识现在值得想起”——给 DSH 装上可追溯、可检索的跨会话长期记忆。
解决什么问题
传统对话式 agent 靠压缩与回放历史维持上下文:压缩丢细节,回放又让上下文越来越长、越来越贵。graph-memory 换了一条路:把可复用会话知识沉淀成带类型的知识图谱,新问题到来时只检索相关局部子图,而非把整段历史塞回提示词。在一个安装、鉴权、查询 bilibili-mcp 的七轮基准里,第 7 轮 token 从 95,187 降到 23,977,约省 75%(场景级对比,非通用承诺)。
它把会话拆成三类节点:TASK(目标与执行)、SKILL(验证过的方法)、EVENT(错误 / 修复 / 决策 / 变更),用 USED_SKILL、SOLVED_BY、REQUIRES、PATCHES、CONFLICTS_WITH 等类型边连起来。每条记忆都保留来源会话与图谱边,“为什么想起这条”可解释、可追溯。
核心功能
- 原生宿主集成:经 DSH/Cordis 插件生命周期加载(非 MCP 旁路),接线 Session、Tool、Agent Loop 与 Prompt Assembly 等接缝,不 fork 也不改 DSH 核心
- 跨会话持久记忆:A 会话的知识可在 B 会话自动召回,重启不丢,事件 ID 保证恢复幂等
- 语义 + 词法双路召回:语义向量检索配 FTS5 词法兜底,辅以社区发现、PageRank 与有界图遍历,只注入相关局部子图
- 本地优先、轻量:默认 SQLite、无需图数据库;embedding 可选(OpenAI 兼容,DashScope / OpenAI / 本地),不配则回退 FTS5
- 可观测可校验:
gm_status查看存储路径、图规模、向量覆盖与维度,模型 / 维度变化会触发重新向量化 - 显式工具:
gm_search显式检索、gm_record确定性记录关键知识、gm_stats统计节点边与社区
快速上手
当前 beta 尚未发布到 npm,需从源码构建 tarball 安装(Node 22.19+ 或 24+):
git clone https://github.com/adoresever/graph-memory.git && cd graph-memory
npm ci && npm test && npm run build && npm pack
npx @deepseek-ai/dsh plugin —profile web add /绝对路径/graph-memory-1.6.0-beta.1.tgz
安装后在「设置 → 插件」确认 graph-memory/dsh 已启用并重启 dsh web;默认数据库在 ~/.dsh/graph-memory/。自动召回无需显式调用工具;启用向量检索可设置 GRAPH_MEMORY_EMBEDDING_* 环境变量。
适合谁
- 想要”换会话不丢知识、按需想起”的长期记忆的用户
- 需要可解释、可追溯的 RAG 型记忆的知识工作者与团队
- 在乎上下文 token 成本、希望用相关子图替代无差别历史回放的 DSH 重度用户
- 希望数据留在本地、不想部署图数据库的隐私敏感用户
内容根据项目 README 整理 · 版权归原作者所有
报告问题 / 申请下架