Foreword¶
In DeepSeek Harness (DSH) web dialogue, bringing a specific context back to the composer typically requires manual copying and pasting. dsh-selection-ask condenses this action into a single step: after selecting dialogue text, an “Ask DeepSeek” button appears near the selection; clicking it sends the selected text into the composer as a Markdown blockquote, allowing you to continue typing your question and sending it.
Below, we introduce its positioning, capabilities, installation and activation methods, and important notes.
What This Is¶
dsh-selection-ask is a DSH plugin maintained by lzbaclz, designed for the dialogue interface in the web profile. It provides ChatGPT-style selected text assistance: select a text segment in the conversation, and an “Ask DeepSeek” button appears beside it; clicking the button appends or replaces the selected content as a quote in the composer.
Verified basic information:
- Name:
dsh-selection-ask - Maintainer:
lzbaclz - License: README badge indicates MIT
- Version: Both
package.jsonand README badge show0.1.0 - Build artifacts: Pre-compiled
lib/has been committed; installing the pre-built package does not require local compilation - npm package not yet published;
dsh plugin --profile web add dsh-selection-askwill be available only after publication
Core Functionality¶
It only processes text from dialogue records and does not re-quote drafts from the composer back into it.
Specific capabilities include:
- When selecting text in the transcript, a fixed “Ask DeepSeek” button appears near the selection; the button is positioned based on the selection’s screen coordinates and restricted within the viewport.
- Only allows quoting text from the dialogue record (
transcript/[data-conversation-scroll]); selecting composer content has no effect. - Upon clicking the button, the selected text is written into the composer as a Markdown blockquote: each line is prefixed with
>, then appended or replaced in the composer. - After writing, the composer gains focus with the cursor positioned at the end.
- Writes the draft via the harness
inputActions.setDraftAPI, avoiding direct modification of DSH internal or DOM state. - Button state resets per session; it hides when the takeover composer (question/approval) appears.
Installation and Enabling¶
Installation and enabling are two-step processes.
1. Install the Plugin¶
Install from GitHub:
dsh plugin --profile web add github:lzbaclz/dsh-selection-ask
To pin a version:
dsh plugin --profile web add github:lzbaclz/dsh-selection-ask#v0.1.0
Install after local cloning:
git clone https://github.com/lzbaclz/dsh-selection-ask.git
dsh plugin --profile web add link:/absolute/path/to/dsh-selection-ask
The npm package is not yet published. The README notes that dsh plugin --profile web add dsh-selection-ask will be available only after publication.
2. Enable the Plugin¶
Choose one of the following two paths to enable; do not use both simultaneously.
Path A: Restart dsh web¶
After restarting dsh web, the plugin is ready to use:
dsh web
Path B: Hot Activation¶
For hot activation, cordis.patch.yml must use an insert block to replace the original [], not append after []; otherwise, you’ll encounter failed to parse patches.
Note: Path A and Path B cannot be used together, as this may cause duplicate loader entry id: dsh-selection-ask.
Typical Usage¶
- Select a text segment in the dialogue.
- Click the “Ask DeepSeek” button beside the selection.
- The selected text enters the composer with a
>prefix, the composer gains focus, and the cursor is at the end. - Continue typing your follow-up question and send it.
If the button doesn’t appear, first confirm that you’re selecting text from the dialogue record, not composer content; if you enabled hot activation, also ensure the page has been refreshed.
Uninstallation¶
dsh plugin --profile web remove dsh-selection-ask
If using hot activation, also revert cordis.patch.yml to [], then refresh or restart.
Applicable Scenarios and Notes¶
Suitable for scenarios using the DSH web GUI where you frequently need to bring context back to the composer.
Required runtime environment:
- DeepSeek Harness
webprofile (dsh web) - DSH packages in the
0.1.0-rc.6era - Default GUI page at
http://127.0.0.1:3080
Installation notes:
- Installing the pre-built package does not require local compilation; building from source requires Node
^22.19.0 || >=24and pnpm. - Older profiles may need to add
autoInstallPeers: falseinpnpm-workspace.yaml. - The plugin runs with the current dsh process permissions; review the source code and license before installation.
- The DSH plugin ecosystem emphasizes “everything is a plugin”; the community directory is an independent site with no official affiliation to DeepSeek or High-Flyer.
Links¶
- GitHub:
https://github.com/lzbaclz/dsh-selection-ask - Community directory page:
https://www.skillhub.cn/plugins/lzbaclz/dsh-selection-ask