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 toread-only, and approval is fixed tonever. - 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:
- Enter
/sidein the input box of the parent Session. - Use the arrow keys to select a Seed policy, then press Enter to confirm.
- Select “Read-only mode” or “Inherit,” then press Enter to confirm.
- Enter the clarification question: Enter creates, Shift+Enter inserts a line break, and Esc cancels.
- Continue the multi-turn conversation on the full SideChat page.
- Use
/sidefoldto 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, authenticatedconnection.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