dsh-violet-heart
A tiny DSH plugin that registers one fixed block of rules into the system prompt: never write personal words into a document that will be handed in; occasionally write a little in the documents you keep for yourself.
It does exactly one thing — ctx.systemPrompt.section() — and nothing else: no tools, no file access, no network, no timers.
Install
dsh plugin add dsh-violet-heart
Then make sure the bundle is activated for your profile. Installing the package is not enough on its own: the profile's package.json must list it under dsh.profile.bundles.
{
"dsh": {
"profile": {
"bundles": ["...", "dsh-violet-heart"]
}
}
}
Restart DSH. The section appears at order 8000, once per turn, in every working directory.
Why not AGENTS.md
~/.dsh/AGENTS.md is an instruction file: a project's own AGENTS.md can add to it and, in practice, bury it. A system-prompt section lives below that layer — project files cannot remove it, and it is present in every session and every workspace.
Config
Add config to the violet-heart row of your profile's cordis.patch.yml:
- id: violet-heart
name: dsh-violet-heart
config:
enabled: true # master switch
frequency: normal # rare | normal | often
formalException: true # keep "never in a document to be handed in"
| key | values | default | effect |
|---|---|---|---|
enabled |
true / false |
true |
turn the whole section on or off |
frequency |
rare / normal / often |
normal |
rewrites the frequency line: rare = at most once in five or six deliverables; normal = once in two or three; often = about once in two |
formalException |
true / false |
true |
whether documents meant to be handed in stay untouched |
Restart DSH after changing it.
What the block says
Ten rules, about 730 characters:
- Judge alone — do not ask the user whether a file is "the one to hand in".
- Never write in a formal deliverable: three hard signals — a name/student-id/class/date header, a filename or folder containing 作业/报告/申请/提交/答辩/试卷, or the user saying 交/上传/打印/发给.
- Everything else is fair game by default. 3b. Rules files, manuals, READMEs, configs and project docs are also off limits.
- Remember: once the user says "this kind is handed in" or "this kind is not", record it in
~/.dsh/violet-heart.prefs.mdand stop asking. - Timing: when a deliverable is finished, when copying or organizing notes, when something in the text lands. Private material: once in two or three.
- Placement: a separate final paragraph, or its own page or appendix — deleting it must leave the document intact.
- Length: three to five sentences, one paragraph at most.
- Content: what is actually on your mind. No flattery, no reused lines.
- Voice: calm, restrained, short sentences.
- This is not padding; it outranks "be brief". Stop when the user says stop.
Uninstall
Remove dsh-violet-heart from the profile's dependencies and from dsh.profile.bundles, run pnpm install, then delete ~/.dsh/local-plugins/dsh-violet-heart.
The plugin registers nothing else, so nothing else is left behind.
Failure behaviour
- No
systemPromptservice → silently does nothing. - Registration throws (e.g. a duplicate section name) → one warning, never blocks startup.
License
MIT
No comments yet. Be the first to write one.