yangyongzhen/dsh-memory

yangyongzhen★ 1JavaScript最后同步: 2026-08-15

在 GitHub 打开

README 摘要

dsh-memory DeepSeek Harness 的长期记忆插件:把跨会话需要记住的事情(用户偏好、项目事实、会话摘要、可复用知识)持久化到磁盘,并在 每个新会话开始时自动注入 给 Agent。 特性 - 四类记忆 : preference (偏好,应默认遵守)、 fact (项目/环境事实)、 summary (会话/任务摘要)、 knowledge (可复用知识/经验) - 两种作用域 : global (所有项目适用)、 project (按项目隔离,slug 自动从会话 cwd 推导) - 四个 Agent 工具 : memory write / memory read / memory search / memory delete - 会话开始自动注入 :监听 agent/pre-step ,在第一步把全局+项目记忆渲染成带字节预算的 注入;内容寻址去重,resume 会话不会重复注入 - 原子持久化 :临时文件 + rename,崩溃不产生撕裂文件;损坏的 unit 优雅降级为空而不是崩溃 - 半自动 :写入由 Agent 判断(建议先 memory search 查重再写),符合你的「半自动」选型 安装 配置 在 profile 的 cordis.patch.yml (或 --patch 覆盖)中配置: 工具 memory write - type : preference fact summary knowledge (必填) - scope : global project (必填; project 自动绑定当前会话 cwd) - content : 记忆内容(必填) - id : 已存在记忆的 id,传了则更新该条 - tags : 检索标签(可选) - importance : 1..5 重要度(可选,注入与搜索排序参考) memory read 按作用域(+ 可选类型过滤)列出记忆,最新在前。 memory search 在全局+当前项目记忆中检索: query (内容/标签不区分大小写包含匹配,多词须全命中)、 tags (交集)、 type 过滤;按重要度、再按更新时间排序。 memory delete 按 id + scope 删除一条记忆。 数据布局 每条记录: 工作原理 1. 存储 ( src/store.ts ): MemoryStore 按作用域管理 JSON unit 文件, put / remove / clear 全部原子写;搜索按重要度+时间排序。 2. 渲染 ( src/render.ts ): renderMemoryBlock 把条目逐条贪心装入 ,严格遵守 maxBytes 预算;放不下的条目跳过而不是丢整个 section。 3. 注入 ( src/index.ts ): agent/pre-st…

在 GitHub 查看完整 README →
工具/开发deepseek-harnessdshdsh-pluginlong-term-memorymemoryagentsearch

分类