前言¶
在 DSH web UI 裏處理會話時,經常需要把某段上下文帶到下一輪輸入裏,或者臨時問一個不依賴當前完整上下文的問題。已有做法通常是複製文本、切換網頁聊天,再手動整理輸入。
下面介紹 dsh-quote-temp-ask。它是 DSH web UI 的一個選中文本工具條插件,提供三個按鈕:引用、臨時對話、去網頁問。
這是什麼¶
dsh-quote-temp-ask 由 Enc-hanted 維護,採用 MIT 許可。它屬於 DSH 插件生態中的社區插件,不是 DeepSeek 或幻方的官方應用商店入口。
該插件面向 DSH web profile。已覈實資料標明:已在 @deepseek-ai/dsh 0.1.0-rc.6(web profile)驗證,要求 Node >=22.15,peer dependencies 如下:
@deepseek-ai/dsh-client-ui-slots ^0.1.0-rc.6
react ^18.2.0
核心功能¶
引用¶
在會話中選中任意文本後,點擊“引用”。輸入框草稿裏會追加一個標記,例如:
[引用到內容1]
發送時,該標記會展開成引用塊,例如:
> **引用的內容1**
已覈實資料提到,預覽卡片會顯示在標記上方。發送入口包括 Enter 或發送按鈕。
需要注意:引用池是 per-session memory。切換會話或刷新頁面後,標記可能丟失與原文內容的映射。手動輸入一個與 pooled id 匹配的標記形式字符串,也可能被展開。標記重編號會增加 undo entries。
臨時對話¶
“臨時對話”會在頁面內打開一個 390px 寬的右側面板。它使用 DSH 當前默認模型,通過 250ms 輪詢獲取流式內容,不是 SSE。
面板支持清理上下文和停止。渲染的 Markdown 包括代碼塊、行內代碼、加粗、斜體、鏈接、標題和列表。面板消息歷史無上限,使用“清理上下文”來清理。
去網頁問¶
“去網頁問”會打開真實的 chat.deepseek.com,窗口大小爲 390×844,停靠到屏幕右邊緣,並通過 ?q= 預填問題。
由於 chat.deepseek.com 發送 frame-ancestors 'none',無法通過 iframe 內嵌;網頁 popup 是這條路徑的可用方式。
安裝與啓用¶
安裝前先檢查源碼和許可證。該插件採用 MIT 許可。插件會以當前 DSH 進程權限運行,建議覈對版本和來源後再安裝。
從 npm 安裝:
dsh plugin --profile web add dsh-quote-temp-ask
從本地 checkout 安裝:
dsh plugin --profile web add link:D:/path/to/dsh-quote-temp-ask
安裝完成後重啓 DSH。卸載:
dsh plugin --profile web remove dsh-quote-temp-ask
卸載後同樣重啓 DSH。
典型用法¶
1、在會話中選中任意文本,點擊“引用”。
2、輸入框中出現 [引用到內容1],預覽卡片顯示在上方。
3、按 Enter 或點擊發送按鈕,標記展開爲引用塊,消息發出。
臨時對話可以選中文本後點擊“臨時對話”,在右側面板中提問;需要清理時點擊“清理上下文”,需要中止時點擊“停止”。
去網頁問可以選中文本後點擊“去網頁問”,在彈出的 chat.deepseek.com 窗口中繼續處理。
適用場景與注意¶
適合在 DSH web UI 中處理以下場景:
- 需要把某段對話內容引用到下一條輸入。
- 需要臨時問一個不依賴當前完整上下文的問題。
- 需要把當前問題帶到網頁版 DeepSeek 聊天中繼續處理。
使用前建議確認以下限制:
- 發送按鈕攔截依賴
aria-label="發送消息",即中文 UI;Cmd/Ctrl+Enter 未被攔截,標記可能原樣發出。 - 手動輸入與 pooled id 匹配的標記形式字符串會被展開。
- 引用池是 per-session memory,切換會話或刷新頁面後映射可能丟失。
- 臨時對話通過 250ms 輪詢流式輸出,不是 SSE。
- 臨時對話面板消息歷史無上限,應使用“清理上下文”。
chat.deepseek.com不允許 iframe 嵌入,網頁 popup 是唯一路徑。
結尾¶
dsh-quote-temp-ask 把“引用、臨時問、網頁追問”收進 DSH web UI 的選中工具條,適合處理會話中的局部上下文與快速問答。
GitHub:https://github.com/Enc-hanted/dsh-quote-temp-ask