Back to directory

dsh-side-chat

In a curated listMaintenance: Active

heartmove/dsh-side-chat

侧边聊天:在对话中选中内容后在右侧面板独立聊天提问,侧边聊天按发起它的主会话隔离

View on GitHub
$ npx -p @deepseek-ai/dsh dsh plugin --profile web add dsh-side-chat-plus

14

stars

1

forks

TypeScript

Language

MIT

License

2026-08-14

Created

2026-11-03

Last push

An MIT-licensed DSH bundle that puts a per-conversation side chat in the right panel, inherits the main conversation's agent setup, brings replies back into it, and lists question dialogs for side-chat analysis.

DSH integration

Native runtime

Author-claimed

Safety audit

Unaudited

Last verified

2026-11-13

License

MIT

01What can it help you accomplish?

  • Ask a question about part of the conversation without derailing the main thread

    a dedicated side chat in the right panel with the selected text staged, and its reply insertable back into the main conversation

    People who want a second opinion mid-task without polluting the main conversation

  • Think through a question dialog before answering it

    the dialog's question and each option listed in the side panel, bringable into a new or existing side chat, with the main conversation still waiting

    Users who do not want to answer an agent's question dialog on the spot

  • Give a hard sub-task a stronger model without touching the main setup

    a per-chat model / thinking-effort / permission preset that inherits the main conversation by default but can be tuned independently

    Developers who want a scoped second agent on the same workspace

02How to install into DeepSeek Harness

Prerequisites

  • Node.js ≥ 20
  • pnpm
  • DSH `0.2.1-rc.1` or newer — the declared peer window is the open range `>=0.2.1-rc.1`

Installation steps

  1. 01

    Recommended: `npx -p @deepseek-ai/dsh dsh plugin --profile web add dsh-side-chat-plus` — the npm tarball ships the prebuilt `lib/`, so nothing builds at install time

    $ npx -p @deepseek-ai/dsh dsh plugin --profile web add dsh-side-chat-plus

  2. 02

    GitHub alternative: `npx -p @deepseek-ai/dsh dsh plugin --profile web add github:heartmove/dsh-side-chat-plus`; pnpm ≥ 10 blocks the git dependency's `prepare` script, so copy the printed key into `~/.dsh/profiles/web/pnpm-workspace.yaml` under `allowBuilds` and re-run the add

    $ npx -p @deepseek-ai/dsh dsh plugin --profile web add github:heartmove/dsh-side-chat-plus

  3. 03

    Restart `dsh web`, then hard-refresh the page (Ctrl/Cmd+Shift+R)

    $ dsh web

Verify the integration

Not specified by the author

03DSH integration and capability boundaries

DSH integrationNative runtime

DSH web plugin bundle: `dsh.bundle.patch` mounts a host half (routes, session/agent lifecycle, transcript folding) and a client half (right-side panel, composer, settings section)

  • Per-conversation side chat

    a text selection in a message, or the current question dialog→a hidden ordinary DSH session linked to the conversation that started it, opened in the right panel

    creates a DSH session that is archived so it stays out of the main session listthe archive is lifted only while a side-chat turn runs
  • Inherited agent setup

    the main conversation's toolset, model, thinking effort, permission preset and working directory, adjustable per side chat

    a side chat can act on the same workspace as the main conversation
  • Bring replies back

    a selection of an assistant reply, or the whole reply→inserted verbatim or summarized first, landing either in the composer draft or as a collapsed context row

    brought-back content is never sent on its own — it lands in the draft or as a context row the model sees next turn
  • Question-dialog side chat

    the dialog's question and every option listed in the panel, each bringable into a new or existing side chat, collapsible and deletable

  • Resizable panel and settings

    a 280–720 px panel capped near 40% of the window, plus settings for lookup, immediate send, default prompt, bring-back target and panel home

    preferences are stored in the DSH settings namespace `dsh-side-chat`

04Who is it for? When not to use it?

Good for

  • People who want a second opinion mid-task without polluting the main conversation
  • Users who do not want to answer an agent's question dialog on the spot
  • Developers who want a scoped second agent on the same workspace

Not for

  • The `/sidechat/api/*` routes are fenced like DSH's own `/api` (loopback, the listener's bind address or a `--trusted-host` authority, with cross-site markers and mismatched `Origin` refused), but the fence is not an identity check: the routes serve the already authenticated page without re-checking the session cookie, so keep the deployment on loopback or behind an authenticating reverse proxy.
  • The npm package is `dsh-side-chat-plus`, not `dsh-side-chat` (the plain name belongs to a different maintainer), and the GitHub spec mirrors it. A git install runs the package's `prepare` script, which pnpm ≥ 10 blocks until allowlisted: the first `add` fails with an "Ignored build scripts" hint, and allowlisting means running that package's code on your machine at install time — pin a commit so a later push cannot change what runs.

