Introduction¶
DeepSeek Harness (DSH) uses a plugin-based architecture, allowing developers to extend the functionality of the official client. When developing agents or debugging long conversations, you often need to perform auxiliary reasoning, code analysis, or check inference steps outside the main conversation flow, without interrupting the current context or switching to a new tab.
dsh-sidechat is a standalone DeepSeek Harness Web plugin. It imitates Codex’s split-screen design by separating the main conversation and sidebar conversation into two resizable panels, and provides independent control over the model and reasoning intensity.
Core Features¶
The plugin primarily addresses the need for parallel multi-session processing. Its core capabilities are as follows:
- Split-screen layout: Displays the main conversation and sidebar conversation side by side, with drag-and-drop resizing for both panels.
- Independent session management: Creates child sessions from the current main conversation. Supports selecting specific text to create a quoted session; quoted content is not sent automatically, allowing users to edit before submitting.
- Model and reasoning configuration: The sidebar session has independent model selection and reasoning intensity settings. New sessions inherit the main conversation’s configuration by default.
- Codex-style navigation: Provides compact turn-rail navigation. It shows muted tick marks when idle, supports a fisheye effect and preview cards on hover, making it easy to quickly locate items across both sessions.
- Metadata display: The sidebar displays the parent session title, short session ID, summary, and a “live” indicator.
- Command support:
/sidechat: Opens the current or most recently updated sidebar session./sidechat content: Fills the content into the sidebar session’s draft area.
- Generic rendering: Renders user messages, Markdown, reasoning process, tool activity, approval requests, slash-command lifecycle, and unknown events.
Installation and Enablement¶
The plugin is distributed as a local link: package. Make sure the plugin directory is adjacent to the DeepSeek Harness source directory so relative paths can be resolved.
1. Build the Plugin¶
Run the following commands in the plugin directory:
cd path\to\dsh-sidechat
$env:HTTP_PROXY='http://127.0.0.1:7890'
$env:HTTPS_PROXY='http://127.0.0.1:7890'
pnpm install
pnpm run build
2. Install into the Harness Web Profile¶
After the build completes, switch back to the Harness directory and add the plugin:
cd ..\deepseek-harness-proxy
pnpm dsh plugin --profile web add link:..\dsh-sidechat
3. Start the Web Profile¶
Start the Web service to load the plugin:
pnpm dsh web --host 127.0.0.1 --port 3080
Note: The plugin uses lib/client.js as its entry point. After modifying the src/ source code, rerun pnpm run build and restart the Web profile.
Typical Usage¶
- Create a sidebar session: Select a code snippet or context text in the main conversation and create a sidebar session via the plugin’s action (usually in the header or contextual actions). The quoted content goes into the draft and must be manually confirmed before sending.
- Switch model reasoning: In the sidebar session, you can independently select a different model (such as R1 or V3) and reasoning intensity for that session to compare outputs from different models.
- Shortcut commands: Enter
/sidechator/sidechat contentin the input box to quickly open or fill the sidebar content.
Notes¶
- Dependency scope: The plugin uses peer dependencies and must match the checked-out Harness version range. Testing is recommended before deployment.
- Connection boundary: Sidebar RPC calls are confined to the local Web connection boundary and do not involve cross-origin or remote RPC.
- Data storage: Images and message drafts are sent through child sessions and are not written into the plugin’s relational table.
- Log retention: Deleting sidebar relation records does not delete or unarchive the underlying session logs.
Conclusion¶
dsh-sidechat provides split-screen layout and independent controls, enabling DSH users to efficiently process the main conversation and auxiliary conversations in parallel within the same interface. It preserves the log integrity of the official sidebar while delivering a compact Codex-style interaction experience.