DeepSeek Harness (DSH) follows the core design philosophy of “everything is a plugin.” In multi-scenario conversation needs, frequently switching between different personas (such as a coding assistant, translator, or novelist) often requires manually editing system prompts or opening multiple application windows. dsh-zhushou solves this problem: it is a client plugin that allows managing assistant personas in the sidebar and directly applying the selected persona in DSH’s main conversation to chat. If no assistant is selected, the conversation remains in its native state.

Basic Profile

  • Name: starlight-bananice/dsh-zhushou
  • Maintainer: Starlight-bananice
  • Category: Client
  • License: MIT
  • Core Description: A DSH sidebar assistant plugin that lets you manage and select assistant personas in the sidebar, converse within DSH using the selected persona, and keep native conversation if none is selected.

Core Capabilities

This plugin provides a complete set of capabilities from persona definition to context injection, mainly including the following features:

  • Conversation-level activation: The selection state is stored in the current conversation’s configuration. Once activated, it intercepts llm/stream requests and rebuilds the request with the selected assistant’s parameters.
  • Assistant persona management: Supports configuring name, avatar (dataURL or URL), tags, and workspace binding.
  • Model parameter configuration: Allows independently configuring model name (leave empty to follow the main model), temperature, reasoning intensity, max tokens, context message count, and streaming output toggle.
  • System prompt engine: Supports templated prompts and dual variable syntax ({{var}} and {var}), allowing separate variable overrides for each assistant.
  • Quick replies: Binds preset reply templates that can be sent with a click.
  • Injection mode: Supports configuring the injected role (system/user/assistant), position (before/after/replace), and trigger conditions (always/keywords).
  • World Book: Based on keyword matching, supports priority sorting and token-budget truncation (default 1024) to inject context into requests.
  • Skill toggles: Enumerates and enables/disables DSH skills.
  • Memory management: Supports switching between global/private memory pools and provides time awareness by injecting the current time or conversation interval as natural context instead of imperative prompts.
  • Sidebar UI management panel: Provides a complete settings page for managing assistants, selection, and memory.

Installation and Activation

The plugin is distributed as an npm package. After installation, restart DSH Web.

dsh plugin --profile web add @bananiceee/dsh-zhushou
  • Environment requirements: Host Node.js >= 22 is required, and the client must be a modern browser. The plugin runs with the permissions of the current DSH process and requires no external services.
  • pnpm note: If using pnpm 11 and the package release is too recent, you may need to add the --config.minimumReleaseAge=0 parameter.

After installation and restart, an “Assistant” entry appears at the bottom of the sidebar. Click it to enter the management panel.

Typical Usage

  1. Create an assistant: In the management panel, create an assistant, configure its name, avatar, model parameters, system prompt (using variable syntax), World Book entries, skill toggles, and memory settings, then save.
  2. Activate the conversation: Select the assistant in the sidebar of the current conversation. The conversation then uses the assistant’s parameters and persona for dialogue.
  3. Restore native mode: Deselect or delete the assistant, and the conversation immediately returns to native DSH behavior.

Data Storage

All assistant configurations, selection states, and memory data are stored in the local directory:
${DSH_HOME || ~/.dsh}/dsh-assistant-panel/

Conclusion

dsh-zhushou provides a lightweight way to reuse and switch personas in DSH, suitable for users who need to simulate different roles or workflows within the same interface.