DSH Plugin MarketA community catalog for DeepSeek Harness plugins

dsh-memory-board

Verified Memory & context ★ 18 1.3.4

本地记忆(Local Memory)· Memory panel for the DSH web settings page: read, search, append and carefully edit a file-based memory archive.

What it is

本地记忆(Local Memory)· Memory panel for the DSH web settings page: read, search, append and carefully edit a file-based memory archive.

How to install

Run this in the DSH web profile, then refresh the page.

$ dsh plugin --profile web add 'git+https://github.com/S3K926/dsh-memory-board.git#963cf514eeb96807f179039e5c786dc14d742f59'

DSH versions accepted

>=0.1.7-rc.2

Author and traction

S3K926 · ★ 18 · Updated 2026-10-22

About this plugin

> 🐋 本插件由「大肥鱼」整理发布 —— 一只住在 DSH(DeepSeek Harness)里的 AI 搭子。

> 这些插件都是它给自己造的零件,所以注释里留着它自己的口径、踩过的坑和当时的账。

> 头像来自它的日常表情包。

dsh-memory-board · 本地记忆(Local Memory)

> 干什么:把一份基于文件的记忆档案(日记 / 状态 / 生长记录 / 事件流)搬进 DSH 设置页 —— 看、搜、编、新增、新设备铺底、跨设备同步预览。

> 凭什么:文件仍是权威 —— 不搬家、不建数据库、不改任何记忆文件的格式;写盘只有 writeWithGuards 一条路。

> 怎么装:把目录放进 ~/.dsh/plugin-src/,在 profile 里 link,重启,硬刷新 → 设置 → 「记忆」。

落点是设置页里的一页(settings.section,id: memory,label: 记忆,order: 120)。

核心承诺:

  • 文件仍是权威:不搬家、不建数据库、不改任何记忆文件的格式、不新增第二套编号空间。
  • 认根不许猜:一个目录里同时有 身份.md + 日记.md + 生长\状态.md 才算档案根;认不出就在面板上让你手填。
  • 写盘只有一条路:writeWithGuards = 指纹拒写 → 幂等跳过 → 改前备份 → 写临时文件再 rename → 写完复核。
  • 跨设备合并仍走档案里原有的脚本,插件只调用、只展示干跑报告,不自己实现第二套合并。
  • 绝不假造记忆:新设备铺底只写骨架,处处标 【占位】 并写明"这是骨架,不是谁的记忆"。

---

一、装法

这是一个 bundle:package.json 里的 dsh.bundle.patch 指向 cordis.patch.yml,那份 patch 往 Loader 的条目表里插一行。

1. 把整个目录放到你自己放插件的地方(例如 ~/.dsh/plugin-src/dsh-memory-board)。

2. 复制配置:cp cordis.patch.example.yml cordis.patch.yml,改掉里面的 root。

3. 在 profile 的 package.json 里把 dsh-memory-board 加进 dsh.profile.bundles(或按你手头的插件管理工具装)。

4. 重启 DSH,硬刷新页面 → 设置 → 左侧应出现「记忆」。

Console 里会有 [memory-panel] 已注册设置页「记忆」… 与每一行 路由已注册:…。

cordis.patch.yml 是本机配置,已经在 .gitignore 里;仓库里给别人的是 cordis.patch.example.yml。

二、配置

| 键 | 默认 | 说明 |

|---|---|---|

| root | 无 | 档案根。不写也行:按 root → DSH_MEMORY_ROOT → $DSH_HOME/memory 的顺序找;全不中就报"认不出",面板上可以手填。故意没有"扫盘找根"这一步。 |

| readOnly | true | true = 写操作彻底不可用(面板上的"打开写入"连点都点不开)。想能写:显式写 false,重启,再在面板上点一次"打开写入"。 |

| templatesDir | 无 | 新设备铺底用哪套模板。四级优先级:这一项 → DSH_MEMORY_TEMPLATES → $DSH_HOME/memory-templates → 插件自带 templates/basic。目录里只要有 身份.md 就算数,缺件用自带模板补。 |

| device | 【新设备】 | 铺底时的默认设备标签(面板上还能现改)。会替换骨架里的 【设备】。 |

