dsh-web
zhu1090093659/dsh-webDeepSeek Harness(DSH)Web 插件聚合生态包 · 一切皆插件,创意工坊分发(dsh-market.com)
DSH Web GUI plugin: cite a selected conversation fragment in the current message, or open it in a parallel side chat.
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 | Русский
Add to chat and Add in side chat.
N conversation selections strip 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.
> … block with a card(quote glyph, excerpt, “Quote from the conversation”), so neither you nor the model sees a wall of markdown.
stages the same citation there, so follow-up questions do not pollute the main thread.
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-actionsThen reload the Web GUI page. It is a per-profile installation and survives restarts.
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.jsonThe version it lists installs as git+https://github.com/ccclosed/dsh-selection-actions.git#, so an install is always reproducible.
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 thatseat renders reliably while the in-card overlay seat deactivated the entry;
ctx.inputTriggers.registerSource — a reference source whose codec.serialize turns a chip into theblockquote 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 — only meta (title and description for the plugins list). Buttonlabels, counter forms and tooltips are registered by client.js itself for both languages.
edge by a few pixels rather than being a child of the card.
Add in side chat reuses the shipped subagentchat Sidebar tab, so the tab title falls back to the fork’sSession id when the Session has no projected title yet.
MIT — see LICENSE.
Плагин для веб-GUI DeepSeek Harness: выделяешь фрагмент переписки и превращаешь его в цитату в отправляемом сообщении либо открываешь его в параллельном чате.
N conversation selections: по наведению из неё выезжают добавленные цитаты, крестик убирает их. При отправке каждый фрагмент становится блокквотом в запросе — модель читает его как цитируемый контекст.
сырым > … текстом.
подставляется цитата; основная ветка не засоряется.
Установка: dsh plugin --profile add /путь/к/dsh-selection-actions, затем перезагрузить страницу. Host-половина пустая, настроек нет; вся логика в client.js.