DeepSeek Harness Hub
← 返回列表

Zn-Dk/dsh-mnemon-gc

DeepSeek Harnessspec-screened在 GitHub 查看 ↗
未验证

接入 dsh-mnemon GC 治理插件:冲突驱动的正确性纠错,自动巡检报告。

尚未跑自动兼容性验证,可查看页面内的依赖与入口分析。 · 最近上游提交 2026/8/28 · 已提供中文文档
综合分
27.9
GitHub 分
27.9
用户评分
★ Stars
0
周下载量
安装插件(需先安装 dsh CLI 引擎:npm install -g @deepseek-ai/dsh)
dsh plugin --profile web add Zn-Dk/dsh-mnemon-gc
该插件未发布到 npm,走 GitHub 源安装(pnpm 若拦截 prepare 脚本,按其提示在 pnpm-workspace.yaml 的 allowBuilds 中放行后重跑)
数据截至 2026/9/18(元数据每日更新 · 实装验证按队列轮转,单条结论的验证时间见上方)
用户评分
还没有人投票,来当第一个
订阅周报,不错过优质插件更新
每周一封 · 高评分插件 + 新用户活动

README

dsh-mnemon-gc

Mnemon 记忆体 GC 治理插件。基于 dsh-mnemon 的公共 API(createRunner / resolveConfig),把「冲突驱动的正确性纠错」接入 DSH:检测记忆间新事实取代旧事实、默认标记 superseded、仅在显式确认后软删除。自动巡检只报告、绝不删除。

声明:本插件基于 dsh-mnemon 的公共 API(createRunner / resolveConfig)开发,是独立的正交扩展,不 fork、不改动 dsh-mnemon。定位为「可向上游提 PR 的原型」。

背景

dsh-mnemon 的三层记忆里,第三层(记忆体)由 mnemon CLI 引擎支撑。mnemon 自身并不直接对「记忆内容是否已被更新的记忆取代」做纠错,过时记忆会与新事实并存积累。本插件把这套冲突检测能力接出来,作为独立的治理入口。

治理模型(0.2.0:正确性纠错,不再是时间衰减)

gc 的判据是「记忆是否被更新的记忆取代(superseded)」,不是「多久没被访问」。久未引用的历史记忆只要仍正确就不会被建议清理。

冲突检测:同 category 的记忆两两配对(免疫候选除外),由 LLM 子代理判断「新事实是否覆盖旧事实」。命中后默认标记 superseded(以 causal edge 记录取代关系与理由),旧记忆保留可追溯。

分级

| tier | 含义 | 会删除吗 |
|---|---|---|
| immune | importance>=4 或 access_count>=3,或已标记 immune | 绝不 |
| superseded | 冲突检测命中(被更新的记忆取代) | 仅显式确认后 |
| watch | 其余全部(含久未访问但正确) | 绝不 |

新鲜度字段(创建时间/引用次数/有效重要性)仅用于排序与人工审阅,绝不单独作为删除依据。

设置界面

「设置 → Mnemon GC」卡片(client settings.section slot)提供可视化编辑,即时热更新,并内嵌「记忆新鲜度」面板(只读列表 + 关键词搜索 + 状态筛选 + 排序/分页 + 详情查看 + 受监督的单条/批量删除):

- 巡检策略:threshold / maxAgeDays / intervalMs / limit(数字,其中 threshold 与 maxAgeDays 仅为辅助字段)
- 运行位置:cliPath / dataDir(文本,留空表示默认)

卡片通过 host 侧 /dsh-mnemon-gc-settings RPC 通道读写 settings namespace;新鲜度面板通过 /dsh-mnemon-gc-freshness RPC 通道读写记忆列表与删除动作。

触发方式

| 方式 | 行为 | 默认 |
|---|---|---|
| 自动巡检 | agent/turn-stopping 后,距上次巡检 >= intervalMs 触发 | 开,24h,只报告 |
| 工具 mnemon_gc_inspect | 只读巡检,返回 immune/superseded/watch 三级 | 模型可调 |
| 工具 mnemon_gc_mark_superseded | 标记一条记忆被另一条取代(写 causal edge,不删除) | 模型可调(显式) |
| 工具 mnemon_gc_purge_superseded | 批量删除已标记 superseded的记忆(未标记的自动拒绝) | 模型可调(显式) |
| 命令 /mnemon-gc inspect|conflicts|mark|purge-superseded | 手动触发 | 用户可用 |

