Introduction

If the DeepSeek Harness plugin is deployed solely via the Web entry point, maintaining separate prompts, memory, and historical context becomes cumbersome when integrating IM channels. With separate configurations for different platforms, the behavior of the same assistant across different entry points becomes inconsistent: changing the persona on one side leaves the other using old prompts, and having long-term memory on one side prevents the other from accessing it.

The following introduces @stu-xie/dsh-message. It is a plugin designed for DeepSeek Harness that unifies WeChat, Feishu, QQ, Enterprise WeChat, and DingTalk into a single DSH assistant, providing shared prompts, memory, and conversation capabilities.

What is this

The positioning of @stu-xie/dsh-message is as a DSH message access plugin: a single plugin handles multiple IM entry points, allowing the same DSH assistant to share prompts, long-term memory, conversation context, and model strategies across different channels.

It primarily solves the following issues:

  • Multiple IM channels connected separately, resulting in duplicate configurations;
  • Prompts, memory, and history not shared across different entry points;
  • Need to manually handle connection status, reconnection, and multi-robot management;
  • Using Web tabs for interaction in IM channels is clumsy and awkward.

The license is MIT.

Core Capabilities

This plugin revolves around “one assistant, multiple entry points,” and the verified capabilities are listed below.

Unified Access to Five Channels

Supported channels:

  • WeChat
  • Feishu
  • QQ
  • Enterprise WeChat
  • DingTalk

The plugin uses a unified Host / Client architecture and provides a React settings page for centralized viewing and management of channel access, assistant settings, and runtime status.

Shared Prompts, Memory, and Model Strategies

The plugin shares the following capabilities:

  • Shared Prompts
  • Persona
  • Behavior Rules
  • Long-term Memory
  • Model Strategies

This means the same assistant can maintain a consistent persona, rules, memory, and model selection strategy across multiple IM entry points.

Access Methods

Supports access via QR code scan or official robot credentials. Different channels can be configured by following the on-screen guidance in the settings page.

Runtime Capabilities

The plugin supports the following runtime capabilities:

  • Streaming Replies
  • Connection Check
  • Auto Reconnection
  • Multi-Robot Management
  • Workspace and Session Binding

Conversation history is isolated by channel + botId + conversation to distinguish the context of different channels, bots, and conversations.

IM Channel Interaction

IM channels use numbered options for interaction instead of Web tabs, making it suitable for direct input scenarios on mobile devices or within chat windows.

Long-term Memory

Long-term memory supports:

  • Add
  • Replace
  • Delete
  • Deduplication
  • Atomic Update

You can edit memory.md in the console, or disable long-term memory functionality.

Installation and Activation

Environment Requirements

First, confirm that the environment meets the following conditions:

  • Node.js 22.19 or higher version
  • Available DeepSeek Harness
  • dsh command added to PATH, or DSH_ROOT configured

First, check if the DSH CLI is available:

dsh --help

Installation from npm

Execute the installation command:

npx -y @stu-xie/dsh-message install

After installation, start the specified profile:

dsh --profile web

After starting, enter the plugin message access entry in settings:

  • Settings
  • Plugins
  • Message Access

Select the desired channels and complete the access configuration by following the on-screen instructions.

Installation from Source

When installing from source, first complete local installation and checks:

npm install
npm run check

Then install to DSH:

npm run install:dsh

If you only want to install to a specific DSH profile, use the following command:

npm run install:dsh -- --profile web

Use the following to uninstall:

npm run uninstall:dsh -- --profile web

Uninstalling only removes the plugin and does not delete bot credentials, login status, prompts, memory, or historical data.

Source Code Verification

If developing or modifying from source, you can run tests and build:

npm test
npm run build

Model Routing and Default Permissions

Model Routing

The plugin’s model routing strategy is as follows:

  • Use the off tier of vllm/Qwen-3.8-Flash-Next in the first round;
  • Switch to xhigh for complex tasks;
  • Fall back to deepseek-official/deepseek-v4-flash if the main model fails.

Routing variables can be overridden in the local config/.env; process environment variables take priority. If the local config/.env still contains the old main model ID, AgentService will throw an error directly upon startup.

Default Permissions

The DSH Session forces a check and switches to danger-full-access before processing business messages, corresponding to:

  • sandbox: danger-full-access
  • approval: never

This disables manual approval interception. Before enabling, ensure the corresponding bot entry point and workspace are within a controllable scope.

Data, Migration, and Uninstallation

Data Directory

The data directory may contain:

  • Bot credentials
  • Login status
  • Conversation history

Please do not commit the data directory to the version control repository or share it publicly.

Management RPC

Management RPC is by default restricted to loopback. It should only be configured in trusted remote Host scenarios:

"rpcAuthority": "trusted-host"

Migration from Previous Versions

Migration from the previous version replaces the old plugin but does not delete old data. Existing target files will not be overwritten.

It is recommended to back up DSH_HOME before the first deployment.

Applicable Scenarios and Notes

Suitable for the following scenarios:

  • Already using DeepSeek Harness;
  • Need to connect multiple IM channels to the same assistant;
  • Wish to keep prompts, long-term memory, conversation context, and model strategies consistent;
  • Wish to centrally manage channels and assistant status in the console.

Notes before enabling:

  • The plugin will run with the permissions and configuration of the current dsh process;
  • Default permissions disable manual approval interception, need to assess risks of bot entry and workspace;
  • Data directory may contain credentials and login status, do not share publicly;
  • Check source code, dependencies, and license before installation;
  • Migration does not delete old data, but still suggest backing up DSH_HOME before first deployment.

Resource Links

The community directory is an independent site with no official affiliation to DeepSeek / Huanfang (Soroban), and should not be interpreted as an official app store.

Directory Page:

https://www.skillhub.cn/plugins/Stu-KatoMegumi/dsh-message

GitHub:

https://github.com/Stu-KatoMegumi/dsh-message