Your harness forgets everything when the session ends
One plugin fixes that.
Every session, every channel, one memory. What you told dsh yesterday is right there tomorrow.
One command. Permanently.
14 days free
Full access. Install it, watch your harness remember, cancel anytime.
See the difference
You: Keep going on the migration we planned
dsh: Which migration? Can you share the plan, the target schema, and the constraints we agreed on?
A fresh session, and you are re-explaining a decision you made last night.
You: Keep going on the migration we planned
dsh: Picking up from last night: Postgres 16, the users table split, and the zero-downtime constraint. Starting with the backfill script.
Already knows. Starts working immediately.
Sound familiar?
Re-pasting context into every new session
Telegram, Web UI, and headless runs that know nothing about each other
Decisions and preferences lost the moment a session closes
With MemoryRouter
Relevant memories injected at the start of every turn
One memory across Web UI, Telegram, Discord, ACP, and headless sessions
Clean user and assistant text stored after every completed turn. Zero tool noise.
14-day free trial. Cancel anytime.
Set up in 2 minutes
One command, one config line, and your harness remembers forever.
$ dsh plugin --profile <your-profile> add dsh-memoryrouterInstalling from a local checkout instead? Use dsh plugin --profile <your-profile> add /path/to/dsh-memoryrouter
- id: memoryrouter
config:
apiKey: mk_your_key_here # or leave unset and export MEMORYROUTER_API_KEYPrefer an environment variable? Leave apiKey unset and run export MEMORYROUTER_API_KEY=mk_your_key_here. Get your key with a free MemoryRouter account.
Tell your harness something you want it to remember. Close the session. Open a new one, on any channel, and ask about it. That is the moment it clicks.
Sign up, copy your key, paste it in. Two minutes.
How it works
Without MemoryRouter:
You dsh Model Response (gone when the session ends)
With MemoryRouter:
You dsh (memories injected at agent/pre-step) Model Response (stored at turn/end)
The plugin hooks the harness core at two sanctioned extension points: the durable session/event stream for storage and the agent/pre-step waterfall for recall. It lives below every channel plugin, so memory works the same in the Web UI, IM gateways, ACP, and headless runs. Your model provider and inference stay exactly where they are. MemoryRouter only stores and retrieves memories.
Built the right way
Most memory bolt-ons store whatever flows through a chat channel. This one stores exactly what matters.
Noise-free by design
Only your words and the assistant's final reply are stored. Tool calls, tool results, reasoning blocks, system prompts, skill catalogs, and slash commands never make it into memory.
Never in the hot path
Storage is async fire-and-forget with one retry. Recall has a short timeout and degrades silently. Your harness is never blocked, slowed, or crashed by memory.
Channel-agnostic
A memory created in Telegram is recalled in the Web UI and vice versa. Zero channel-specific code, zero extra configuration.
Install in 2 minutes. 14-day free trial.
Your inference stays yours
MemoryRouter talks to two endpoints, ingest and prepare. Your model provider, your keys, and your inference stay in dsh.
Full-fidelity memory
Real conversations, not bullet-point summaries. 200M memory tokens a month, retrieved in 300 to 500 ms on average.
Tunable
Density presets from low to xhigh, recall and store bounds, per-session or shared vaults, namespaces for multiple installs, subagent capture on demand.
Configuration
apiKey # Your mk_ memory key (or set MEMORYROUTER_API_KEY)
density # low / default / high / xhigh
vault # core (shared across sessions) or session
namespace # Share one key across several dsh installs
includeSubagents # Also remember subagent sessions
store / recall # Toggle each direction independently
enabled # Master switch
Start free. Then just $20/mo.
14-day free trial. Cancel anytime.
- 200M memory tokens / mo included
- Unlimited memory contexts
- Same memory in ChatGPT, Claude, Codex, OpenClaw, and dsh
- 300 to 500 ms average recall on a typical vault
- Your keys, your data, your control
No inference markup, ever.
FAQ
Give your harness a memory tonight
14 days free. Two minutes to install. Tomorrow's first session already knows everything from today.