chenkezhen480/dsh-semantic-memory ↗★ 1
dsh-plugin-semantic-memory
Semantic long-term memory for DeepSeek Harness: embedding-based retrieval over a persistent cross-session memory store, with model-facing tools, proactive per-question recall, automatic conversation summarization, and auto-selected embedding provider (apiKey present → API, otherwise local).
安装
npx -p @deepseek-ai/dsh dsh plugin --profile web add github:chenkezhen480/dsh-semantic-memory说明文档
阅读完整 README ↗dsh-plugin-semantic-memory
English | 中文
为 DeepSeek Harness 提供向量长期记忆的插件(dsh-plugin,即 Cordis 插件)。
它让模型拥有跨会话的持久记忆,并按语义检索——不同于内置 session_query 的字面全文匹配(FTS5),本插件按"含义"召回。
零配置开箱即用:安装 → 重启 → 开新会话即可。本地 embedding 模型首次使用时自动下载(约 100 MB)也可以选择自己配置云端API;四个工具、按问题主动召回、每 5 轮自动总结全部默认开启。只有想调整行为时才需要配置(见配置)。
功能特性
- 跨会话语义记忆 —— 事实 / 决策 / 偏好 / 笔记,持久化为 JSONL,位于
$DSH_HOME/memories/memories.jsonl - 向量检索 —— 归一化向量的余弦相似度;embedding 来源可插拔:
local(默认):@huggingface/transformers+Xenova/bge-small-zh-v1.5(离线,约 100 MB,缓存于~/.cache/huggingface)api:任意 OpenAI 兼容的/embeddings接口(如硅基流动、智谱、阿里百炼)
- 记忆衰减与强化 —— 每条记忆的有效强度按半衰期随时间减半;被检索到会刷新。写入时的 importance(1~5)决定基础强度
- 模型工具:
memory_write—— 持久化一条 事实/决策/偏好/笔记(内容哈希去重,重复写入原地更新)memory_search—— 语义 top-k 召回,支持 kind / tags / workspace 过滤memory_forget—— 按 id 删除memory_stats—— 记忆库统计
- 自动注入 —— 插件监听会话事件流:每条新用户消息异步嵌入并检索,在下一轮提示词组装前注入与该问题最相关的记忆(带问题感知)。没有新鲜召回时,按强度排序的最强记忆作为固定大小的兜底注入
- 主动写入引导 —— 注入的提示要求模型在用户表达持久偏好、确立事实或明确决策时主动调用
memory_write,无需用户说"记住" - 自动总结 —— 每 N 条用户消息(默认 5),调用 harness LLM 把自上次总结以来的新消息(按会话内 seq 游标增量提炼,不重复不遗漏)蒸馏成记忆条目写入(带
auto标签);每会话单飞执行,失败静默;仅在llm与agentDefaultModel服务存在时激活 - 工作区标签 —— 条目记录写入时的会话 cwd;检索默认限定当前工作区,可跨工作区召回
安装到 DSH profile
官方一行命令(包自带 cordis.patch.yml,通过 声明, 自动挂载——无需手改 profile):