Introduction

DeepSeek Harness adopts a plugin-based architecture and is designed to provide flexible extensibility. During long-chain development or complex Agent orchestration, specific context often needs to be extracted for independent clarification, validation, or debugging. The DeepSeek Harness SideChat plugin provides DSH with regular, persistent, and recoverable SideChat clarification sessions.

Installation and Enablement

Run the following command in the local repository root directory to install:

dsh plugin --profile web add . --force

After installation, the configuration output should include sidechat-preset-root and sidechat. Since this plugin has been fully verified only against DSH 0.1.2-alpha.1, it is recommended to rerun the source-code contract review and real Web smoke tests before upgrading the DSH baseline.

Core Features

Session Creation and Persistence

Entering /side in any Session creates an independent SideChat. This session is a normal DSH Session with a full session page, native model selector, and persistent transcript. Even if the plugin is uninstalled, already created SideChats remain in the regular Session list and will not be lost.

Seed Policy

When creating a SideChat, a Seed policy must be selected to determine the context passed to the child session. Supported policies include tail (default tail:1, meaning the last direct text message), task, summary, none, tail:2, tail:4, pick:1, pick:many, turn, and selection. Seed stores only direct text; it does not copy reasoning, tool calls, or the full parent transcript, and it is stored as immutable provenance together with the source message.

Permission Mode

When creating a SideChat, a permission mode must be selected. All permissions are recalculated by the Host:

  • Read-only mode (recommended): Candidate capabilities are read, glob, grep, Shell, Web, Plan, user questions, subagents, and workflow; the sandbox is fixed to read-only, and approval is fixed to never.
  • Inherit: Inherits the Agent preset, effective sandbox, approval settings, and visible tool limit from when the parent session was created.

Folds and Citations

The plugin supports generating structured Folds via /sidefold, with preview, editing, and submission. After successful submission, it automatically returns to the parent Session. It also supports revision, incremental Folds, comparison, and soft rollback; you can use /sidecite to reference a specified assistant reply into the parent session without generating a new reply.

Lifecycle and Tracking

SideChat supports multiple status states, including archive, restore, abandon, and orphaned. The /sideusage command displays verifiable token usage rather than estimated values.

Typical Usage

The typical steps for creating a SideChat and conducting a clarification conversation are as follows:

  1. Enter /side in the input box of the parent Session.
  2. Use the arrow keys to select a Seed policy, then press Enter to confirm.
  3. Select “Read-only mode” or “Inherit,” then press Enter to confirm.
  4. Enter the clarification question: Enter creates, Shift+Enter inserts a line break, and Esc cancels.
  5. Continue the multi-turn conversation on the full SideChat page.
  6. Use /sidefold to generate a Fold; in the preview, Enter submits, Shift+Enter inserts a line break, and Esc cancels.

Notes

  • Environment dependency: The plugin has currently been fully verified only against DSH 0.1.2-alpha.1. External bundles cannot enter the current DSH generated Remote assembly. The plugin uses the public, authenticated connection.rpc.handle('/sidechat') channel.
  • Uninstall behavior: Uninstalling the plugin only removes the plugin UI, Host service, and SideChat relationship interpretation capability. It does not delete already created regular Sessions or transcripts.
  • Immutability: Seed content and source messages are stored as immutable provenance.
  • Permission control: All permissions are recalculated by the Host. A permission mode or Session ID submitted from the browser cannot directly obtain authorization.

Summary

The DeepSeek Harness SideChat plugin provides a complete persistent clarification session solution through standard slash commands. It leverages the native DSH Session mechanism, avoiding the complexity of temporary overlays or subagents, and is suitable for scenarios that require separating context from the main workflow for independent validation.

Project repository: GitHub