Introduction¶
When handling sessions in the DSH web UI, it is often necessary to carry over a specific segment of context into the next round of input, or to ask a question temporarily that does not rely on the current full context. Existing methods typically involve copying text, switching between web chats, and manually organizing the input.
Below, I introduce dsh-quote-temp-ask. It is a text selection toolbar plugin for the DSH web UI that provides three buttons: Quote, Temp Chat, and Ask on Web.
What is it¶
dsh-quote-temp-ask is maintained by Enc-hanted and is released under the MIT license. It is a community plugin within the DSH plugin ecosystem and is not an official entry point from DeepSeek or Hugging Face.
The plugin targets the DSH web profile. Verified materials indicate that it has been tested in @deepseek-ai/dsh 0.1.0-rc.6 (web profile), requires Node >=22.15, and has the following peer dependencies:
@deepseek-ai/dsh-client-ui-slots ^0.1.0-rc.6
react ^18.2.0
Core Functions¶
Quote¶
After selecting any text in a session, click “Quote”. A marker will be appended to the input draft, for example:
[引用到内容1]
When sending, this marker expands into a blockquote, for example:
> **引用的内容1**
Verified materials mention that a preview card appears above the marker. Sending can be triggered by pressing Enter or clicking the Send button.
Note: The quote pool is per-session memory. After switching sessions or refreshing the page, the mapping between the marker and the original content may be lost. Manually entering a marker string that matches a pooled ID may also cause it to expand. Renumbering markers adds undo entries.
Temp Chat¶
“Temp Chat” opens a 390px-wide right-side panel. It uses the current default model of DSH and obtains streaming content via 250ms polling, rather than SSE.
The panel supports clearing context and stopping. Rendered Markdown includes code blocks, inline code, bold, italics, links, headings, and lists. The panel message history is unlimited; use “Clear Context” to clean it up.
Ask on Web¶
“Ask on Web” opens the real chat.deepseek.com with a window size of 390×844, docked to the right edge of the screen, and pre-fills the question via ?q=.
Since chat.deepseek.com sends frame-ancestors 'none', it cannot be embedded in an iframe; a web popup is the available method for this route.
Installation and Enablement¶
Check the source code and license before installing. This plugin uses the MIT license. The plugin runs with the permissions of the current DSH process; it is recommended to verify the version and source before installing.
Install from npm:
dsh plugin --profile web add dsh-quote-temp-ask
Install from a local checkout:
dsh plugin --profile web add link:D:/path/to/dsh-quote-temp-ask
Restart DSH after installation is complete. To uninstall:
dsh plugin --profile web remove dsh-quote-temp-ask
Restart DSH after uninstalling as well.
Typical Usage¶
- Select any text in a session and click “Quote”.
[引用到内容1]appears in the input box, and the preview card is displayed above it.- Press Enter or click the Send button; the marker expands into a blockquote, and the message is sent.
For Temp Chat, select text and click “Temp Chat” to ask in the right-side panel. Click “Clear Context” when cleanup is needed, or “Stop” when you need to abort.
For Ask on Web, select text and click “Ask on Web” to continue processing in the popped-up chat.deepseek.com window.
Applicable Scenarios and Notes¶
Suitable for processing the following scenarios in the DSH web UI:
- Need to quote a segment of conversation content into the next input.
- Need to ask a question temporarily that does not depend on the current full context.
- Need to carry the current question to the web version of DeepSeek chat for continued processing.
It is recommended to confirm the following limitations before use:
- The Send button interception depends on
aria-label="发送消息", which implies a Chinese UI. Cmd/Ctrl+Enter is not intercepted, so the marker might be sent as is. - Manually entering a marker string matching a pooled ID will cause it to expand.
- The quote pool is per-session memory, and the mapping may be lost after switching sessions or refreshing the page.
- Temp Chat obtains streaming output via 250ms polling, not SSE.
- The Temp Chat panel message history is unlimited; ‘Clear Context’ should be used.
chat.deepseek.comdoes not allow iframe embedding; a web popup is the only available method.
Conclusion¶
dsh-quote-temp-ask brings “Quote, Temp Ask, and Web Ask” into the DSH web UI text selection toolbar, making it suitable for handling local context within a session and quick Q&A.
GitHub: https://github.com/Enc-hanted/dsh-quote-temp-ask