dsh-memory-canvas
DSH plugin: offload bulky tool logs to refs/*.md, keep a Mermaid canvas, recall by node_id. Zero daemon. Don't pip the wrong dsh.
- Stars
- 0
- Language
- JavaScript
- Created
- Aug 17, 2026
- Updated
- Aug 17, 2026
Introduction
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
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 (not their L0-L3 persona pipeline)
- Not OpenClaw
- Not a vector DB
- Not 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.ymluses the package namedsh-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 国彬 张