DeepSeek Harness 的长期记忆 —— 由 Noema 支持的持久、可检查的智能体记忆。
60/100
综合分
129
GitHub 星标
417
npm 周下载
—/5
用户评分
数据截至 2026/10/7 · 周下载取自 npm 全网(含 CI / 镜像),非本站安装数;综合分由星标、活跃度与兼容性检查合成。
自动兼容检查未通过:engines.node 要求 >=24.11.0,不满足 Node 22.19.0。以下命令仍可尝试,但可能失败。
安装命令 · 需先装 dsh CLI 引擎
dsh plugin --profile web add ZSeven-W/dsh-noema该包不可直接 npm 安装,改从 GitHub 源安装(明细见下方安装检查)
状态速览
判定依据:实装验证 · 静态安装检查 · 自动扫描 · 仓库维护状态信任档位:已验证
是什么
dsh 原生插件 · chat
安全吗
本站尚未对该插件做风险分级
暂未覆盖,不等同于无风险
还在维护吗
活跃:最近一次提交在 28 天前
档位由哪些信号合成
本站实装验证(真实安装 L4 覆盖全站;L5 为运行时冒烟或实机截图,覆盖范围小于 L4) · 验证所用 dsh 版本 · 静态安装检查 · 风险分级 · 仓库维护状态。 下方各区块是它的证据明细。
社区实装还没有人打卡 · 装过的第一个就是你
安装兼容性检查需源码安装engines.node 要求 >=24.11.0,不满足 Node 22.19.0
展开查看检查明细 ↓
以下结论由程序自动检查 npm 包、engines 声明与入口文件得出,未做人工实机验证——能装不等于用着没问题。
✓npm 包@zseven-w/dsh-noema @ 0.1.0-rc.6
✗Node 引擎要求 >=24.11.0 · 基线 Node 22.19 不满足
✓dsh CLI 依赖未声明 dsh 版本约束
✓入口文件main/exports/bin 已声明
源码安装时若 pnpm 拦截 prepare 脚本,按其提示在 pnpm-workspace.yaml 的 allowBuilds 中放行后重跑。
验证方式:npm registry 存在性 + package.json 静态校验 · 最后检查 2026/10/29 17:40:37
🔴 安全扫描发现高危能力自动 · 静态分析源码
v2.7.0🔴 扫描:高危尚无人工评估
静态扫描发现安装期即执行代码,或命令参数由运行时变量拼接(参数来源无法静态判定,从严处理)。
命令参数由运行时变量拼接读写/删除本地文件发起外部网络请求
查看扫描证据(共 13 处,展示前 13 条)
- 读取本地文件src/bundled-binary.ts:43
return statSync(path).isFile() - 读取本地文件src/import-service.ts:134
const value: unknown = JSON.parse(await readFile(path, 'utf8')) - 写入本地文件src/import-service.ts:150
await mkdir(dirname(path), { recursive: true }) - 写入本地文件src/import-service.ts:151
await writeFile(path, JSON.stringify(ledger, null, 2) + '\n', { mode: 0o600 }) - 读取本地文件src/import-service.ts:164
const info = await stat(path) - 读取本地文件src/import-service.ts:174
entries = await readdir(dir) - 读取本地文件src/import-service.ts:183
childInfo = await stat(child) - 读取本地文件src/import-service.ts:208
let content = await readFile(path, 'utf8') - 读取本地文件src/import-service.ts:274
if (!existsSync(candidate.path)) continue - 发起网络请求src/mcp-stdio.ts:105
await this.request( - 发起网络请求src/mcp-stdio.ts:133
const response = await this.request('tools/call', { name, arguments: args ?? {} }, options.timeoutMs, options.signal) - 执行外部命令表达式求值src/mcp-stdio.ts:172
private async spawn(): Promise<void> { - 执行外部命令来自配置/变量src/mcp-stdio.ts:173
const child = spawn(this.options.command, this.options.args ?? [], {
扫描于 2026/11/3(0 天前) · 范围 入口闭包 + 发布文件清单 · 来源 GitHub 仓库
静态扫描只反映源码中出现的调用,不构成安全背书;人工评估与自动扫描相互独立、互不覆盖。
⚠ 该插件运行需访问外部网络 / 远程 API,部署在国内无外网环境时可能无法正常使用。
依赖的 DSH / Cordis 模块
@deepseek-ai/cordis@deepseek-ai/dsh-client-locale@deepseek-ai/dsh-client-ui-renderer@deepseek-ai/dsh-client-ui-settings@deepseek-ai/dsh-client-ui-slots@deepseek-ai/dsh-host-webserver@deepseek-ai/dsh-settings@deepseek-ai/dsh-system-prompt@deepseek-ai/dsh-tools@deepseek-ai/schemastery给这个插件打分还没有人投票↓
用户评分
还没有人投票,来当第一个
界面预览
1 张 · 点击查看大图功能亮点
- 持久智能体记忆
- 可检查记忆内容
- 记忆召回工具
DSH 的 Noema 长期记忆插件:持久、可检查的智能体记忆,带召回工具和设置页。
README
由 DeepSeek 最新模型翻译生成DSH Noema
DeepSeek Harness 的长期记忆 —— 由 Noema 支持的持久、可检查的智能体记忆。
工作前召回 • 从 9 种智能体工具导入 • 设置页记忆管理 • 崩溃保活 • 热重载
npm: @zseven-w/dsh-noema · 已通过 DSH 0.2.0-rc.2 测试
English · 简体中文 · 繁體中文 · 日本語 · 한국어 · Français · Español · Deutsch · Português · Русский · हिन्दी · Türkçe · ไทย · Tiếng Việt · Bahasa Indonesia
Noema 记忆设置页 —— 导入来源、记忆管理与实时服务器状态
为什么选择 DSH Noema
DSH Noema 将 DeepSeek Harness 与 Noema —— 一个面向编码智能体的本地优先、非向量记忆系统 —— 连接起来,让智能体能够跨会话保留持久知识,而不是每次对话都从零开始。
🧠 持久召回
记忆以可检查的 Markdown 文件形式持久化存储在 NOEMA_ROOT 下(默认 ~/.agent-memory/)。
展开完整文档(README 剩余 1 节)
DSH Noema
DeepSeek Harness 的长期记忆 —— 由 Noema 支持的持久、可检查的智能体记忆。
工作前召回 • 从 9 种智能体工具导入 • 设置页记忆管理 • 崩溃保活 • 热重载
npm: @zseven-w/dsh-noema · 已通过 DSH 0.2.0-rc.2 测试
English · 简体中文 · 繁體中文 · 日本語 · 한국어 · Français · Español · Deutsch · Português · Русский · हिन्दी · Türkçe · ไทย · Tiếng Việt · Bahasa Indonesia
Noema 记忆设置页 —— 导入来源、记忆管理与实时服务器状态
为什么选择 DSH Noema
DSH Noema 将 DeepSeek Harness 与 Noema —— 一个面向编码智能体的本地优先、非向量记忆系统 —— 连接起来,让智能体能够跨会话保留持久知识,而不是每次对话都从零开始。
🧠 持久召回
记忆以可检查的 Markdown 文件形式持久化存储在 NOEMA_ROOT 下(默认 ~/.agent-memory/)。noema_recall 在会话开始时加载相关上下文;noema_search、noema_browse、noema_catalog 和 noema_recall_graph 覆盖查找、探索与审计。
📥 从其他工具导入
noema_import 读取其他十种 AI 编码工具的记忆文件 —— Codex、Claude Code、opencode、Cursor、Grok、WorkBuddy、Antigravity、Trae、Qoder、Hermes —— 将其拆分为章节,并把每一节保存为一条持久记忆。以内容为键的账本会在多次运行之间以及共享文件的工具之间进行去重。
🛠️ 设置页管理
Noema Memory 设置页可配置服务器命令、记忆根目录、预算、空闲/调用超时以及引导说明区块 —— 而 Manage memories 卡片可直接搜索、浏览、添加、审核和删除已存储的记忆。
🩺 保活
记忆服务器保持运行:空闲超时默认为永不超时,保活循环会在 noema-mcp 子进程崩溃或退出时于后台重启它,检查间隔和重启退避均可配置。
🔍 智能实体抽取
Noema 的抽取引擎将 jieba 分词与高精度信号 —— 英文专有名词、CJK 名称与技术术语、带引号的主题以及重复出现 —— 相结合,并配合停用词与路径过滤,使 PageIndex 主题目录保持干净。
⚡ 热重载
首次启动后,插件就再也无需重启:pnpm run build 通过 Cordis HMR 热重载宿主插件,ppnpm run build:client 则通过 client-hmr 的 SSE 通道热替换浏览器包。
安装到 DSH
dsh plugin --profile web add @zseven-w/dsh-noema@latest
dsh web
或者,直接从源码树进行本地开发:
dsh plugin --profile web add link:/path/to/dsh-noema
dsh web
link: 协议会将 profile 的依赖符号链接到此仓库,因此重新构建的结果立即可见,Cordis HMR 也能监听编译后的输出。
该插件通过各平台的可选 npm 包捆绑 noema-mcp 二进制文件。若要自行构建,可在捆绑的 noema 子模块中运行 cargo build --release -p noema-mcp,或将 Server command 设置指向任意 noema-mcp 构建产物。
记忆工具
面向模型的工具与 Noema MCP 接口一一对应:
| 工具 | 作用 |
| noema_recall | 针对查询召回相关记忆,可指定 token 预算。 |
| noema_search | 对已存储的记忆进行全文搜索。 |
| noema_browse | 按主题或实体浏览 PageIndex 目录。 |
| noema_catalog | 将完整记忆目录渲染为 markdown。 |
| noema_recall_graph | 通过链接与共享实体进行多跳召回。 |
| noema_neighbors | 从某条记忆出发进行一跳图遍历。 |
| noema_explain | 解释某条记忆为何被召回或未被召回。 |
| noema_remember | 保存持久的事实、决策、约束或偏好。 |
| noema_review_list | 列出待审核的候选项。 |
| noema_review_decide | 接受、拒绝、编辑或合并候选项。 |
| noema_forget | 将记忆标记删除或硬删除。 |
| noema_policy_get / noema_policy_set | 读取或更新写入策略。 |
| noema_status | 服务器与租户状态:计数、索引健康度、存储根目录。 |
| noema_import | 从其他 AI 编码工具导入记忆。 |
每个工具都会返回统一的结构 { ok, tool, text },其中 text 承载服务器的完整输出。
从其他工具导入记忆
| 来源 id | 全局文件 | 工作区文件 |
| codex | ~/.codex/AGENTS.md + Codex 记忆流水线:~/.codex/memories/MEMORY.md、memory_summary.md、rollout_summaries/.md、extensions/ad_hoc/notes/.md(跳过 raw_memories.md —— 它是未经整理的原始流) | AGENTS.md、AGENTS.local.md |
| claude-code | ~/.claude/CLAUDE.md、~/.claude/CLAUDE.local.md、~/.claude/MEMORY.md | CLAUDE.md、CLAUDE.local.md、MEMORY.md |
| opencode | ~/.config/opencode/AGENTS.md | AGENTS.md |
| cursor | ~/.cursor/rules/.mdc、~/.cursorrules | .cursor/rules/.mdc、.cursorrules |
| grok | ~/.grok/AGENTS.md + Grok 跨会话记忆:~/.grok/memory/MEMORY.md、每个项目的 MEMORY.md 以及 sessions/.md 摘要 | AGENTS.md |
| workbuddy | ~/.codebuddy/CODEBUDDY.md(WorkBuddy 记忆文件)、~/.workbuddy/AGENTS.md、~/.workbuddy/memory.md、~/.config/workbuddy/AGENTS.md、~/Library/Application Support/WorkBuddy/AGENTS.md | AGENTS.md、CODEBUDDY.md |
| antigravity | ~/.antigravity/AGENTS.md、~/.config/antigravity/AGENTS.md、~/Library/Application Support/Antigravity/AGENTS.md(尽力而为;目前尚无文档化的全局记忆存储) | AGENTS.md、AGENTS.local.md |
| trae | ~/.trae/AGENTS.md、~/.trae/memory/、~/.trae/rules/(以及 ~/.trae-cn 变体) | AGENTS.md、.trae/rules/ |
| qoder | ~/.qoder-cn/AGENTS.md、~/.qoder-cn/rules/、自动记忆根目录 ~/.qoder-cn/memory/ 和 ~/.qoder-cn/projects//memory/(以及 ~/.qoder 变体) | AGENTS.md、AGENTS.local.md、.qoder/rules/ |
| hermes | ~/.hermes/memories/(MEMORY.md + USER.md)以及全局 ~/.hermes/SOUL.md | .hermes.md、HERMES.md、AGENTS.md、CLAUDE.md |
- source 参数用于选择某个工具,省略它则会运行设置中启用的所有来源。
- path 参数用于选择项目级文件的工作区根目录(默认使用会话工作区;只有在开启 Import workspace files 设置时,工作区文件才会被加载)。
- 导入通过位于 $DSH_HOME/storages/dsh-noema-imports.json 的账本去重,以文件路径 + 章节内容为键 —— 当多个工具共享同一个项目 AGENTS.md 时,每个章节只会被导入一次。force: true 会重新导入全部内容。
- 设置页提供每个来源的复选框、启动时导入开关、文件大小上限,以及一个带有上次运行摘要的 Import now 按钮。
设置
打开 设置 → Noema Memory:
| 设置 | 默认值 | 含义 |
| Enable memory | on | noema_* 工具的总开关。 |
| Memory guidance | on | 系统提示词中教授记忆用法的部分。 |
| Start server at boot | on | 在 DSH 启动时启动,而非首次使用时才启动。 |
| Auto-accept new memories | on | noema_remember 立即持久化。 |
| Server command | bundled | 捆绑的 noema-mcp 二进制文件或自定义可执行文件路径/命令。 |
| Working directory | — | 服务器的工作目录(运行 cargo run 时需要)。 |
| Memory root (NOEMA_ROOT) | — | 记忆的存储位置;留空 = ~/.agent-memory。 |
| Recall token budget | 1200 | noema_recall 的默认 budget_tokens。 |
| Idle timeout (ms) | 0 | 空闲后停止服务器;0 = 永不停止。 |
| Keep alive | on | 服务器崩溃或退出时在后台重启。 |
| Keep-alive interval (ms) | 5000 | 后台健康检查之间的最小间隔。 |
| Call timeout (ms) | 30000 | 每次工具调用的超时时间。 |
| Restart delay (ms) | 1000 | 停止/崩溃与下次启动之间的退避时间。 |
状态卡片会显示服务器健康状态,并提供重启/停止操作;导入区块用于管理九个记忆来源。
热重载
插件加载过一次之后,DSH 的 HMR 机制即可完全使用:
- 宿主插件 —— 在 profile patch 中启用 Cordis HMR 条目,并将其监听根目录指向本包的 lib/ 输出目录,同时保留 link: 依赖。运行 pnpm run build 后,正在运行的 DSH 会自动重载插件入口(重载会重启 Noema 服务器子进程)—— 无需重启服务器。
~/.dsh/profiles/<profile>/cordis.patch.yml
- id: hmr
disabled: false
config:
root:
- /path/to/dsh-noema/lib
- 客户端包 —— ppnpm run build:client 会重写 lib/client.js;client-hmr 的 node 端会轮询每个 graph 包的 stat(默认 500ms),并通过 /plugins/events SSE 通道广播 rebuilt 帧,浏览器便可在不刷新页面的情况下热替换模块。
- 设置 —— 在 Noema Memory 设置页上所做的每项更改都会通过设置服务实时生效。
热重载唯一做不到的是加载一个从未出现在启动树中的插件:运行中的组合既不监听 profile patch 层(Web 应用未接入 watchUserPatches),也不暴露加载器变更 API(插件清单 RPC 是只读的)。因此,一个全新插件恰好需要重启一次服务器,之后上述循环便完全可热重载。
开发
pnpm install
pnpm run build # host tsc + client tsdown bundle
pnpm test # build + node --test tests/
e2e 测试会在存在 noema/target/debug/noema-mcp 时针对它运行(否则会被跳过)。
生态
- DSH Android —— 在对话中运行 Android 模拟器或 USB 真机,全部由 adb 驱动
- DSH Crew —— 从 Claude Code / Codex 把任务派给 DSH agent
- DSH iOS —— 在对话中运行 iOS 模拟器与 USB 连接的真机
- DSH OpenPencil —— 在对话中查看和编辑 .op 设计文档
许可证
MIT预览分享卡片长什么样 ↓
分享 · DeepSeek Harness Hub
ZSeven-W/dsh-noema
DeepSeek Harness 的长期记忆 —— 由 Noema 支持的持久、可检查的智能体记忆。
相关插件 · 对话 / 记忆
上下文中枢oceanbase/powercontext
上下文跟着工作走 —— 跨会话、跨智能体、跨人。
★ 1,487已汉化DSH
73
智能体记忆库plastic-labs/honcho
Honcho 是记忆基础设施,用来构建有状态的智能体。这些智能体能理解不断变化的人、智能体、群组、项目和想法。
★ 7,894已汉化DSH
71.7
长程智能体控制面loopx-project/loopx
给 Agent 一个目标,让工作持续向前。
★ 6,358已汉化DSH
71.3
智能体上下文数据库volcengine/OpenViking
给 AI 智能体用的上下文数据库
★ 41,379已汉化DSH
71.3
长效机器人团队Fei2411/DS-Bot
DS Bot 是一个基于 DeepSeek Harness简称 dsh的 bot 插件,插件将 dsh 改造为 bot…
★ 5,084已汉化DSH
71.1
可携带记忆层EverMind-AI/EverOS
为什么选择 EverOS
★ 13,778已汉化DSH
71.1