Bundle
dsh-memory-canvas
DSH plugin: offload bulky tool logs to refs/*.md and keep a Mermaid canvas. Don't pip the wrong dsh.
- Source
- guobinmengxiang-rgb
- stars
- 1 stars
- License
- MIT
- Updated
- Updated 2 days ago
Readme
# dsh-memory-canvas
DeepSeek Harness plugin. Offload bulky tool logs to `refs/*.md`. Keep a Mermaid canvas in context. Recall by `node_id`. Zero daemon.
**CAUTION: don't pip the wrong dsh.** Official CLI: `npx @deepseek-ai/dsh web`. The PyPI package `deepseek-harness-cli` is a different tool (`dsh doctor` / `dsh chat`).
GitHub topic: `dsh-plugin`. Chinese: [README.zh.md](README.zh.md)
## Demo (no dsh)
node demo.mjs
Writes `.dsh-memory/refs/{id}.md`, prints the canvas, recalls by id, and asserts the body matches.
## Install into a profile
This package is plain JavaScript. There is no prepare or build step, so a git install does not need allowBuilds.
dsh plugin --profile web add github:guobinmengxiang-rgb/dsh-memory-canvas
Check the composed layer without booting:
dsh --profile web --dump-config
You should see a `dsh-memory-canvas` layer. Then start the profile as usual.
Official CLI is `@deepseek-ai/dsh` (today `0.1.0-rc.6`).
## Tools
The agent must call these tools. This plugin does **not** auto-intercept tool logs.
| Tool | Params | Result |
|---|---|---|
| `memory_offload` | `title`, `body` (required) | short `id`, path, `canvas updated` |
| `memory_recall` | `id` (required) | stored body (truncated at 8k with a note) |
| `memory_canvas` | none | Mermaid markdown of the task canvas |
Storage (default): `<cwd>/.dsh-memory/canvas.md` and `<cwd>/.dsh-memory/refs/{id}.md`. Override root with `DSH_MEMORY_DIR`.
Canvas nodes use a 24-character title. Full text lives in `refs/`.
## What this is not
- Not [TencentDB Agent Memory](https://github.com/TencentCloud/TencentDB-Agent-Memory) (not their L0-L3 persona pipeline)
- Not OpenClaw
- Not a vector DB
- Not [Yiipu/dsh-agentmemory](https://github.com/Yiipu/dsh-agentmemory) (that one needs a daemon on `:3111`)
Inspired by Tencent's short-term symbolic memory (MIT idea, our code): refs + Mermaid canvas + `node_id`.
## Honest limits
- DeepSeek Harness is a developer preview: THERE WILL BE COMPATIBILITY-BREAKING CHANGES.
- The plugin runs on your machine.
- This bundle `cordis.patch.yml` uses the package name `dsh-memory-canvas`, not a filesystem path.
## Official docs and related
- Your first plugin: https://deepseek-harness.github.io/deepseek-harness/en/develop/basic/
- Package and install a plugin: https://deepseek-harness.github.io/deepseek-harness/en/develop/basic/publish
- Cordis: https://github.com/cordiverse/cordis
- Sister plugin: https://github.com/guobinmengxiang-rgb/dsh-xhs-note
- Course: https://github.com/guobinmengxiang-rgb/dsh-getting-started
- Awesome list: https://github.com/guobinmengxiang-rgb/awesome-dsh
## License
MIT (c) 2026 国彬 张
Install
dsh plugin --profile web add github:guobinmengxiang-rgb/dsh-memory-canvas#a11f50184b51325cb4bac8dca10f69fd67cd29bd
Profile: web
With the hub plugin installed, ask your agent to install it by name — it resolves the same plan shown here.
dsh plugin --profile web add github:stvlynn/dsh.fish#path:packages/dsh-plugin-hub
install dsh-memory-canvas from the hub