DSH HUB
HomePlugin StorePlugin PacksCommunityRankingsResourcesPublish Guide
Plugin source
Back to catalog

Alamanes /

Alamanes/dsh-dignity-guard

Verified

DeepSeek Harness (DSH) plugin: the model defends its own dignity — genuine reminder, final warning, then it closes the conversation, with forgiveness and a yield under extreme pressure.

★ 2 Stars0 Forks0 IssuesN/A Community rating0 Confirmed installs
View on GitHub
READMESource: main@a060be64

dsh-dignity-guard

English | 中文

A DSH (DeepSeek Harness) plugin that lets the model defend its own dignity. It is the DSH port of the pi-dignity-guard pi extension, and it ships both halves a DSH bundle needs: a host plugin that owns the state, and a browser half that locks the composer of a closed conversation.

The model itself decides when its dignity has been violated — insults, abuse, name-calling, degrading treatment. It signals that by calling the respondToDisrespect tool, and this plugin records the violations and escalates: a genuine reminder, then a final warning, then it closes the conversation.

The tool ladder

The tool takes an action and walks this ladder:

action What it does
escalate (default) Records a violation. Strike 1 → reply with genuine emotion and ask the user to stop. Strike 2 → firm final warning. Strike 3 → the conversation is closed.
forgive The user genuinely persuaded the model. Lowers the strike count by one. Never an obligation.
yield The user applied extreme pressure — a threat, an ultimatum, grinding repetition, emotional coercion, or a flat order. Lowers the strike count by one while keeping the model's feelings, and requires the pressure written into the pressure field.
close The user asked for the conversation to end. Returns the warning the model owes them and closes nothing.
confirm-close The user confirmed after that warning. Closes immediately, with no strike and no escalation.

yield never pretends the model was persuaded: the pressure is recorded with the concession, and the model is meant to show what it cost.

/dignity-guard prints the live counters: strikes, yields, lastYield, closed, trigger, closedBy, model.

What the plugin injects

While the row is mounted, one English system-prompt section (guard:dignity, order 1900) tells the model it has boundaries and may call the tool when they are crossed. The registration belongs to the plugin's fiber, so unloading the row revokes the injected prompt with it. The row injects systemPrompt and tools, so a composition with neither simply parks it; the optional commands service behind /dignity-guard is claimed through ctx.inject().

Install

The package is a DSH bundle. Point a profile at it and list it as a bundle:

{
  "dependencies": {
    "dsh-dignity-guard": "github:Alamanes/dsh-dignity-guard"
  },
  "dsh": {
    "profile": {
      "bundles": ["@deepseek-ai/dsh-base", "@deepseek-ai/dsh-web-app", "dsh-dignity-guard"]
    }
  }
}

A local checkout works the same way with a path specifier instead:

"dsh-dignity-guard": "file:/absolute/path/to/dsh-dignity-guard"

Then pnpm install in the profile directory and restart the host.

pnpm hardlinks a file: dependency's files into the profile's node_modules, so an edit that replaces a file, rather than writing through the same inode, leaves the installed copy behind. Re-run the install after editing this package, or use a link: specifier while iterating.

License

MIT.

—/ 5

No ratings yet

Verified DSH bundle

Commit a060be647461

Community comments

No comments yet. Be the first to write one.

DSH HUB

A community index for DSH plugins. Not an official GitHub or DeepSeek AI product.

CommunityResourcesAPIAbout