dsh-webask:將單行問題轉投網頁端,節省 DSH 上下文

前言

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

典型用法

  1. 在 DSH 中輸入一個簡短的確認性問題,例如“DeepSeek 的最新版本號是多少?”。
  2. 點擊 Composer 旁邊的 WebAsk 按鈕,或按 mod+shift+k。
  3. 瀏覽器會自動打開對應網頁聊天的標籤頁,並將問題填入(通過 ?q= 參數)。
  4. 在網頁端查看結果後,如果需要,可以將答案複製並插回 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
羽毛球分组比赛记分
小程序二维码

欢迎使用《羽毛球分组比赛记分》微信小程序

小夜