Memory

dsh-file-memory

ICCuse/dsh-file-memory · ★ 0

ICCuseCurated

File-backed working memory: memorize/recall key premises verbatim in a session notes file so they survive context compaction losslessly.

License
MIT
Added
2026-08-14
Maintenance
active
Install kind
github
Manifest status
Declared
Manifest path
package.json#dsh
Manifest checked
2026-08-19
Lifecycle scripts
None found

Static manifest checks report declarations only; they are not compatibility or security review.

安装

dsh plugin --profile web add github:ICCuse/dsh-file-memory

GitHub 源码安装:首次需按提示配置 allowBuilds 构建授权后重试

For install and environment setup, plus plugin development tutorials, see DSH community docs ↗

README

Source README · body: en · Read Chinese README

Table of contents
  1. Why
  2. Tools
  3. Config
  4. Install

中文 | English

File-backed working memory for long tasks. Two model-facing tools — memorize and recall — keep key premises as verbatim bytes in a session-scoped notes file inside the workspace, so they survive context compaction losslessly: a summarizer can blur or drop a fact, but a file round-trips it byte-exact.

Why

Compaction checkpoints are LLM-generated and LLM-rewritten generation after generation; the prompt-space "state document" proposals still re-summarize the previous state every pass. Files are the only lossless medium the agent already has: write once, read back exactly. This is the pragmatic complement to prompt-space compaction, usable today on the shipped compaction-basic backend.

Tools

Tool Behavior
memorize(entries) Appends verbatim deduplicated lines to <workspace>/.dsh-notes/<session>.md.
recall(query?) Reads the notes back, optionally filtered to lines containing query; caps output at maxRecallChars.

Both require an agent-backed session and a mounted fs service; they resolve the notes file relative to the session's workspace cwd (falling back to the backend default when the session has no cwd).

Config

Field Default Meaning
maxRecallChars 6000 Recall output cap.
notesDir .dsh-notes Notes directory name inside the workspace; must be a bare directory name.

maxRecallChars must be an integer >= 1; misconfiguration throws at plugin load.

Install

Not on npm yet - install from this repository:

npm install github:ICCuse/dsh-file-memory
# or: pnpm add github:ICCuse/dsh-file-memory

Then mount the bundle (declared in package.json 'dsh.bundle'):

- id: dsh-file-memory
  name: 'dsh-file-memory'

Or, once published, 'dsh plugin --profile web add dsh-file-memory'.