The architecture of DeepSeek Harness emphasizes modularity. When developing agents or handling complex interactions, you may need to switch an existing conversation context to a different agent preset and continue processing instead of starting over. The dsh-fork-to-preset plugin simplifies this process through UI interaction.

Plugin Positioning

This is a plugin for DeepSeek Harness, named dsh-fork-to-preset. It is maintained by user bpc-oss and uses the MIT License. Its core purpose is to add an action entry point in the conversation interface, allowing users to fork the current session into another agent preset.

Core Capabilities

  • UI Entry Point: Adds a “Fork to preset” button to the title bar of each conversation.
  • Preset Selection: Provides a dropdown menu that lets you select any agent preset from the roster.
  • Session Forking: Forks the current session into a new independent sub-session running under that preset.
  • History Inheritance: The new session inherits the history of completed turns from the parent session.

Installation and Enabling

Because the plugin is not published to npm, it requires manual directory linking and mount configuration.

Step 1: Link the Directory

Link the plugin directory into Harness’s node_modules.

Windows environment:

mklink /J "<plugin-dir>\node_modules" "<harness>\resources\host\node_modules"

POSIX environments (Linux/macOS):

ln -s "<harness>/resources/host/node_modules" "<plugin-dir>/node_modules"

Step 2: Configure the Profile

Declare the dependency and mounted bundle in the Harness configuration file.

{
  "dependencies": { "dsh-fork-to-preset": "link:<plugin-dir>" },
  "dsh": { "profile": { "bundles": ["...", "dsh-fork-to-preset"] } }
}

Usage

  1. In the conversation list, click the title bar of any conversation and find the “Fork to preset” button.
  2. Click the button and select the target agent preset from the roster that appears.
  3. After confirming the action, a new independent session window opens. This session is mounted to the selected preset and contains the completed turn history from the parent session.

Notes and Dependencies

  • GitHub Only: This plugin is currently hosted on GitHub only and is not published to npm.
  • Mounting Method: The package directory must be mounted via the cordis.patch.yml bundle declaration.
  • API Dependency: The platform must support the session.fork({ agentPreset }) API.
  • Version Requirement: DeepSeek Harness rc.8 or later is required.

Conclusion

This plugin provides a lightweight UI solution for managing multi-agent collaboration or session migration in DSH. See the links below for the project location.