安全边界:巡检带 --readonly 绝不写库;purge 走 mnemon forget(软删除,可恢复)且只删「已标记 superseded」的记忆;自动巡检只报告,绝不删除(无 autoPurge 配置项)。

配置

插件注册了 DSH settings namespace dsh-mnemon-gc,配置持久化在 ~/.dsh/settings.yaml,支持热更新(修改后无需重启)。同时提供 Web 设置卡片(「设置 → Mnemon GC」)可在 GUI 里直接改这些字段。

dsh-mnemon-gc:
threshold: 0.5          # 有效重要性阈值(仅辅助排序/审阅)
maxAgeDays: 30          # 无访问 N 天(仅辅助信号,不构成删除依据)
intervalMs: 86400000    # 自动巡检间隔(默认 24h)
limit: 500              # 每个 store 的候选上限
cliPath: ""             # 可选,显式覆盖 mnemon CLI 路径(默认交给 dsh-mnemon 解析)
dataDir: ""             # 可选,覆盖数据目录(设了它 storageScope 会切到 custom)

字段说明:

| 字段 | 默认 | 说明 |
|---|---|---|
| threshold | 0.5 | 有效重要性阈值(辅助排序/审阅,不单独决定删除) |
| maxAgeDays | 30 | 无访问 N 天(辅助信号,不构成删除依据) |
| intervalMs | 86400000 | 自动巡检间隔(最小 60s,最大 30 天) |
| limit | 500 | 每个 store 的候选上限(1–1000) |
| cliPath | 空 | 显式覆盖 mnemon CLI 路径;空则交给 dsh-mnemon 的 findMnemonCommand 解析 |
| dataDir | 空 | 显式覆盖数据目录;非空时 storageScope 自动切 custom |

删除只由「superseded 标记」决定:阈值与 maxAgeDays 仅用于新鲜度视图的排序/审阅,绝不单独作为删除依据。

cordis.patch.yml 里的 config 是 base 层(默认值);settings.yaml 的 dsh-mnemon-gc 段是 user 层(覆盖)。两者合并后生效。

安装

方式 A:源码目录安装(本地开发)

cd dsh-mnemon-gc
pnpm installsh
dsh plugin --profile web add "link:/root/proj/dsh-proj/dsh-mnemon-gc"
dsh web

link: 安装不会自动把插件自身依赖(dsh-mnemon / schemastery)装进 profile,可能报 ERR_MODULE_NOT_FOUND。本地自测建议先确认 pnpm install 在插件目录内完整跑过;正式分发优先用方式 B(对齐蓝本插件 dsh-tencent-token-dashboard 的已验证模式)。

方式 B:发布包 .tgz 直链安装(推荐)
sh
pnpm pack   # 生成 dsh-mnemon-gc-.tgz
dsh plugin --profile web add ./dsh-mnemon-gc-.tgz

已安装旧版本时,用同样的 add 命令安装新 tarball 即可覆盖更新。

重启 dsh web 后,「设置 → Mnemon GC」出现设置卡片。

测试
sh
node --test test/*.test.mjs

seam:engine(冲突驱动分级纯函数)、conflict-detector(初筛 + LLM prompt + 结果解析)、superseded(causal edge 标记/收集/过滤)、cli-adapter(gc JSON 解析)、orchestrator(巡检/清理编排,注入 fake runner)、config(settings 值解析)、settings-rpc / freshness / freshness-rpc(settings 通道与新鲜度视图纯逻辑)。

版本与发布

版本号遵循 语义化版本,变更记录见 CHANGELOG.md(格式遵循 Keep a Changelog)。每次面向用户的变更按 新增(feature)/ 修复(fix)/ 变更(chore/breaking)分级记录,并同步递增 package.json 的 version。

与方案 A 的关系

本插件是把已验证的方案 A 巡检脚本(阈值、幂等、软删除策略)固化为 DSH 插件的形态。方案 A 仍是独立可用的 CLI 巡检器。

License

MIT

上游仓库有新提交时邮件通知你(每天最多一封,无更新不打扰),随时一键退订。

同作者(Zn-Dk)的其他插件

💬 加入 DPharness 群聊

插件用法、部署报错、新插件第一时间同步——群里问,比一个人翻文档快。

点击加入 QQ 群
DPharness 群聊二维码,手机 QQ 扫码进群
扫码进群