前言¶
DSH(DeepSeek Harness)的会话能干活,但它的记忆存在哪里、怎么跨会话复用,官方并没有一个统一答案。常见的做法是自己搭一套带数据库的方案,或者每次在对话里重贴一遍上下文;两者都不便宜:前者要运维,后者靠人肉维护。
这次介绍的插件 xxwjxx-1210/dsh-brain-hub 属于社区目录(skillhub.cn)上「记忆」分类下的插件,分类为记忆,项目星标数很低。它的定位很明确:Markdown 当数据库,git 当同步。记忆就是你磁盘上的一堆 .md 文件,不引入数据库,也不依赖专门云服务。维护者是 xxwjxx-1210,插件以 MIT License 发布,运行时零依赖,dist/ 就是源码,可以直接读。
下面按「这个包里有什么东西、怎么装、怎么配、日常怎么用、有哪些注意」来讲。
它把三件事放进了一个包¶
插件要解决的痛点是:网页版 DeepSeek 聊天聊得深,DSH 能执行任务,但两边记忆不通,人得在中间来回贴东西。插件把记忆库、卡片确认、网页版笔记三层做进一个包:
| 层 | 干什么 |
|---|---|
| 记忆库 | MEMORY.md 核心记忆常驻注入系统提示;notes/*.md 一张卡一个文件;index.json 索引;写一次自动 commit + push |
| 卡片确认 | 网页版按规则拆好的卡片先进 inbox/,你逐张过一眼,再决定「存到云端」还是「只存本地」 |
| 网页版笔记 | 侧栏网页版对话的进度存成 progress.md,旧稿滚进 history/(保留最近 20 份),正文尾部再回灌进系统提示 |
会话顶栏会多一枚脑形图标,点开是一条四步流水线:
- 打开网页版:在 DSH 侧栏打开
chat.deepseek.com - 让网页版整理成卡片:把提炼规则发给网页版,等它按格式吐出卡片
- 逐张确认并保存:弹窗里每张卡都有「看看全文 / 保存这张 / 不要了」
- 备份到云端:
commit+push,有推完的提交会自动补推
每一步都有状态行(第几步、共几步、当前卡在哪),第 3 步会显示生成状态:几点生成几张、跳过几张。流水线的第 2 步依赖侧栏浏览器自动化,登录、页面加载有问题时会失败,插件会把失败阶段、页面地址、输入框状态一起显示出来。
设计上有一个值得注意的取舍:不查重。同一主题想存几次就存几次,文件名冲突会自动加 -2、-3 后缀,既不覆盖也不静默跳过。这对「第二大脑」是合理的默认,因为索引和 memory_search 的存在让你随时能找回旧的那一份。
安装与启用¶
插件提供三种安装来源,下面命令来自 README 原文:
# 从 npm(推荐)
dsh plugin --profile <profile> add dsh-brain-hub
# 从 GitHub
dsh plugin --profile <profile> add "github:xxwjxx-1210/dsh-brain-hub#main"
# 或从本地 tgz
dsh plugin --profile <profile> add file:/绝对路径/dsh-brain-hub-0.2.6.tgz
其中 npm 安装对应 README 里推荐的路径;本地 tgz 那条命令里的 0.2.6 来自 README 示例文件名。装完必须在系统托盘彻底退出 DSH 再启动——前端 bundle 只在启动时加载,热重载换不掉它。升级插件步骤相同。
装好后配置写在 profile 层。注意不要把配置写进 node_modules/<包>/cordis.patch.yml,那个文件会在下次安装时被覆盖:
backend: git # git | folder | local
memoryDir: 'D:\notes\memory' # 记忆库(git 仓库);默认 $DSH_HOME/memory
notesDir: 'D:\notes\webds' # 网页版笔记;默认 $DSH_HOME/dsh_memory
remote: 'https://github.com/<你>/<私有仓库>.git'
branch: main # 默认 main
coreLimit: 3000 # 核心记忆注入上限(字符)
autoPull: true # 启动时 pull --rebase
autoPush: true # 写入后自动 push
readOnly: false # true 时所有写工具直接拒绝
injectProgress: true # 把 progress.md 尾部注入系统提示
remote 留空也能跑,只是不推送,纯本地记忆库同样可用。
第一次点顶栏脑形图标会弹新手引导:三步用法加三种云端存法,选一种后给出可直接粘贴的 YAML 片段,点「知道了,开始用」后不再出现,标记写进 <memoryDir>/hub.json。
三种云端存法,按你对备份的态度选¶
backend 字段决定记忆库怎么备份出去,三种方案覆盖「想有版本历史」「不想碰 git」「内容敏感」三种需求:
| backend | 存哪 | 要 git 吗 | 适合谁 |
|---|---|---|---|
git(默认) |
记忆库目录 → 推自己的私有仓库 | 要 | 多设备同步、想有版本历史 |
folder |
记忆库目录直接放在 OneDrive / 坚果云这类已同步的文件夹 | 不要 | 不想碰 git,让同步盘负责上传 |
local |
只在这台电脑 | 不要 | 内容敏感,不联网备份 |
# git
config:
backend: git
remote: 'https://github.com/<你>/<私有仓库>.git'
# OneDrive / 同步盘
config:
backend: folder
memoryDir: 'C:\Users\<你>\OneDrive\brain-hub'
# 只存本机
config:
backend: local
folder 模式下流水线第 4 步不执行 git commit,只提示文件已保存到同步盘。
逐张过卡:云端和本地分开¶
确认窗口里每张卡都有两个按钮:
- 存到云端:写入
notes/,进 git,会推送。 - 只存本地:写入
private/,.gitignore里永久排除,任何情况下都不会被推送。
判断标准 README 给得很直接:这张卡被同事或客户看到,你会不会紧张?真实客户名、报价、联系方式、未公开项目走本地;方法论、判断标准、脱敏案例走云端。
如果网页版那边卡住——没登录、弹「使用环境异常」、侧栏没加载完——插件还留了两条不依赖自动注入的兜底路径:菜单里可以「复制整理规则」自己粘贴到网页版,也可以「收进网页版最后的回答」直接读取当前对话正文、拆卡片、进入第 3 步确认。第 2 步彻底不通时流程仍然走得完。
数据格式与给模型用的工具¶
一张卡片就是一个 Markdown 文件,带 frontmatter:
---
id: 20261105-120000-标题
title: "标题"
tags: 标签A, 标签B
created: 2026-11-05T12:00:00.000Z
updated: 2026-11-05T12:00:00.000Z
uploaded: true
---
# 标题
正文
notes/ 的格式与 dsh-memory-github 兼容,可以直接接手旧库;private/ 同格式,只是不进 git。
插件暴露给模型的工具共九个:memory_write、memory_search、memory_read、memory_list、memory_stats、memory_core、memory_update、memory_forget、memory_sync。readOnly: true 时写类工具直接返回拒绝文案,不产生提交。客户端与宿主之间走 RPC,POST /api/plugin-rpc/brain-hub,信封 { type:"client-request", rpcId, method, payload:{ endpoint, payload } },端点包括 status、hub.settings、hub.rename、cards.list、cards.save、cards.read、cards.update、cards.discard、cards.upload、progress.save、progress.read、progress.history、memory.sync、prompt.get、prompt.save。
适合谁,以及几点注意¶
适合这类人:已经在用 DSH、同时习惯在网页版 DeepSeek 上长谈,想把聊出来的判断、流程、结论沉淀成可检索的文件库,又不打算为此搭数据库的人。backend: folder 让不熟 git 的人也能用,local 给内容敏感的场景兜底。
用之前建议先确认下面几点:
- 插件以当前 DSH 进程权限运行,安装前应检查源码与许可证。本插件是 MIT License,
dist/就是源码,零运行时依赖,审查成本不高。 - 项目星标数很低,属于个人维护的插件,长期维护节奏没有保证。它不查重、不做向量检索,搜索是标题/标签/正文加权打分,检索体验不要拿语义搜索来期待。
- 网页版那一半依赖侧栏浏览器自动化,需要先在侧栏登录
chat.deepseek.com,且 DSH 每次重启都要重新登录一次;DeepSeek 对内嵌环境可能弹「使用环境异常」,这时第 2 步会失败,需要走菜单里的兜底路径。 - 拆卡质量取决于提示词。规则在
<memoryDir>/prompts/distill.md,面板里可以直接改,改完立刻生效,不用重启。 - 只支持单仓库单分支,多人协作要靠 git 自己解决冲突。
- 不覆盖不静默跳过的策略意味着重复主题会留下多份卡,清理依赖
memory_forget主动操作,不要指望自动合并。
工具列表和 RPC 端点来自 README,实际字段以你安装到的插件版本为准。
小结¶
dsh-brain-hub 的价值在于把「记忆」这件事拆到最朴素的存储上:Markdown 文件、git 同步、逐张确认、云端和本地分开。它没有数据库,没有向量库,也没有复杂的同步协议——文件名冲突加后缀、搜索按字段加权打分,这些取舍换来的是一套读得懂、改得动、备份策略自己定的记忆层。
目录页:https://www.skillhub.cn/plugins/xxwjxx-1210/dsh-brain-hub
源码与文档:https://github.com/xxwjxx-1210/dsh-brain-hub