Introduction

DeepSeek Harness (DSH) adopts an “everything is a plugin” architecture, which means configuring plugin combinations for specific tasks (such as mathematical research, data analysis, and LaTeX editing) requires manual searching, version verification, and installation, a process that is cumbersome and error-prone.

The dsh-autocompose plugin addresses this problem. It automatically searches for DSH plugins on npm based on a task description, verifies versions and compatibility, and completes installation automatically. In DSH Desktop, it opens a standalone DSH client window for continued conversation; it can also install plugins into the current main environment for reuse in later tasks.

Installation and Enablement

The current version is compatible with DSH 0.2.0-rc.2 and requires Node.js >=22.19.

In the plugin management page of DSH Desktop, enter the package name to install:

dsh-autocompose@0.5.0

Or use the command line:

dsh plugin --profile desktop add dsh-autocompose@0.5.0 --save-exact --ignore-scripts

Web host users should replace desktop with web. After installation, refresh the page or restart, then open “Auto-Compose” in the sidebar.

Core Capabilities

The plugin searches npm based on a Chinese or English task description. It primarily retrieves packages tagged with dsh-plugin and deepseek-harness. Search keywords, candidate counts, and exclusion reasons are saved in the plan for later review and audit.

Automatic Assembly and Environment Management

The assembly process only uses existing plugins and does not generate plugin code. It supports two main runtime modes:

  • Standalone window: Starts a new client instance in DSH Desktop, with each environment having its own plugin directory, session, and data. Suitable for tasks that require continuous conversation.
  • Main environment installation: Installs plugins directly into the current profile running AutoCompose (Desktop is desktop, Web is web), suitable for long-term use.

Isolated Execution and No Model Overhead

The process of generating a plan and installing plugins does not invoke a model. A model is called only when the task is actually executed. The standalone environment is read-only for the task directory by default, and plugins in the main environment use host permissions.

Usage

Web UI Operations

  1. Enter the task description and working directory.
  2. Select “Auto-Compose and Open Client” to start a standalone window, or select “Auto-Find and Install to Main Environment”.
  3. Continue the conversation in the standalone window, or view the installation results in the main environment.

Command-Line Invocation

Invoke the tool directly in the conversation:

Invoke autocompose’s assemble to automatically find compatible plugins for mathematical research and install them into the current environment.

Invoke autocompose’s assemble, set destination to window, to assemble a standalone environment for continuous conversation for mathematical research, and open the DSH client directly.

Notes and FAQ

Permissions and Isolation

The permissions declared by a plugin are only for display and checks, not an operating-system-level isolation for third-party code. The “read-only” setting for temporary tasks does not restrict plugins in the main environment.

Version and Compatibility

The current version is compatible with DSH 0.2.0-rc.2. Installing the public AutoCompose package does not require an npm Token.

Common Errors

  • ERR_PNPM_GIT_DEP_PREPARE_NOT_ALLOWED: Usually caused by an old Git commit pinned to 0.2.0. It is recommended to install using the npm package name or the current repository address.
  • Failed to replace env in config: ${NPM_TOKEN}: This is an npm configuration variable notice and does not need to be addressed when installing a public package.

Summary

dsh-autocompose simplifies assembling DSH plugin combinations through automated plan generation and installation workflows. It focuses on assembling the existing ecosystem, and its standalone-window or main-environment installation modes balance the isolation needed for temporary tasks with the convenience of long-term use.

For more details, see the GitHub repository or the SkillHub catalog.