前言¶
在 DeepSeek Harness(DSH)里跑智能体,对话一长,上下文窗口很快就会被历史消息塞满。常见的 Compaction 能回答「还剩多少对话能塞进窗口」,却很难回答「此刻真正值得召回的是哪段过往经验」。换个 Session 继续干活,昨天踩过的坑、验证过的做法,往往又要从头讲一遍。
如果你希望智能体拥有可检索、可溯源、能跨会话复用的长期记忆,社区插件 graph-memory(维护者 adoresever)值得一看。它在 GitHub 上已有 573 stars、82 forks,归类为「记忆」类插件;目录页见 SkillHub,源码托管于 adoresever/graph-memory。
需要说明的是:DSH 插件库(含 SkillHub 插件广场)是社区维护的独立目录,与 DeepSeek / 幻方并无官方从属关系;安装前请自行审阅源码与 MIT 许可证。插件以当前 dsh 进程权限运行,可能包含本地编译步骤,安装前务必确认你信任该仓库。
这是什么¶
graph-memory 是一个面向 AI 智能体的知识图谱记忆插件,同时原生支持 DeepSeek Harness,并保留 OpenClaw 入口。它把对话中可复用的信息抽取为结构化三元组,写入本地图谱,再在需要时按语义召回相关子图,而不是把完整历史原样塞进 Prompt。
README 用一句话区分了两种能力:Compaction 管「窗口里还能放多少」,Graph Memory 管「此刻该想起哪段知识」。
维护者 adoresever 在 2026 年 3 月 15 日于清华科技园举办的 CLAW program 活动中介绍过该插件架构(详见项目 README 与公开活动报道);项目当前版本为 1.6.0-beta.8,DSH 侧适配基于 Cordis 插件生命周期,无需 fork DSH 核心。
核心功能与亮点¶
1. 类型化知识图谱¶
对话内容会被抽取为三类节点:
TASK:目标、执行过程与结果;SKILL:已验证、可复用的方法;EVENT:错误、修复、决策、变更与事实。
节点之间通过 USED_SKILL、SOLVED_BY、REQUIRES、PATCHES、CONFLICTS_WITH 等边保留关系。新问题时,系统检索相关局部子图,而非回放整段历史。
2. 原生接入 DSH,而非 MCP 旁路¶
插件由 DSH/Cordis 生命周期加载,接入 Session、Tool、Agent Loop、Prompt Assembly、LLM 与 Credentials 等接缝;数据库、缓存与事件监听随插件 fiber 一并释放,不修改 DSH 核心。
3. 跨会话持久记忆¶
Session A 中沉淀的知识,可在 Session B 中自动召回;记忆在 DSH 重启后仍保留。稳定的事件 ID 保证恢复与热更新场景下的幂等写入;召回结果带来源 Session 与图谱边,便于解释「为什么想起这条」。
4. 更小的上下文占用¶
默认保留最近 5 轮真实用户输入(freshTurnCount),较早内容经 DSH 公共 Compaction 服务压缩为滚动 checkpoint;同时结合向量检索(可选)与 FTS5 词法回退、社区发现、PageRank / 个性化 PageRank 与有界图遍历,只把相关跨会话子图注入当前 Prompt,预算默认 4096 tokens(recallTokenBudget)。
项目在一段七轮 OpenClaw 工作流基准中,第 7 轮上下文从约 95,187 tokens 降至约 23,977 tokens,降幅约 75%——README 明确说明这是特定场景对比,并非对所有任务都保证同等压缩率。
5. 本地优先、轻量部署¶
社区版默认使用 SQLite,无需单独部署图数据库;Embedding 可选,未配置时回退 FTS5 全文检索。数据默认落在本地 profile,支持 DashScope、OpenAI 及兼容 OpenAI 协议的本地 Embedding 服务。
6. 可观测、可手动干预¶
提供 gm_status、gm_search、gm_record、gm_stats 等工具;自动召回在 Prompt Assembly 阶段完成,不必每次手动调用 gm_search。召回内容被标记为不可信参考材料,不能覆盖当前用户指令。
安装与启用¶
环境要求:Node.js 22.19+ 或 24+。当前 beta 尚未发布到 npm,README 推荐从源码构建 tarball 安装;目录站也提供 GitHub 直装命令,可按你的环境选择。
方式一:目录页快捷安装¶
在 DSH 终端执行(与 deepseek-harness-plugin.com 目录页 一致):
dsh plugin add github:adoresever/graph-memory
如需可复现安装,可固定 commit:
dsh plugin add github:adoresever/graph-memory#<commit-hash>
该插件依赖 @photostructure/sqlite 等原生模块,若直装遇到编译问题,可加上 --allow-build 参数(以你使用的 DSH 版本文档为准)。
方式二:从源码构建 tarball(README 推荐)¶
git clone https://github.com/adoresever/graph-memory.git
cd graph-memory
npm install
npm test
npm run build
npm pack
将生成的 tarball 安装到 Web profile:
npx @deepseek-ai/dsh plugin --profile web add /absolute/path/to/graph-memory-1.6.0-beta.8.tgz
npx @deepseek-ai/dsh --profile web --dump-config
npx @deepseek-ai/dsh web
若你在 deepseek-harness 源码仓库内开发,也可使用:
pnpm dsh plugin --profile web add /absolute/path/to/graph-memory-1.6.0-beta.8.tgz
pnpm dsh web
安装后,在 Settings → Plugins → Plugin list 中确认 graph-memory/dsh 已启用。
默认数据库存放路径:
$DSH_HOME/graph-memory/graph-memory.db
未设置 DSH_HOME 时,通常为 ~/.dsh/graph-memory/graph-memory.db。
典型用法示例¶
可选:开启向量检索¶
不要在聊天中发送密钥。DSH Credentials 或环境变量负责解析真实 API Key。以 DashScope 为例:
export GRAPH_MEMORY_EMBEDDING_API_KEY='replace-with-your-key'
export GRAPH_MEMORY_EMBEDDING_BASE_URL='https://dashscope.aliyuncs.com/compatible-mode/v1'
export GRAPH_MEMORY_EMBEDDING_MODEL='text-embedding-v4'
export GRAPH_MEMORY_EMBEDDING_DIMENSIONS='1024'
dsh web
未配置 Embedding 时,插件继续使用 FTS5,不会阻塞对话。
常用工具¶
| 工具 | 用途 |
|---|---|
gm_status |
查看插件、存储、抽取、召回与向量状态 |
gm_search |
显式搜索长期图谱记忆 |
gm_record |
手动写入 TASK / SKILL / EVENT |
gm_stats |
查看节点、边、类型与社区统计 |
自动召回在 Prompt 组装阶段触发,日常对话无需每次手动搜索。对 beta 阶段的关键知识,README 建议用 gm_record 确定性落库,因为自动抽取依赖辅助模型输出稳定性。
Graph Memory Pro(可选)¶
项目还提供实验性的 Pro Lite DSH 插件(dsh-pro/ 目录),可在 Web 侧边栏只读查看图谱快照;完整 2D/3D 渲染、分屏对话与拖拽入上下文等功能仍在开发中,与社区版共用同一 SQLite 库。
适用场景与注意事项¶
适合谁用:
- 长期在 DSH 中维护同一项目的开发者,需要跨 Session 记住排障路径、工具用法与决策依据;
- 对话轮次多、上下文膨胀明显,希望用结构化记忆替代「整段历史重放」的团队;
- 同时关注 OpenClaw 生态、希望在两个宿主间共享同一记忆核心的用户(OpenClaw 入口仍保留)。
使用时请注意:
- 插件以
dsh进程权限运行,安装与构建步骤会执行仓库中的脚本;安装前请阅读源码与 MIT 许可证。 - 当前 beta(1.6.0-beta.8)尚未上架 npm,生产环境建议固定 commit 或 tarball 版本。
- DSH 侧暂未暴露 OpenClaw 入口的
gm_update、gm_maintain工具;自动抽取质量因模型而异,关键知识请用gm_record。 - 75% 上下文压缩来自 README 记载的特定基准场景,实际收益取决于对话类型与图谱规模。
- API Key 请通过 Credentials 或环境变量配置,勿写入聊天记录;若密钥曾泄露,应及时轮换。
结尾¶
如果你正在为 DSH 智能体寻找「能解释来源、能跨会话复用」的记忆层,graph-memory 把知识图谱、向量/全文检索与 DSH 原生 Prompt 流水线接在一起,是一个值得试用的社区方案。