Installation
npx -y @deepseek-ai/dsh plugin --profile web add github:Mintcolour/dsh-sidechatThis installation command is an unverified starting point generated from the GitHub repository address.
README
Maintainer-authored documentation snapshot.
DSH Side Chat
A standalone DeepSeek Harness Web plugin that adds a Codex-style side chat beside the main conversation. It uses Harness public Session, Storage Domain, Workspace Registry, and Connection RPC surfaces without modifying the official Harness source.

Highlights
- Split the main conversation and side chat into two resizable panes instead of covering the main chat.
- Create a side chat from the current conversation, including selected-text quoting without automatic sending.
- Keep the child Session out of the official left sidebar while preserving its original log after relationship removal.
- Show parent title, short Session ID, summary, and a live “follows main-chat permissions” indicator.
- Choose a model and reasoning effort independently for each side chat; a new side chat initially inherits the main chat model.
- Use
/sidechatto open the current or most recently updated side chat, or/sidechat contentto fill its draft. - Render user messages, Markdown, reasoning, tool activity, approvals, questions, slash-command lifecycle, and unknown events through a generic timeline.
- Navigate both conversations with compact Codex-style Turn rails: quiet equal ticks when idle, fisheye expansion and a preview card on hover.
- Generate a title from the first side-chat question, with manual rename taking permanent precedence.
Screenshots
The screenshots use synthetic conversation content and contain no real project data.
| Feature | Preview |
|---|---|
| Resizable split view and parent context | ![]() |
| Per-side-chat model and reasoning selector | ![]() |
| Compact idle Turn rail | ![]() |
| Hover preview and fisheye rail | ![]() |
| Dark-theme parent context and permission following | ![]() |
Install into a Harness checkout
The plugin is currently distributed as a local link: package. Keep the plugin checkout next to the Harness checkout so its relative development links resolve:
workspace/
├─ deepseek-harness-proxy/
└─ dsh-sidechat/
Build the plugin and install it into the Web profile:
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
cd ..\deepseek-harness-proxy
pnpm dsh plugin --profile web add link:..\dsh-sidechat
pnpm dsh web --host 127.0.0.1 --port 3080
The package has no prepare script. After changing src/, run pnpm run build and restart the Web profile so it loads the new lib/client.js.
Development
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 typecheck
pnpm test
pnpm run build
The development dependencies use link: references to a sibling Harness checkout. Harness remains a peer/runtime dependency; this repository does not vendor or patch the official source.
Architecture
The Host half owns the dsh_sidechat storage domain, parent/child lineage validation, title and summary persistence, archive retry, permission synchronization, model inheritance, and the private loopback /dsh-sidechat RPC channel.
The Client half registers the native header action, split-screen overlay, selection action, slash-command source, model selector, generic timeline, and main/side Turn history rails. Draft text and pane width stay local to the browser; relationship records and titles are the only side-chat metadata persisted by the plugin.
Compatibility and privacy
- Designed for the DeepSeek Harness Web profile and its public plugin surfaces.
- Uses peer dependency ranges matching the current Harness checkout; test against the Harness revision you deploy.
- Side-chat RPC is restricted to the local Web connection boundary.
- Images and message drafts are sent through the child Session and are not written to the relationship table.
- Removing a side-chat relationship does not delete or unarchive the underlying Session log.
License
MIT. See LICENSE.
Project files and signals
Shown items are public repository signals detected in the directory snapshot.
Repository information
- Language
- JavaScript
- License
- MIT
- Latest release
- v0.1.0
- Last updated
- Aug 14, 2026, 3:59 AM
Install deliberately
Review source code, permissions, lifecycle hooks, dependencies and network access. Test untrusted plugins in an isolated environment.



