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
踩坑提醒
安装前请审阅上游仓库;本指南基于已收录字段自动派生,可能滞后于最新版本。如发现与官方文档冲突,请以上游为准。
— 来源:通用规则