前言¶
用 DeepSeek Harness(DSH)写代码、跑 Agent 时,一个常见痛点是「每次新开对话都要从零讲起」:上周定下的技术选型、你反复强调的编码偏好、项目里踩过的坑,模型往往记不住。上下文窗口再大,也替代不了跨会话、可持久、还能人工翻看的记忆层。
如果你已经在 DSH 里跑 Agent,又希望记忆能落盘、能检索、能从 Cursor / Claude Code 等工具迁移过来,社区插件 dsh-noema(npm 包 @zseven-w/dsh-noema)值得一看。它由维护者 ZSeven-W 发布,在 SkillHub 插件库 中归类为「记忆」,GitHub 仓库 ZSeven-W/dsh-noema 截至核实约 123 星、7 forks,采用 MIT 许可证。需要说明的是:SkillHub 是面向中国用户的独立社区目录,与 DeepSeek / 幻方并无官方从属关系;DSH 本身秉持「一切皆插件」的理念,记忆能力同样以插件形式接入。
这是什么¶
dsh-noema 是 DSH 的 Noema 长期记忆插件:把 DeepSeek Harness 与 Noema 连接起来。Noema 是一套面向编程 Agent 的 本地优先、非向量 记忆系统;插件在此基础上为 Agent 提供持久、可检视的记忆读写能力,并附带可视化设置页。
一句话概括:让 Agent 在多次会话之间保留知识,而不是每次都从空白上下文开始。
当前插件版本为 0.1.0-rc.3,README 注明在 DSH 0.1.1-rc.1 上测试通过;运行环境要求 Node.js >= 24.11.0。
核心功能与亮点¶
持久化召回(Durable Recall)¶
记忆以可检视的 Markdown 文件形式存放在 NOEMA_ROOT 目录下,默认为 ~/.agent-memory/。会话开始时,noema_recall 会按查询加载相关上下文;需要查找、浏览或审计时,还有 noema_search、noema_browse、noema_catalog、noema_recall_graph 等工具可用。
从其他 Agent 工具导入记忆¶
noema_import 可读取多种 AI 编程工具的记忆文件,按段落拆分后写入 Noema,并通过内容键账本去重,避免重复导入。README 列出的来源包括:Codex、Claude Code、opencode、Cursor、Grok、WorkBuddy、Antigravity、Trae、Qoder、Hermes 等,覆盖全局配置与项目级规则文件(如 AGENTS.md、CLAUDE.md、.cursor/rules/*.mdc 等)。设置页可为每个来源单独开关,并支持启动时自动导入。
设置页统一管理¶
在 DSH Web 界面打开 Settings → Noema Memory,可配置服务端命令、记忆根目录、召回 token 预算、空闲/调用超时等参数;「Manage memories」卡片支持搜索、浏览、新增、审核与删除已存记忆,无需手改磁盘文件。
服务保活(Keep-Alive)¶
记忆服务默认空闲不退出(idle timeout 为 0 表示永不停止),并在后台 keep-alive 循环中于崩溃或退出后自动重启 noema-mcp 子进程,可配置检查间隔与重启退避时间。
实体抽取与热重载¶
Noema 的抽取引擎结合 jieba 分词与英文专名、CJK 技术术语、引号主题等信号,维护 PageIndex 主题目录。开发侧支持 Cordis HMR 热重载宿主插件、客户端 bundle 热替换,以及设置项即时生效(首次加载插件后仍需一次服务重启才能进入热重载循环)。
安装与启用¶
插件面向 web profile,官方 README 给出的安装方式如下:
dsh plugin --profile web add @zseven-w/dsh-noema@latest
dsh web
若要从本地源码开发调试,可使用 link: 协议将 profile 依赖链到仓库目录,便于配合 HMR:
dsh plugin --profile web add link:/path/to/dsh-noema
dsh web
插件通过各平台可选 npm 包捆绑 noema-mcp 二进制;也可自行在 bundled noema 子模块中执行 cargo build --release -p noema-mcp,或在设置里将 Server command 指向自定义的 noema-mcp 可执行文件。
安装前建议阅读仓库源码与 MIT 许可证,确认记忆读写范围与权限符合你的安全预期——插件以当前 dsh 进程权限运行,能访问的路径即 Agent 能触及的路径。
典型用法¶
模型侧记忆工具¶
插件向模型暴露一组 noema_* 工具,与 Noema MCP 表面对齐。常用能力包括:
| 工具 | 作用 |
|---|---|
noema_recall |
按查询召回相关记忆,可设 token 预算 |
noema_search |
对已存记忆全文检索 |
noema_browse |
浏览 PageIndex 中某主题或实体 |
noema_remember |
保存事实、决策、约束或偏好 |
noema_import |
从其他 AI 编程工具导入记忆 |
noema_forget |
标记删除或硬删除记忆 |
noema_status |
查看服务与租户状态、索引健康度 |
各工具返回统一信封 { ok, tool, text },text 字段承载服务端完整输出。
从 Cursor 等工具迁移¶
在对话中让 Agent 调用 noema_import,或在设置页点击 Import now。例如导入 Cursor 时,会扫描 ~/.cursor/rules/*.mdc、~/.cursorrules 以及工作区内的对应文件。导入记录写入 $DSH_HOME/storages/dsh-noema-imports.json,按「文件路径 + 段落内容」去重;需要强制全量重导时可传 force: true。
设置项速览¶
| 设置 | 默认值 | 含义 |
|---|---|---|
| Enable memory | 开 | noema_* 工具总开关 |
| Memory guidance | 开 | 在系统提示中注入记忆使用指引 |
| Start server at boot | 开 | DSH 启动时拉起记忆服务 |
| Auto-accept new memories | 开 | noema_remember 立即落盘 |
| Memory root | 空 | 空则使用 ~/.agent-memory |
| Recall token budget | 1200 | noema_recall 默认 token 上限 |
| Keep alive | 开 | 崩溃后后台自动重启服务 |
更完整的参数说明见 GitHub README 的 Settings 章节。
适用场景与注意事项¶
适合谁用:
- 长期在 DSH 上维护同一项目,希望跨会话保留架构决策、踩坑记录与个人偏好;
- 已从 Cursor、Claude Code、Codex 等工具积累大量
AGENTS.md/ 规则文件,想一次性迁入 DSH; - 需要「能打开文件夹直接看」的明文记忆,而不是黑盒向量库。
使用前请注意:
- 记忆文件落在本机磁盘,请妥善备份
NOEMA_ROOT,并留意是否包含敏感信息。 - 导入功能会读取其他工具的配置与记忆路径,确认这些目录中没有不应被 Agent 学习的机密内容。
- 插件当前为 0.1.0-rc.3 候选版本,API 与行为可能随 DSH / Noema 演进调整。
- 安装任何社区插件前,务必自行审查源码与许可证;插件权限等同于运行
dsh的用户权限。
结语¶
如果你受够了「每次对话重新交代背景」,dsh-noema 提供了一条相对务实的路径:本地 Markdown 存储、丰富的召回与导入工具、Web 设置页统一管理,再加上服务保活与热重载等工程化细节。不妨从官方安装命令装起,先把现有 Cursor / Claude Code 规则导入一试。