Skip to content

Repository files navigation

dsh-code-memory

dsh-code-memory 是 Community v0.15 standard host facet。它只通过标准生命周期发布一个 /memory Command,并使用标准 storage.dsh/v1alpha1#LocalStorage 保存开关状态。

这是 trusted-in-process 插件:它与宿主运行在同一个 Node.js 进程中,能力声明不是 sandbox 或安全边界,不应被理解为隔离执行或宿主背书。

能力

  • /memory:概览、listaddshowrmsearchstatscompactonoffrebuild
  • LocalStorage:只保存一个 JSON toggles 记录;/memory on|off 控制命令是否启用
  • Markdown:每条记忆和 MEMORY.md 索引都在文件系统中;Markdown 文件是唯一事实源,索引可从文件重建
  • 关键词评分、代码路径锚点、冲突提示和 compact 报告均为本地纯算法

当前 facet 不声明标准 Tool 或 MessageObserver,也不加载宿主私有 hooks、session events 或 TUI 私有服务。

Workspace 限制

标准入口使用 process.cwd() 作为 workspace。当前实现没有标准 session/workspace context,因此不会伪造 session cwd;从不同工作目录执行命令会访问不同的 project 记忆目录。

  • global:$DSH_HOME/memory/(未设置时为 ~/.dsh/memory/
  • project:当前 git 根目录下的 .dsh/memory/

记忆正文位于 facts/episodes/procedures/MEMORY.md 是派生索引。

使用

将包安装到支持 Community v0.15 Host facet 的宿主,并按宿主的标准插件流程启用 dsh-plugin.json。清单中的 Host 入口是 lib/index.js,必需能力是 Command 和 LocalStorage;不需要额外的宿主私有补丁。

宿主需要按 Manifest 授予 commands.invokestorage.local.readstorage.local.write。权限声明用于准入、授权和审计,不构成进程或操作系统级隔离。

开发与验证

pnpm install --frozen-lockfile
pnpm validate:manifest
pnpm build
pnpm test
pnpm pack:verify

pack:verify 会检查发布包包含 dsh-plugin.jsonlib/index.js,且不泄漏 src、测试或文档目录。

License

BSD-3-Clause

Releases

Packages

Contributors

Languages