keep-reminder
Manifest valid★ 1Injects the contents of a .keep-reminder file from the session working directory as a system-reminder, with three modes: once per session, first step of every turn, or every request.
keep-reminder
English | 简体中文
Inject a user-defined .keep-reminder file into the model context as a <system-reminder> user message.
Quick Start
- Install the plugin (choose one):
# A. Official command (backs onto pnpm; install pnpm first)
npm i -g pnpm
dsh plugin --profile web add keep-reminder
# B. Install with npm directly into the profile directory
cd ~/.dsh/profiles/web # Windows: C:\Users\<you>\.dsh\profiles\web
npm install keep-reminder --save
- Mount it in the profile
cordis.patch.yml. To load a plugin you must insert it, not target an id. A bare- id: keep-reminderlist entry is a patch over an already-loaded entry — it warnsentry "keep-reminder" not foundand does nothing. Use theinsert:form:
- insert:
- id: keep-reminder
name: 'keep-reminder'
config:
mode: turn # session | turn | request
file: '.keep-reminder' # optional
- Create a
.keep-reminderfile in the session workspace root (see.keep-reminder.example) with the content to remember. - Restart
dsh weband start a new session.
What is the "session workspace root"?
It is the session's working directory (cwd); the plugin looks for .keep-reminder only there and does not search upward.
- Web GUI: the folder you pick when creating the session. If you pick
D:\ui-workspace\my-project, put it atD:\ui-workspace\my-project\.keep-reminder. - CLI / headless: the current directory where you run
dsh(process.cwd()).
Configuration
| Key | Default | Description |
|---|---|---|
mode | turn | Injection frequency: session / turn / request |
file | .keep-reminder | File path; relative to the session working directory, or absolute |
Three modes
| mode | When injected |
|---|---|
session | Once per session (first step of the first turn) |
turn | Once per turn (first step) |
request | Every model request |
Comparison
AGENTS.md, direct user prompts, and this plugin all convey information to the model, but with different purposes:
| Dimension | AGENTS.md | User prompt | keep-reminder |
|---|---|---|---|
| Channel | <system-reminder> user message | ordinary user message | <system-reminder> user message |
| Scope | global (~/.dsh) + project directories | one message | one file in the workspace root |
| Frequency | once per session, updated on change | one-shot | session/turn/request |
| Priority | guidance (below system prompt and direct user instructions) | direct user instruction (highest) | guidance (same as AGENTS.md) |
| Maintenance | edit a file | write each time | edit a file |
| Live update | yes | — | yes (re-read per injection) |
| Use case | team / project conventions | temporary, one-off | personal "must-remember" reminders |
File-state handling
How the plugin treats the .keep-reminder file in each state:
| State | Behavior |
|---|---|
| File missing | Silently skipped — no injection, no error |
| File exists but empty/whitespace | Silently skipped — no injection |
| File has content | Injected as <system-reminder> per mode |
| Content modified | New content injected next turn/request (re-read live) |
| File deleted | Injection stops from the next turn, silently |
| File restored | Injection resumes |
Replacing deepseek-harness-zh-cn
keep-reminder is a general capability; deepseek-harness-zh-cn is one concrete use of it — put the "Chinese-first" rules into a .keep-reminder file to achieve the same effect (see .keep-reminder.example). The difference:
deepseek-harness-zh-cn: works out of the box, rules hard-coded;keep-reminder: fully customizable — change the file to change the rules (not only language).
Development
Build
npm install
npm run build # compiles src → lib/index.js
Mount locally
During development you can mount the compiled output directly via a file:// URL, with no package install. Remember to use the insert: form:
- insert:
- id: keep-reminder
name: 'file:///D:/ui-workspace/keep-reminder/lib/index.js'
config:
mode: turn
Adjust the URL to your checkout path.
Restart
npx @deepseek-ai/dsh web
Verify
# Windows
npx @deepseek-ai/dsh web --dump-config | findstr /C:"keep-reminder"
# Linux / macOS
npx @deepseek-ai/dsh web --dump-config | grep keep-reminder
Seeing the keep-reminder row with no not found warning means the plugin is mounted.
License
Comments
Loading…
Similar plugins
by polohot
Injects your own saved context entries as a Remember row after each user message, per turn or once per session, with a Settings editor and a manager page.
★ 1
JavaScript
Oct 5, 2026
dsh plugin --profile web add dsh-adrian-inject-contextby yangyongzhen
Long-term memory injected at session start: preferences/facts/summaries/knowledge in global and per-project scopes, budgeted recall via `agent/pre-step`, durable JSON store.
★ 1
↓ 669/wk
JavaScript
Aug 15, 2026
dsh plugin --profile web add dsh-memoryMessage recall for DeepSeek Harness (dsh): cut the conversation back to before a message you already sent, and put its text back in the composer.
★ 0
MIT
TypeScript
dsh plugin --profile web add @jochenyang/dsh-rewind-pluginby wojiao42
文件型长期记忆:每个会话注入你自己的 Markdown 记忆文件,提供读写工具,并能查出 DSH_HOME 漂移;不读对话、不联网 · File-backed memory for DeepSeek Harness, with verifiable constraints
★ 0
MIT
JavaScript
Oct 7, 2026
dsh plugin --profile web add dsh-memory-fileby 863683348
Local, auditable personal memory for DeepSeek Harness: preferences, project conventions, workflows and error lessons persisted as a changelogged JSON file in the workspace, with onboarding, auto proje
★ 1
↓ 22/wk
JavaScript
Sep 11, 2026
dsh plugin --profile web add dsh-memory-setupby LittleBlackTong
Long-term cross-session markdown memory with an LLM-Wiki structure and a SOUL.md persona, injected at session start (by default only after the first user message and only in the active session), plus
★ 8
↓ 953/wk
MIT
JavaScript
Oct 16, 2026
dsh plugin --profile web add dsh-plugin-memory