Skip to content
dsh.fish
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

Source