DeepSeek Harness 插件:unified-agent-memory(共享 Obsidian Vault 的 Agent 记忆)

前言

在 DSH 和多 Agent 工作流里,一个常见问题是:dsh、Codex、Claude Code 与 Hermes 各自产生记忆,彼此隔离;开发者想检查、修正或复用沉淀下来的事实时,缺少一个可直接编辑、可人工审查的存储层。

unified-agent-memory 针对这一点提供一个共享 Obsidian Vault 记忆仓库,并用本地 SQLite FTS5 索引提供检索。下面介绍它的定位、核心能力、安装方式和典型用法。

这是什么

unified-agent-memory 是维护者 Noelune 提供的 DSH 插件。npm 包名为 dsh-unified-agent-memory,仓库名为 unified-agent-memory,许可证为 MIT。

它面向 dsh、Codex、Claude Code 与 Hermes 等 Agent 运行时,提供共享的 Obsidian Vault 记忆仓库。Python 核心要求 Python 3.9+,且仅使用标准库;具体核心依赖标准库模块包括 sqlite3jsonhashlibargparseos

DSH 侧环境要求 Node >=20,并声明 peerDependencies:

@deepseek-ai/cordis ^4.0.1
@deepseek-ai/dsh-tools ^0.1.0-rc.6

插件在 DSH 中提供这些工具:

memory_search
memory_show
memory_submit
memory_status

核心功能

共享 Vault 与本地索引

该插件为 dsh、Codex、Claude Code 与 Hermes 提供共享的 Obsidian Vault 记忆仓库。SQLite FTS5 本地全文索引文件位于:

~/.unified-memory/index-<vault-hash>.db

这样,多个 Agent 可以围绕同一份 Markdown 知识仓库提交、检索和复用事实,同时开发者可以直接用文本编辑器审查内容。

知识生命周期管理

插件支持知识生命周期管理,覆盖:

1、知识摄取
2、知识晋升
3、冲突裁决
4、衰减遗忘

其中,遗忘/衰减为可逆归档,不删除。遗忘评分采用:

重要性 × (持久地板 + 时间衰减) + 访问强化

检索能力

基础检索通过 memory_search 提供。混合检索可执行:

memory search --hybrid

混合检索融合 BM25、语义向量与概念图谱;无向量时可回退纯 BM25。

可选语义向量层

语义向量层是可选能力:

memory embed

该能力使用 SiliconFlow Qwen/Qwen3-Embedding-4B,并在本地 SQLite 存储向量。

会话自动提炼

会话自动提炼使用:

memory digest

该能力默认开启,可按日期游标幂等执行,也可使用 --dry-run 预览,或使用 --off 关闭。

版本化取代

当新事实取代旧事实时,插件会把旧事实移入“已取代”小节,并标记 superseded。检索时只返回最新版本。

安全输出与凭据脱敏

插件提供提示词隔离防护与凭据脱敏。检索输出使用 <memory-data> 标记包装,用于区分数据上下文与系统指令。

DSH 自动部署

插件提供 DSH 自动部署流程,可写入 AGENTS.md / CLAUDE.md 等规则文件,并执行 selfcheck

默认部署决策如下:

1、主控 Agent 优先分配给 Hermes,未检测到则分配给部署 Agent。
2、索引模式为 local machine
3、知识晋升模式为 human-confirmed review
4、自动连接 dsh / Codex / Claude / Hermes。

非 DSH 环境可通过 docs/AGENT-DEPLOY-PROMPT.md 中的 Prompt 触发部署。

安装与启用

1、在 DSH 中安装插件:

dsh plugin --profile web add dsh-unified-agent-memory

2、安装完成后,调用 memory_status 查看插件状态。

3、如果需要手动初始化 Python core,可按下面步骤操作:

git clone https://github.com/Noelune/unified-agent-memory.git
cd unified-agent-memory
pip install -e ./core
python setup/setup.py init --vault ~/Documents/AgentMemory

先克隆仓库并安装 Python core,再初始化指定 Vault 目录。

典型用法

提交与检索事实

提交一条事实:

memory submit "staging 服务器环境绑定在 127.0.0.1:8080" --agent alpha

检索这条事实:

memory search "staging 服务器"

晋升与裁决

生成待晋升清单:

python -m unified_memory.promoter --review

应用晋升结果:

python -m unified_memory.promoter --apply

先做 --review 查看待晋升内容,再做 --apply 应用晋升。

混合检索与向量层

使用混合检索:

memory search --hybrid

启用可选语义向量层:

memory embed

会话自动提炼

预览会话提炼结果:

memory digest --dry-run

关闭会话自动提炼:

memory digest --off

遗忘归档

执行遗忘归档:

python -m unified_memory.forgetter --apply

该操作是可逆归档,不删除原始内容。

适用场景与注意

适合需要让多个 Agent 共享记忆、并且希望知识可人工审查的 DSH 使用者。尤其是同时使用 dsh、Codex、Claude Code 与 Hermes 的多 Agent 场景。

使用注意:

1、该插件以当前 dsh 进程权限运行;安装前应检查源码、依赖和许可证。
2、许可证为 MIT,Node >=20,Python 核心要求 Python 3.9+ 且仅使用标准库。
3、语义向量层为可选能力;若启用,API key 存于 ~/.unified-memory/secrets.yaml,权限为 0600 / 用户 ACL,失败时静默降级。
4、遗忘/衰减为可逆归档,不删除。
5、DSH 插件生态强调插件化;社区目录属于独立站点,不应理解为 DeepSeek 或幻方的官方应用商店。

结尾

unified-agent-memory 提供的是共享 Obsidian Vault、本地 SQLite FTS5 检索,以及覆盖摄取、晋升、裁决与遗忘的知识生命周期管理。适合需要把多个 Agent 的记忆统一到可审查仓库中的 DSH 工作流。

GitHub:

https://github.com/Noelune/unified-agent-memory

目录页(项目线索中的 URL):

https://www.skillhub.cn/plugins/Noelune/unified-agent-memory
羽毛球分组比赛记分
小程序二维码

欢迎使用《羽毛球分组比赛记分》微信小程序

Xiaoye