dsh-selection-actions
Identified★ 1DSH Web GUI plugin: cite a selected conversation fragment in the current message, or open it in a parallel side chat.
dsh-selection-actions
A DeepSeek Harness Web GUI plugin: select any fragment of a conversation and turn it into a citation in the message you are about to send — or open it in a parallel chat.
English | Русский
What it does
- Selection toolbar. Select text in the conversation and a small toolbar appears next to the selection:
Add to chatandAdd in side chat. - Add to chat stages the fragment in the current composer. The draft shows a compact
N conversation selectionsstrip with a remove control; hovering it slides out the staged citations. When you send, each fragment becomes a blockquote in the prompt — the model reads it as quoted context. - Sent citations render as cards. The transcript replaces the raw
> …block with a card (quote glyph, excerpt, “Quote from the conversation”), so neither you nor the model sees a wall of markdown. - Add in side chat forks the current Session, opens the copy in the right Sidebar as a parallel chat and stages the same citation there, so follow-up questions do not pollute the main thread.
Install
The plugin is a bundle: the Host half is empty, everything lives in the Web client. Install it with the harness plugin manager, from this checkout or straight from GitHub:
# from npm
dsh plugin --profile <profile> add dsh-selection-actions
# from a local checkout
dsh plugin --profile <profile> add /path/to/dsh-selection-actions
# from this repository
dsh plugin --profile <profile> add https://github.com/ccclosed/dsh-selection-actions
Then reload the Web GUI page. It is a per-profile installation and survives restarts.
Install from the plugin market (no npm account, one URL)
The repository ships a format-1 market index, so the plugin installs from a pinned commit without npm. Add this URL under Settings → Plugins → Discover → index sources:
https://raw.githubusercontent.com/ccclosed/dsh-selection-actions/main/market.json
The version it lists installs as
git+https://github.com/ccclosed/dsh-selection-actions.git#<commit>, so an install is always reproducible.
How it works
client.js— the whole plugin (Web client half,window.__ModuleLoader__module):shell.overlay— the floating toolbar next to a selection;conversation.input.dock— the citation strip above the composer card;conversation.input.overlay/ host slots — not used; the strip lives in the dock seat because that seat renders reliably while the in-card overlay seat deactivated the entry;ctx.inputTriggers.registerSource— a reference source whosecodec.serializeturns a chip into the blockquote that reaches the model;ctx.uiConversation.userText.register+conversation.user.text.node— the transcript card renderer.
index.js— empty Host half (apply() {}), so there is no Config and no Host-side settings.locale/en.json,locale/ru.json— onlymeta(title and description for the plugins list). Button labels, counter forms and tooltips are registered byclient.jsitself for both languages.
Known limitations
- The citation strip is attached to the composer card from the dock seat (see above) and overlaps its top edge by a few pixels rather than being a child of the card.
- The remove control clears this plugin’s citations only when the draft holds no foreign reference chips.
Add in side chatreuses the shippedsubagentchatSidebar tab, so the tab title falls back to the fork’s Session id when the Session has no projected title yet.
License
MIT — see LICENSE.
Русский
Плагин для веб-GUI DeepSeek Harness: выделяешь фрагмент переписки и превращаешь его в цитату в отправляемом сообщении либо открываешь его в параллельном чате.
- Add to chat — фрагмент попадает в композер текущего чата. Над полем появляется плашка
N conversation selections: по наведению из неё выезжают добавленные цитаты, крестик убирает их. При отправке каждый фрагмент становится блокквотом в запросе — модель читает его как цитируемый контекст. - Отправленная цитата рисуется карточкой (кавычка, фрагмент, подпись «Цитата из переписки»), а не
сырым
> …текстом. - Add in side chat — форк текущей сессии открывается отдельной вкладкой в правой панели, туда же подставляется цитата; основная ветка не засоряется.
Установка: dsh plugin --profile <профиль> add /путь/к/dsh-selection-actions, затем перезагрузить страницу.
Host-половина пустая, настроек нет; вся логика в client.js.
Comments
Loading…
From the same category
by awesome-dsh-plugin
A curated list of plugins for DeepSeek Harness (dsh) · DeepSeek Harness 插件精选列表
★ 20.7k
CC0-1.0
Python
Oct 25, 2026
by 0xsline
DeepSeek Harness (DSH) ecosystem: curated plugins, tools, and infrastructure from dsh-external/hub and the public dsh-plugin topic.
★ 1.3k
CC0-1.0
Python
Oct 16, 2026
by pax-beehive
Open-source CLI, schemas, resolver, and DSH agent tools for DSH Plugin Hub
★ 277
MIT
TypeScript
Oct 20, 2026
by xiajiajun516
DeepSeek Harness (DSH) backup & restore plugin — export, import, migrate and sync your complete DSH configuration, plugins, MCP servers, skills and workspace. One-click migration to another machine.
★ 245
MIT
TypeScript
Oct 25, 2026
dsh plugin --profile web add dsh-config-managerby Yuuyuko-uu
DSH 鱼的记忆:给会话一份会淡忘的长期记忆,每条都带时间
★ 210
MIT
JavaScript
Oct 25, 2026
dsh plugin --profile web add dsh-fish-memoryby yjh051108
推荐组件(非必须):DeepSeek Harness 运行时注入器;已随 dsh-routing-suite 单仓库化保留,本仓库继续维护/发布。
★ 167
TypeScript
Oct 16, 2026
dsh plugin --profile web add @dsh-external/dsh-super-injector