05Compatibility, maintenance and safety notes

  • The `/sidechat/api/*` routes are fenced like DSH's own `/api` (loopback, the listener's bind address or a `--trusted-host` authority, with cross-site markers and mismatched `Origin` refused), but the fence is not an identity check: the routes serve the already authenticated page without re-checking the session cookie, so keep the deployment on loopback or behind an authenticating reverse proxy.
  • The npm package is `dsh-side-chat-plus`, not `dsh-side-chat` (the plain name belongs to a different maintainer), and the GitHub spec mirrors it. A git install runs the package's `prepare` script, which pnpm ≥ 10 blocks until allowlisted: the first `add` fails with an "Ignored build scripts" hint, and allowlisting means running that package's code on your machine at install time — pin a commit so a later push cannot change what runs.
  • Needs Node.js ≥ 20, pnpm and DSH `0.2.1-rc.1` or newer; the peer range is deliberately an open lower bound so later DSH versions install, but run-time behaviour is only re-verified against each new line with `pnpm verify:lines`.
  • Reading workspace files and the parent conversation from a side chat is off by default: the "look up workspace / parent when needed" switch must be turned on before the side chat may read them.
2026-08-142026-11-03Not specified by the author

MIT · no release tag in the repository (npm publishes on `v*` tags as `dsh-side-chat-plus`) · README evidence only, not security audited

06Frequently asked questions

How do I install it into DeepSeek Harness?

The recommended route is npm: `npx -p @deepseek-ai/dsh dsh plugin --profile web add dsh-side-chat-plus` — the tarball ships the prebuilt `lib/` so nothing builds at install time. Then restart `dsh web` and hard-refresh the page. The npm package is `dsh-side-chat-plus` because the plain `dsh-side-chat` name belongs to a different maintainer, and the GitHub spec is `github:heartmove/dsh-side-chat-plus`.

What does it create inside my DSH install?

Each side chat is a hidden ordinary DSH session whose `meta.parentSession` points at the conversation that started it; it is archived so it stays out of the main session list, and the archive is lifted only while a side-chat turn runs. Preferences live in the DSH settings namespace `dsh-side-chat`, and the bundle mounts through its own `cordis.patch.yml` layer.

Does a side chat inherit my main conversation's permissions?

Yes, by default: it inherits the toolset, model, thinking effort and permission preset of the conversation it was started from, and is aware of that conversation's working directory — so it can act on the same workspace. Model, effort and permission can be adjusted per chat. Reading workspace files and the parent conversation is a separate switch that is off by default.

How do replies get back into the main conversation?

Select part of an assistant reply or use the buttons under it, then choose "Insert directly" (verbatim) or "Summarize & insert" (the side chat's inherited model summarizes first). Per the `bringMode` setting the content is appended to the main composer draft or injected as a collapsed, source-tagged context row — either way it is never sent automatically.

Is it safe to expose on a network?

The README says no by default: `/sidechat/api/*` is fenced like DSH's own `/api` — loopback, the listener's bind address, or an authority declared with `--trusted-host` — and cross-site markers or a mismatched `Origin` are refused. But that fence is not an identity check: the routes serve the already authenticated page without re-checking the session cookie, so keep the deployment on loopback or behind a reverse proxy that authenticates.

08Data and sources

  • Author-claimedgithub.comdd9dbb481cce…

    An **enhanced version of a Codex-style side chat** for [DSH](https://www.deepseek.com): a dedicated, agentic chat in a r…

  • Author-claimedgithub.comdd9dbb481cce…

    **bundle**: its `package.json` declares `dsh.bundle.patch` →

  • Author-claimedgithub.comdd9dbb481cce…

    npx -p @deepseek-ai/dsh dsh plugin --profile web add dsh-side-chat-plus

This page is generated from the project’s public documentation, repository metadata and a structured parse of DSH Plugins; last verified on 2026-11-13. Found an error? Submit a correction.

🏆

Best DeepSeek Harness Plugins

Twelve plugins worth installing first — picked from the whole catalog, across every category.

DSH Plugins is an independent community directory of DeepSeek Harness plugins. Not affiliated with or endorsed by DeepSeek. Third-party plugins are not security-audited — review the source before installing.

New DeepSeek Harness plugins, weekly. No spam.