跳到主内容

engramory 使用指南

为 DSH 注入 Engramory 记忆纪律,把 MEMORY.md 索引的 200 行/25KB 上限变成真正会被拒绝的硬卡口。

本文为派生内容(基于 wiki / faq / compatibility_json 自动组装),非 AI 即时创作。

本文由本站基于该插件已收录的字段自动派生(wiki / faq / compatibility_json / readme),非 AI 即时创作。每节末尾标源字段。

快速上手

engramory

— 源: plugin_wiki.wiki_content

安装与验证

dsh plugin --profile web add dsh-engramory

复制以上命令在 DSH Web Profile 内运行。安装完成后在「插件列表」启用即可。

— 源: plugins.install

关键要点

  • basic-memory —— markdown 为真值源、YAML frontmatter 的 type、[[wikilink]] 图、本地优先。
  • <MEMORY_ROOT> —— 记忆放哪。放在你真的会去看的地方;在仓库里就 .gitignore 掉。
  • 索引上限 —— 软提醒 / 硬上限默认 150 行 / 200 行,字节 20KB / 25KB;都能用 hook 的环境变量覆盖(见 hooks/)。
  • 永远别把密钥的「值」写进记忆——key、token、密码、cookie、恢复码,只记它「在哪」(如「在密码管理器 / 环境变量 FOO」)。IP / 路径 / 序列号当定位符可以;凭据值绝不行。
  • 尽量少写部分 PII(手机号、邮箱、地址),优先用指针。

— 源: plugin_wiki.readme_zh (fallback readme_raw)

常见问题

安装这个插件之后会自动生成我的记忆库吗?

不会。插件只负责把 200 行/25KB 上限变成硬卡口并向宿主注册一条名为 engramory 的 skill,记忆库和常驻规则文件需要单独跑 Engramory 仓库里的 python tools/engramory_init.py dsh --install-skill 创建。

索引被改超之后还能不能压缩?

能,而且必须能。判定规则是"如果写入让索引超过上限且比当前文件更大才拒绝",因此一个 210 行的索引被压缩到 205、再到 198 都会放行,渐进式压缩始终可行。

看到拒绝提示该怎么办?

拒绝原因里会直接告诉你当前行数/字节数与上限。把长行拆成"一句话要点 + 链接",合并重复条目,归档冷笔记,然后用整文件覆写(write 或 str_replace_editor create)一次性压缩;下一次整文件写入会通过。

想调整上限大小去哪改?

不要在原 profile 里再加一条 - insert:,否则会出现两个 engramory 行、原 caps 仍生效。正确做法是在你 profile 自己的 patch 层里以 - id: engramory 覆写该行的 config,且必须把全部想保留的键重新列出来。

是否包含原生模块?

不包含。插件是纯 ESM,只用 node:fs 和 node:path 两个内置模块,没有 node-gyp、不挑 Node ABI,三大操作系统都能跑。

为什么 dsh 0.1.0-rc.6 上 dsh plugin add 装不上?

这是上游 dsh 的 preview 打包问题(dsh plugin 走未捆绑的 pnpm、依赖 @deepseek-ai/dsh-type-meta 在 registry 找不到),不是插件缺陷。修复发布前插件本体的决定表仍由 21 个 node --test 用例守住。

读 MEMORY.md 会被拦吗?

不会。守卫只对已知会改文件的工具(write/edit/str_replace 等)做裁决,read/view/ls 和任何未知工具一律放行;这正是设计选择——超 cap 的索引必须还能被读,否则就陷入"想压缩却看不到内容"的死锁。

— 源: plugin_wiki.faq_json

兼容性

  • DSH: 未声明
  • Node: >=18

— 源: plugin_wiki.compatibility_json

踩坑提醒

安装前请审阅上游仓库;本指南基于已收录字段自动派生,可能滞后于最新版本。如发现与官方文档冲突,请以上游为准。

— 来源:通用规则

engramory 使用指南