Skip to main content
S

dsh-beme

shua-781/dsh-beme

Long-term memory kept as blocks: one event per block, written to a local append-only event log with a block view and derived indexes, so a full history stays recoverable while only the matching blocks reach the context. The model saves entries with memory_remember and pulls the relevant few with memory_recall, plus one automatic recall pass before each step. Data stays in ~/.beme; no external service and no API key.

Install

dsh plugin --profile web add github:shua-781/dsh-beme

README

dsh-beme

给 AI 一个长期记忆库。

装上一个插件,你的 AI 多两个工具:memory_remember(记一条)、memory_recall(翻一条)。 不用配模型、不用建库、不用写代码。


一、块库记忆是什么

一般的做法是把聊天记录整段塞进上下文。短会话还行,聊到第三天就装不下了 —— 要么截断(忘掉开头),要么总结(总结会走形),要么烧钱(token 一直涨)。

块库换了个方向:不存"对话",存"事"。

你说:记住,我不吃香菜
        ↓
切成一件事一块:〔我不吃香菜〕
        ↓
落进本地库,带词表特征

下次你提到吃饭,它捞出的不是那一段聊天,而是那一块。

一、流式汲取块,省下的是上下文

每轮对话,只把这一轮用得上的几块递到模型眼前 —— 通常几百字,不是几万字。

上下文不是"记忆的仓库",是"记忆的工作台"。台子上只放正在用的那几件工具,其余的都还在柜子里,随手能取。所以它能一直在线,不会越聊越笨、越聊越贵。

二、精确查找,不是模糊相似

块和词是对着切的:一件事一块,每块带自己的主题词。找的时候按词和特征定位 —— 要什么给什么,不会因为"意思有点像"就捞一堆无关的东西回来。

这也是它跟向量检索最大的区别:它知道自己捞的是什么,也知道自己没捞到什么。

三、全量可追溯,一块都不丢

库里有两层:

层是什么
账本只追加的事件日志。发生过就永远在,永不修改、永不删除
块库账本的一份"当前视图"。同一件事被讲了八遍,块只有一块(带 8 个版本痕迹)

所以:块是碎的,但每一块都能追回到它从哪句话来的。想不起细节的时候,能一路翻回原文。

四、收纳你和 AI 的全部记忆

它记得的不只是"你告诉它的事":

  • 你的事 —— 喜好、习惯、约定、人物关系、发生过什么
  • 它自己的事 —— 它的判断、它犯过的错、它想通的道理

一个只有用户档案的库,是通讯录。 一个连自己也记的库,才叫记忆。


二、安装

需要 DSH Desktop。

命令行(推荐)

dsh plugin --profile web add github:shua-781/dsh-beme

插件市场

DSH Desktop → 左侧「插件」→ 搜索 dsh-beme → 安装。

本地包

dsh plugin --profile web add "file:/你的路径/dsh-beme-0.1.5.tgz"

装完验一句

重启 DSH,然后新开一个会话(工具表只在新会话里刷新):

① 说:记住,我最喜欢的颜色是墨绿
② 新开一句:我最喜欢什么颜色?
③ 答出「墨绿」= 通了

看不到 memory_remember 这个工具,就是没加载上,别怀疑是模型不会用。


三、卸载

dsh plugin --profile web remove dsh-beme

数据默认不会删(在 ~/.beme),想清干净再删目录:

rm -rf ~/.beme          # Linux / macOS
rmdir /s ~\.beme        # Windows cmd

Windows 上也可以用发行包 scripts/ 里的 uninstall-beme-from-dsh.py --remove-data。

卸载不会碰 DSH 本体,不会碰别的插件。


四、数据在哪

~/.beme/
├── blocks/events.jsonl   账本(只追加,唯一的真相)
├── blocks/blocks.json    块库(账本的视图,可重建)
├── blocks/slots.json     坑位台账
├── blocks/idx/           索引(删了自动重建)
└── blocks/meta.json      词表 + 水位
  • 备份 / 搬家:整个 ~/.beme 拷走就行
  • 不加密:能读到这个目录的进程就能读走全部内容,自己看着办
  • 纯本地:不上传、不联网、没有账号

MIT。库本体的设计原理在 shua-781/beme。 出 bug 提 issue,别客气。

Related plugins