dsh-neuron-memory:仿神经元分层记忆与 3D 记忆星云面板

前言

在 DeepSeek Harness(DSH)里做长会话或跨会话协作时,常见做法是把历史整段塞进上下文,或依赖宿主压缩后丢失细节。上下文越长,成本与噪声越高;压缩后,项目进度和事实也容易断档。下面介绍社区插件 dsh-neuron-memory(维护者 shadowRjh,GitHub shadowRjh/dsh-neuron-memory):本地分层记忆、按相关性注入,并带 3D 星云面板,数据落在 ~/.dsh/memories/.neuron/,不联网、无遥测。

这是什么

dsh-neuron-memory 是给 DSH 的「仿神经元记忆框架 + 3D 记忆星云面板」插件(npm 包名 dsh-neuron-memory,当前资料中版本 2.7.0,MIT 许可证)。记忆不是全量进上下文,而是:对话片段先进海马体缓冲,定时夜巡归档到可审计 JSONL 记忆库,用户开口时按关键词(可选向量)打分,只注入前 N 条;命中会强化权重并重置衰减,模拟间隔重复。

记忆怎么流转

一轮对话结束后,插件会把原文归类进海马体(去重、过滤 system-reminder 等噪音)。默认每天 03:10 夜巡:按关键词分池写入记忆库,并生成 patrol/YYYY-MM-DD.md 报告;也可随时手动触发。各池独立配置宽限期、半衰期、归档天数,有效权重按艾宾浩斯公式衰减;超出单条 2KB、每池 200 条等硬上限时会裁剪或按权重归档。

用户再次说话时,中文按二元组、英文按词切分,用 相关度 × 0.75 + 有效权重 × 0.35 排序,默认只注入 6 条 / 900 字,不注入全量。注入在宿主侧每轮重新计算,上下文被压缩后仍可重新命中;所有会话共享同一记忆库。

交接层(handoff):handoff.md 覆盖写、硬上限 4KB;v2.3 起每轮只注入「项目 / 下一步 / 卡在」三行(默认 ≤600 字),全量仍存盘,每 12 轮或超过 800 字可自动压缩并重写,旧版留档。

核心能力(资料已列)

  • 海马体缓冲:(role + 文本) 去重,可配置是否收录 assistant、缓冲条数与单条字数上限。
  • 夜巡归档:定时或 neuron_patrol 立刻执行;patrol 段可设 autoArchive、maxArchivePerRun 等。
  • 工具面:neuron_status、neuron_recall、neuron_remember、neuron_archive、neuron_touch、neuron_patrol、neuron_forget、neuron_handoff、neuron_search(多帧 zstd 历史会话关键词搜原文)。
  • 翻旧账:解压历史会话归档,找回被压缩掉的对话细节(neuron_search;Node.js ≥22.15 用于 zstd,资料写明 DSH 0.2.1 自带 Node 24)。
  • 生态桥(可选):读 dsh-feiyu-mood 的 ~/.dsh/feiyu-mood/state.json 注入心情;读 dsh-fish-memory 的 JSON,首次启动或 neuron_import_fish 导入长期事实进「核心」池。
  • 情绪层:心情变化 ≥5 可落情绪记忆;与召回加权、面板时间线等相关行为见 README。
  • 向量检索(可选):retrieval.vector.enabled 开启后用本地 embedding(Ollama bge-m3 或 OpenAI 兼容接口),与关键词混合;服务不可用则退回关键词。
  • 3D 星云面板:中心 DSH → 记忆池 / 交接 / 心情 → 条目;外圈会话、思维链、服务、花费、插件、系统等;多套主题(星云 / 皮层 / 矩阵 / 极简),条目被想起时有任务信号脉冲。
  • 迁移:首次启动若存在旧 dsh-chain 的 ~/.dsh/memories/.chain-shared/chains.jsonl,会一次性迁入记忆库。

安装与启用

安装命令以 README 为准:

# 从 npm(发布后)
dsh plugin --profile <profile> add dsh-neuron-memory

# 本地源码
dsh plugin --profile desktop add link:/path/to/dsh-neuron-memory

重启 DSH 后,会话界面会出现 「神经元」 标签。

兼容性(README):DSH >=0.2.0-rc.2 <0.3.0-0;Node.js >=22。

配置要点

改 ~/.dsh/memories/.neuron/config.json,下一轮生效。示例结构如下(字段以仓库 README 为准):

{
  "capture":   { "enabled": true, "includeAssistant": true, "maxHippocampus": 400, "maxChars": 1200 },
  "injection": { "budgetChars": 900, "maxItems": 6, "minWeight": 0.08 },
  "patrol":    { "hour": 3, "minute": 10, "autoArchive": true, "maxArchivePerRun": 24 },
  "limits":    { "maxEntryChars": 2000, "maxPerPool": 200, "handoffMaxChars": 4000 },
  "handoff":   { "enabled": true },
  "pools": {
    "core":    { "label": "核心", "halfLifeDays": 60, "graceDays": 20, "archiveDays": 180 },
    "fact":    { "label": "事实", "halfLifeDays": 45, "graceDays": 10, "archiveDays": 120 },
    "skill":   { "label": "技能", "halfLifeDays": 90, "graceDays": 20, "archiveDays": 365 },
    "daily":   { "label": "日常", "halfLifeDays": 20, "graceDays": 5,  "archiveDays": 90  },
    "emotion": { "label": "情绪", "halfLifeDays": 3,  "graceDays": 1,  "archiveDays": 14  }
  }
}

本地目录概览:

~/.dsh/memories/.neuron/
  hippocampus.jsonl      原始片段(待归档)
  entries.jsonl          记忆库
  handoff.md             交接层
  handoff-history.jsonl  旧交接留档
  config.json
  patrol/YYYY-MM-DD.md   夜巡报告

典型用法

  1. 安装并重启后,正常对话即可自动写入海马体;需要总览时让 Agent 调用 neuron_status。
  2. 要主动记下事实:neuron_remember(默认进海马体,可指定池)。
  3. 跨会话前先写交接:neuron_handoff 覆盖更新 handoff.md,新会话会固定注入精简三行摘要。
  4. 上下文里已经找不到的原话:用 neuron_search 或 neuron_recall 按关键词回想(命中会 touch,权重 +0.15)。
  5. 不想等夜巡:执行 neuron_patrol 立刻归档并生成当日报告。

适用场景与注意

适合需要 本地、可审计、有遗忘曲线 的长期记忆,又不想每轮全量灌上下文的 DSH 用户。面板与可选向量检索会读本机文件或 localhost 服务;记忆内容是对话原文,分享数据前需自行脱敏。

插件以 当前 DSH 进程权限 读写 ~/.dsh/ 下文件。DSH 社区目录(如 SkillHub 插件页)是独立站点,与 DeepSeek / 幻方无官方从属关系;安装前建议阅读源码与 MIT 许可证,确认符合你的安全与合规要求。

结尾

dsh-neuron-memory 把「捕获 → 归档 → 相关性注入 → 遗忘与强化」做成可配置流水线,并用 3D 面板把池、交接与心情可视化。目录与详情见 SkillHub:dsh-neuron-memory,源码与完整工具表见 GitHub:shadowRjh/dsh-neuron-memory。

羽毛球分组比赛记分
小程序二维码

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

小夜