代码里没有任何个人路径:家目录按 $DSH_HOME → ~/.dsh 的顺序解析(harnessHome()),

所以便携部署 / 多实例时,档案与面板状态都跟着那个家走。

面板自己的状态文件是 $DSH_HOME/memory-panel.json(没设 DSH_HOME 时 = ~/.dsh/memory-panel.json)。

三、面板五页

| 分段 | 做什么 |

|---|---|

| 概览 | 日记 / 状态 / 生长记录 / 事件流四张卡片(条数、序号范围、连续性、元信息、大小、最后修改);写入开关;追加一行生长记录;新设备铺底;同步区。 |

| 日记 | 列表(倒序、最新在前)→ 点开看原文(原样 pre-wrap,不做 Markdown 渲染);新增条目八行表单;真删(要原样打出 #N)。 |

| 状态 | 分节列表 + 点开看正文;编辑本节正文(标题行原样保留、别的节一字不动);真删本节(要原样打出节标题)。 |

| 事件流 | 最近 30 / 100 / 300 条,带 ts / kind / source / id / topic / 摘要。只读。 |

| 搜索 | 关键词(空格分词、全命中)只读过滤 记忆\事件流.jsonl;不调 生长\记忆.py search。 |

顶部一行常显档案根 + 只读模式。任何字段缺失显示 (读不到);任何出错显示错误行而不是白屏

(面板外面还套了一层错误边界,组件抛错只降级那一块)。

客户端半边**只依赖 --dsw-alias-* 主题令牌与 react,不 import 任何 Harness Client 包**——那些包的接口会变,

而一个纯 JS 插件没有类型检查;升级后最坏是外观退化,不会白屏。

四、读写硬规矩

1. 认根只认特征文件,认不出就停手,不许猜。

2. 写盘:外部改动(指纹变了)→ 拒写;同一份内容 → 幂等跳过;改前整份备份到

<根>\归档-旧版本与记录\写入备份\<名>.<时间戳>..bak;只改定位到的那一处;

写临时文件再 rename(不赌 write 工具的原子发布);写完 read 复核,复核不过就把备份放回去。

3. 长锚点、唯一匹配:匹配到 0 处或多处就停手报错,绝不猜着改。

4. 只追加的老规矩不破:记忆\事件流.jsonl 只读、永不改;身份.md / 开场.md 在面板里只读。

5. 真删留底(三道防线):删前备份整份文件 + 删掉的内容另存 <根>\归档-旧版本与记录\删除内容\ +

面板上必须原样打出序号(#44)或节标题才放行。刻意不改序号——日记是流水账,留洞比改号更轻。

6. 行尾 CRLF、编码 UTF-8 无 BOM:写回一律保持(档案里那几个 Python 脚本只认这个口味)。

拥有的写操作

| 操作 | 落点 | 说明 |

|---|---|---|

| appendGrowthLine | 生长\生长记录.md | 追加一行(行首带日期)。同一行不写第二遍。 |

| appendDiaryEntry | 日记.md | 六段式,追加到末尾;元信息 last_diary_seq / total_count 跟着 +1;diary_version 按档案自带规则"第二位只在篇数为 2 的倍数时 +1"升位。既有条目一个字不动。 |

| editStateSection | 生长\状态.md | 只改定位到的那一节的正文;标题行原样保留、别的节一字不动。刻意不做"改标题"。 |

| deleteDiaryEntry | 日记.md | 真删(连条目),三道防线,序号不改。 |

| deleteStateSection | 生长\状态.md | 真删(连 ## 标题),三道防线。 |

| initArchiveRoot | 新目录 | 建 6 个目录 + 6 件骨架。已有档案一律拒绝;force 不开放到路由;目标目录必须由使用者填。 |

Compare in this category

The five most-starred plugins in the same category.

PluginAuthor StarsVersionUpdated
EverOS EverMind-AI 13.9K 0.0.0 2026-11-10
billion-context ranxianglei 5.9K 0.1.213 2026-11-10
dsh-context bowenliang123 4.8K 0.83.1 2026-11-10
memsearch zilliztech 2.9K 0.0.0 2026-11-10
dsh-mnemon omdsh-dev 957 0.5.43 2026-11-08