前言¶
DeepSeek Harness (DSH) 在每次對話輪次中都會重發整個對話歷史。這意味着,即使你確定只會問一個非常簡短的單行問題,它也依然會消耗掉整個上下文窗口的 token。如果是爲了驗證一個簡單的概念或獲取一個快速定義,這種成本是不必要的。
WebAsk 插件用於解決這個問題:它將那些確定會非常簡短的問題,直接轉投到 DeepSeek 的免費網頁聊天中,而不是讓它們進入 DSH 的模型對話流。
插件簡介¶
dsh-webask 是一個專注於上下文節省的聯網工具插件。
- 定位:將單行問題發送到 DeepSeek 的網頁聊天,避免消耗 DSH 上下文。
- 維護者:DanZai233
- 協議:MIT
- 核心機制:通過插件提供的按鈕或全局熱鍵,將文本從 DSH 草稿區提取,複製到剪貼板,並在新標籤頁打開對應的網頁聊天。
核心功能¶
插件通過三個主要機制實現上述功能:
1. Composer 按鈕¶
在 DSH 的編輯器旁邊會出現一個按鈕。點擊它,插件會執行以下操作:
1. 提取:將你正在編輯的文本從草稿中取出。
2. 清除:通過官方的輸入動作清除草稿,確保文本從未進入模型。
3. 複製:將文本複製到系統剪貼板。
4. 跳轉:在新標籤頁中打開配置好的目標網站並帶上參數。
2. 全局熱鍵調色板¶
按下 mod+shift+k 可以在任何地方喚起一個居中的輸入框。
* 輸入問題後按 Enter 發送。
* 按 Shift+Enter 換行。
* 按 Esc 關閉調色板。
喚起的調色板帶有本地歷史記錄,記錄中的每一條問題都可以:
* 重新打開:在網頁端重新發送。
* 複製:再次複製到剪貼板。
* 插回編輯器:將答案插入回 DSH 的編輯器,用於後續追問。
3. 設置與多站點支持¶
在設置中,你可以配置:
* 目標站點與模板:默認支持多種主流大模型網頁端。
* 全局熱鍵:自定義喚起快捷鍵。
* 剪貼板行爲:是否自動複製。
* 歷史記錄:開關本地歷史記錄及數量限制。
支持列表包括:DeepSeek, Kimi, Qwen, 豆包, 騰訊元寶, 智譜 GLM, Gemini。
安裝與啓用¶
使用官方插件命令安裝。插件會修改包圖,安裝後需要重啓對應 profile。
dsh plugin --profile web add dsh-webask
重啓 profile 後,插件生效。你可以通過以下命令驗證配置是否加載成功:
dsh --profile web --dump-config | grep -A2 webask
典型用法¶
- 在 DSH 中輸入一個簡短的確認性問題,例如“DeepSeek 的最新版本號是多少?”。
- 點擊 Composer 旁邊的 WebAsk 按鈕,或按
mod+shift+k。 - 瀏覽器會自動打開對應網頁聊天的標籤頁,並將問題填入(通過
?q=參數)。 - 在網頁端查看結果後,如果需要,可以將答案複製並插回 DSH 的編輯器中繼續提問。
注意事項與原理¶
在使用前,需瞭解以下事實:
?q=是社區約定:網頁端通常不會自動讀取 URL 中的?q=參數,這是社區約定。WebAsk 插件同時處理了“複製到剪貼板”和“打開 URL”兩步,以確保無論如何都能讓問題到達網頁。- 純本地存儲:歷史記錄和設置僅保存在瀏覽器的
localStorage中,不會上傳到任何服務器。 - 無模型交互:插件作爲“空掛載行”存在,不會向模型發送任何數據。
- 無構建鏈:插件不依賴複雜的構建工具,直接使用
React.createElement渲染。
總結¶
dsh-webask 是一個輕量級、注重隱私且實現簡單的插件。它通過將非核心對話轉投網頁端,有效解決了 DSH 在處理短問答時的上下文浪費問題,適合希望精細控制 token 消耗的開發者使用。
- GitHub 倉庫:https://github.com/DanZai233/dsh-webask
- 社區目錄:https://www.skillhub.cn/plugins/DanZai233/dsh-webask